glapi: Move to src/mapi/.
authorChia-I Wu <olv@lunarg.com>
Mon, 26 Apr 2010 04:56:44 +0000 (12:56 +0800)
committerChia-I Wu <olv@lunarg.com>
Fri, 7 May 2010 02:41:11 +0000 (10:41 +0800)
Move glapi to src/mapi/{glapi,es1api,es2api}.

199 files changed:
configs/darwin
configs/default
configs/linux-cell
configs/linux-opengl-es
configure.ac
src/SConscript
src/egl/drivers/dri/Makefile
src/egl/drivers/dri2/Makefile
src/gallium/state_trackers/dri/drm/Makefile
src/gallium/state_trackers/dri/drm/SConscript
src/gallium/state_trackers/dri/sw/Makefile
src/gallium/state_trackers/dri/sw/SConscript
src/gallium/state_trackers/egl/Makefile
src/gallium/state_trackers/es/Makefile
src/gallium/state_trackers/glx/xlib/Makefile
src/gallium/state_trackers/glx/xlib/SConscript
src/gallium/targets/Makefile.dri
src/gallium/targets/SConscript.dri
src/gallium/targets/libgl-xlib/Makefile
src/gallium/targets/libgl-xlib/SConscript
src/gallium/winsys/i965/xlib/Makefile
src/gles/Makefile
src/glx/Makefile
src/mapi/es1api/Makefile [new file with mode: 0644]
src/mapi/es2api/Makefile [new file with mode: 0644]
src/mapi/glapi/.gitignore [new file with mode: 0644]
src/mapi/glapi/Makefile [new file with mode: 0644]
src/mapi/glapi/SConscript [new file with mode: 0644]
src/mapi/glapi/gen-es/Makefile [new file with mode: 0644]
src/mapi/glapi/gen-es/base1_API.xml [new file with mode: 0644]
src/mapi/glapi/gen-es/base2_API.xml [new file with mode: 0644]
src/mapi/glapi/gen-es/es1_API.xml [new file with mode: 0644]
src/mapi/glapi/gen-es/es1_COMPAT.xml [new file with mode: 0644]
src/mapi/glapi/gen-es/es1_EXT.xml [new file with mode: 0644]
src/mapi/glapi/gen-es/es2_API.xml [new file with mode: 0644]
src/mapi/glapi/gen-es/es2_COMPAT.xml [new file with mode: 0644]
src/mapi/glapi/gen-es/es2_EXT.xml [new file with mode: 0644]
src/mapi/glapi/gen-es/es_COMPAT.xml [new file with mode: 0644]
src/mapi/glapi/gen-es/es_EXT.xml [new file with mode: 0644]
src/mapi/glapi/gen-es/gl_compare.py [new file with mode: 0644]
src/mapi/glapi/gen-es/gl_parse_header.py [new file with mode: 0644]
src/mapi/glapi/gen/APPLE_object_purgeable.xml [new file with mode: 0644]
src/mapi/glapi/gen/APPLE_vertex_array_object.xml [new file with mode: 0644]
src/mapi/glapi/gen/ARB_copy_buffer.xml [new file with mode: 0644]
src/mapi/glapi/gen/ARB_depth_clamp.xml [new file with mode: 0644]
src/mapi/glapi/gen/ARB_draw_elements_base_vertex.xml [new file with mode: 0644]
src/mapi/glapi/gen/ARB_draw_instanced.xml [new file with mode: 0644]
src/mapi/glapi/gen/ARB_framebuffer_object.xml [new file with mode: 0644]
src/mapi/glapi/gen/ARB_map_buffer_range.xml [new file with mode: 0644]
src/mapi/glapi/gen/ARB_seamless_cube_map.xml [new file with mode: 0644]
src/mapi/glapi/gen/ARB_sync.xml [new file with mode: 0644]
src/mapi/glapi/gen/ARB_vertex_array_object.xml [new file with mode: 0644]
src/mapi/glapi/gen/EXT_draw_buffers2.xml [new file with mode: 0644]
src/mapi/glapi/gen/EXT_framebuffer_object.xml [new file with mode: 0644]
src/mapi/glapi/gen/EXT_packed_depth_stencil.xml [new file with mode: 0644]
src/mapi/glapi/gen/EXT_provoking_vertex.xml [new file with mode: 0644]
src/mapi/glapi/gen/EXT_texture_array.xml [new file with mode: 0644]
src/mapi/glapi/gen/EXT_transform_feedback.xml [new file with mode: 0644]
src/mapi/glapi/gen/GL3.xml [new file with mode: 0644]
src/mapi/glapi/gen/Makefile [new file with mode: 0644]
src/mapi/glapi/gen/NV_conditional_render.xml [new file with mode: 0644]
src/mapi/glapi/gen/OES_EGL_image.xml [new file with mode: 0644]
src/mapi/glapi/gen/extension_helper.py [new file with mode: 0644]
src/mapi/glapi/gen/glX_API.xml [new file with mode: 0644]
src/mapi/glapi/gen/glX_XML.py [new file with mode: 0644]
src/mapi/glapi/gen/glX_doc.py [new file with mode: 0644]
src/mapi/glapi/gen/glX_proto_common.py [new file with mode: 0644]
src/mapi/glapi/gen/glX_proto_recv.py [new file with mode: 0644]
src/mapi/glapi/gen/glX_proto_send.py [new file with mode: 0644]
src/mapi/glapi/gen/glX_proto_size.py [new file with mode: 0644]
src/mapi/glapi/gen/glX_server_table.py [new file with mode: 0644]
src/mapi/glapi/gen/gl_API.dtd [new file with mode: 0644]
src/mapi/glapi/gen/gl_API.xml [new file with mode: 0644]
src/mapi/glapi/gen/gl_SPARC_asm.py [new file with mode: 0644]
src/mapi/glapi/gen/gl_XML.py [new file with mode: 0644]
src/mapi/glapi/gen/gl_and_glX_API.xml [new file with mode: 0644]
src/mapi/glapi/gen/gl_apitemp.py [new file with mode: 0644]
src/mapi/glapi/gen/gl_enums.py [new file with mode: 0644]
src/mapi/glapi/gen/gl_offsets.py [new file with mode: 0644]
src/mapi/glapi/gen/gl_procs.py [new file with mode: 0644]
src/mapi/glapi/gen/gl_table.py [new file with mode: 0644]
src/mapi/glapi/gen/gl_x86-64_asm.py [new file with mode: 0644]
src/mapi/glapi/gen/gl_x86_asm.py [new file with mode: 0644]
src/mapi/glapi/gen/license.py [new file with mode: 0644]
src/mapi/glapi/gen/mesadef.py [new file with mode: 0644]
src/mapi/glapi/gen/next_available_offset.sh [new file with mode: 0755]
src/mapi/glapi/gen/remap_helper.py [new file with mode: 0644]
src/mapi/glapi/gen/typeexpr.py [new file with mode: 0644]
src/mapi/glapi/glapi.c [new file with mode: 0644]
src/mapi/glapi/glapi.h [new file with mode: 0644]
src/mapi/glapi/glapi_dispatch.c [new file with mode: 0644]
src/mapi/glapi/glapi_entrypoint.c [new file with mode: 0644]
src/mapi/glapi/glapi_execmem.c [new file with mode: 0644]
src/mapi/glapi/glapi_getproc.c [new file with mode: 0644]
src/mapi/glapi/glapi_nop.c [new file with mode: 0644]
src/mapi/glapi/glapi_priv.h [new file with mode: 0644]
src/mapi/glapi/glapi_sparc.S [new file with mode: 0644]
src/mapi/glapi/glapi_x86-64.S [new file with mode: 0644]
src/mapi/glapi/glapi_x86.S [new file with mode: 0644]
src/mapi/glapi/glapidispatch.h [new file with mode: 0644]
src/mapi/glapi/glapioffsets.h [new file with mode: 0644]
src/mapi/glapi/glapitable.h [new file with mode: 0644]
src/mapi/glapi/glapitemp.h [new file with mode: 0644]
src/mapi/glapi/glprocs.h [new file with mode: 0644]
src/mapi/glapi/glthread.c [new file with mode: 0644]
src/mapi/glapi/glthread.h [new file with mode: 0644]
src/mapi/glapi/sources.mak [new file with mode: 0644]
src/mesa/Makefile
src/mesa/SConscript
src/mesa/drivers/dri/Makefile.template
src/mesa/drivers/fbdev/Makefile
src/mesa/drivers/glslcompiler/Makefile
src/mesa/drivers/osmesa/Makefile
src/mesa/drivers/x11/Makefile
src/mesa/es/Makefile
src/mesa/es/glapi/Makefile [deleted file]
src/mesa/es/glapi/base1_API.xml [deleted file]
src/mesa/es/glapi/base2_API.xml [deleted file]
src/mesa/es/glapi/es1_API.xml [deleted file]
src/mesa/es/glapi/es1_COMPAT.xml [deleted file]
src/mesa/es/glapi/es1_EXT.xml [deleted file]
src/mesa/es/glapi/es2_API.xml [deleted file]
src/mesa/es/glapi/es2_COMPAT.xml [deleted file]
src/mesa/es/glapi/es2_EXT.xml [deleted file]
src/mesa/es/glapi/es_COMPAT.xml [deleted file]
src/mesa/es/glapi/es_EXT.xml [deleted file]
src/mesa/es/glapi/gl_compare.py [deleted file]
src/mesa/es/glapi/gl_parse_header.py [deleted file]
src/mesa/es/sources.mak
src/mesa/glapi/.gitignore [deleted file]
src/mesa/glapi/gen/APPLE_object_purgeable.xml [deleted file]
src/mesa/glapi/gen/APPLE_vertex_array_object.xml [deleted file]
src/mesa/glapi/gen/ARB_copy_buffer.xml [deleted file]
src/mesa/glapi/gen/ARB_depth_clamp.xml [deleted file]
src/mesa/glapi/gen/ARB_draw_elements_base_vertex.xml [deleted file]
src/mesa/glapi/gen/ARB_draw_instanced.xml [deleted file]
src/mesa/glapi/gen/ARB_framebuffer_object.xml [deleted file]
src/mesa/glapi/gen/ARB_map_buffer_range.xml [deleted file]
src/mesa/glapi/gen/ARB_seamless_cube_map.xml [deleted file]
src/mesa/glapi/gen/ARB_sync.xml [deleted file]
src/mesa/glapi/gen/ARB_vertex_array_object.xml [deleted file]
src/mesa/glapi/gen/EXT_draw_buffers2.xml [deleted file]
src/mesa/glapi/gen/EXT_framebuffer_object.xml [deleted file]
src/mesa/glapi/gen/EXT_packed_depth_stencil.xml [deleted file]
src/mesa/glapi/gen/EXT_provoking_vertex.xml [deleted file]
src/mesa/glapi/gen/EXT_texture_array.xml [deleted file]
src/mesa/glapi/gen/EXT_transform_feedback.xml [deleted file]
src/mesa/glapi/gen/GL3.xml [deleted file]
src/mesa/glapi/gen/Makefile [deleted file]
src/mesa/glapi/gen/NV_conditional_render.xml [deleted file]
src/mesa/glapi/gen/OES_EGL_image.xml [deleted file]
src/mesa/glapi/gen/extension_helper.py [deleted file]
src/mesa/glapi/gen/glX_API.xml [deleted file]
src/mesa/glapi/gen/glX_XML.py [deleted file]
src/mesa/glapi/gen/glX_doc.py [deleted file]
src/mesa/glapi/gen/glX_proto_common.py [deleted file]
src/mesa/glapi/gen/glX_proto_recv.py [deleted file]
src/mesa/glapi/gen/glX_proto_send.py [deleted file]
src/mesa/glapi/gen/glX_proto_size.py [deleted file]
src/mesa/glapi/gen/glX_server_table.py [deleted file]
src/mesa/glapi/gen/gl_API.dtd [deleted file]
src/mesa/glapi/gen/gl_API.xml [deleted file]
src/mesa/glapi/gen/gl_SPARC_asm.py [deleted file]
src/mesa/glapi/gen/gl_XML.py [deleted file]
src/mesa/glapi/gen/gl_and_glX_API.xml [deleted file]
src/mesa/glapi/gen/gl_apitemp.py [deleted file]
src/mesa/glapi/gen/gl_enums.py [deleted file]
src/mesa/glapi/gen/gl_offsets.py [deleted file]
src/mesa/glapi/gen/gl_procs.py [deleted file]
src/mesa/glapi/gen/gl_table.py [deleted file]
src/mesa/glapi/gen/gl_x86-64_asm.py [deleted file]
src/mesa/glapi/gen/gl_x86_asm.py [deleted file]
src/mesa/glapi/gen/license.py [deleted file]
src/mesa/glapi/gen/mesadef.py [deleted file]
src/mesa/glapi/gen/next_available_offset.sh [deleted file]
src/mesa/glapi/gen/remap_helper.py [deleted file]
src/mesa/glapi/gen/typeexpr.py [deleted file]
src/mesa/glapi/glapi.c [deleted file]
src/mesa/glapi/glapi.h [deleted file]
src/mesa/glapi/glapi_dispatch.c [deleted file]
src/mesa/glapi/glapi_entrypoint.c [deleted file]
src/mesa/glapi/glapi_execmem.c [deleted file]
src/mesa/glapi/glapi_getproc.c [deleted file]
src/mesa/glapi/glapi_nop.c [deleted file]
src/mesa/glapi/glapi_priv.h [deleted file]
src/mesa/glapi/glapi_sparc.S [deleted file]
src/mesa/glapi/glapi_x86-64.S [deleted file]
src/mesa/glapi/glapi_x86.S [deleted file]
src/mesa/glapi/glapidispatch.h [deleted file]
src/mesa/glapi/glapioffsets.h [deleted file]
src/mesa/glapi/glapitable.h [deleted file]
src/mesa/glapi/glapitemp.h [deleted file]
src/mesa/glapi/glprocs.h [deleted file]
src/mesa/glapi/glthread.c [deleted file]
src/mesa/glapi/glthread.h [deleted file]
src/mesa/main/es_generator.py
src/mesa/sources.mak
src/mesa/x86-64/Makefile
src/mesa/x86/Makefile

index e5196848776baec672274699c22cab38edf6fe25..0af77c7d31d10da4cfcf51b214737565568ae107 100644 (file)
@@ -52,7 +52,7 @@ GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -L$(INSTALL_DIR)/$(LIB_DIR) -L$(X
 APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -L$(INSTALL_DIR)/$(LIB_DIR) -L$(X11_DIR)/$(LIB_DIR) -lX11 -lXmu -lXt -lXi -lm
 
 # omit glw lib for now:
-SRC_DIRS = glsl glx/apple mesa gallium glu glut/glx glew
+SRC_DIRS = glsl mapi/glapi mapi/vgapi glx/apple mesa gallium glu glut/glx glew
 GLU_DIRS = sgi
 DRIVER_DIRS = osmesa
 #DRIVER_DIRS = dri
index dd701de0401b064ddc229596f6094d93bb4fabab..0eb76db2aee2b157ed46e46d5fd443952add255f 100644 (file)
@@ -86,7 +86,8 @@ MOTIF_CFLAGS = -I/usr/include/Motif1.2
 
 # Directories to build
 LIB_DIR = lib
-SRC_DIRS = glsl mesa gallium egl gallium/winsys gallium/targets glu glut/glx glew glw
+SRC_DIRS = glsl mapi/glapi mapi/vgapi mesa \
+       gallium egl gallium/winsys gallium/targets glu glut/glx glew glw
 GLU_DIRS = sgi
 DRIVER_DIRS = x11 osmesa
 # Which subdirs under $(TOP)/progs/ to enter:
index 0908dba9e05660b0f9e6c20a1a25c1b4d0de78c7..ac6a2088d31c02cb45f5f4b19a07a0f4d5bc3110 100644 (file)
@@ -37,7 +37,8 @@ CXXFLAGS = $(COMMON_C_CPP_FLAGS)
 
 
 # Omitting glw here:
-SRC_DIRS = glsl mesa gallium gallium/winsys gallium/targets glu glut/glx glew
+SRC_DIRS = glsl mapi/glapi mapi/vgapi mesa \
+       gallium gallium/winsys gallium/targets glu glut/glx glew
 
 # Build no traditional Mesa drivers:
 DRIVER_DIRS =
index 6984aa9b2cda253cf5a93deaf000c7f7c301c6f6..5e31b8c52f253baaf24d596f3da8abb405ecefbd 100644 (file)
@@ -6,7 +6,8 @@ CONFIG_NAME = linux-opengl-es
 
 # Directories to build
 LIB_DIR = lib
-SRC_DIRS = egl glsl mesa/es gallium gallium/winsys gallium/targets
+SRC_DIRS = egl glsl mapi/es1api mapi/es2api mesa/es \
+       gallium gallium/winsys gallium/targets
 PROGRAM_DIRS = egl/eglut egl/opengles1 egl/opengles2
 
 # egl st needs this
index b2e49a71365ec45f9336a145549e848f929af2de..4f37e16e3f062d2766c86979b07fa4ca337da334 100644 (file)
@@ -463,7 +463,7 @@ dnl Driver specific build directories
 dnl
 
 dnl this variable will be prepended to SRC_DIRS and is not exported
-CORE_DIRS="glsl mesa"
+CORE_DIRS="mapi/glapi glsl mesa"
 
 SRC_DIRS="glew"
 GLU_DIRS="sgi"
@@ -763,6 +763,7 @@ if test "x$enable_gles2" = xyes; then
     APIS="$APIS es2"
 fi
 if test "x$enable_gles1" = xyes -o "x$enable_gles2" = xyes; then
+    CORE_DIRS="mapi/es1api mapi/es2api $CORE_DIRS"
     SRC_DIRS="$SRC_DIRS gles"
 fi
 AC_SUBST([API_DEFINES])
@@ -1308,6 +1309,9 @@ yes)
             HAVE_ST_XORG="yes"
             ;;
         es)
+            if test "x$enable_gles1" != xyes -a "x$enable_gles2" != xyes; then
+               CORE_DIRS="mapi/es1api mapi/es2api $CORE_DIRS"
+            fi
             # mesa/es is required to build es state tracker
             CORE_DIRS="$CORE_DIRS mesa/es"
             ;;
index cf6db730da24c4c3725068ede845848df71d00ef..b72491d96f2355accc236fd2edb2b55016e2e53b 100644 (file)
@@ -1,6 +1,7 @@
 Import('*')
 
 SConscript('glsl/SConscript')
+SConscript('mapi/glapi/SConscript')
 
 if 'mesa' in env['statetrackers']:
     SConscript('mesa/SConscript')
index 7339c97c77d2a6c1da821f1fd21e4e203abd085f..c3aacff1cfe27061e796b8a0eec2fb4279fe0b66 100644 (file)
@@ -11,9 +11,9 @@ INCLUDE_DIRS = \
        $(shell pkg-config --cflags-only-I libdrm) \
        -I$(TOP)/include \
        -I$(TOP)/include/GL/internal \
+       -I$(TOP)/src/mapi \
        -I$(TOP)/src/mesa \
        -I$(TOP)/src/mesa/main \
-       -I$(TOP)/src/mesa/glapi \
        -I$(TOP)/src/mesa/math \
        -I$(TOP)/src/mesa/transform \
        -I$(TOP)/src/mesa/shader \
index 129e67b8c6643a6aa7e5424618ec7781e092a044..4e760aec4c87554603338ffeb9084bafbee4b6f2 100644 (file)
@@ -9,7 +9,7 @@ EGL_SOURCES = egl_dri2.c
 EGL_INCLUDES = \
        -I$(TOP)/include \
        -I$(TOP)/src/egl/main \
-       -I$(TOP)/src/mesa \
+       -I$(TOP)/src/mapi \
        -DDEFAULT_DRIVER_DIR=\"$(DRI_DRIVER_SEARCH_DIR)\" \
        $(EGL_DRI2_CFLAGS)
 
index d9a973e3c3ef5c35ed40803b7c5b170dc9c51e16..6c9d03fc5de52603853cc74535335b339e776904 100644 (file)
@@ -5,6 +5,7 @@ LIBNAME = dridrm
 
 LIBRARY_INCLUDES = \
        -I$(TOP)/include \
+       -I$(TOP)/src/mapi \
        -I$(TOP)/src/mesa \
        -I$(TOP)/src/gallium/state_trackers/dri/common \
        -I$(TOP)/src/mesa/drivers/dri/common \
index 8800b655343c1cf9966c46a21a935afc678227d7..965dc95760fbd4f7d6c46877d012122785f57886 100644 (file)
@@ -10,6 +10,7 @@ if env['dri']:
     env.ParseConfig('pkg-config --cflags --libs libdrm')
 
     env.Append(CPPPATH = [
+        '#/src/mapi',
         '#/src/mesa',
        '#/src/gallium/state_trackers/dri/common',
        '#/src/mesa/drivers/dri/common',
index c0ae71451b2a666200d791cb4ebdf02ccac9bfa1..a1dadeba5e6a07faab4654ea11e4c7eeb2195652 100644 (file)
@@ -8,6 +8,7 @@ LIBRARY_DEFINES = -D__NOT_HAVE_DRM_H
 LIBRARY_INCLUDES = \
        -I../dri \
        -I$(TOP)/include \
+       -I$(TOP)/src/mapi \
        -I$(TOP)/src/mesa \
        -I$(TOP)/src/gallium/state_trackers/dri/common \
        -I$(TOP)/src/mesa/drivers/dri/common \
index 6bb282d1a4cc4ebb961835aa47d3472dc97f57df..0c5194d6edceb0fae623c5c90e029e2c5d5fead3 100644 (file)
@@ -8,6 +8,7 @@ if env['dri']:
     env = env.Clone()
 
     env.Append(CPPPATH = [
+        '#/src/mapi',
         '#/src/mesa',
        '#/src/gallium/state_trackers/dri/common',
        '#/src/mesa/drivers/dri/common',
index 1768241352f0a7c7aedad70b2010baa9cdfa9287..a3c1bb4346952ac46f4c2336495165da7f12e5e8 100644 (file)
@@ -15,6 +15,7 @@ common_OBJECTS = $(common_SOURCES:.c=.o)
 x11_INCLUDES = \
        -I$(TOP)/src/gallium/drivers \
        -I$(TOP)/src/glx \
+       -I$(TOP)/src/mapi \
        -I$(TOP)/src/mesa \
        $(X11_CFLAGS) \
        $(shell pkg-config --cflags-only-I libdrm)
index 7370634ea241c90f20f40e9157648de8939ce0ef..37a78a5034b07a0aa223fa0b4471ffd82c050de5 100644 (file)
@@ -30,17 +30,18 @@ ES2_OBJECTS = st_es2.o
 
 ES1_LIBS = \
        $(TOP)/src/mesa/es/libes1gallium.a \
-       $(TOP)/src/mesa/es/libes1api.a
+       $(TOP)/src/mapi/es1api/libes1api.a
 
 ES2_LIBS = \
        $(TOP)/src/mesa/es/libes2gallium.a \
-       $(TOP)/src/mesa/es/libes2api.a
+       $(TOP)/src/mapi/es2api/libes2api.a
 
 SYS_LIBS = -lm -pthread
 
 
 INCLUDE_DIRS = \
        -I$(TOP)/include \
+       -I$(TOP)/src/mapi \
        -I$(TOP)/src/mesa \
        -I$(TOP)/src/gallium/include
 
index 35509fd708ba7a818a155915ec7ae03057b0dce7..84cb36ec36727c8e468955bde4dff4a0e85aaa65 100644 (file)
@@ -5,6 +5,7 @@ LIBNAME = xlib
 
 LIBRARY_INCLUDES = \
        -I$(TOP)/include \
+       -I$(TOP)/src/mapi \
        -I$(TOP)/src/mesa \
        $(X11_CFLAGS)
 
index d6c16ad2f52eb9c965f82e04da79ffc3a3a25743..9df351a276940a53117f381b8adfd5c5705568bb 100644 (file)
@@ -9,6 +9,7 @@ if env['platform'] == 'linux' \
     env = env.Clone()
 
     env.Append(CPPPATH = [
+        '#/src/mapi',
         '#/src/mesa',
         '#/src/mesa/main',
     ])
index 3cbaf615e2f7b299fb0e3ad87d3d25700fdf2566..48326e209e31714176def28bb4442dc2cc42e160 100644 (file)
@@ -42,13 +42,13 @@ SHARED_INCLUDES = \
        -Iserver \
        -I$(TOP)/include \
        -I$(TOP)/include/GL/internal \
+       -I$(TOP)/src/mapi \
        -I$(TOP)/src/gallium/include \
        -I$(TOP)/src/gallium/auxiliary \
        -I$(TOP)/src/gallium/drivers \
        -I$(TOP)/src/gallium/winsys \
        -I$(TOP)/src/mesa \
        -I$(TOP)/src/mesa/main \
-       -I$(TOP)/src/mesa/glapi \
        -I$(TOP)/src/mesa/math \
        -I$(TOP)/src/mesa/transform \
        -I$(TOP)/src/mesa/shader \
index 28fbe02ab8d57092c3bc3d4e3044ae86d5daaedf..4bbb16c227244db1e00fd4cfb082555461bb35c2 100644 (file)
@@ -9,6 +9,7 @@ drienv.Replace(CPPPATH = [
        '#src/mesa/drivers/dri/common',
        '#include',
        '#include/GL/internal',
+       '#src/mapi',
        '#src/gallium/include',
        '#src/gallium/auxiliary',
        '#src/gallium/drivers',
index add3a273945668713dc8e92abd02ebf8ac5a0db7..1574de080abf677f0f824be067e7b57df2753fd6 100644 (file)
@@ -15,6 +15,7 @@ GL_TINY = 0$(MESA_MAJOR)0$(MESA_MINOR)0$(MESA_TINY)
 
 INCLUDE_DIRS = \
        -I$(TOP)/include \
+       -I$(TOP)/src/mapi \
        -I$(TOP)/src/mesa \
        -I$(TOP)/src/mesa/main \
        -I$(TOP)/src/gallium/include \
@@ -42,7 +43,7 @@ LIBS = \
        $(TOP)/src/gallium/winsys/sw/xlib/libws_xlib.a \
        $(TOP)/src/gallium/drivers/trace/libtrace.a \
        $(TOP)/src/gallium/drivers/identity/libidentity.a \
-       $(TOP)/src/mesa/libglapi.a \
+       $(TOP)/src/mapi/glapi/libglapi.a \
        $(TOP)/src/mesa/libmesagallium.a \
        $(GALLIUM_AUXILIARIES) \
        $(CELL_SPU_LIB) \
index 63e4531263a691988a885ce233ce17f212c5905b..4ff9f88ff6795ca0970fae8f75da6cd42c5bd4a7 100644 (file)
@@ -17,6 +17,7 @@ if env['dri']:
 env = env.Clone()
 
 env.Append(CPPPATH = [
+    '#/src/mapi',
     '#/src/mesa',
     '#/src/mesa/main',
     '#src/gallium/state_trackers/glx/xlib',
index 3730db6997ed533ba6d79ee4f0537f19c321b064..cc8249395c53bfce5b47ef8a3a3f1fe60b90a5c5 100644 (file)
@@ -38,7 +38,7 @@ LIBS = \
        $(TOP)/src/gallium/drivers/i965/libi965.a \
        $(TOP)/src/gallium/drivers/trace/libtrace.a \
        $(TOP)/src/gallium/state_trackers/glx/xlib/libxlib.a \
-       $(TOP)/src/mesa/libglapi.a \
+       $(TOP)/src/mapi/glapi/libglapi.a \
        $(TOP)/src/mesa/libmesagallium.a \
        $(GALLIUM_AUXILIARIES) 
 
index d023c14049f6846e30edce78ab98f012f22217b6..5e5fc127b3fc881a96a70d1cf38fd84cad210079 100644 (file)
@@ -1,11 +1,11 @@
 TOP = ../..
-MESA = $(TOP)/src/mesa
+MAPI = $(TOP)/src/mapi
 include $(TOP)/configs/current
-include $(MESA)/sources.mak
 
-GLESv1_CM_ASM := $(addprefix $(MESA)/es/glapi/glapi-es1/,$(GLAPI_ASM_SOURCES))
-GLESv2_ASM := $(addprefix $(MESA)/es/glapi/glapi-es2/,$(GLAPI_ASM_SOURCES))
-API_SOURCES := $(addprefix $(MESA)/,$(GLAPI_SOURCES))
+include $(MAPI)/glapi/sources.mak
+GLESv1_CM_ASM := $(addprefix $(MAPI)/es1api/glapi/,$(GLAPI_ASM_SOURCES))
+GLESv2_ASM := $(addprefix $(MAPI)/es2api/glapi/,$(GLAPI_ASM_SOURCES))
+API_SOURCES := $(addprefix $(MAPI)/glapi/,$(GLAPI_SOURCES))
 
 $(TOP)/$(LIB_DIR)/$(GLESv1_CM_LIB_NAME) : PREFIX = es1
 $(TOP)/$(LIB_DIR)/$(GLESv1_CM_LIB_NAME) : NAME = GLESv1_CM
@@ -13,7 +13,7 @@ $(TOP)/$(LIB_DIR)/$(GLESv1_CM_LIB_NAME) : NAME = GLESv1_CM
 $(TOP)/$(LIB_DIR)/$(GLESv2_LIB_NAME) : PREFIX = es2
 $(TOP)/$(LIB_DIR)/$(GLESv2_LIB_NAME) : NAME = GLESv2
 
-INCLUDES = -I$(TOP)/include -I$(MESA)/es/glapi/glapi-$(PREFIX) -I$(MESA)
+INCLUDES = -I$(TOP)/include -I$(MAPI)/$(PREFIX)api -I$(MAPI) -I$(TOP)/src/mesa
 
 OBJECTS = \
        $(notdir $(GLAPI_ASM_SOURCES:%.S=%.o)) \
@@ -24,12 +24,12 @@ GLESv2_OBJECTS = $(addprefix es2-,$(OBJECTS))
 
 es1-%.o: $(dir $(GLESv1_CM_ASM))%.S
        $(CC) -c $(CFLAGS) $(INCLUDES) -o $@ $<
-es1-%.o: $(MESA)/glapi/%.c
+es1-%.o: $(MAPI)/glapi/%.c
        $(CC) -c $(CFLAGS) $(INCLUDES) -o $@ $<
 
 es2-%.o: $(dir $(GLESv2_ASM))%.S
        $(CC) -c $(CFLAGS) $(INCLUDES) -o $@ $<
-es2-%.o: $(MESA)/glapi/%.c
+es2-%.o: $(MAPI)/glapi/%.c
        $(CC) -c $(CFLAGS) $(INCLUDES) -o $@ $<
 
 default: depend \
index c6ebc49828bfa55eac47f488ed4512e91731a276..48d901fb894f0f6244c257001726b1e78095411d 100644 (file)
@@ -39,7 +39,7 @@ SOURCES = \
          dri2_glx.c \
          dri2.c
 
-GLAPI_LIB = $(TOP)/src/mesa/libglapi.a
+GLAPI_LIB = $(TOP)/src/mapi/glapi/libglapi.a
 
 OBJECTS = $(SOURCES:.c=.o)
 
@@ -47,7 +47,8 @@ INCLUDES = -I. \
        -I$(TOP)/include \
        -I$(TOP)/include/GL/internal \
        -I$(TOP)/src/mesa \
-       -I$(TOP)/src/mesa/glapi \
+       -I$(TOP)/src/mapi \
+       -I$(TOP)/src/mapi/glapi \
        $(LIBDRM_CFLAGS) \
        $(DRI2PROTO_CFLAGS) \
        $(X11_INCLUDES)
@@ -73,7 +74,7 @@ $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME): $(OBJECTS) $(GLAPI_LIB) Makefile
                $(GL_LIB_DEPS) $(OBJECTS) $(GLAPI_LIB)
 
 $(GLAPI_LIB):
-       @$(MAKE) -C $(TOP)/src/mesa libglapi.a
+       @$(MAKE) -C $(TOP)/src/mapi/glapi
 
 depend: $(SOURCES) Makefile
        rm -f depend
diff --git a/src/mapi/es1api/Makefile b/src/mapi/es1api/Makefile
new file mode 100644 (file)
index 0000000..9130d0b
--- /dev/null
@@ -0,0 +1,60 @@
+# src/mapi/es1api/Makefile
+
+TOP := ../../..
+include $(TOP)/configs/current
+
+# this Makefile can build both libes1api.a and libes2api.a
+ifeq ($(ES),)
+ES := es1
+endif
+
+ESAPI = $(ES)api
+
+GLAPI := ../glapi
+include $(GLAPI)/sources.mak
+ESAPI_SOURCES := $(addprefix $(GLAPI)/, $(GLAPI_SOURCES))
+ESAPI_OBJECTS := $(GLAPI_SOURCES:.c=.o)
+ESAPI_ASM_SOURCES := $(addprefix glapi/, $(GLAPI_ASM_SOURCES))
+ESAPI_ASM_OBJECTS := $(GLAPI_ASM_SOURCES:.S=.o)
+
+INCLUDE_DIRS = \
+       -I$(TOP)/include \
+       -I$(TOP)/src/mapi/$(ESAPI) \
+       -I$(TOP)/src/mapi \
+       -I$(TOP)/src/mesa
+
+.PHONY: default
+default: depend lib$(ESAPI).a
+
+lib$(ESAPI).a: $(ESAPI_OBJECTS) $(ESAPI_ASM_OBJECTS)
+       @$(MKLIB) -o $(ESAPI) -static $(ESAPI_OBJECTS) $(ESAPI_ASM_OBJECTS)
+
+$(ESAPI_OBJECTS): %.o: $(GLAPI)/%.c
+       $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) $< -o $@
+
+$(ESAPI_ASM_OBJECTS): %.o: glapi/%.S
+       $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) $< -o $@
+
+$(ESAPI_SOURCES) $(ESAPI_ASM_SOURCES): | glapi-stamp
+
+glapi-stamp:
+       @$(MAKE) -C $(GLAPI)/gen-es $(ES)
+       @touch $@
+
+.PHONY: clean
+clean:
+       -rm -f $(ESAPI_OBJECTS) $(ESAPI_ASM_OBJECTS)
+       -rm -f lib$(ESAPI).a
+       -rm -f depend depend.bak
+       @$(MAKE) -C $(GLAPI)/gen-es clean-$(ES)
+       -rm -f glapi-stamp
+
+# nothing to install
+install:
+
+depend: $(ESAPI_SOURCES)
+       @echo "running $(MKDEP)"
+       @touch depend
+       @$(MKDEP) $(MKDEP_OPTIONS) -f- $(DEFINES) $(INCLUDE_DIRS) \
+               $(ESAPI_SOURCES) 2>/dev/null | \
+               sed -e 's,^$(GLAPI)/,,' > depend
diff --git a/src/mapi/es2api/Makefile b/src/mapi/es2api/Makefile
new file mode 100644 (file)
index 0000000..21816a6
--- /dev/null
@@ -0,0 +1,3 @@
+# src/mapi/es2api/Makefile
+ES := es2
+include ../es1api/Makefile
diff --git a/src/mapi/glapi/.gitignore b/src/mapi/glapi/.gitignore
new file mode 100644 (file)
index 0000000..e706bc2
--- /dev/null
@@ -0,0 +1,11 @@
+.cvsignore
+glX_proto_common.pyo
+glX_proto_common.pyc
+typeexpr.pyo
+typeexpr.pyc
+license.pyo
+license.pyc
+gl_XML.pyo
+gl_XML.pyc
+glX_XML.pyo
+glX_XML.pyc
diff --git a/src/mapi/glapi/Makefile b/src/mapi/glapi/Makefile
new file mode 100644 (file)
index 0000000..13c8c54
--- /dev/null
@@ -0,0 +1,38 @@
+# src/mapi/glapi/Makefile
+
+TOP = ../../..
+include $(TOP)/configs/current
+
+include sources.mak
+GLAPI_OBJECTS = $(GLAPI_SOURCES:.c=.o)
+GLAPI_ASM_OBJECTS = $(GLAPI_ASM_SOURCES:.S=.o)
+
+INCLUDE_DIRS = \
+       -I$(TOP)/include \
+       -I$(TOP)/src/mapi \
+       -I$(TOP)/src/mesa
+
+default: depend libglapi.a
+
+libglapi.a: $(GLAPI_OBJECTS) $(GLAPI_ASM_OBJECTS)
+       @ $(MKLIB) -o glapi -static $(GLAPI_OBJECTS) $(GLAPI_ASM_OBJECTS)
+
+$(GLAPI_OBJECTS): %.o: %.c
+       $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) $< -o $@
+
+$(GLAPI_ASM_OBJECTS): %.o: %.S
+       $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) $< -o $@
+
+install:
+
+clean:
+       -rm -f $(GLAPI_OBJECTS) $(GLAPI_ASM_OBJECTS)
+       -rm -f depend depend.bak libglapi.a
+
+depend: $(GLAPI_SOURCES)
+       @ echo "running $(MKDEP)"
+       @ touch depend
+       @$(MKDEP) $(MKDEP_OPTIONS) $(DEFINES) $(INCLUDE_DIRS) $(GLAPI_SOURCES) \
+               > /dev/null 2>/dev/null
+
+-include depend
diff --git a/src/mapi/glapi/SConscript b/src/mapi/glapi/SConscript
new file mode 100644 (file)
index 0000000..1ace2e6
--- /dev/null
@@ -0,0 +1,64 @@
+#######################################################################
+# SConscript for Mesa
+
+
+Import('*')
+
+if env['platform'] != 'winddk':
+
+       env = env.Clone()
+       
+       env.Append(CPPPATH = [
+               '#/src/mapi',
+               '#/src/mesa',
+       ])
+       
+       glapi_sources = [
+               'glapi.c',
+               'glapi_dispatch.c',
+               'glapi_entrypoint.c',
+               'glapi_execmem.c',
+               'glapi_getproc.c',
+               'glapi_nop.c',
+               'glthread.c',
+       ]
+       
+       #
+       # Assembly sources
+       #
+       if gcc and env['machine'] == 'x86':
+               env.Append(CPPDEFINES = [
+                       'USE_X86_ASM', 
+                       'USE_MMX_ASM',
+                       'USE_3DNOW_ASM',
+                       'USE_SSE_ASM',
+               ])
+               glapi_sources += [
+                       'glapi_x86.S',
+               ]
+       elif gcc and env['machine'] == 'x86_64':
+               env.Append(CPPDEFINES = [
+                       'USE_X86_64_ASM', 
+               ])
+               glapi_sources += [
+                       'glapi_x86-64.S'
+               ]
+       elif gcc and env['machine'] == 'ppc':
+               env.Append(CPPDEFINES = [
+                       'USE_PPC_ASM', 
+                       'USE_VMX_ASM', 
+               ])
+               glapi_sources += [
+               ]
+       elif gcc and env['machine'] == 'sparc':
+               glapi_sources += [
+                       'glapi_sparc.S'
+               ]
+       else:
+               pass
+       
+       glapi = env.ConvenienceLibrary(
+               target = 'glapi',
+               source = glapi_sources,
+       )
+       Export('glapi')
diff --git a/src/mapi/glapi/gen-es/Makefile b/src/mapi/glapi/gen-es/Makefile
new file mode 100644 (file)
index 0000000..bda8e9e
--- /dev/null
@@ -0,0 +1,96 @@
+TOP = ../../../..
+GLAPI = ../gen
+include $(TOP)/configs/current
+
+OUTPUTS :=                     \
+       glapi/glapidispatch.h   \
+       glapi/glapioffsets.h    \
+       glapi/glapitable.h      \
+       glapi/glapitemp.h       \
+       glapi/glprocs.h         \
+       glapi/glapi_sparc.S     \
+       glapi/glapi_x86-64.S    \
+       glapi/glapi_x86.S       \
+       main/remap_helper.h
+
+COMMON = gl_XML.py glX_XML.py license.py typeexpr.py
+COMMON := $(addprefix $(GLAPI)/, $(COMMON))
+
+ES1_APIXML := es1_API.xml
+ES2_APIXML := es2_API.xml
+ES1_OUTPUT_DIR := $(TOP)/src/mapi/es1api
+ES2_OUTPUT_DIR := $(TOP)/src/mapi/es2api
+
+ES1_DEPS = $(ES1_APIXML) base1_API.xml es1_EXT.xml es_EXT.xml \
+          es1_COMPAT.xml es_COMPAT.xml
+ES2_DEPS = $(ES2_APIXML) base2_API.xml es2_EXT.xml es_EXT.xml \
+          es2_COMPAT.xml es_COMPAT.xml
+
+ES1_OUTPUTS := $(addprefix $(ES1_OUTPUT_DIR)/, $(OUTPUTS))
+ES2_OUTPUTS := $(addprefix $(ES2_OUTPUT_DIR)/, $(OUTPUTS))
+
+all: es1 es2
+
+es1: $(ES1_OUTPUTS)
+es2: $(ES2_OUTPUTS)
+
+$(ES1_OUTPUTS): APIXML := $(ES1_APIXML)
+$(ES2_OUTPUTS): APIXML := $(ES2_APIXML)
+$(ES1_OUTPUTS): $(ES1_DEPS)
+$(ES2_OUTPUTS): $(ES2_DEPS)
+
+define gen-glapi
+       @mkdir -p $(dir $@)
+       $(PYTHON2) $(PYTHON_FLAGS) $< -f $(APIXML) $(1) > $@
+endef
+
+%/glapidispatch.h: $(GLAPI)/gl_table.py $(COMMON)
+       $(call gen-glapi,-c -m remap_table)
+
+%/glapioffsets.h: $(GLAPI)/gl_offsets.py $(COMMON)
+       $(call gen-glapi,-c)
+
+%/glapitable.h: $(GLAPI)/gl_table.py $(COMMON)
+       $(call gen-glapi,-c)
+
+%/glapitemp.h: $(GLAPI)/gl_apitemp.py $(COMMON)
+       $(call gen-glapi,-c)
+
+%/glprocs.h: $(GLAPI)/gl_procs.py $(COMMON)
+       $(call gen-glapi,-c)
+
+%/glapi_sparc.S: $(GLAPI)/gl_SPARC_asm.py $(COMMON)
+       $(call gen-glapi)
+
+%/glapi_x86-64.S: $(GLAPI)/gl_x86-64_asm.py $(COMMON)
+       $(call gen-glapi)
+
+%/glapi_x86.S: $(GLAPI)/gl_x86_asm.py $(COMMON)
+       $(call gen-glapi)
+
+%/main/remap_helper.h: $(GLAPI)/remap_helper.py $(COMMON)
+       $(call gen-glapi)
+
+verify_xml:
+       @if [ ! -f gl.h ]; then \
+               echo "Please copy gl.h and gl2.h to this directory"; \
+               exit 1; \
+       fi
+       @echo "Verifying that es1_API.xml covers OpenGL ES 1.1..."
+       @$(PYTHON2) $(PYTHON_FLAGS) gl_parse_header.py gl.h > tmp.xml
+       @$(PYTHON2) $(PYTHON_FLAGS) gl_compare.py difference tmp.xml es1_API.xml
+       @echo "Verifying that es2_API.xml covers OpenGL ES 2.0..."
+       @$(PYTHON2) $(PYTHON_FLAGS) gl_parse_header.py gl2.h > tmp.xml
+       @$(PYTHON2) $(PYTHON_FLAGS) gl_compare.py difference tmp.xml es2_API.xml
+       @rm -f tmp.xml
+
+clean-es1:
+       -rm -rf $(ES1_OUTPUT_DIR)/glapi
+       -rm -rf $(ES1_OUTPUT_DIR)/main
+
+clean-es2:
+       -rm -rf $(ES2_OUTPUT_DIR)/glapi
+       -rm -rf $(ES2_OUTPUT_DIR)/main
+
+clean: clean-es1 clean-es2
+       -rm -f *~ *.pyc *.pyo
diff --git a/src/mapi/glapi/gen-es/base1_API.xml b/src/mapi/glapi/gen-es/base1_API.xml
new file mode 100644 (file)
index 0000000..720be25
--- /dev/null
@@ -0,0 +1,744 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "../gen/gl_API.dtd">
+
+<!-- OpenGL and OpenGL ES 1.x APIs
+     This file defines the base categories that can be shared by all APIs.
+     They are defined in an incremental fashion.
+-->
+
+<OpenGLAPI>
+
+<!-- base subset of OpenGL 1.0 -->
+<category name="base1.0">
+    <enum name="FALSE"                                    value="0x0"/>
+    <enum name="TRUE"                                     value="0x1"/>
+    <enum name="ZERO"                                     value="0x0"/>
+    <enum name="ONE"                                      value="0x1"/>
+    <enum name="NO_ERROR"                                 value="0x0"/>
+
+    <enum name="POINTS"                                   value="0x0000"/>
+    <enum name="LINES"                                    value="0x0001"/>
+    <enum name="LINE_LOOP"                                value="0x0002"/>
+    <enum name="LINE_STRIP"                               value="0x0003"/>
+    <enum name="TRIANGLES"                                value="0x0004"/>
+    <enum name="TRIANGLE_STRIP"                           value="0x0005"/>
+    <enum name="TRIANGLE_FAN"                             value="0x0006"/>
+    <enum name="NEVER"                                    value="0x0200"/>
+    <enum name="LESS"                                     value="0x0201"/>
+    <enum name="EQUAL"                                    value="0x0202"/>
+    <enum name="LEQUAL"                                   value="0x0203"/>
+    <enum name="GREATER"                                  value="0x0204"/>
+    <enum name="NOTEQUAL"                                 value="0x0205"/>
+    <enum name="GEQUAL"                                   value="0x0206"/>
+    <enum name="ALWAYS"                                   value="0x0207"/>
+    <enum name="SRC_COLOR"                                value="0x0300"/>
+    <enum name="ONE_MINUS_SRC_COLOR"                      value="0x0301"/>
+    <enum name="SRC_ALPHA"                                value="0x0302"/>
+    <enum name="ONE_MINUS_SRC_ALPHA"                      value="0x0303"/>
+    <enum name="DST_ALPHA"                                value="0x0304"/>
+    <enum name="ONE_MINUS_DST_ALPHA"                      value="0x0305"/>
+    <enum name="DST_COLOR"                                value="0x0306"/>
+    <enum name="ONE_MINUS_DST_COLOR"                      value="0x0307"/>
+    <enum name="SRC_ALPHA_SATURATE"                       value="0x0308"/>
+    <enum name="FRONT"                                    value="0x0404"/>
+    <enum name="BACK"                                     value="0x0405"/>
+    <enum name="FRONT_AND_BACK"                           value="0x0408"/>
+    <enum name="INVALID_ENUM"                             value="0x0500"/>
+    <enum name="INVALID_VALUE"                            value="0x0501"/>
+    <enum name="INVALID_OPERATION"                        value="0x0502"/>
+    <enum name="OUT_OF_MEMORY"                            value="0x0505"/>
+    <enum name="CW"                                       value="0x0900"/>
+    <enum name="CCW"                                      value="0x0901"/>
+    <enum name="CULL_FACE"                     count="1"  value="0x0B44">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DEPTH_TEST"                    count="1"  value="0x0B71">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_TEST"                  count="1"  value="0x0B90">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DITHER"                        count="1"  value="0x0BD0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLEND"                         count="1"  value="0x0BE2">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SCISSOR_TEST"                  count="1"  value="0x0C11">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="UNPACK_ALIGNMENT"              count="1"  value="0x0CF5">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PACK_ALIGNMENT"                count="1"  value="0x0D05">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_TEXTURE_SIZE"              count="1"  value="0x0D33">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_VIEWPORT_DIMS"             count="2"  value="0x0D3A">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SUBPIXEL_BITS"                 count="1"  value="0x0D50">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="RED_BITS"                      count="1"  value="0x0D52">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="GREEN_BITS"                    count="1"  value="0x0D53">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLUE_BITS"                     count="1"  value="0x0D54">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ALPHA_BITS"                    count="1"  value="0x0D55">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DEPTH_BITS"                    count="1"  value="0x0D56">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_BITS"                  count="1"  value="0x0D57">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_2D"                    count="1"  value="0x0DE1">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DONT_CARE"                                value="0x1100"/>
+    <enum name="FASTEST"                                  value="0x1101"/>
+    <enum name="NICEST"                                   value="0x1102"/>
+    <enum name="BYTE"                          count="1"  value="0x1400">
+        <size name="CallLists"/>
+    </enum>
+    <enum name="UNSIGNED_BYTE"                 count="1"  value="0x1401">
+        <size name="CallLists"/>
+    </enum>
+    <enum name="SHORT"                         count="2"  value="0x1402">
+        <size name="CallLists"/>
+    </enum>
+    <enum name="UNSIGNED_SHORT"                count="2"  value="0x1403">
+        <size name="CallLists"/>
+    </enum>
+    <enum name="FLOAT"                         count="4"  value="0x1406">
+        <size name="CallLists"/>
+    </enum>
+    <enum name="INVERT"                                   value="0x150A"/>
+    <enum name="TEXTURE"                                  value="0x1702"/>
+    <enum name="ALPHA"                                    value="0x1906"/>
+    <enum name="RGB"                                      value="0x1907"/>
+    <enum name="RGBA"                                     value="0x1908"/>
+    <enum name="LUMINANCE"                                value="0x1909"/>
+    <enum name="LUMINANCE_ALPHA"                          value="0x190A"/>
+    <enum name="KEEP"                                     value="0x1E00"/>
+    <enum name="REPLACE"                                  value="0x1E01"/>
+    <enum name="INCR"                                     value="0x1E02"/>
+    <enum name="DECR"                                     value="0x1E03"/>
+    <enum name="VENDOR"                                   value="0x1F00"/>
+    <enum name="RENDERER"                                 value="0x1F01"/>
+    <enum name="VERSION"                                  value="0x1F02"/>
+    <enum name="EXTENSIONS"                               value="0x1F03"/>
+    <enum name="NEAREST"                                  value="0x2600"/>
+    <enum name="LINEAR"                                   value="0x2601"/>
+    <enum name="NEAREST_MIPMAP_NEAREST"                   value="0x2700"/>
+    <enum name="LINEAR_MIPMAP_NEAREST"                    value="0x2701"/>
+    <enum name="NEAREST_MIPMAP_LINEAR"                    value="0x2702"/>
+    <enum name="LINEAR_MIPMAP_LINEAR"                     value="0x2703"/>
+    <enum name="TEXTURE_MAG_FILTER"            count="1"  value="0x2800">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_MIN_FILTER"            count="1"  value="0x2801">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_WRAP_S"                count="1"  value="0x2802">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_WRAP_T"                count="1"  value="0x2803">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="REPEAT"                                   value="0x2901"/>
+
+    <enum name="DEPTH_BUFFER_BIT"                         value="0x00000100"/>
+    <enum name="STENCIL_BUFFER_BIT"                       value="0x00000400"/>
+    <enum name="COLOR_BUFFER_BIT"                         value="0x00004000"/>
+
+    <type name="float"   size="4"  float="true"    glx_name="FLOAT32"/>
+    <type name="clampf"  size="4"  float="true"    glx_name="FLOAT32"/>
+
+    <type name="int"     size="4"                  glx_name="CARD32"/>
+    <type name="uint"    size="4"  unsigned="true" glx_name="CARD32"/>
+    <type name="sizei"   size="4"                  glx_name="CARD32"/>
+    <type name="enum"    size="4"  unsigned="true" glx_name="ENUM"/>
+    <type name="bitfield" size="4" unsigned="true" glx_name="CARD32"/>
+
+    <type name="short"   size="2"                  glx_name="CARD16"/>
+    <type name="ushort"  size="2"  unsigned="true" glx_name="CARD16"/>
+
+    <type name="byte"    size="1"                  glx_name="CARD8"/>
+    <type name="ubyte"   size="1"  unsigned="true" glx_name="CARD8"/>
+    <type name="boolean" size="1"  unsigned="true" glx_name="CARD8"/>
+
+    <type name="void"    size="1"/>
+
+    <function name="BlendFunc" offset="241">
+        <param name="sfactor" type="GLenum"/>
+        <param name="dfactor" type="GLenum"/>
+        <glx rop="160"/>
+    </function>
+
+    <function name="Clear" offset="203">
+        <param name="mask" type="GLbitfield"/>
+        <glx rop="127"/>
+    </function>
+
+    <function name="ClearColor" offset="206">
+        <param name="red" type="GLclampf"/>
+        <param name="green" type="GLclampf"/>
+        <param name="blue" type="GLclampf"/>
+        <param name="alpha" type="GLclampf"/>
+        <glx rop="130"/>
+    </function>
+
+    <function name="ClearStencil" offset="207">
+        <param name="s" type="GLint"/>
+        <glx rop="131"/>
+    </function>
+
+    <function name="ColorMask" offset="210">
+        <param name="red" type="GLboolean"/>
+        <param name="green" type="GLboolean"/>
+        <param name="blue" type="GLboolean"/>
+        <param name="alpha" type="GLboolean"/>
+        <glx rop="134"/>
+    </function>
+
+    <function name="CullFace" offset="152">
+        <param name="mode" type="GLenum"/>
+        <glx rop="79"/>
+    </function>
+
+    <function name="DepthFunc" offset="245">
+        <param name="func" type="GLenum"/>
+        <glx rop="164"/>
+    </function>
+
+    <function name="DepthMask" offset="211">
+        <param name="flag" type="GLboolean"/>
+        <glx rop="135"/>
+    </function>
+
+    <function name="Disable" offset="214">
+        <param name="cap" type="GLenum"/>
+        <glx rop="138" handcode="client"/>
+    </function>
+
+    <function name="Enable" offset="215">
+        <param name="cap" type="GLenum"/>
+        <glx rop="139" handcode="client"/>
+    </function>
+
+    <function name="Finish" offset="216">
+        <glx sop="108" handcode="true"/>
+    </function>
+
+    <function name="Flush" offset="217">
+        <glx sop="142" handcode="true"/>
+    </function>
+
+    <function name="FrontFace" offset="157">
+        <param name="mode" type="GLenum"/>
+        <glx rop="84"/>
+    </function>
+
+    <function name="GetError" offset="261">
+        <return type="GLenum"/>
+        <glx sop="115" handcode="client"/>
+    </function>
+
+    <function name="GetIntegerv" offset="263">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="117" handcode="client"/>
+    </function>
+
+    <function name="GetString" offset="275">
+        <param name="name" type="GLenum"/>
+        <return type="const GLubyte *"/>
+        <glx sop="129" handcode="true"/>
+    </function>
+
+    <function name="Hint" offset="158">
+        <param name="target" type="GLenum"/>
+        <param name="mode" type="GLenum"/>
+        <glx rop="85"/>
+    </function>
+
+    <function name="LineWidth" offset="168">
+        <param name="width" type="GLfloat"/>
+        <glx rop="95"/>
+    </function>
+
+    <function name="PixelStorei" offset="250">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx sop="110" handcode="client"/>
+    </function>
+
+    <function name="ReadPixels" offset="256">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="GLvoid *" output="true"  img_width="width" img_height="height" img_format="format" img_type="type" img_target="0"/>
+        <glx sop="111"/>
+    </function>
+
+    <function name="Scissor" offset="176">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <glx rop="103"/>
+    </function>
+
+    <function name="StencilFunc" offset="243">
+        <param name="func" type="GLenum"/>
+        <param name="ref" type="GLint"/>
+        <param name="mask" type="GLuint"/>
+        <glx rop="162"/>
+    </function>
+
+    <function name="StencilMask" offset="209">
+        <param name="mask" type="GLuint"/>
+        <glx rop="133"/>
+    </function>
+
+    <function name="StencilOp" offset="244">
+        <param name="fail" type="GLenum"/>
+        <param name="zfail" type="GLenum"/>
+        <param name="zpass" type="GLenum"/>
+        <glx rop="163"/>
+    </function>
+
+    <function name="TexParameterf" offset="178">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="105"/>
+    </function>
+
+    <function name="Viewport" offset="305">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <glx rop="191"/>
+    </function>
+
+    <!-- these are not in OpenGL ES 1.0 -->
+    <enum name="LINE_WIDTH"                    count="1"  value="0x0B21">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CULL_FACE_MODE"                count="1"  value="0x0B45">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FRONT_FACE"                    count="1"  value="0x0B46">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DEPTH_RANGE"                   count="2"  value="0x0B70">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DEPTH_WRITEMASK"               count="1"  value="0x0B72">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DEPTH_CLEAR_VALUE"             count="1"  value="0x0B73">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DEPTH_FUNC"                    count="1"  value="0x0B74">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_CLEAR_VALUE"           count="1"  value="0x0B91">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_FUNC"                  count="1"  value="0x0B92">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_VALUE_MASK"            count="1"  value="0x0B93">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_FAIL"                  count="1"  value="0x0B94">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_PASS_DEPTH_FAIL"       count="1"  value="0x0B95">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_PASS_DEPTH_PASS"       count="1"  value="0x0B96">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_REF"                   count="1"  value="0x0B97">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_WRITEMASK"             count="1"  value="0x0B98">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VIEWPORT"                      count="4"  value="0x0BA2">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SCISSOR_BOX"                   count="4"  value="0x0C10">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_CLEAR_VALUE"             count="4"  value="0x0C22">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_WRITEMASK"               count="4"  value="0x0C23">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="TexParameterfv" offset="179">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="106"/>
+    </function>
+
+    <function name="TexParameteri" offset="180">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="107"/>
+    </function>
+
+    <function name="TexParameteriv" offset="181">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="108"/>
+    </function>
+
+    <function name="GetBooleanv" offset="258">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLboolean *" output="true" variable_param="pname"/>
+        <glx sop="112" handcode="client"/>
+    </function>
+
+    <function name="GetFloatv" offset="262">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="116" handcode="client"/>
+    </function>
+
+    <function name="GetTexParameterfv" offset="282">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="136"/>
+    </function>
+
+    <function name="GetTexParameteriv" offset="283">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="137"/>
+    </function>
+
+    <function name="IsEnabled" offset="286">
+        <param name="cap" type="GLenum"/>
+        <return type="GLboolean"/>
+        <glx sop="140" handcode="client"/>
+    </function>
+</category>
+
+<!-- base subset of OpenGL 1.1 -->
+<category name="base1.1">
+    <enum name="POLYGON_OFFSET_FILL"                      value="0x8037"/>
+
+    <function name="BindTexture" offset="307">
+        <param name="target" type="GLenum"/>
+        <param name="texture" type="GLuint"/>
+        <glx rop="4117"/>
+    </function>
+
+    <function name="CopyTexImage2D" offset="324">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <glx rop="4120"/>
+    </function>
+
+    <function name="CopyTexSubImage2D" offset="326">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <glx rop="4122"/>
+    </function>
+
+    <function name="DeleteTextures" offset="327">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="textures" type="const GLuint *" count="n"/>
+        <glx sop="144"/>
+    </function>
+
+    <function name="DrawArrays" offset="310">
+        <param name="mode" type="GLenum"/>
+        <param name="first" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <glx rop="193" handcode="true"/>
+    </function>
+
+    <function name="DrawElements" offset="311">
+        <param name="mode" type="GLenum"/>
+        <param name="count" type="GLsizei"/>
+        <param name="type" type="GLenum"/>
+        <param name="indices" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="GenTextures" offset="328">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="textures" type="GLuint *" output="true" count="n"/>
+        <glx sop="145" always_array="true"/>
+    </function>
+
+    <function name="PolygonOffset" offset="319">
+        <param name="factor" type="GLfloat"/>
+        <param name="units" type="GLfloat"/>
+        <glx rop="192"/>
+    </function>
+
+    <function name="TexSubImage2D" offset="333">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="UNUSED" type="GLuint" padding="true"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_xoff="xoffset" img_yoff="yoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
+        <glx rop="4100" large="true"/>
+    </function>
+
+    <!-- these are not in OpenGL ES 1.0 -->
+    <enum name="POLYGON_OFFSET_UNITS"          count="1"  value="0x2A00">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POLYGON_OFFSET_FACTOR"         count="1"  value="0x8038">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_BINDING_2D"            count="1"  value="0x8069">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="IsTexture" offset="330">
+        <param name="texture" type="GLuint"/>
+        <return type="GLboolean"/>
+        <glx sop="146"/>
+    </function>
+</category>
+
+<!-- base subset of OpenGL 1.2 -->
+<category name="base1.2">
+    <enum name="UNSIGNED_SHORT_4_4_4_4"                   value="0x8033"/>
+    <enum name="UNSIGNED_SHORT_5_5_5_1"                   value="0x8034"/>
+    <enum name="CLAMP_TO_EDGE"                            value="0x812F"/>
+    <enum name="UNSIGNED_SHORT_5_6_5"                     value="0x8363"/>
+    <enum name="ALIASED_POINT_SIZE_RANGE"      count="2"  value="0x846D">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ALIASED_LINE_WIDTH_RANGE"      count="2"  value="0x846E">
+        <size name="Get" mode="get"/>
+    </enum>
+</category>
+
+<!-- base subset of OpenGL 1.3 -->
+<category name="base1.3">
+    <enum name="SAMPLE_ALPHA_TO_COVERAGE"      count="1"  value="0x809E">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLE_COVERAGE"               count="1"  value="0x80A0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE0"                                 value="0x84C0"/>
+    <enum name="TEXTURE1"                                 value="0x84C1"/>
+    <enum name="TEXTURE2"                                 value="0x84C2"/>
+    <enum name="TEXTURE3"                                 value="0x84C3"/>
+    <enum name="TEXTURE4"                                 value="0x84C4"/>
+    <enum name="TEXTURE5"                                 value="0x84C5"/>
+    <enum name="TEXTURE6"                                 value="0x84C6"/>
+    <enum name="TEXTURE7"                                 value="0x84C7"/>
+    <enum name="TEXTURE8"                                 value="0x84C8"/>
+    <enum name="TEXTURE9"                                 value="0x84C9"/>
+    <enum name="TEXTURE10"                                value="0x84CA"/>
+    <enum name="TEXTURE11"                                value="0x84CB"/>
+    <enum name="TEXTURE12"                                value="0x84CC"/>
+    <enum name="TEXTURE13"                                value="0x84CD"/>
+    <enum name="TEXTURE14"                                value="0x84CE"/>
+    <enum name="TEXTURE15"                                value="0x84CF"/>
+    <enum name="TEXTURE16"                                value="0x84D0"/>
+    <enum name="TEXTURE17"                                value="0x84D1"/>
+    <enum name="TEXTURE18"                                value="0x84D2"/>
+    <enum name="TEXTURE19"                                value="0x84D3"/>
+    <enum name="TEXTURE20"                                value="0x84D4"/>
+    <enum name="TEXTURE21"                                value="0x84D5"/>
+    <enum name="TEXTURE22"                                value="0x84D6"/>
+    <enum name="TEXTURE23"                                value="0x84D7"/>
+    <enum name="TEXTURE24"                                value="0x84D8"/>
+    <enum name="TEXTURE25"                                value="0x84D9"/>
+    <enum name="TEXTURE26"                                value="0x84DA"/>
+    <enum name="TEXTURE27"                                value="0x84DB"/>
+    <enum name="TEXTURE28"                                value="0x84DC"/>
+    <enum name="TEXTURE29"                                value="0x84DD"/>
+    <enum name="TEXTURE30"                                value="0x84DE"/>
+    <enum name="TEXTURE31"                                value="0x84DF"/>
+    <enum name="NUM_COMPRESSED_TEXTURE_FORMATS" count="1" value="0x86A2">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COMPRESSED_TEXTURE_FORMATS"    count="-1"  value="0x86A3">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="ActiveTexture" offset="374">
+        <param name="texture" type="GLenum"/>
+        <glx rop="197"/>
+    </function>
+
+    <function name="CompressedTexImage2D" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="imageSize" type="GLsizei" counter="true"/>
+        <param name="data" type="const GLvoid *" count="imageSize"/>
+        <glx rop="215" handcode="client"/>
+    </function>
+
+    <function name="CompressedTexSubImage2D" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="imageSize" type="GLsizei" counter="true"/>
+        <param name="data" type="const GLvoid *" count="imageSize"/>
+        <glx rop="218" handcode="client"/>
+    </function>
+
+    <function name="SampleCoverage" offset="assign">
+        <param name="value" type="GLclampf"/>
+        <param name="invert" type="GLboolean"/>
+        <glx rop="229"/>
+    </function>
+
+    <!-- these are not in OpenGL ES 1.0 -->
+    <enum name="SAMPLE_BUFFERS"                count="1"  value="0x80A8">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLES"                       count="1"  value="0x80A9">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLE_COVERAGE_VALUE"         count="1"  value="0x80AA">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLE_COVERAGE_INVERT"        count="1"  value="0x80AB">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ACTIVE_TEXTURE"                count="1"  value="0x84E0">
+        <size name="Get" mode="get"/>
+    </enum>
+</category>
+
+<!-- base subset of OpenGL 1.4 -->
+<category name="base1.4">
+    <enum name="GENERATE_MIPMAP_HINT"                     value="0x8192"/>
+</category>
+
+<!-- base subset of OpenGL 1.5 -->
+<category name="base1.5">
+    <enum name="BUFFER_SIZE"                              value="0x8764"/>
+    <enum name="BUFFER_USAGE"                             value="0x8765"/>
+    <enum name="ARRAY_BUFFER"                             value="0x8892"/>
+    <enum name="ELEMENT_ARRAY_BUFFER"                     value="0x8893"/>
+    <enum name="ARRAY_BUFFER_BINDING"                     value="0x8894"/>
+    <enum name="ELEMENT_ARRAY_BUFFER_BINDING"             value="0x8895"/>
+    <enum name="STATIC_DRAW"                              value="0x88E4"/>
+    <enum name="DYNAMIC_DRAW"                             value="0x88E8"/>
+
+    <type name="intptr"   size="4"                  glx_name="CARD32"/>
+    <type name="sizeiptr" size="4"                  glx_name="CARD32"/>
+
+    <function name="BindBuffer" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="buffer" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="BufferData" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="size" type="GLsizeiptr" counter="true"/>
+        <param name="data" type="const GLvoid *" count="size" img_null_flag="true"/>
+        <param name="usage" type="GLenum"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="BufferSubData" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="offset" type="GLintptr"/>
+        <param name="size" type="GLsizeiptr" counter="true"/>
+        <param name="data" type="const GLvoid *" count="size"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="DeleteBuffers" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="buffer" type="const GLuint *" count="n"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GenBuffers" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="buffer" type="GLuint *" output="true" count="n"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetBufferParameteriv" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="IsBuffer" offset="assign">
+        <param name="buffer" type="GLuint"/>
+        <return type="GLboolean"/>
+        <glx ignore="true"/>
+    </function>
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen-es/base2_API.xml b/src/mapi/glapi/gen-es/base2_API.xml
new file mode 100644 (file)
index 0000000..b59ef62
--- /dev/null
@@ -0,0 +1,533 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "../gen/gl_API.dtd">
+
+<!-- OpenGL and OpenGL ES 2.x APIs -->
+
+<OpenGLAPI>
+
+<xi:include href="base1_API.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<!-- base subset of OpenGL 2.0 -->
+<category name="base2.0">
+    <enum name="BLEND_EQUATION_RGB"            count="1"  value="0x8009"> <!-- same as BLEND_EQUATION -->
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ATTRIB_ARRAY_ENABLED"   count="1"  value="0x8622">
+        <size name="GetVertexAttribdv" mode="get"/>
+        <size name="GetVertexAttribfv" mode="get"/>
+        <size name="GetVertexAttribiv" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ATTRIB_ARRAY_SIZE"      count="1"  value="0x8623">
+        <size name="GetVertexAttribdv" mode="get"/>
+        <size name="GetVertexAttribfv" mode="get"/>
+        <size name="GetVertexAttribiv" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ATTRIB_ARRAY_STRIDE"     count="1" value="0x8624">
+        <size name="GetVertexAttribdv" mode="get"/>
+        <size name="GetVertexAttribfv" mode="get"/>
+        <size name="GetVertexAttribiv" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ATTRIB_ARRAY_TYPE"      count="1"  value="0x8625">
+        <size name="GetVertexAttribdv" mode="get"/>
+        <size name="GetVertexAttribfv" mode="get"/>
+        <size name="GetVertexAttribiv" mode="get"/>
+    </enum>
+    <enum name="CURRENT_VERTEX_ATTRIB"         count="1"  value="0x8626">
+        <size name="GetVertexAttribdv" mode="get"/>
+        <size name="GetVertexAttribfv" mode="get"/>
+        <size name="GetVertexAttribiv" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ATTRIB_ARRAY_POINTER"              value="0x8645"/>
+    <enum name="STENCIL_BACK_FUNC"             count="1"  value="0x8800">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_BACK_FAIL"             count="1"  value="0x8801">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_BACK_PASS_DEPTH_FAIL"  count="1"  value="0x8802">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_BACK_PASS_DEPTH_PASS"  count="1"  value="0x8803">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLEND_EQUATION_ALPHA"          count="1"  value="0x883D">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_VERTEX_ATTRIBS"            count="1"  value="0x8869">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ATTRIB_ARRAY_NORMALIZED"           value="0x886A"/>
+    <enum name="MAX_TEXTURE_IMAGE_UNITS"       count="1"  value="0x8872">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FRAGMENT_SHADER"                          value="0x8B30"/>
+    <enum name="VERTEX_SHADER"                            value="0x8B31"/>
+    <enum name="MAX_VERTEX_TEXTURE_IMAGE_UNITS"           value="0x8B4C"/>
+    <enum name="MAX_COMBINED_TEXTURE_IMAGE_UNITS"         value="0x8B4D"/>
+    <enum name="SHADER_TYPE"                              value="0x8B4F"/>
+    <enum name="FLOAT_VEC2"                               value="0x8B50"/>
+    <enum name="FLOAT_VEC3"                               value="0x8B51"/>
+    <enum name="FLOAT_VEC4"                               value="0x8B52"/>
+    <enum name="INT_VEC2"                                 value="0x8B53"/>
+    <enum name="INT_VEC3"                                 value="0x8B54"/>
+    <enum name="INT_VEC4"                                 value="0x8B55"/>
+    <enum name="BOOL"                                     value="0x8B56"/>
+    <enum name="BOOL_VEC2"                                value="0x8B57"/>
+    <enum name="BOOL_VEC3"                                value="0x8B58"/>
+    <enum name="BOOL_VEC4"                                value="0x8B59"/>
+    <enum name="FLOAT_MAT2"                               value="0x8B5A"/>
+    <enum name="FLOAT_MAT3"                               value="0x8B5B"/>
+    <enum name="FLOAT_MAT4"                               value="0x8B5C"/>
+    <enum name="SAMPLER_2D"                               value="0x8B5E"/>
+    <enum name="SAMPLER_CUBE"                             value="0x8B60"/>
+    <enum name="DELETE_STATUS"                            value="0x8B80"/>
+    <enum name="COMPILE_STATUS"                           value="0x8B81"/>
+    <enum name="LINK_STATUS"                              value="0x8B82"/>
+    <enum name="VALIDATE_STATUS"                          value="0x8B83"/>
+    <enum name="INFO_LOG_LENGTH"                          value="0x8B84"/>
+    <enum name="ATTACHED_SHADERS"                         value="0x8B85"/>
+    <enum name="ACTIVE_UNIFORMS"                          value="0x8B86"/>
+    <enum name="ACTIVE_UNIFORM_MAX_LENGTH"                value="0x8B87"/>
+    <enum name="SHADER_SOURCE_LENGTH"                     value="0x8B88"/>
+    <enum name="ACTIVE_ATTRIBUTES"                        value="0x8B89"/>
+    <enum name="ACTIVE_ATTRIBUTE_MAX_LENGTH"              value="0x8B8A"/>
+    <enum name="SHADING_LANGUAGE_VERSION"                 value="0x8B8C"/>
+    <enum name="CURRENT_PROGRAM"                          value="0x8B8D"/>
+    <enum name="STENCIL_BACK_REF"                         value="0x8CA3"/>
+    <enum name="STENCIL_BACK_VALUE_MASK"                  value="0x8CA4"/>
+    <enum name="STENCIL_BACK_WRITEMASK"                   value="0x8CA5"/>
+
+    <type name="char"    size="1"                  glx_name="CARD8"/>
+
+    <function name="AttachShader" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="shader" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="BindAttribLocation" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="index" type="GLuint"/>
+        <param name="name" type="const GLchar *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="BlendEquationSeparate" offset="assign">
+        <param name="modeRGB" type="GLenum"/>
+        <param name="modeA" type="GLenum"/>
+        <glx rop="4228"/>
+    </function>
+
+    <function name="CompileShader" offset="assign">
+        <param name="shader" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="CreateProgram" offset="assign">
+        <return type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="CreateShader" offset="assign">
+        <param name="type" type="GLenum"/>
+        <return type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="DeleteProgram" offset="assign">
+        <param name="program" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="DeleteShader" offset="assign">
+        <param name="program" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="DetachShader" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="shader" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="DisableVertexAttribArray" offset="assign">
+        <param name="index" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="EnableVertexAttribArray" offset="assign">
+        <param name="index" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetActiveAttrib" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="index" type="GLuint"/>
+        <param name="bufSize" type="GLsizei "/>
+        <param name="length" type="GLsizei *" output="true"/>
+        <param name="size" type="GLint *" output="true"/>
+        <param name="type" type="GLenum *" output="true"/>
+        <param name="name" type="GLchar *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetActiveUniform" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="index" type="GLuint"/>
+        <param name="bufSize" type="GLsizei"/>
+        <param name="length" type="GLsizei *" output="true"/>
+        <param name="size" type="GLint *" output="true"/>
+        <param name="type" type="GLenum *" output="true"/>
+        <param name="name" type="GLchar *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetAttachedShaders" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="maxCount" type="GLsizei"/>
+        <param name="count" type="GLsizei *" output="true"/>
+        <param name="obj" type="GLuint *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetAttribLocation" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="name" type="const GLchar *"/>
+        <return type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetProgramiv" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetProgramInfoLog" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="bufSize" type="GLsizei"/>
+        <param name="length" type="GLsizei *"/>
+        <param name="infoLog" type="GLchar *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetShaderiv" offset="assign">
+        <param name="shader" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetShaderInfoLog" offset="assign">
+        <param name="shader" type="GLuint"/>
+        <param name="bufSize" type="GLsizei"/>
+        <param name="length" type="GLsizei *"/>
+        <param name="infoLog" type="GLchar *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetShaderSource" offset="assign">
+        <param name="shader" type="GLuint"/>
+        <param name="bufSize" type="GLsizei"/>
+        <param name="length" type="GLsizei *" output="true"/>
+        <param name="source" type="GLchar *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetUniformfv" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="location" type="GLint"/>
+        <param name="params" type="GLfloat *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetUniformiv" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="location" type="GLint"/>
+        <param name="params" type="GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetUniformLocation" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="name" type="const GLchar *"/>
+        <return type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetVertexAttribfv" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetVertexAttribiv" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetVertexAttribPointerv" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="pointer" type="GLvoid **" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="IsProgram" offset="assign">
+        <param name="program" type="GLuint"/>
+        <return type="GLboolean"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="IsShader" offset="assign">
+        <param name="shader" type="GLuint"/>
+        <return type="GLboolean"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="LinkProgram" offset="assign">
+        <param name="program" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="ShaderSource" offset="assign">
+        <param name="shader" type="GLuint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="string" type="const GLchar **"/>
+        <param name="length" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="StencilFuncSeparate" offset="assign">
+        <param name="face" type="GLenum"/>
+        <param name="func" type="GLenum"/>
+        <param name="ref" type="GLint"/>
+        <param name="mask" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="StencilOpSeparate" offset="assign">
+        <param name="face" type="GLenum"/>
+        <param name="sfail" type="GLenum"/>
+        <param name="zfail" type="GLenum"/>
+        <param name="zpass" type="GLenum"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="StencilMaskSeparate" offset="assign">
+        <param name="face" type="GLenum"/>
+        <param name="mask" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform1f" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform1fv" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform1i" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform1iv" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform2f" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLfloat"/>
+        <param name="v1" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform2fv" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform2i" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLint"/>
+        <param name="v1" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform2iv" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform3f" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLfloat"/>
+        <param name="v1" type="GLfloat"/>
+        <param name="v2" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform3fv" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform3i" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLint"/>
+        <param name="v1" type="GLint"/>
+        <param name="v2" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform3iv" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform4f" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLfloat"/>
+        <param name="v1" type="GLfloat"/>
+        <param name="v2" type="GLfloat"/>
+        <param name="v3" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform4fv" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform4i" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLint"/>
+        <param name="v1" type="GLint"/>
+        <param name="v2" type="GLint"/>
+        <param name="v3" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform4iv" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="UniformMatrix2fv" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="transpose" type="GLboolean"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="UniformMatrix3fv" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="transpose" type="GLboolean"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="UniformMatrix4fv" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="transpose" type="GLboolean"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="UseProgram" offset="assign">
+        <param name="program" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="ValidateProgram" offset="assign">
+        <param name="program" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="VertexAttrib1f" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+    </function>
+
+    <function name="VertexAttrib1fv" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="VertexAttrib2f" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+    </function>
+
+    <function name="VertexAttrib2fv" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="VertexAttrib3f" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="VertexAttrib3fv" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="VertexAttrib4f" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <param name="w" type="GLfloat"/>
+    </function>
+
+    <function name="VertexAttrib4fv" offset="assign">
+       <param name="index" type="GLuint"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="VertexAttribPointer" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="normalized" type="GLboolean"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+    </function>
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen-es/es1_API.xml b/src/mapi/glapi/gen-es/es1_API.xml
new file mode 100644 (file)
index 0000000..3428ae5
--- /dev/null
@@ -0,0 +1,1100 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "../gen/gl_API.dtd">
+
+<!-- OpenGL ES 1.x API -->
+
+<OpenGLAPI>
+
+<xi:include href="base1_API.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<!-- core subset of OpenGL 1.3 defined in OpenGL ES 1.0 -->
+<category name="core1.0">
+    <!-- addition to base1.0 -->
+    <enum name="ADD"                                      value="0x0104"/>
+    <enum name="STACK_OVERFLOW"                           value="0x0503"/>
+    <enum name="STACK_UNDERFLOW"                          value="0x0504"/>
+    <enum name="EXP"                                      value="0x0800"/>
+    <enum name="EXP2"                                     value="0x0801"/>
+    <enum name="POINT_SMOOTH"                  count="1"  value="0x0B10">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LINE_SMOOTH"                   count="1"  value="0x0B20">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHTING"                      count="1"  value="0x0B50">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT_MODEL_TWO_SIDE"          count="1"  value="0x0B52">
+        <size name="LightModelfv"/>
+        <size name="LightModeliv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT_MODEL_AMBIENT"           count="4"  value="0x0B53">
+        <size name="LightModelfv"/>
+        <size name="LightModeliv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_MATERIAL"                count="1"  value="0x0B57">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG"                           count="1"  value="0x0B60">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_DENSITY"                   count="1"  value="0x0B62">
+        <size name="Fogfv"/>
+        <size name="Fogiv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_START"                     count="1"  value="0x0B63">
+        <size name="Fogfv"/>
+        <size name="Fogiv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_END"                       count="1"  value="0x0B64">
+        <size name="Fogfv"/>
+        <size name="Fogiv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_MODE"                      count="1"  value="0x0B65">
+        <size name="Fogfv"/>
+        <size name="Fogiv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_COLOR"                     count="4"  value="0x0B66">
+        <size name="Fogfv"/>
+        <size name="Fogiv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="NORMALIZE"                     count="1"  value="0x0BA1">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ALPHA_TEST"                    count="1"  value="0x0BC0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PERSPECTIVE_CORRECTION_HINT"   count="1"  value="0x0C50">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POINT_SMOOTH_HINT"             count="1"  value="0x0C51">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LINE_SMOOTH_HINT"              count="1"  value="0x0C52">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POLYGON_SMOOTH_HINT"           count="1"  value="0x0C53">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_HINT"                      count="1"  value="0x0C54">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_LIGHTS"                    count="1"  value="0x0D31">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_MODELVIEW_STACK_DEPTH"     count="1"  value="0x0D36">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_PROJECTION_STACK_DEPTH"    count="1"  value="0x0D38">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_TEXTURE_STACK_DEPTH"       count="1"  value="0x0D39">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="AMBIENT"                       count="4"  value="0x1200">
+        <size name="Materialfv"/>
+        <size name="Materialiv"/>
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetMaterialfv" mode="get"/>
+        <size name="GetMaterialiv" mode="get"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="DIFFUSE"                       count="4"  value="0x1201">
+        <size name="Materialfv"/>
+        <size name="Materialiv"/>
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetMaterialfv" mode="get"/>
+        <size name="GetMaterialiv" mode="get"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="SPECULAR"                      count="4"  value="0x1202">
+        <size name="Materialfv"/>
+        <size name="Materialiv"/>
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetMaterialfv" mode="get"/>
+        <size name="GetMaterialiv" mode="get"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="POSITION"                      count="4"  value="0x1203">
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="SPOT_DIRECTION"                count="3"  value="0x1204">
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="SPOT_EXPONENT"                 count="1"  value="0x1205">
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="SPOT_CUTOFF"                   count="1"  value="0x1206">
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="CONSTANT_ATTENUATION"          count="1"  value="0x1207">
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="LINEAR_ATTENUATION"            count="1"  value="0x1208">
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="QUADRATIC_ATTENUATION"         count="1"  value="0x1209">
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="CLEAR"                                    value="0x1500"/>
+    <enum name="AND"                                      value="0x1501"/>
+    <enum name="AND_REVERSE"                              value="0x1502"/>
+    <enum name="COPY"                                     value="0x1503"/>
+    <enum name="AND_INVERTED"                             value="0x1504"/>
+    <enum name="NOOP"                                     value="0x1505"/>
+    <enum name="XOR"                                      value="0x1506"/>
+    <enum name="OR"                                       value="0x1507"/>
+    <enum name="NOR"                                      value="0x1508"/>
+    <enum name="EQUIV"                                    value="0x1509"/>
+    <enum name="OR_REVERSE"                               value="0x150B"/>
+    <enum name="COPY_INVERTED"                            value="0x150C"/>
+    <enum name="OR_INVERTED"                              value="0x150D"/>
+    <enum name="NAND"                                     value="0x150E"/>
+    <enum name="SET"                                      value="0x150F"/>
+    <enum name="EMISSION"                      count="4"  value="0x1600">
+        <size name="Materialfv"/>
+        <size name="Materialiv"/>
+        <size name="GetMaterialfv" mode="get"/>
+        <size name="GetMaterialiv" mode="get"/>
+    </enum>
+    <enum name="SHININESS"                     count="1"  value="0x1601">
+        <size name="Materialfv"/>
+        <size name="Materialiv"/>
+        <size name="GetMaterialfv" mode="get"/>
+        <size name="GetMaterialiv" mode="get"/>
+    </enum>
+    <enum name="AMBIENT_AND_DIFFUSE"           count="4"  value="0x1602">
+        <size name="Materialfv"/>
+        <size name="Materialiv"/>
+        <size name="GetMaterialfv" mode="get"/>
+        <size name="GetMaterialiv" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW"                                value="0x1700"/>
+    <enum name="PROJECTION"                               value="0x1701"/>
+    <enum name="FLAT"                                     value="0x1D00"/>
+    <enum name="SMOOTH"                                   value="0x1D01"/>
+    <enum name="MODULATE"                                 value="0x2100"/>
+    <enum name="DECAL"                                    value="0x2101"/>
+    <enum name="TEXTURE_ENV_MODE"              count="1"  value="0x2200">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_ENV_COLOR"             count="4"  value="0x2201">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_ENV"                              value="0x2300"/>
+    <enum name="LIGHT0"                        count="1"  value="0x4000">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT1"                        count="1"  value="0x4001">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT2"                        count="1"  value="0x4002">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT3"                        count="1"  value="0x4003">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT4"                        count="1"  value="0x4004">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT5"                        count="1"  value="0x4005">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT6"                        count="1"  value="0x4006">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT7"                        count="1"  value="0x4007">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="AlphaFunc" offset="240">
+        <param name="func" type="GLenum"/>
+        <param name="ref" type="GLclampf"/>
+        <glx rop="159"/>
+    </function>
+
+    <function name="Color4f" offset="29" vectorequiv="Color4fv">
+        <param name="red" type="GLfloat"/>
+        <param name="green" type="GLfloat"/>
+        <param name="blue" type="GLfloat"/>
+        <param name="alpha" type="GLfloat"/>
+    </function>
+
+    <function name="Fogf" offset="153">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="80"/>
+    </function>
+
+    <function name="Fogfv" offset="154">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="81"/>
+    </function>
+
+    <function name="Lightf" offset="159">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="86"/>
+    </function>
+
+    <function name="Lightfv" offset="160">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="87"/>
+    </function>
+
+    <function name="LightModelf" offset="163">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="90"/>
+    </function>
+
+    <function name="LightModelfv" offset="164">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="91"/>
+    </function>
+
+    <function name="LoadIdentity" offset="290">
+        <glx rop="176"/>
+    </function>
+
+    <function name="LoadMatrixf" offset="291">
+        <param name="m" type="const GLfloat *" count="16"/>
+        <glx rop="177"/>
+    </function>
+
+    <function name="LogicOp" offset="242">
+        <param name="opcode" type="GLenum"/>
+        <glx rop="161"/>
+    </function>
+
+    <function name="Materialf" offset="169">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="96"/>
+    </function>
+
+    <function name="Materialfv" offset="170">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="97"/>
+    </function>
+
+    <function name="MatrixMode" offset="293">
+        <param name="mode" type="GLenum"/>
+        <glx rop="179"/>
+    </function>
+
+    <function name="MultMatrixf" offset="294">
+        <param name="m" type="const GLfloat *" count="16"/>
+        <glx rop="180"/>
+    </function>
+
+    <function name="Normal3f" offset="56" vectorequiv="Normal3fv">
+        <param name="nx" type="GLfloat"/>
+        <param name="ny" type="GLfloat"/>
+        <param name="nz" type="GLfloat"/>
+    </function>
+
+    <function name="PointSize" offset="173">
+        <param name="size" type="GLfloat"/>
+        <glx rop="100"/>
+    </function>
+
+    <function name="PopMatrix" offset="297">
+        <glx rop="183"/>
+    </function>
+
+    <function name="PushMatrix" offset="298">
+        <glx rop="184"/>
+    </function>
+
+    <function name="Rotatef" offset="300">
+        <param name="angle" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <glx rop="186"/>
+    </function>
+
+    <function name="Scalef" offset="302">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <glx rop="188"/>
+    </function>
+
+    <function name="ShadeModel" offset="177">
+        <param name="mode" type="GLenum"/>
+        <glx rop="104"/>
+    </function>
+
+    <function name="TexEnvf" offset="184">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="111"/>
+    </function>
+
+    <function name="TexEnvfv" offset="185">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="112"/>
+    </function>
+
+    <function name="TexImage2D" offset="183">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="target" img_send_null="true" img_pad_dimensions="true"/>
+        <glx rop="110" large="true"/>
+    </function>
+
+    <function name="Translatef" offset="304">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <glx rop="190"/>
+    </function>
+
+    <!-- addition to base1.1 -->
+    <enum name="COLOR_LOGIC_OP"                           value="0x0BF2"/>
+    <enum name="VERTEX_ARRAY"                  count="1"  value="0x8074">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="NORMAL_ARRAY"                  count="1"  value="0x8075">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_ARRAY"                   count="1"  value="0x8076">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COORD_ARRAY"           count="1"  value="0x8078">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="ColorPointer" offset="308">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="DisableClientState" offset="309">
+        <param name="array" type="GLenum"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="EnableClientState" offset="313">
+        <param name="array" type="GLenum"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="NormalPointer" offset="318">
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="TexCoordPointer" offset="320">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="VertexPointer" offset="321">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <!-- addition to base1.2 -->
+    <enum name="SMOOTH_POINT_SIZE_RANGE"       count="2"  value="0x0B12">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SMOOTH_LINE_WIDTH_RANGE"       count="2"  value="0x0B22">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="RESCALE_NORMAL"                count="1"  value="0x803A">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_ELEMENTS_VERTICES"         count="1"  value="0x80E8">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_ELEMENTS_INDICES"          count="1"  value="0x80E9">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <!-- addition to base1.3 -->
+    <enum name="MULTISAMPLE"                   count="1"  value="0x809D">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLE_ALPHA_TO_ONE"           count="1"  value="0x809F">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_TEXTURE_UNITS"             count="1"  value="0x84E2">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="ClientActiveTexture" offset="375">
+        <param name="texture" type="GLenum"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="MultiTexCoord4f" offset="402" vectorequiv="MultiTexCoord4fv">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="r" type="GLfloat"/>
+        <param name="q" type="GLfloat"/>
+    </function>
+</category>
+
+<!-- core subset of OpenGL 1.5 defined in OpenGL ES 1.1 -->
+<category name="core1.1">
+    <!-- addition to base1.0 -->
+    <enum name="CURRENT_COLOR"                 count="4"  value="0x0B00">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CURRENT_NORMAL"                count="3"  value="0x0B02">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CURRENT_TEXTURE_COORDS"        count="4"  value="0x0B03">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POINT_SIZE"                    count="1"  value="0x0B11">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SHADE_MODEL"                   count="1"  value="0x0B54">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MATRIX_MODE"                   count="1"  value="0x0BA0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW_STACK_DEPTH"         count="1"  value="0x0BA3">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PROJECTION_STACK_DEPTH"        count="1"  value="0x0BA4">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_STACK_DEPTH"           count="1"  value="0x0BA5">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW_MATRIX"              count="16" value="0x0BA6">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PROJECTION_MATRIX"             count="16" value="0x0BA7">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_MATRIX"                count="16" value="0x0BA8">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ALPHA_TEST_FUNC"               count="1"  value="0x0BC1">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ALPHA_TEST_REF"                count="1"  value="0x0BC2">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLEND_DST"                     count="1"  value="0x0BE0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLEND_SRC"                     count="1"  value="0x0BE1">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LOGIC_OP_MODE"                 count="1"  value="0x0BF0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ALPHA_SCALE"                   count="1"  value="0x0D1C">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_CLIP_PLANES"               count="1"  value="0x0D32">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CLIP_PLANE0"                   count="1"  value="0x3000">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CLIP_PLANE1"                   count="1"  value="0x3001">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CLIP_PLANE2"                   count="1"  value="0x3002">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CLIP_PLANE3"                   count="1"  value="0x3003">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CLIP_PLANE4"                   count="1"  value="0x3004">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CLIP_PLANE5"                   count="1"  value="0x3005">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="Color4ub" offset="35" vectorequiv="Color4ubv">
+        <param name="red" type="GLubyte"/>
+        <param name="green" type="GLubyte"/>
+        <param name="blue" type="GLubyte"/>
+        <param name="alpha" type="GLubyte"/>
+    </function>
+
+    <function name="GetLightfv" offset="264">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="118"/>
+    </function>
+
+    <function name="GetMaterialfv" offset="269">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="123"/>
+    </function>
+
+    <function name="GetTexEnvfv" offset="276">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="130"/>
+    </function>
+
+    <function name="GetTexEnviv" offset="277">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="131"/>
+    </function>
+
+    <function name="TexEnvi" offset="186">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="113"/>
+    </function>
+
+    <function name="TexEnviv" offset="187">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="114"/>
+    </function>
+
+    <!-- addition to base1.1 -->
+    <enum name="VERTEX_ARRAY_SIZE"             count="1"  value="0x807A">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ARRAY_TYPE"             count="1"  value="0x807B">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ARRAY_STRIDE"           count="1"  value="0x807C">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="NORMAL_ARRAY_TYPE"             count="1"  value="0x807E">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="NORMAL_ARRAY_STRIDE"           count="1"  value="0x807F">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_ARRAY_SIZE"              count="1"  value="0x8081">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_ARRAY_TYPE"              count="1"  value="0x8082">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_ARRAY_STRIDE"            count="1"  value="0x8083">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COORD_ARRAY_SIZE"      count="1"  value="0x8088">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COORD_ARRAY_TYPE"      count="1"  value="0x8089">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COORD_ARRAY_STRIDE"    count="1"  value="0x808A">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ARRAY_POINTER"                     value="0x808E"/>
+    <enum name="NORMAL_ARRAY_POINTER"                     value="0x808F"/>
+    <enum name="COLOR_ARRAY_POINTER"                      value="0x8090"/>
+    <enum name="TEXTURE_COORD_ARRAY_POINTER"              value="0x8092"/>
+
+    <function name="GetPointerv" offset="329">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLvoid **" output="true"/>
+        <glx handcode="true"/>
+    </function>
+
+    <!-- addition to base1.2 -->
+
+    <!-- addition to base1.3 -->
+    <enum name="CLIENT_ACTIVE_TEXTURE"         count="1"  value="0x84E1">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SUBTRACT"                                 value="0x84E7"/>
+    <enum name="COMBINE"                                  value="0x8570"/>
+    <enum name="COMBINE_RGB"                   count="1"  value="0x8571">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="COMBINE_ALPHA"                 count="1"  value="0x8572">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="RGB_SCALE"                     count="1"  value="0x8573">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="ADD_SIGNED"                               value="0x8574"/>
+    <enum name="INTERPOLATE"                              value="0x8575"/>
+    <enum name="CONSTANT"                                 value="0x8576"/>
+    <enum name="PRIMARY_COLOR"                            value="0x8577"/>
+    <enum name="PREVIOUS"                                 value="0x8578"/>
+    <enum name="OPERAND0_RGB"                  count="1"  value="0x8590">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="OPERAND1_RGB"                  count="1"  value="0x8591">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="OPERAND2_RGB"                  count="1"  value="0x8592">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="OPERAND0_ALPHA"                count="1"  value="0x8598">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="OPERAND1_ALPHA"                count="1"  value="0x8599">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="OPERAND2_ALPHA"                count="1"  value="0x859A">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="DOT3_RGB"                                 value="0x86AE"/>
+    <enum name="DOT3_RGBA"                                value="0x86AF"/>
+
+    <!-- addition to base1.4 -->
+    <enum name="POINT_SIZE_MIN"                count="1"  value="0x8126">
+        <size name="PointParameterfv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POINT_SIZE_MAX"                count="1"  value="0x8127">
+        <size name="PointParameterfv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POINT_FADE_THRESHOLD_SIZE"     count="1"  value="0x8128">
+        <size name="PointParameterfv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POINT_DISTANCE_ATTENUATION"    count="3"  value="0x8129">
+        <size name="PointParameterfv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="GENERATE_MIPMAP"               count="1"  value="0x8191">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+
+    <function name="PointParameterf" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="2065"/>
+    </function>
+
+    <function name="PointParameterfv" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="2066"/>
+    </function>
+
+    <!-- addition to base1.5 -->
+    <enum name="SRC0_RGB"                                 value="0x8580"/>
+    <enum name="SRC1_RGB"                                 value="0x8581"/>
+    <enum name="SRC2_RGB"                                 value="0x8582"/>
+    <enum name="SRC0_ALPHA"                               value="0x8588"/>
+    <enum name="SRC1_ALPHA"                               value="0x8589"/>
+    <enum name="SRC2_ALPHA"                               value="0x858A"/>
+    <enum name="VERTEX_ARRAY_BUFFER_BINDING"   count="1"  value="0x8896">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="NORMAL_ARRAY_BUFFER_BINDING"   count="1"  value="0x8897">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_ARRAY_BUFFER_BINDING"    count="1"  value="0x8898">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COORD_ARRAY_BUFFER_BINDING" count="1" value="0x889A">
+        <size name="Get" mode="get"/>
+    </enum>
+</category>
+
+<!-- OpenGL ES 1.0 -->
+<category name="es1.0">
+    <!-- addition to core1.0 -->
+
+    <!-- from GL_OES_fixed_point -->
+    <enum name="FIXED"                                    value="0x140C"/>
+
+    <type name="fixed"   size="4"                                    />
+    <type name="clampx"  size="4"                                    />
+
+    <function name="AlphaFuncx" offset="assign">
+        <param name="func" type="GLenum"/>
+        <param name="ref" type="GLclampx"/>
+    </function>
+
+    <function name="ClearColorx" offset="assign">
+        <param name="red" type="GLclampx"/>
+        <param name="green" type="GLclampx"/>
+        <param name="blue" type="GLclampx"/>
+        <param name="alpha" type="GLclampx"/>
+    </function>
+
+    <function name="ClearDepthx" offset="assign">
+        <param name="depth" type="GLclampx"/>
+    </function>
+
+    <function name="Color4x" offset="assign">
+        <param name="red" type="GLfixed"/>
+        <param name="green" type="GLfixed"/>
+        <param name="blue" type="GLfixed"/>
+        <param name="alpha" type="GLfixed"/>
+    </function>
+
+    <function name="DepthRangex" offset="assign">
+        <param name="zNear" type="GLclampx"/>
+        <param name="zFar" type="GLclampx"/>
+    </function>
+
+    <function name="Fogx" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfixed"/>
+    </function>
+
+    <function name="Fogxv" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfixed *" variable_param="pname"/>
+    </function>
+
+    <function name="Frustumx" offset="assign">
+        <param name="left" type="GLfixed"/>
+        <param name="right" type="GLfixed"/>
+        <param name="bottom" type="GLfixed"/>
+        <param name="top" type="GLfixed"/>
+        <param name="zNear" type="GLfixed"/>
+        <param name="zFar" type="GLfixed"/>
+    </function>
+
+    <function name="LightModelx" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfixed"/>
+    </function>
+
+    <function name="LightModelxv" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfixed *" variable_param="pname"/>
+    </function>
+
+    <function name="Lightx" offset="assign">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfixed"/>
+    </function>
+
+    <function name="Lightxv" offset="assign">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfixed *" variable_param="pname"/>
+    </function>
+
+    <function name="LineWidthx" offset="assign">
+        <param name="width" type="GLfixed"/>
+    </function>
+
+    <function name="LoadMatrixx" offset="assign">
+        <param name="m" type="const GLfixed *" count="16"/>
+    </function>
+
+    <function name="Materialx" offset="assign">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfixed"/>
+    </function>
+
+    <function name="Materialxv" offset="assign">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfixed *" variable_param="pname"/>
+    </function>
+
+    <function name="MultMatrixx" offset="assign">
+        <param name="m" type="const GLfixed *" count="16"/>
+    </function>
+
+    <function name="MultiTexCoord4x" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLfixed"/>
+        <param name="t" type="GLfixed"/>
+        <param name="r" type="GLfixed"/>
+        <param name="q" type="GLfixed"/>
+    </function>
+
+    <function name="Normal3x" offset="assign">
+        <param name="nx" type="GLfixed"/>
+        <param name="ny" type="GLfixed"/>
+        <param name="nz" type="GLfixed"/>
+    </function>
+
+    <function name="Orthox" offset="assign">
+        <param name="left" type="GLfixed"/>
+        <param name="right" type="GLfixed"/>
+        <param name="bottom" type="GLfixed"/>
+        <param name="top" type="GLfixed"/>
+        <param name="zNear" type="GLfixed"/>
+        <param name="zFar" type="GLfixed"/>
+    </function>
+
+    <function name="PointSizex" offset="assign">
+        <param name="size" type="GLfixed"/>
+    </function>
+
+    <function name="PolygonOffsetx" offset="assign">
+        <param name="factor" type="GLfixed"/>
+        <param name="units" type="GLfixed"/>
+    </function>
+
+    <function name="Rotatex" offset="assign">
+        <param name="angle" type="GLfixed"/>
+        <param name="x" type="GLfixed"/>
+        <param name="y" type="GLfixed"/>
+        <param name="z" type="GLfixed"/>
+    </function>
+
+    <function name="SampleCoveragex" offset="assign">
+        <param name="value" type="GLclampx"/>
+        <param name="invert" type="GLboolean"/>
+    </function>
+
+    <function name="Scalex" offset="assign">
+        <param name="x" type="GLfixed"/>
+        <param name="y" type="GLfixed"/>
+        <param name="z" type="GLfixed"/>
+    </function>
+
+    <function name="TexEnvx" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfixed"/>
+    </function>
+
+    <function name="TexEnvxv" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfixed *" variable_param="pname"/>
+    </function>
+
+    <function name="TexParameterx" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfixed"/>
+    </function>
+
+    <function name="Translatex" offset="assign">
+        <param name="x" type="GLfixed"/>
+        <param name="y" type="GLfixed"/>
+        <param name="z" type="GLfixed"/>
+    </function>
+
+    <!-- from GL_OES_single_precision -->
+    <function name="ClearDepthf" offset="assign">
+        <param name="depth" type="GLclampf"/>
+    </function>
+
+    <function name="DepthRangef" offset="assign">
+        <param name="zNear" type="GLclampf"/>
+        <param name="zFar" type="GLclampf"/>
+    </function>
+
+    <function name="Frustumf" offset="assign">
+        <param name="left" type="GLfloat"/>
+        <param name="right" type="GLfloat"/>
+        <param name="bottom" type="GLfloat"/>
+        <param name="top" type="GLfloat"/>
+        <param name="zNear" type="GLfloat"/>
+        <param name="zFar" type="GLfloat"/>
+    </function>
+
+    <function name="Orthof" offset="assign">
+        <param name="left" type="GLfloat"/>
+        <param name="right" type="GLfloat"/>
+        <param name="bottom" type="GLfloat"/>
+        <param name="top" type="GLfloat"/>
+        <param name="zNear" type="GLfloat"/>
+        <param name="zFar" type="GLfloat"/>
+    </function>
+</category>
+
+<!-- OpenGL ES 1.1 -->
+<category name="es1.1">
+    <!-- addition to core1.1 -->
+
+    <!-- from GL_OES_fixed_point -->
+    <function name="ClipPlanex" offset="assign">
+        <param name="plane" type="GLenum"/>
+        <param name="equation" type="const GLfixed *" count="4"/>
+    </function>
+
+    <function name="GetClipPlanex" offset="assign">
+        <param name="plane" type="GLenum"/>
+        <param name="equation" type="GLfixed *" output="true" count="4"/>
+    </function>
+
+    <function name="GetFixedv" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
+    </function>
+
+    <function name="GetLightxv" offset="assign">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
+    </function>
+
+    <function name="GetMaterialxv" offset="assign">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
+    </function>
+
+    <function name="GetTexEnvxv" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
+    </function>
+
+    <function name="GetTexParameterxv" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
+    </function>
+
+    <function name="PointParameterx" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfixed"/>
+    </function>
+
+    <function name="PointParameterxv" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfixed *"/>
+    </function>
+
+    <function name="TexParameterxv" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfixed *" variable_param="pname"/>
+    </function>
+
+    <!-- from GL_OES_matrix_get -->
+    <enum name="MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES"   value="0x898D"/>
+    <enum name="PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES"  value="0x898E"/>
+    <enum name="TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES"    value="0x898F"/>
+
+    <!-- from GL_OES_single_precision -->
+    <function name="ClipPlanef" offset="assign">
+        <param name="plane" type="GLenum"/>
+        <param name="equation" type="const GLfloat *" count="4"/>
+    </function>
+
+    <function name="GetClipPlanef" offset="assign">
+        <param name="plane" type="GLenum"/>
+        <param name="equation" type="GLfloat *" output="true" count="4"/>
+    </function>
+</category>
+
+<xi:include href="es1_EXT.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+<xi:include href="es1_COMPAT.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen-es/es1_COMPAT.xml b/src/mapi/glapi/gen-es/es1_COMPAT.xml
new file mode 100644 (file)
index 0000000..096cea8
--- /dev/null
@@ -0,0 +1,135 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "../gen/gl_API.dtd">
+
+<OpenGLAPI>
+
+<!-- This file defines the functions that are needed by Mesa.  It
+     makes sure the generated glapi headers are compatible with Mesa.
+     It mainly consists of missing functions and aliases in OpenGL ES.
+-->
+
+<xi:include href="es_COMPAT.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<!-- except for those defined by es_COMPAT.xml, these are also needed -->
+<category name="compat">
+    <!-- OpenGL 1.0 -->
+    <function name="TexGenf" alias="TexGenfOES" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="117"/>
+    </function>
+
+    <function name="TexGenfv" alias="TexGenfvOES" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="118"/>
+    </function>
+
+    <function name="TexGeni" alias="TexGeniOES" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="119"/>
+    </function>
+
+    <function name="TexGeniv" alias="TexGenivOES" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="120"/>
+    </function>
+
+    <function name="GetTexGenfv" alias="GetTexGenfvOES" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="133"/>
+    </function>
+
+    <function name="GetTexGeniv" alias="GetTexGenivOES" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="134"/>
+    </function>
+
+    <!-- OpenGL 1.2 -->
+    <function name="BlendColor" offset="336" static_dispatch="false">
+        <param name="red" type="GLclampf"/>
+        <param name="green" type="GLclampf"/>
+        <param name="blue" type="GLclampf"/>
+        <param name="alpha" type="GLclampf"/>
+        <glx rop="4096"/>
+    </function>
+
+    <function name="BlendEquation" alias="BlendEquationOES" static_dispatch="false">
+        <param name="mode" type="GLenum"/>
+        <glx rop="4097"/>
+    </function>
+
+    <function name="TexImage3D" offset="371" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_format="format" img_type="type" img_target="target" img_null_flag="true" img_pad_dimensions="true"/>
+        <glx rop="4114" large="true"/>
+    </function>
+
+    <function name="TexSubImage3D" offset="372" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="UNUSED" type="GLuint" padding="true"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_xoff="xoffset" img_yoff="yoffset" img_zoff="zoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
+        <glx rop="4115" large="true"/>
+    </function>
+
+    <function name="CopyTexSubImage3D" offset="373" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <glx rop="4123"/>
+    </function>
+
+    <!-- GL_ARB_multitexture -->
+    <function name="ActiveTextureARB" alias="ActiveTexture" static_dispatch="false">
+        <param name="texture" type="GLenum"/>
+        <glx rop="197"/>
+    </function>
+
+    <function name="ClientActiveTextureARB" alias="ClientActiveTexture" static_dispatch="false">
+        <param name="texture" type="GLenum"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="MultiTexCoord4fARB" alias="MultiTexCoord4f" vectorequiv="MultiTexCoord4fvARB" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="r" type="GLfloat"/>
+        <param name="q" type="GLfloat"/>
+    </function>
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen-es/es1_EXT.xml b/src/mapi/glapi/gen-es/es1_EXT.xml
new file mode 100644 (file)
index 0000000..c1e8637
--- /dev/null
@@ -0,0 +1,699 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "../gen/gl_API.dtd">
+
+<!-- OpenGL ES 1.x extensions -->
+
+<OpenGLAPI>
+
+<xi:include href="es_EXT.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<!-- part of es1.1 extension pack -->
+<category name="GL_OES_blend_equation_separate" number="1">
+    <enum name="BLEND_EQUATION_RGB_OES"        count="1"  value="0x8009">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLEND_EQUATION_ALPHA_OES"      count="1"  value="0x883D">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="BlendEquationSeparateOES" offset="assign">
+        <param name="modeRGB" type="GLenum"/>
+        <param name="modeA" type="GLenum"/>
+        <glx rop="4228"/>
+    </function>
+</category>
+
+<!-- part of es1.1 extension pack -->
+<category name="GL_OES_blend_func_separate" number="2">
+    <enum name="BLEND_DST_RGB_OES"             count="1"  value="0x80C8">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLEND_SRC_RGB_OES"             count="1"  value="0x80C9">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLEND_DST_ALPHA_OES"           count="1"  value="0x80CA">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLEND_SRC_ALPHA_OES"           count="1"  value="0x80CB">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="BlendFuncSeparateOES" offset="assign">
+        <param name="sfactorRGB" type="GLenum"/>
+        <param name="dfactorRGB" type="GLenum"/>
+        <param name="sfactorAlpha" type="GLenum"/>
+        <param name="dfactorAlpha" type="GLenum"/>
+        <glx rop="4134"/>
+    </function>
+</category>
+
+<!-- part of es1.1 extension pack -->
+<category name="GL_OES_blend_subtract" number="3">
+    <enum name="FUNC_ADD_OES"                             value="0x8006"/>
+    <enum name="BLEND_EQUATION_OES"            count="1"  value="0x8009">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FUNC_SUBTRACT_OES"                        value="0x800A"/>
+    <enum name="FUNC_REVERSE_SUBTRACT_OES"                value="0x800B"/>
+
+    <function name="BlendEquationOES" offset="337">
+        <param name="mode" type="GLenum"/>
+        <glx rop="4097"/>
+    </function>
+</category>
+
+<!-- core addition to es1.0 and later -->
+<category name="GL_OES_byte_coordinates" number="4">
+    <enum name="BYTE"                                     value="0x1400"/>
+</category>
+
+<!-- optional for es1.1 -->
+<category name="GL_OES_draw_texture" number="7">
+    <enum name="TEXTURE_CROP_RECT_OES"                    value="0x8B9D"/>
+
+    <function name="DrawTexiOES" offset="assign">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="z" type="GLint"/>
+        <param name="width" type="GLint"/>
+        <param name="height" type="GLint"/>
+    </function>
+
+    <function name="DrawTexivOES" offset="assign">
+        <param name="coords" type="const GLint *" count="5"/>
+    </function>
+
+    <function name="DrawTexfOES" offset="assign">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <param name="width" type="GLfloat"/>
+        <param name="height" type="GLfloat"/>
+    </function>
+
+    <function name="DrawTexfvOES" offset="assign">
+        <param name="coords" type="const GLfloat *" count="5"/>
+    </function>
+
+    <function name="DrawTexsOES" offset="assign">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+        <param name="width" type="GLshort"/>
+        <param name="height" type="GLshort"/>
+    </function>
+
+    <function name="DrawTexsvOES" offset="assign">
+        <param name="coords" type="const GLshort *" count="5"/>
+    </function>
+
+    <function name="DrawTexxOES" offset="assign">
+        <param name="x" type="GLfixed"/>
+        <param name="y" type="GLfixed"/>
+        <param name="z" type="GLfixed"/>
+        <param name="width" type="GLfixed"/>
+        <param name="height" type="GLfixed"/>
+    </function>
+
+    <function name="DrawTexxvOES" offset="assign">
+        <param name="coords" type="const GLfixed *" count="5"/>
+    </function>
+
+    <!-- TexParameter{ifx}v is skipped here -->
+</category>
+
+<!-- core addition to es1.0 and later -->
+<category name="GL_OES_fixed_point" number="9">
+    <enum name="FIXED_OES"                                value="0x140C"/>
+
+    <!-- additon to es1.0 -->
+    <function name="AlphaFuncxOES" alias="AlphaFuncx">
+        <param name="func" type="GLenum"/>
+        <param name="ref" type="GLclampx"/>
+    </function>
+
+    <function name="ClearColorxOES" alias="ClearColorx">
+        <param name="red" type="GLclampx"/>
+        <param name="green" type="GLclampx"/>
+        <param name="blue" type="GLclampx"/>
+        <param name="alpha" type="GLclampx"/>
+    </function>
+
+    <function name="ClearDepthxOES" alias="ClearDepthx">
+        <param name="depth" type="GLclampx"/>
+    </function>
+
+    <function name="Color4xOES" alias="Color4x">
+        <param name="red" type="GLfixed"/>
+        <param name="green" type="GLfixed"/>
+        <param name="blue" type="GLfixed"/>
+        <param name="alpha" type="GLfixed"/>
+    </function>
+
+    <function name="DepthRangexOES" alias="DepthRangex">
+        <param name="zNear" type="GLclampx"/>
+        <param name="zFar" type="GLclampx"/>
+    </function>
+
+    <function name="FogxOES" alias="Fogx">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfixed"/>
+    </function>
+
+    <function name="FogxvOES" alias="Fogxv">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfixed *" variable_param="pname"/>
+    </function>
+
+    <function name="FrustumxOES" alias="Frustumx">
+        <param name="left" type="GLfixed"/>
+        <param name="right" type="GLfixed"/>
+        <param name="bottom" type="GLfixed"/>
+        <param name="top" type="GLfixed"/>
+        <param name="zNear" type="GLfixed"/>
+        <param name="zFar" type="GLfixed"/>
+    </function>
+
+    <function name="LightModelxOES" alias="LightModelx">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfixed"/>
+    </function>
+
+    <function name="LightModelxvOES" alias="LightModelxv">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfixed *" variable_param="pname"/>
+    </function>
+
+    <function name="LightxOES" alias="Lightx">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfixed"/>
+    </function>
+
+    <function name="LightxvOES" alias="Lightxv">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfixed *" variable_param="pname"/>
+    </function>
+
+    <function name="LineWidthxOES" alias="LineWidthx">
+        <param name="width" type="GLfixed"/>
+    </function>
+
+    <function name="LoadMatrixxOES" alias="LoadMatrixx">
+        <param name="m" type="const GLfixed *" count="16"/>
+    </function>
+
+    <function name="MaterialxOES" alias="Materialx">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfixed"/>
+    </function>
+
+    <function name="MaterialxvOES" alias="Materialxv">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfixed *" variable_param="pname"/>
+    </function>
+
+    <function name="MultiTexCoord4xOES" alias="MultiTexCoord4x">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLfixed"/>
+        <param name="t" type="GLfixed"/>
+        <param name="r" type="GLfixed"/>
+        <param name="q" type="GLfixed"/>
+    </function>
+
+    <function name="MultMatrixxOES" alias="MultMatrixx">
+        <param name="m" type="const GLfixed *" count="16"/>
+    </function>
+
+    <function name="Normal3xOES" alias="Normal3x">
+        <param name="nx" type="GLfixed"/>
+        <param name="ny" type="GLfixed"/>
+        <param name="nz" type="GLfixed"/>
+    </function>
+
+    <function name="OrthoxOES" alias="Orthox">
+        <param name="left" type="GLfixed"/>
+        <param name="right" type="GLfixed"/>
+        <param name="bottom" type="GLfixed"/>
+        <param name="top" type="GLfixed"/>
+        <param name="zNear" type="GLfixed"/>
+        <param name="zFar" type="GLfixed"/>
+    </function>
+
+    <function name="PointSizexOES" alias="PointSizex">
+        <param name="size" type="GLfixed"/>
+    </function>
+
+    <function name="PolygonOffsetxOES" alias="PolygonOffsetx">
+        <param name="factor" type="GLfixed"/>
+        <param name="units" type="GLfixed"/>
+    </function>
+
+    <function name="RotatexOES" alias="Rotatex">
+        <param name="angle" type="GLfixed"/>
+        <param name="x" type="GLfixed"/>
+        <param name="y" type="GLfixed"/>
+        <param name="z" type="GLfixed"/>
+    </function>
+
+    <function name="SampleCoveragexOES" alias="SampleCoveragex">
+        <param name="value" type="GLclampx"/>
+        <param name="invert" type="GLboolean"/>
+    </function>
+
+    <function name="ScalexOES" alias="Scalex">
+        <param name="x" type="GLfixed"/>
+        <param name="y" type="GLfixed"/>
+        <param name="z" type="GLfixed"/>
+    </function>
+
+    <function name="TexEnvxOES" alias="TexEnvx">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfixed"/>
+    </function>
+
+    <function name="TexEnvxvOES" alias="TexEnvxv">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfixed *" variable_param="pname"/>
+    </function>
+
+    <function name="TexParameterxOES" alias="TexParameterx">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfixed"/>
+    </function>
+
+    <function name="TranslatexOES" alias="Translatex">
+        <param name="x" type="GLfixed"/>
+        <param name="y" type="GLfixed"/>
+        <param name="z" type="GLfixed"/>
+    </function>
+
+    <!-- additon to es1.1 -->
+    <function name="ClipPlanexOES" alias="ClipPlanex">
+        <param name="plane" type="GLenum"/>
+        <param name="equation" type="const GLfixed *" count="4"/>
+    </function>
+
+    <function name="GetClipPlanexOES" alias="GetClipPlanex">
+        <param name="plane" type="GLenum"/>
+        <param name="equation" type="GLfixed *" output="true" count="4"/>
+    </function>
+
+    <function name="GetFixedvOES" alias="GetFixedv">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
+    </function>
+
+    <function name="GetLightxvOES" alias="GetLightxv">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
+    </function>
+
+    <function name="GetMaterialxvOES" alias="GetMaterialxv">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
+    </function>
+
+    <function name="GetTexEnvxvOES" alias="GetTexEnvxv">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
+    </function>
+
+    <function name="GetTexParameterxvOES" alias="GetTexParameterxv">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
+    </function>
+
+    <function name="PointParameterxOES" alias="PointParameterx">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfixed"/>
+    </function>
+
+    <function name="PointParameterxvOES" alias="PointParameterxv">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfixed *"/>
+    </function>
+
+    <function name="TexParameterxvOES" alias="TexParameterxv">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfixed *" variable_param="pname"/>
+    </function>
+</category>
+
+<!-- part of es1.1 extension pack -->
+<category name="GL_OES_framebuffer_object" number="10">
+    <enum name="NONE_OES"                                 value="0"/>
+    <enum name="INVALID_FRAMEBUFFER_OPERATION_OES"        value="0x0506"/>
+    <enum name="RGBA4_OES"                                value="0x8056"/>
+    <enum name="RGB5_A1_OES"                              value="0x8057"/>
+    <enum name="DEPTH_COMPONENT16_OES"                    value="0x81A5"/>
+
+    <enum name="MAX_RENDERBUFFER_SIZE_OES"                value="0x84E8"/>
+    <enum name="FRAMEBUFFER_BINDING_OES"                  value="0x8CA6"/>
+    <enum name="RENDERBUFFER_BINDING_OES"                 value="0x8CA7"/>
+    <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES"   value="0x8CD0"/>
+    <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES"   value="0x8CD1"/>
+    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES" value="0x8CD2"/>
+    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES" value="0x8CD3"/>
+    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES" value="0x8CD4"/>
+    <enum name="FRAMEBUFFER_COMPLETE_OES"                 value="0x8CD5"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES"    value="0x8CD6"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES" value="0x8CD7"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES"    value="0x8CD9"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_FORMATS_OES"       value="0x8CDA"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_OES"   value="0x8CDB"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES"   value="0x8CDC"/>
+    <enum name="FRAMEBUFFER_UNSUPPORTED_OES"              value="0x8CDD"/>
+    <enum name="COLOR_ATTACHMENT0_OES"                    value="0x8CE0"/>
+    <enum name="DEPTH_ATTACHMENT_OES"                     value="0x8D00"/>
+    <enum name="STENCIL_ATTACHMENT_OES"                   value="0x8D20"/>
+    <enum name="FRAMEBUFFER_OES"                          value="0x8D40"/>
+    <enum name="RENDERBUFFER_OES"                         value="0x8D41"/>
+    <enum name="RENDERBUFFER_WIDTH_OES"                   value="0x8D42"/>
+    <enum name="RENDERBUFFER_HEIGHT_OES"                  value="0x8D43"/>
+    <enum name="RENDERBUFFER_INTERNAL_FORMAT_OES"         value="0x8D44"/>
+    <enum name="STENCIL_INDEX1_OES"                       value="0x8D46"/>
+    <enum name="STENCIL_INDEX4_OES"                       value="0x8D47"/>
+    <enum name="STENCIL_INDEX8_OES"                       value="0x8D48"/>
+    <enum name="RENDERBUFFER_RED_SIZE_OES"                value="0x8D50"/>
+    <enum name="RENDERBUFFER_GREEN_SIZE_OES"              value="0x8D51"/>
+    <enum name="RENDERBUFFER_BLUE_SIZE_OES"               value="0x8D52"/>
+    <enum name="RENDERBUFFER_ALPHA_SIZE_OES"              value="0x8D53"/>
+    <enum name="RENDERBUFFER_DEPTH_SIZE_OES"              value="0x8D54"/>
+    <enum name="RENDERBUFFER_STENCIL_SIZE_OES"            value="0x8D55"/>
+    <enum name="RGB565_OES"                               value="0x8D62"/>
+
+    <function name="BindFramebufferOES" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="framebuffer" type="GLuint"/>
+    </function>
+
+    <function name="BindRenderbufferOES" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="renderbuffer" type="GLuint"/>
+    </function>
+
+    <function name="CheckFramebufferStatusOES" offset="assign">
+        <param name="target" type="GLenum"/>
+       <return type="GLenum"/>
+    </function>
+
+    <function name="DeleteFramebuffersOES" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="framebuffers" type="const GLuint *" count="n"/>
+    </function>
+
+    <function name="DeleteRenderbuffersOES" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="renderbuffers" type="const GLuint *" count="n"/>
+    </function>
+
+    <function name="FramebufferRenderbufferOES" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="renderbuffertarget" type="GLenum"/>
+        <param name="renderbuffer" type="GLuint"/>
+    </function>
+
+    <function name="FramebufferTexture2DOES" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="textarget" type="GLenum"/>
+        <param name="texture" type="GLuint"/>
+        <param name="level" type="GLint"/>
+    </function>
+
+    <function name="GenerateMipmapOES" offset="assign">
+        <param name="target" type="GLenum"/>
+    </function>
+
+    <function name="GenFramebuffersOES" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="framebuffers" type="GLuint *" count="n" output="true"/>
+    </function>
+
+    <function name="GenRenderbuffersOES" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="renderbuffers" type="GLuint *" count="n" output="true"/>
+    </function>
+
+    <function name="GetFramebufferAttachmentParameterivOES" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true"/>
+    </function>
+
+    <function name="GetRenderbufferParameterivOES" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true"/>
+    </function>
+
+    <function name="IsFramebufferOES" offset="assign">
+        <param name="framebuffer" type="GLuint"/>
+       <return type="GLboolean"/>
+    </function>
+
+    <function name="IsRenderbufferOES" offset="assign">
+        <param name="renderbuffer" type="GLuint"/>
+       <return type="GLboolean"/>
+    </function>
+
+    <function name="RenderbufferStorageOES" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+    </function>
+</category>
+
+<!-- core addition to es1.1 -->
+<category name="GL_OES_matrix_get" number="11">
+    <enum name="MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES"   value="0x898D"/>
+    <enum name="PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES"  value="0x898E"/>
+    <enum name="TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES"    value="0x898F"/>
+</category>
+
+<!-- optional for es1.1 -->
+<category name="GL_OES_matrix_palette" number="12">
+    <enum name="MAX_VERTEX_UNITS_OES"                     value="0x86A4"/>
+    <enum name="WEIGHT_ARRAY_TYPE_OES"                    value="0x86A9"/>
+    <enum name="WEIGHT_ARRAY_STRIDE_OES"                  value="0x86AA"/>
+    <enum name="WEIGHT_ARRAY_SIZE_OES"                    value="0x86AB"/>
+    <enum name="WEIGHT_ARRAY_POINTER_OES"                 value="0x86AC"/>
+    <enum name="WEIGHT_ARRAY_OES"                         value="0x86AD"/>
+    <enum name="MATRIX_PALETTE_OES"                       value="0x8840"/>
+    <enum name="MAX_PALETTE_MATRICES_OES"                 value="0x8842"/>
+    <enum name="CURRENT_PALETTE_MATRIX_OES"               value="0x8843"/>
+    <enum name="MATRIX_INDEX_ARRAY_OES"                   value="0x8844"/>
+    <enum name="MATRIX_INDEX_ARRAY_SIZE_OES"              value="0x8846"/>
+    <enum name="MATRIX_INDEX_ARRAY_TYPE_OES"              value="0x8847"/>
+    <enum name="MATRIX_INDEX_ARRAY_STRIDE_OES"            value="0x8848"/>
+    <enum name="MATRIX_INDEX_ARRAY_POINTER_OES"           value="0x8849"/>
+    <enum name="WEIGHT_ARRAY_BUFFER_BINDING_OES"          value="0x889E"/>
+    <enum name="MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES"    value="0x8B9E"/>
+
+    <function name="CurrentPaletteMatrixOES">
+        <param name="matrixpaletteindex" type="GLuint"/>
+    </function>
+
+    <function name="LoadPaletteFromModelViewMatrixOES">
+    </function>
+
+    <function name="MatrixIndexPointerOES">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+    </function>
+
+    <function name="WeightPointerOES">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+    </function>
+</category>
+
+<!-- required for es1.1 -->
+<category name="GL_OES_point_size_array" number="14">
+    <enum name="POINT_SIZE_ARRAY_TYPE_OES"                value="0x898A"/>
+    <enum name="POINT_SIZE_ARRAY_STRIDE_OES"             value="0x898B"/>
+    <enum name="POINT_SIZE_ARRAY_POINTER_OES"            value="0x898C"/>
+    <enum name="POINT_SIZE_ARRAY_OES"                     value="0x8B9C"/>
+    <enum name="POINT_SIZE_ARRAY_BUFFER_BINDING_OES"     value="0x8B9F"/>
+
+    <function name="PointSizePointerOES" offset="assign">
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+    </function>
+</category>
+
+<!-- required for es1.1 -->
+<category name="GL_OES_point_sprite" number="15">
+    <enum name="POINT_SPRITE_OES"                         value="0x8861"/>
+    <enum name="COORD_REPLACE_OES"                       value="0x8862"/>
+</category>
+
+<!-- optional for es1.0 -->
+<category name="GL_OES_query_matrix" number="16">
+    <function name="QueryMatrixxOES" offset="assign">
+        <param name="mantissa" type="GLfixed *" count="16" />
+        <param name="exponent" type="GLint *" count="16" />
+       <return type="GLbitfield"/>
+    </function>
+</category>
+
+<!-- required for es1.0 and later -->
+<category name="GL_OES_read_format" number="17">
+    <enum name="IMPLEMENTATION_COLOR_READ_TYPE_OES"       value="0x8B9A"/>
+    <enum name="IMPLEMENTATION_COLOR_READ_FORMAT_OES"     value="0x8B9B"/>
+</category>
+
+<!-- core addition to es1.0 and later -->
+<category name="GL_OES_single_precision" number="18">
+    <!-- additon to es1.0 -->
+    <function name="ClearDepthfOES" alias="ClearDepthf">
+        <param name="depth" type="GLclampf"/>
+    </function>
+
+    <function name="DepthRangefOES" alias="DepthRangef">
+        <param name="zNear" type="GLclampf"/>
+        <param name="zFar" type="GLclampf"/>
+    </function>
+
+    <function name="FrustumfOES" alias="Frustumf">
+        <param name="left" type="GLfloat"/>
+        <param name="right" type="GLfloat"/>
+        <param name="bottom" type="GLfloat"/>
+        <param name="top" type="GLfloat"/>
+        <param name="zNear" type="GLfloat"/>
+        <param name="zFar" type="GLfloat"/>
+    </function>
+
+    <function name="OrthofOES" alias="Orthof">
+        <param name="left" type="GLfloat"/>
+        <param name="right" type="GLfloat"/>
+        <param name="bottom" type="GLfloat"/>
+        <param name="top" type="GLfloat"/>
+        <param name="zNear" type="GLfloat"/>
+        <param name="zFar" type="GLfloat"/>
+    </function>
+
+    <!-- additon to es1.1 -->
+    <function name="ClipPlanefOES" alias="ClipPlanef">
+        <param name="plane" type="GLenum"/>
+        <param name="equation" type="const GLfloat *" count="4"/>
+    </function>
+
+    <function name="GetClipPlanefOES" alias="GetClipPlanef">
+        <param name="plane" type="GLenum"/>
+        <param name="equation" type="GLfloat *" output="true" count="4"/>
+    </function>
+</category>
+
+<!-- part of es1.1 extension pack -->
+<category name="GL_OES_texture_cube_map" number="20">
+    <enum name="TEXTURE_GEN_MODE_OES"                  value="0x2500"/>
+    <enum name="NORMAL_MAP_OES"                        value="0x8511"/>
+    <enum name="REFLECTION_MAP_OES"                    value="0x8512"/>
+    <enum name="TEXTURE_CUBE_MAP_OES"                  value="0x8513"/>
+    <enum name="TEXTURE_BINDING_CUBE_MAP_OES"          value="0x8514"/>
+    <enum name="TEXTURE_CUBE_MAP_POSITIVE_X_OES"       value="0x8515"/>
+    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_X_OES"       value="0x8516"/>
+    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Y_OES"       value="0x8517"/>
+    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Y_OES"       value="0x8518"/>
+    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Z_OES"       value="0x8519"/>
+    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Z_OES"       value="0x851A"/>
+    <enum name="MAX_CUBE_MAP_TEXTURE_SIZE_OES"         value="0x851C"/>
+    <enum name="TEXTURE_GEN_STR_OES"                   value="0x8D60"/>
+
+    <function name="GetTexGenfvOES" offset="279">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="133"/>
+    </function>
+
+    <function name="GetTexGenivOES" offset="280">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="134"/>
+    </function>
+
+    <function name="GetTexGenxvOES" offset="assign">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
+    </function>
+
+    <function name="TexGenfOES" offset="190">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="117"/>
+    </function>
+
+    <function name="TexGenfvOES" offset="191">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="118"/>
+    </function>
+
+    <function name="TexGeniOES" offset="192">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="119"/>
+    </function>
+
+    <function name="TexGenivOES" offset="193">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="120"/>
+    </function>
+
+    <function name="TexGenxOES" offset="assign">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+    </function>
+
+    <function name="TexGenxvOES" offset="assign">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfixed *" variable_param="pname"/>
+    </function>
+</category>
+
+<category name="GL_OES_texture_env_crossbar" number="21">
+    <!-- No new functions, types, enums. -->
+</category>
+
+<category name="GL_OES_texture_mirrored_repeat" number="22">
+    <!-- No new functions, types, enums. -->
+</category>
+
+<category name="GL_EXT_texture_lod_bias" number="60">
+    <enum name="TEXTURE_FILTER_CONTROL_EXT"               value="0x8500"/>
+    <enum name="TEXTURE_LOD_BIAS_EXT"                     value="0x8501"/>
+    <enum name="MAX_TEXTURE_LOD_BIAS_EXT"                 value="0x84FD"/>
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen-es/es2_API.xml b/src/mapi/glapi/gen-es/es2_API.xml
new file mode 100644 (file)
index 0000000..f8af63b
--- /dev/null
@@ -0,0 +1,294 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "../gen/gl_API.dtd">
+
+<!-- OpenGL ES 2.x API -->
+
+<OpenGLAPI>
+
+<xi:include href="base2_API.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<!-- core subset of OpenGL 2.0 defined in OpenGL ES 2.0 -->
+<category name="core2.0">
+    <!-- addition to base1.0 -->
+    <enum name="NONE"                                     value="0x0"/>
+    <enum name="INT"                           count="4"  value="0x1404">
+        <size name="CallLists"/>
+    </enum>
+    <enum name="UNSIGNED_INT"                  count="4"  value="0x1405">
+        <size name="CallLists"/>
+    </enum>
+    <enum name="STENCIL_INDEX"                            value="0x1901"/>
+    <enum name="DEPTH_COMPONENT"                          value="0x1902"/>
+
+    <function name="TexImage2D" offset="183">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLint"/> <!-- XXX the actual type is GLenum... -->
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="target" img_send_null="true" img_pad_dimensions="true"/>
+        <glx rop="110" large="true"/>
+    </function>
+
+    <!-- addition to base1.1 -->
+    <enum name="RGBA4"                                    value="0x8056"/>
+    <enum name="RGB5_A1"                                  value="0x8057"/>
+
+    <!-- addition to base1.2 -->
+    <enum name="CONSTANT_COLOR"                           value="0x8001"/>
+    <enum name="ONE_MINUS_CONSTANT_COLOR"                 value="0x8002"/>
+    <enum name="CONSTANT_ALPHA"                           value="0x8003"/>
+    <enum name="ONE_MINUS_CONSTANT_ALPHA"                 value="0x8004"/>
+    <enum name="BLEND_COLOR"                   count="4"  value="0x8005">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FUNC_ADD"                                 value="0x8006"/>
+    <enum name="BLEND_EQUATION"                count="1"  value="0x8009">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FUNC_SUBTRACT"                            value="0x800A"/>
+    <enum name="FUNC_REVERSE_SUBTRACT"                    value="0x800B"/>
+
+    <function name="BlendColor" offset="336">
+        <param name="red" type="GLclampf"/>
+        <param name="green" type="GLclampf"/>
+        <param name="blue" type="GLclampf"/>
+        <param name="alpha" type="GLclampf"/>
+        <glx rop="4096"/>
+    </function>
+
+    <function name="BlendEquation" offset="337">
+        <param name="mode" type="GLenum"/>
+        <glx rop="4097"/>
+    </function>
+
+    <!-- addition to base1.3 -->
+    <enum name="TEXTURE_CUBE_MAP"              count="1"  value="0x8513">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_BINDING_CUBE_MAP"      count="1"  value="0x8514">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_CUBE_MAP_POSITIVE_X"              value="0x8515"/>
+    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_X"              value="0x8516"/>
+    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Y"              value="0x8517"/>
+    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Y"              value="0x8518"/>
+    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Z"              value="0x8519"/>
+    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Z"              value="0x851A"/>
+    <enum name="MAX_CUBE_MAP_TEXTURE_SIZE"     count="1"  value="0x851C">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <!-- addition to base1.4 -->
+    <enum name="BLEND_DST_RGB"                 count="1"  value="0x80C8">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLEND_SRC_RGB"                 count="1"  value="0x80C9">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLEND_DST_ALPHA"               count="1"  value="0x80CA">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLEND_SRC_ALPHA"               count="1"  value="0x80CB">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DEPTH_COMPONENT16"                        value="0x81A5"/>
+    <enum name="MIRRORED_REPEAT"                          value="0x8370"/>
+    <enum name="INCR_WRAP"                                value="0x8507"/>
+    <enum name="DECR_WRAP"                                value="0x8508"/>
+
+    <function name="BlendFuncSeparate" offset="assign">
+        <param name="sfactorRGB" type="GLenum"/>
+        <param name="dfactorRGB" type="GLenum"/>
+        <param name="sfactorAlpha" type="GLenum"/>
+        <param name="dfactorAlpha" type="GLenum"/>
+        <glx rop="4134"/>
+    </function>
+
+    <!-- addition to base1.5 -->
+    <enum name="VERTEX_ATTRIB_ARRAY_BUFFER_BINDING" count="1" value="0x889F">
+        <size name="GetVertexAttribdv" mode="get"/>
+        <size name="GetVertexAttribfv" mode="get"/>
+        <size name="GetVertexAttribiv" mode="get"/>
+    </enum>
+    <enum name="STREAM_DRAW"                              value="0x88E0"/>
+
+    <!-- addition to base2.0 -->
+    <!-- base2.0 should have everything defined -->
+</category>
+
+<!-- OpenGL ES 2.0 -->
+<category name="es2.0">
+    <!-- addition to core2.0 -->
+    <enum name="LOW_FLOAT"                                    value="0x8DF0"/>
+    <enum name="MEDIUM_FLOAT"                                 value="0x8DF1"/>
+    <enum name="HIGH_FLOAT"                                   value="0x8DF2"/>
+    <enum name="LOW_INT"                                      value="0x8DF3"/>
+    <enum name="MEDIUM_INT"                                   value="0x8DF4"/>
+    <enum name="HIGH_INT"                                     value="0x8DF5"/>
+    <enum name="SHADER_BINARY_FORMATS"                        value="0x8DF8"/>
+    <enum name="NUM_SHADER_BINARY_FORMATS"                    value="0x8DF9"/>
+    <enum name="SHADER_COMPILER"                              value="0x8DFA"/>
+    <enum name="MAX_VERTEX_UNIFORM_VECTORS"                   value="0x8DFB"/>
+    <enum name="MAX_VARYING_VECTORS"                          value="0x8DFC"/>
+    <enum name="MAX_FRAGMENT_UNIFORM_VECTORS"                 value="0x8DFD"/>
+
+    <function name="GetShaderPrecisionFormat" offset="assign">
+        <param name="shadertype" type="GLenum"/>
+        <param name="precisiontype" type="GLenum"/>
+        <param name="range" type="GLint *"/>
+        <param name="precision" type="GLint *"/>
+    </function>
+
+    <function name="ReleaseShaderCompiler" offset="assign">
+    </function>
+
+    <function name="ShaderBinary" offset="assign">
+        <param name="n" type="GLsizei"/>
+        <param name="shaders" type="const GLuint *"/>
+        <param name="binaryformat" type="GLenum"/>
+        <param name="binary" type="const GLvoid *"/>
+        <param name="length" type="GLsizei"/>
+    </function>
+
+    <!-- from GL_OES_fixed_point -->
+    <enum name="FIXED"                                    value="0x140C"/>
+    <type name="fixed"   size="4"                                    />
+
+    <!-- from GL_OES_framebuffer_object -->
+    <enum name="INVALID_FRAMEBUFFER_OPERATION"                value="0x0506"/>
+    <enum name="MAX_RENDERBUFFER_SIZE"                        value="0x84E8"/>
+    <enum name="FRAMEBUFFER_BINDING"                          value="0x8CA6"/>
+    <enum name="RENDERBUFFER_BINDING"                         value="0x8CA7"/>
+    <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE"           value="0x8CD0"/>
+    <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_NAME"           value="0x8CD1"/>
+    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL"         value="0x8CD2"/>
+    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE" value="0x8CD3"/>
+    <enum name="FRAMEBUFFER_COMPLETE"                         value="0x8CD5"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_ATTACHMENT"            value="0x8CD6"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT"    value="0x8CD7"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_DIMENSIONS"            value="0x8CD9"/>
+    <enum name="FRAMEBUFFER_UNSUPPORTED"                      value="0x8CDD"/>
+    <enum name="COLOR_ATTACHMENT0"                            value="0x8CE0"/>
+    <enum name="DEPTH_ATTACHMENT"                             value="0x8D00"/>
+    <enum name="STENCIL_ATTACHMENT"                           value="0x8D20"/>
+    <enum name="FRAMEBUFFER"                                  value="0x8D40"/>
+    <enum name="RENDERBUFFER"                                 value="0x8D41"/>
+    <enum name="RENDERBUFFER_WIDTH"                           value="0x8D42"/>
+    <enum name="RENDERBUFFER_HEIGHT"                          value="0x8D43"/>
+    <enum name="RENDERBUFFER_INTERNAL_FORMAT"                 value="0x8D44"/>
+    <enum name="STENCIL_INDEX8"                               value="0x8D48"/>
+    <enum name="RENDERBUFFER_RED_SIZE"                        value="0x8D50"/>
+    <enum name="RENDERBUFFER_GREEN_SIZE"                      value="0x8D51"/>
+    <enum name="RENDERBUFFER_BLUE_SIZE"                       value="0x8D52"/>
+    <enum name="RENDERBUFFER_ALPHA_SIZE"                      value="0x8D53"/>
+    <enum name="RENDERBUFFER_DEPTH_SIZE"                      value="0x8D54"/>
+    <enum name="RENDERBUFFER_STENCIL_SIZE"                    value="0x8D55"/>
+    <enum name="RGB565"                                       value="0x8D62"/>
+
+    <function name="BindFramebuffer" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="framebuffer" type="GLuint"/>
+    </function>
+
+    <function name="BindRenderbuffer" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="renderbuffer" type="GLuint"/>
+    </function>
+
+    <function name="CheckFramebufferStatus" offset="assign">
+        <param name="target" type="GLenum"/>
+       <return type="GLenum"/>
+    </function>
+
+    <function name="DeleteFramebuffers" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="framebuffers" type="const GLuint *" count="n"/>
+    </function>
+
+    <function name="DeleteRenderbuffers" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="renderbuffers" type="const GLuint *" count="n"/>
+    </function>
+
+    <function name="FramebufferRenderbuffer" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="renderbuffertarget" type="GLenum"/>
+        <param name="renderbuffer" type="GLuint"/>
+    </function>
+
+    <function name="FramebufferTexture2D" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="textarget" type="GLenum"/>
+        <param name="texture" type="GLuint"/>
+        <param name="level" type="GLint"/>
+    </function>
+
+    <function name="GenerateMipmap" offset="assign">
+        <param name="target" type="GLenum"/>
+    </function>
+
+    <function name="GenFramebuffers" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="framebuffers" type="GLuint *" count="n" output="true"/>
+    </function>
+
+    <function name="GenRenderbuffers" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="renderbuffers" type="GLuint *" count="n" output="true"/>
+    </function>
+
+    <function name="GetFramebufferAttachmentParameteriv" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true"/>
+    </function>
+
+    <function name="GetRenderbufferParameteriv" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true"/>
+    </function>
+
+    <function name="IsFramebuffer" offset="assign">
+        <param name="framebuffer" type="GLuint"/>
+       <return type="GLboolean"/>
+    </function>
+
+    <function name="IsRenderbuffer" offset="assign">
+        <param name="renderbuffer" type="GLuint"/>
+       <return type="GLboolean"/>
+    </function>
+
+    <function name="RenderbufferStorage" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+    </function>
+
+    <!-- from GL_OES_read_format -->
+    <enum name="IMPLEMENTATION_COLOR_READ_TYPE"           value="0x8B9A"/>
+    <enum name="IMPLEMENTATION_COLOR_READ_FORMAT"         value="0x8B9B"/>
+
+    <!-- from GL_OES_single_precision -->
+    <function name="ClearDepthf" offset="assign">
+        <param name="depth" type="GLclampf"/>
+    </function>
+
+    <function name="DepthRangef" offset="assign">
+        <param name="zNear" type="GLclampf"/>
+        <param name="zFar" type="GLclampf"/>
+    </function>
+</category>
+
+<xi:include href="es2_EXT.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+<xi:include href="es2_COMPAT.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen-es/es2_COMPAT.xml b/src/mapi/glapi/gen-es/es2_COMPAT.xml
new file mode 100644 (file)
index 0000000..1bd3569
--- /dev/null
@@ -0,0 +1,368 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "../gen/gl_API.dtd">
+
+<OpenGLAPI>
+
+<!-- This file defines the functions that are needed by Mesa.  It
+     makes sure the generated glapi headers are compatible with Mesa.
+     It mainly consists of missing functions and aliases in OpenGL ES.
+-->
+
+<xi:include href="es_COMPAT.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<!-- except for those defined by es_COMPAT.xml, these are also needed -->
+<category name="compat">
+    <!-- OpenGL 1.0 -->
+    <function name="Color4f" offset="29" vectorequiv="Color4fv" static_dispatch="false">
+        <param name="red" type="GLfloat"/>
+        <param name="green" type="GLfloat"/>
+        <param name="blue" type="GLfloat"/>
+        <param name="alpha" type="GLfloat"/>
+    </function>
+
+    <function name="Color4ub" offset="35" vectorequiv="Color4ubv" static_dispatch="false">
+        <param name="red" type="GLubyte"/>
+        <param name="green" type="GLubyte"/>
+        <param name="blue" type="GLubyte"/>
+        <param name="alpha" type="GLubyte"/>
+    </function>
+
+    <function name="Normal3f" offset="56" vectorequiv="Normal3fv" static_dispatch="false">
+        <param name="nx" type="GLfloat"/>
+        <param name="ny" type="GLfloat"/>
+        <param name="nz" type="GLfloat"/>
+    </function>
+
+    <function name="Fogf" offset="153" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="80"/>
+    </function>
+
+    <function name="Fogfv" offset="154" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="81"/>
+    </function>
+
+    <function name="Lightf" offset="159" static_dispatch="false">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="86"/>
+    </function>
+
+    <function name="Lightfv" offset="160" static_dispatch="false">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="87"/>
+    </function>
+
+    <function name="LightModelf" offset="163" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="90"/>
+    </function>
+
+    <function name="LightModelfv" offset="164" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="91"/>
+    </function>
+
+    <function name="Materialf" offset="169" static_dispatch="false">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="96"/>
+    </function>
+
+    <function name="Materialfv" offset="170" static_dispatch="false">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="97"/>
+    </function>
+
+    <function name="PointSize" offset="173" static_dispatch="false">
+        <param name="size" type="GLfloat"/>
+        <glx rop="100"/>
+    </function>
+
+    <function name="ShadeModel" offset="177" static_dispatch="false">
+        <param name="mode" type="GLenum"/>
+        <glx rop="104"/>
+    </function>
+
+    <function name="TexEnvf" offset="184" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="111"/>
+    </function>
+
+    <function name="TexEnvfv" offset="185" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="112"/>
+    </function>
+
+    <function name="TexEnvi" offset="186" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="113"/>
+    </function>
+
+    <function name="TexEnviv" offset="187" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="114"/>
+    </function>
+
+    <function name="TexGenf" offset="190" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="117"/>
+    </function>
+
+    <function name="TexGenfv" offset="191" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="118"/>
+    </function>
+
+    <function name="TexGeni" offset="192" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="119"/>
+    </function>
+
+    <function name="TexGeniv" offset="193" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="120"/>
+    </function>
+
+    <function name="AlphaFunc" offset="240" static_dispatch="false">
+        <param name="func" type="GLenum"/>
+        <param name="ref" type="GLclampf"/>
+        <glx rop="159"/>
+    </function>
+
+    <function name="LogicOp" offset="242" static_dispatch="false">
+        <param name="opcode" type="GLenum"/>
+        <glx rop="161"/>
+    </function>
+
+    <function name="GetLightfv" offset="264" static_dispatch="false">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="118"/>
+    </function>
+
+    <function name="GetMaterialfv" offset="269" static_dispatch="false">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="123"/>
+    </function>
+
+    <function name="GetTexEnvfv" offset="276" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="130"/>
+    </function>
+
+    <function name="GetTexEnviv" offset="277" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="131"/>
+    </function>
+
+    <function name="GetTexGenfv" offset="279" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="133"/>
+    </function>
+
+    <function name="GetTexGeniv" offset="280" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="134"/>
+    </function>
+
+    <function name="LoadIdentity" offset="290" static_dispatch="false">
+        <glx rop="176"/>
+    </function>
+
+    <function name="LoadMatrixf" offset="291" static_dispatch="false">
+        <param name="m" type="const GLfloat *" count="16"/>
+        <glx rop="177"/>
+    </function>
+
+    <function name="MatrixMode" offset="293" static_dispatch="false">
+        <param name="mode" type="GLenum"/>
+        <glx rop="179"/>
+    </function>
+
+    <function name="MultMatrixf" offset="294" static_dispatch="false">
+        <param name="m" type="const GLfloat *" count="16"/>
+        <glx rop="180"/>
+    </function>
+
+    <function name="PopMatrix" offset="297" static_dispatch="false">
+        <glx rop="183"/>
+    </function>
+
+    <function name="PushMatrix" offset="298" static_dispatch="false">
+        <glx rop="184"/>
+    </function>
+
+    <function name="Rotatef" offset="300" static_dispatch="false">
+        <param name="angle" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <glx rop="186"/>
+    </function>
+
+    <function name="Scalef" offset="302" static_dispatch="false">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <glx rop="188"/>
+    </function>
+
+    <function name="Translatef" offset="304" static_dispatch="false">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <glx rop="190"/>
+    </function>
+
+    <!-- OpenGL 1.1 -->
+    <function name="ColorPointer" offset="308" static_dispatch="false">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="DisableClientState" offset="309" static_dispatch="false">
+        <param name="array" type="GLenum"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="EnableClientState" offset="313" static_dispatch="false">
+        <param name="array" type="GLenum"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="NormalPointer" offset="318" static_dispatch="false">
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="TexCoordPointer" offset="320" static_dispatch="false">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="VertexPointer" offset="321" static_dispatch="false">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="GetPointerv" offset="329" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLvoid **" output="true"/>
+        <glx handcode="true"/>
+    </function>
+
+    <!-- OpenGL 1.2 -->
+    <function name="TexImage3D" alias="TexImage3DOES" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_format="format" img_type="type" img_target="target" img_null_flag="true" img_pad_dimensions="true"/>
+        <glx rop="4114" large="true"/>
+    </function>
+
+    <function name="TexSubImage3D" alias="TexSubImage3DOES" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="UNUSED" type="GLuint" padding="true"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_xoff="xoffset" img_yoff="yoffset" img_zoff="zoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
+        <glx rop="4115" large="true"/>
+    </function>
+
+    <function name="CopyTexSubImage3D" alias="CopyTexSubImage3DOES" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <glx rop="4123"/>
+    </function>
+
+    <!-- GL_ARB_multitexture -->
+    <function name="ActiveTextureARB" alias="ActiveTexture" static_dispatch="false">
+        <param name="texture" type="GLenum"/>
+        <glx rop="197"/>
+    </function>
+
+    <function name="ClientActiveTextureARB" offset="375" static_dispatch="false">
+        <param name="texture" type="GLenum"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="MultiTexCoord4fARB" offset="402" vectorequiv="MultiTexCoord4fvARB" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="r" type="GLfloat"/>
+        <param name="q" type="GLfloat"/>
+    </function>
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen-es/es2_EXT.xml b/src/mapi/glapi/gen-es/es2_EXT.xml
new file mode 100644 (file)
index 0000000..4a67952
--- /dev/null
@@ -0,0 +1,162 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "../gen/gl_API.dtd">
+
+<!-- OpenGL ES 2.x extensions -->
+
+<OpenGLAPI>
+
+<xi:include href="es_EXT.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<category name="GL_OES_texture_3D" number="34">
+    <enum name="TEXTURE_BINDING_3D_OES"                   value="0x806A"/>
+    <enum name="TEXTURE_3D_OES"                           value="0x806F"/>
+    <enum name="TEXTURE_WRAP_R_OES"                       value="0x8072"/>
+    <enum name="MAX_3D_TEXTURE_SIZE_OES"                  value="0x8073"/>
+    <enum name="SAMPLER_3D_OES"                           value="0x8B5F"/>
+    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES" value="0x8CD4"/>
+
+    <function name="CompressedTexImage3DOES" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="imageSize" type="GLsizei" counter="true"/>
+        <param name="data" type="const GLvoid *" count="imageSize"/>
+        <glx rop="216" handcode="client"/>
+    </function>
+
+    <function name="CompressedTexSubImage3DOES" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="imageSize" type="GLsizei" counter="true"/>
+        <param name="data" type="const GLvoid *" count="imageSize"/>
+        <glx rop="219" handcode="client"/>
+    </function>
+
+    <function name="CopyTexSubImage3DOES" offset="373">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <glx rop="4123"/>
+    </function>
+
+    <function name="FramebufferTexture3DOES" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="textarget" type="GLenum"/>
+        <param name="texture" type="GLuint"/>
+        <param name="level" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+        <glx rop="4323"/>
+    </function>
+
+    <function name="TexImage3DOES" offset="371">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_format="format" img_type="type" img_target="target" img_null_flag="true" img_pad_dimensions="true"/>
+        <glx rop="4114" large="true"/>
+    </function>
+
+    <function name="TexSubImage3DOES" offset="372">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="UNUSED" type="GLuint" padding="true"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_xoff="xoffset" img_yoff="yoffset" img_zoff="zoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
+        <glx rop="4115" large="true"/>
+    </function>
+</category>
+
+<!-- the other name is OES_texture_float_linear -->
+<category name="OES_texture_half_float_linear" number="35">
+    <!-- No new functions, types, enums. -->
+</category>
+
+<!-- the other name is OES_texture_float -->
+<category name="OES_texture_half_float" number="36">
+    <enum name="HALF_FLOAT_OES"                           value="0x8D61"/>
+</category>
+
+<category name="GL_OES_texture_npot" number="37">
+    <!-- No new functions, types, enums. -->
+</category>
+
+<category name="GL_OES_vertex_half_float" number="38">
+    <enum name="HALF_FLOAT_OES"                           value="0x8D61"/>
+</category>
+
+<category name="GL_EXT_texture_type_2_10_10_10_REV" number="42">
+    <enum name="UNSIGNED_INT_2_10_10_10_REV_EXT"          value="0x8368"/>
+</category>
+
+<category name="GL_OES_packed_depth_stencil" number="43">
+    <enum name="DEPTH_STENCIL_OES"                        value="0x84F9"/>
+    <enum name="UNSIGNED_INT_24_8_OES"                    value="0x84FA"/>
+    <enum name="DEPTH24_STENCIL8_OES"                     value="0x88F0"/>
+</category>
+
+<category name="GL_OES_depth_texture" number="44">
+    <!-- No new functions, types, enums. -->
+</category>
+
+<category name="GL_OES_standard_derivatives" number="45">
+    <enum name="FRAGMENT_SHADER_DERIVATIVE_HINT_OES"      value="0x8B8B"/>
+</category>
+
+<category name="GL_OES_vertex_type_10_10_10_2" number="46">
+    <enum name="UNSIGNED_INT_10_10_10_2_OES"              value="0x8DF6"/>
+    <enum name="INT_10_10_10_2_OES"                       value="0x8DF7"/>
+</category>
+
+<category name="GL_OES_get_program_binary" number="47">
+    <enum name="PROGRAM_BINARY_LENGTH_OES"                value="0x8741"/>
+    <enum name="NUM_PROGRAM_BINARY_FORMATS_OES"           value="0x87FE"/>
+    <enum name="PROGRAM_BINARY_FORMATS_OES"               value="0x87FF"/>
+
+    <function name="GetProgramBinaryOES" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="bufSize" type="GLsizei"/>
+        <param name="length" type="GLsizei *"/>
+        <param name="binaryFormat" type="GLenum *"/>
+        <param name="binary" type="GLvoid *"/>
+    </function>
+
+    <function name="ProgramBinaryOES" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="binaryFormat" type="GLenum"/>
+        <param name="binary" type="const GLvoid *"/>
+        <param name="length" type="GLint"/>
+    </function>
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen-es/es_COMPAT.xml b/src/mapi/glapi/gen-es/es_COMPAT.xml
new file mode 100644 (file)
index 0000000..7c72926
--- /dev/null
@@ -0,0 +1,2646 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "../gen/gl_API.dtd">
+
+<OpenGLAPI>
+
+<!-- This file defines the following categories
+
+         a subset of 1.0
+         a subset of 1.1
+         a subset of 1.2
+         a subset of GL_ARB_multitexture
+         GL_APPLE_vertex_array_object
+
+     to make sure the generated glapi headers are compatible with Mesa.
+     It is included by es1_COMPAT.xml and es2_COMPAT.xml.
+-->
+
+<category name="1.0">
+    <type name="double"  size="8"  float="true"    glx_name="FLOAT64"/>
+    <type name="clampd"  size="8"  float="true"    glx_name="FLOAT64"/>
+
+    <type name="float"   size="4"  float="true"    glx_name="FLOAT32"/>
+    <type name="clampf"  size="4"  float="true"    glx_name="FLOAT32"/>
+
+    <type name="int"     size="4"                  glx_name="CARD32"/>
+    <type name="uint"    size="4"  unsigned="true" glx_name="CARD32"/>
+    <type name="sizei"   size="4"  unsigned="true" glx_name="CARD32"/>
+    <type name="enum"    size="4"  unsigned="true" glx_name="ENUM"/>
+    <type name="bitfield" size="4" unsigned="true" glx_name="CARD32"/>
+
+    <type name="short"   size="2"                  glx_name="CARD16"/>
+    <type name="ushort"  size="2"  unsigned="true" glx_name="CARD16"/>
+
+    <type name="byte"    size="1"                  glx_name="CARD8"/>
+    <type name="ubyte"   size="1"  unsigned="true" glx_name="CARD8"/>
+    <type name="boolean" size="1"  unsigned="true" glx_name="CARD8"/>
+
+    <type name="void"    size="1"/>
+
+    <function name="NewList" offset="0" static_dispatch="false">
+        <param name="list" type="GLuint"/>
+        <param name="mode" type="GLenum"/>
+        <glx sop="101"/>
+    </function>
+
+    <function name="EndList" offset="1" static_dispatch="false">
+        <glx sop="102"/>
+    </function>
+
+    <function name="CallList" offset="2" static_dispatch="false">
+        <param name="list" type="GLuint"/>
+        <glx rop="1"/>
+    </function>
+
+    <function name="CallLists" offset="3" static_dispatch="false">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="type" type="GLenum"/>
+        <param name="lists" type="const GLvoid *" variable_param="type" count="n"/>
+        <glx rop="2" large="true"/>
+    </function>
+
+    <function name="DeleteLists" offset="4" static_dispatch="false">
+        <param name="list" type="GLuint"/>
+        <param name="range" type="GLsizei"/>
+        <glx sop="103"/>
+    </function>
+
+    <function name="GenLists" offset="5" static_dispatch="false">
+        <param name="range" type="GLsizei"/>
+        <return type="GLuint"/>
+        <glx sop="104"/>
+    </function>
+
+    <function name="ListBase" offset="6" static_dispatch="false">
+        <param name="base" type="GLuint"/>
+        <glx rop="3"/>
+    </function>
+
+    <function name="Begin" offset="7" static_dispatch="false">
+        <param name="mode" type="GLenum"/>
+        <glx rop="4"/>
+    </function>
+
+    <function name="Bitmap" offset="8" static_dispatch="false">
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="xorig" type="GLfloat"/>
+        <param name="yorig" type="GLfloat"/>
+        <param name="xmove" type="GLfloat"/>
+        <param name="ymove" type="GLfloat"/>
+        <param name="bitmap" type="const GLubyte *" img_width="width" img_height="height" img_format="GL_COLOR_INDEX" img_type="GL_BITMAP" img_target="0" img_pad_dimensions="false"/>
+        <glx rop="5" large="true"/>
+    </function>
+
+    <function name="Color3b" offset="9" vectorequiv="Color3bv" static_dispatch="false">
+        <param name="red" type="GLbyte"/>
+        <param name="green" type="GLbyte"/>
+        <param name="blue" type="GLbyte"/>
+    </function>
+
+    <function name="Color3bv" offset="10" static_dispatch="false">
+        <param name="v" type="const GLbyte *" count="3"/>
+        <glx rop="6"/>
+    </function>
+
+    <function name="Color3d" offset="11" vectorequiv="Color3dv" static_dispatch="false">
+        <param name="red" type="GLdouble"/>
+        <param name="green" type="GLdouble"/>
+        <param name="blue" type="GLdouble"/>
+    </function>
+
+    <function name="Color3dv" offset="12" static_dispatch="false">
+        <param name="v" type="const GLdouble *" count="3"/>
+        <glx rop="7"/>
+    </function>
+
+    <function name="Color3f" offset="13" vectorequiv="Color3fv" static_dispatch="false">
+        <param name="red" type="GLfloat"/>
+        <param name="green" type="GLfloat"/>
+        <param name="blue" type="GLfloat"/>
+    </function>
+
+    <function name="Color3fv" offset="14" static_dispatch="false">
+        <param name="v" type="const GLfloat *" count="3"/>
+        <glx rop="8"/>
+    </function>
+
+    <function name="Color3i" offset="15" vectorequiv="Color3iv" static_dispatch="false">
+        <param name="red" type="GLint"/>
+        <param name="green" type="GLint"/>
+        <param name="blue" type="GLint"/>
+    </function>
+
+    <function name="Color3iv" offset="16" static_dispatch="false">
+        <param name="v" type="const GLint *" count="3"/>
+        <glx rop="9"/>
+    </function>
+
+    <function name="Color3s" offset="17" vectorequiv="Color3sv" static_dispatch="false">
+        <param name="red" type="GLshort"/>
+        <param name="green" type="GLshort"/>
+        <param name="blue" type="GLshort"/>
+    </function>
+
+    <function name="Color3sv" offset="18" static_dispatch="false">
+        <param name="v" type="const GLshort *" count="3"/>
+        <glx rop="10"/>
+    </function>
+
+    <function name="Color3ub" offset="19" vectorequiv="Color3ubv" static_dispatch="false">
+        <param name="red" type="GLubyte"/>
+        <param name="green" type="GLubyte"/>
+        <param name="blue" type="GLubyte"/>
+    </function>
+
+    <function name="Color3ubv" offset="20" static_dispatch="false">
+        <param name="v" type="const GLubyte *" count="3"/>
+        <glx rop="11"/>
+    </function>
+
+    <function name="Color3ui" offset="21" vectorequiv="Color3uiv" static_dispatch="false">
+        <param name="red" type="GLuint"/>
+        <param name="green" type="GLuint"/>
+        <param name="blue" type="GLuint"/>
+    </function>
+
+    <function name="Color3uiv" offset="22" static_dispatch="false">
+        <param name="v" type="const GLuint *" count="3"/>
+        <glx rop="12"/>
+    </function>
+
+    <function name="Color3us" offset="23" vectorequiv="Color3usv" static_dispatch="false">
+        <param name="red" type="GLushort"/>
+        <param name="green" type="GLushort"/>
+        <param name="blue" type="GLushort"/>
+    </function>
+
+    <function name="Color3usv" offset="24" static_dispatch="false">
+        <param name="v" type="const GLushort *" count="3"/>
+        <glx rop="13"/>
+    </function>
+
+    <function name="Color4b" offset="25" vectorequiv="Color4bv" static_dispatch="false">
+        <param name="red" type="GLbyte"/>
+        <param name="green" type="GLbyte"/>
+        <param name="blue" type="GLbyte"/>
+        <param name="alpha" type="GLbyte"/>
+    </function>
+
+    <function name="Color4bv" offset="26" static_dispatch="false">
+        <param name="v" type="const GLbyte *" count="4"/>
+        <glx rop="14"/>
+    </function>
+
+    <function name="Color4d" offset="27" vectorequiv="Color4dv" static_dispatch="false">
+        <param name="red" type="GLdouble"/>
+        <param name="green" type="GLdouble"/>
+        <param name="blue" type="GLdouble"/>
+        <param name="alpha" type="GLdouble"/>
+    </function>
+
+    <function name="Color4dv" offset="28" static_dispatch="false">
+        <param name="v" type="const GLdouble *" count="4"/>
+        <glx rop="15"/>
+    </function>
+
+    <!--function name="Color4f" offset="29" vectorequiv="Color4fv" static_dispatch="false">
+        <param name="red" type="GLfloat"/>
+        <param name="green" type="GLfloat"/>
+        <param name="blue" type="GLfloat"/>
+        <param name="alpha" type="GLfloat"/>
+    </function-->
+
+    <function name="Color4fv" offset="30" static_dispatch="false">
+        <param name="v" type="const GLfloat *" count="4"/>
+        <glx rop="16"/>
+    </function>
+
+    <function name="Color4i" offset="31" vectorequiv="Color4iv" static_dispatch="false">
+        <param name="red" type="GLint"/>
+        <param name="green" type="GLint"/>
+        <param name="blue" type="GLint"/>
+        <param name="alpha" type="GLint"/>
+    </function>
+
+    <function name="Color4iv" offset="32" static_dispatch="false">
+        <param name="v" type="const GLint *" count="4"/>
+        <glx rop="17"/>
+    </function>
+
+    <function name="Color4s" offset="33" vectorequiv="Color4sv" static_dispatch="false">
+        <param name="red" type="GLshort"/>
+        <param name="green" type="GLshort"/>
+        <param name="blue" type="GLshort"/>
+        <param name="alpha" type="GLshort"/>
+    </function>
+
+    <function name="Color4sv" offset="34" static_dispatch="false">
+        <param name="v" type="const GLshort *" count="4"/>
+        <glx rop="18"/>
+    </function>
+
+    <!--function name="Color4ub" offset="35" vectorequiv="Color4ubv" static_dispatch="false">
+        <param name="red" type="GLubyte"/>
+        <param name="green" type="GLubyte"/>
+        <param name="blue" type="GLubyte"/>
+        <param name="alpha" type="GLubyte"/>
+    </function-->
+
+    <function name="Color4ubv" offset="36" static_dispatch="false">
+        <param name="v" type="const GLubyte *" count="4"/>
+        <glx rop="19"/>
+    </function>
+
+    <function name="Color4ui" offset="37" vectorequiv="Color4uiv" static_dispatch="false">
+        <param name="red" type="GLuint"/>
+        <param name="green" type="GLuint"/>
+        <param name="blue" type="GLuint"/>
+        <param name="alpha" type="GLuint"/>
+    </function>
+
+    <function name="Color4uiv" offset="38" static_dispatch="false">
+        <param name="v" type="const GLuint *" count="4"/>
+        <glx rop="20"/>
+    </function>
+
+    <function name="Color4us" offset="39" vectorequiv="Color4usv" static_dispatch="false">
+        <param name="red" type="GLushort"/>
+        <param name="green" type="GLushort"/>
+        <param name="blue" type="GLushort"/>
+        <param name="alpha" type="GLushort"/>
+    </function>
+
+    <function name="Color4usv" offset="40" static_dispatch="false">
+        <param name="v" type="const GLushort *" count="4"/>
+        <glx rop="21"/>
+    </function>
+
+    <function name="EdgeFlag" offset="41" vectorequiv="EdgeFlagv" static_dispatch="false">
+        <param name="flag" type="GLboolean"/>
+    </function>
+
+    <function name="EdgeFlagv" offset="42" static_dispatch="false">
+        <param name="flag" type="const GLboolean *" count="1"/>
+        <glx rop="22"/>
+    </function>
+
+    <function name="End" offset="43" static_dispatch="false">
+        <glx rop="23"/>
+    </function>
+
+    <function name="Indexd" offset="44" vectorequiv="Indexdv" static_dispatch="false">
+        <param name="c" type="GLdouble"/>
+    </function>
+
+    <function name="Indexdv" offset="45" static_dispatch="false">
+        <param name="c" type="const GLdouble *" count="1"/>
+        <glx rop="24"/>
+    </function>
+
+    <function name="Indexf" offset="46" vectorequiv="Indexfv" static_dispatch="false">
+        <param name="c" type="GLfloat"/>
+    </function>
+
+    <function name="Indexfv" offset="47" static_dispatch="false">
+        <param name="c" type="const GLfloat *" count="1"/>
+        <glx rop="25"/>
+    </function>
+
+    <function name="Indexi" offset="48" vectorequiv="Indexiv" static_dispatch="false">
+        <param name="c" type="GLint"/>
+    </function>
+
+    <function name="Indexiv" offset="49" static_dispatch="false">
+        <param name="c" type="const GLint *" count="1"/>
+        <glx rop="26"/>
+    </function>
+
+    <function name="Indexs" offset="50" vectorequiv="Indexsv" static_dispatch="false">
+        <param name="c" type="GLshort"/>
+    </function>
+
+    <function name="Indexsv" offset="51" static_dispatch="false">
+        <param name="c" type="const GLshort *" count="1"/>
+        <glx rop="27"/>
+    </function>
+
+    <function name="Normal3b" offset="52" vectorequiv="Normal3bv" static_dispatch="false">
+        <param name="nx" type="GLbyte"/>
+        <param name="ny" type="GLbyte"/>
+        <param name="nz" type="GLbyte"/>
+    </function>
+
+    <function name="Normal3bv" offset="53" static_dispatch="false">
+        <param name="v" type="const GLbyte *" count="3"/>
+        <glx rop="28"/>
+    </function>
+
+    <function name="Normal3d" offset="54" vectorequiv="Normal3dv" static_dispatch="false">
+        <param name="nx" type="GLdouble"/>
+        <param name="ny" type="GLdouble"/>
+        <param name="nz" type="GLdouble"/>
+    </function>
+
+    <function name="Normal3dv" offset="55" static_dispatch="false">
+        <param name="v" type="const GLdouble *" count="3"/>
+        <glx rop="29"/>
+    </function>
+
+    <!--function name="Normal3f" offset="56" vectorequiv="Normal3fv" static_dispatch="false">
+        <param name="nx" type="GLfloat"/>
+        <param name="ny" type="GLfloat"/>
+        <param name="nz" type="GLfloat"/>
+    </function-->
+
+    <function name="Normal3fv" offset="57" static_dispatch="false">
+        <param name="v" type="const GLfloat *" count="3"/>
+        <glx rop="30"/>
+    </function>
+
+    <function name="Normal3i" offset="58" vectorequiv="Normal3iv" static_dispatch="false">
+        <param name="nx" type="GLint"/>
+        <param name="ny" type="GLint"/>
+        <param name="nz" type="GLint"/>
+    </function>
+
+    <function name="Normal3iv" offset="59" static_dispatch="false">
+        <param name="v" type="const GLint *" count="3"/>
+        <glx rop="31"/>
+    </function>
+
+    <function name="Normal3s" offset="60" vectorequiv="Normal3sv" static_dispatch="false">
+        <param name="nx" type="GLshort"/>
+        <param name="ny" type="GLshort"/>
+        <param name="nz" type="GLshort"/>
+    </function>
+
+    <function name="Normal3sv" offset="61" static_dispatch="false">
+        <param name="v" type="const GLshort *" count="3"/>
+        <glx rop="32"/>
+    </function>
+
+    <function name="RasterPos2d" offset="62" vectorequiv="RasterPos2dv" static_dispatch="false">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+    </function>
+
+    <function name="RasterPos2dv" offset="63" static_dispatch="false">
+        <param name="v" type="const GLdouble *" count="2"/>
+        <glx rop="33"/>
+    </function>
+
+    <function name="RasterPos2f" offset="64" vectorequiv="RasterPos2fv" static_dispatch="false">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+    </function>
+
+    <function name="RasterPos2fv" offset="65" static_dispatch="false">
+        <param name="v" type="const GLfloat *" count="2"/>
+        <glx rop="34"/>
+    </function>
+
+    <function name="RasterPos2i" offset="66" vectorequiv="RasterPos2iv" static_dispatch="false">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+    </function>
+
+    <function name="RasterPos2iv" offset="67" static_dispatch="false">
+        <param name="v" type="const GLint *" count="2"/>
+        <glx rop="35"/>
+    </function>
+
+    <function name="RasterPos2s" offset="68" vectorequiv="RasterPos2sv" static_dispatch="false">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+    </function>
+
+    <function name="RasterPos2sv" offset="69" static_dispatch="false">
+        <param name="v" type="const GLshort *" count="2"/>
+        <glx rop="36"/>
+    </function>
+
+    <function name="RasterPos3d" offset="70" vectorequiv="RasterPos3dv" static_dispatch="false">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+    </function>
+
+    <function name="RasterPos3dv" offset="71" static_dispatch="false">
+        <param name="v" type="const GLdouble *" count="3"/>
+        <glx rop="37"/>
+    </function>
+
+    <function name="RasterPos3f" offset="72" vectorequiv="RasterPos3fv" static_dispatch="false">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="RasterPos3fv" offset="73" static_dispatch="false">
+        <param name="v" type="const GLfloat *" count="3"/>
+        <glx rop="38"/>
+    </function>
+
+    <function name="RasterPos3i" offset="74" vectorequiv="RasterPos3iv" static_dispatch="false">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="z" type="GLint"/>
+    </function>
+
+    <function name="RasterPos3iv" offset="75" static_dispatch="false">
+        <param name="v" type="const GLint *" count="3"/>
+        <glx rop="39"/>
+    </function>
+
+    <function name="RasterPos3s" offset="76" vectorequiv="RasterPos3sv" static_dispatch="false">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+    </function>
+
+    <function name="RasterPos3sv" offset="77" static_dispatch="false">
+        <param name="v" type="const GLshort *" count="3"/>
+        <glx rop="40"/>
+    </function>
+
+    <function name="RasterPos4d" offset="78" vectorequiv="RasterPos4dv" static_dispatch="false">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <param name="w" type="GLdouble"/>
+    </function>
+
+    <function name="RasterPos4dv" offset="79" static_dispatch="false">
+        <param name="v" type="const GLdouble *" count="4"/>
+        <glx rop="41"/>
+    </function>
+
+    <function name="RasterPos4f" offset="80" vectorequiv="RasterPos4fv" static_dispatch="false">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <param name="w" type="GLfloat"/>
+    </function>
+
+    <function name="RasterPos4fv" offset="81" static_dispatch="false">
+        <param name="v" type="const GLfloat *" count="4"/>
+        <glx rop="42"/>
+    </function>
+
+    <function name="RasterPos4i" offset="82" vectorequiv="RasterPos4iv" static_dispatch="false">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="z" type="GLint"/>
+        <param name="w" type="GLint"/>
+    </function>
+
+    <function name="RasterPos4iv" offset="83" static_dispatch="false">
+        <param name="v" type="const GLint *" count="4"/>
+        <glx rop="43"/>
+    </function>
+
+    <function name="RasterPos4s" offset="84" vectorequiv="RasterPos4sv" static_dispatch="false">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+        <param name="w" type="GLshort"/>
+    </function>
+
+    <function name="RasterPos4sv" offset="85" static_dispatch="false">
+        <param name="v" type="const GLshort *" count="4"/>
+        <glx rop="44"/>
+    </function>
+
+    <function name="Rectd" offset="86" vectorequiv="Rectdv" static_dispatch="false">
+        <param name="x1" type="GLdouble"/>
+        <param name="y1" type="GLdouble"/>
+        <param name="x2" type="GLdouble"/>
+        <param name="y2" type="GLdouble"/>
+    </function>
+
+    <function name="Rectdv" offset="87" static_dispatch="false">
+        <param name="v1" type="const GLdouble *" count="2"/>
+        <param name="v2" type="const GLdouble *" count="2"/>
+        <glx rop="45"/>
+    </function>
+
+    <function name="Rectf" offset="88" vectorequiv="Rectfv" static_dispatch="false">
+        <param name="x1" type="GLfloat"/>
+        <param name="y1" type="GLfloat"/>
+        <param name="x2" type="GLfloat"/>
+        <param name="y2" type="GLfloat"/>
+    </function>
+
+    <function name="Rectfv" offset="89" static_dispatch="false">
+        <param name="v1" type="const GLfloat *" count="2"/>
+        <param name="v2" type="const GLfloat *" count="2"/>
+        <glx rop="46"/>
+    </function>
+
+    <function name="Recti" offset="90" vectorequiv="Rectiv" static_dispatch="false">
+        <param name="x1" type="GLint"/>
+        <param name="y1" type="GLint"/>
+        <param name="x2" type="GLint"/>
+        <param name="y2" type="GLint"/>
+    </function>
+
+    <function name="Rectiv" offset="91" static_dispatch="false">
+        <param name="v1" type="const GLint *" count="2"/>
+        <param name="v2" type="const GLint *" count="2"/>
+        <glx rop="47"/>
+    </function>
+
+    <function name="Rects" offset="92" vectorequiv="Rectsv" static_dispatch="false">
+        <param name="x1" type="GLshort"/>
+        <param name="y1" type="GLshort"/>
+        <param name="x2" type="GLshort"/>
+        <param name="y2" type="GLshort"/>
+    </function>
+
+    <function name="Rectsv" offset="93" static_dispatch="false">
+        <param name="v1" type="const GLshort *" count="2"/>
+        <param name="v2" type="const GLshort *" count="2"/>
+        <glx rop="48"/>
+    </function>
+
+    <function name="TexCoord1d" offset="94" vectorequiv="TexCoord1dv" static_dispatch="false">
+        <param name="s" type="GLdouble"/>
+    </function>
+
+    <function name="TexCoord1dv" offset="95" static_dispatch="false">
+        <param name="v" type="const GLdouble *" count="1"/>
+        <glx rop="49"/>
+    </function>
+
+    <function name="TexCoord1f" offset="96" vectorequiv="TexCoord1fv" static_dispatch="false">
+        <param name="s" type="GLfloat"/>
+    </function>
+
+    <function name="TexCoord1fv" offset="97" static_dispatch="false">
+        <param name="v" type="const GLfloat *" count="1"/>
+        <glx rop="50"/>
+    </function>
+
+    <function name="TexCoord1i" offset="98" vectorequiv="TexCoord1iv" static_dispatch="false">
+        <param name="s" type="GLint"/>
+    </function>
+
+    <function name="TexCoord1iv" offset="99" static_dispatch="false">
+        <param name="v" type="const GLint *" count="1"/>
+        <glx rop="51"/>
+    </function>
+
+    <function name="TexCoord1s" offset="100" vectorequiv="TexCoord1sv" static_dispatch="false">
+        <param name="s" type="GLshort"/>
+    </function>
+
+    <function name="TexCoord1sv" offset="101" static_dispatch="false">
+        <param name="v" type="const GLshort *" count="1"/>
+        <glx rop="52"/>
+    </function>
+
+    <function name="TexCoord2d" offset="102" vectorequiv="TexCoord2dv" static_dispatch="false">
+        <param name="s" type="GLdouble"/>
+        <param name="t" type="GLdouble"/>
+    </function>
+
+    <function name="TexCoord2dv" offset="103" static_dispatch="false">
+        <param name="v" type="const GLdouble *" count="2"/>
+        <glx rop="53"/>
+    </function>
+
+    <function name="TexCoord2f" offset="104" vectorequiv="TexCoord2fv" static_dispatch="false">
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+    </function>
+
+    <function name="TexCoord2fv" offset="105" static_dispatch="false">
+        <param name="v" type="const GLfloat *" count="2"/>
+        <glx rop="54"/>
+    </function>
+
+    <function name="TexCoord2i" offset="106" vectorequiv="TexCoord2iv" static_dispatch="false">
+        <param name="s" type="GLint"/>
+        <param name="t" type="GLint"/>
+    </function>
+
+    <function name="TexCoord2iv" offset="107" static_dispatch="false">
+        <param name="v" type="const GLint *" count="2"/>
+        <glx rop="55"/>
+    </function>
+
+    <function name="TexCoord2s" offset="108" vectorequiv="TexCoord2sv" static_dispatch="false">
+        <param name="s" type="GLshort"/>
+        <param name="t" type="GLshort"/>
+    </function>
+
+    <function name="TexCoord2sv" offset="109" static_dispatch="false">
+        <param name="v" type="const GLshort *" count="2"/>
+        <glx rop="56"/>
+    </function>
+
+    <function name="TexCoord3d" offset="110" vectorequiv="TexCoord3dv" static_dispatch="false">
+        <param name="s" type="GLdouble"/>
+        <param name="t" type="GLdouble"/>
+        <param name="r" type="GLdouble"/>
+    </function>
+
+    <function name="TexCoord3dv" offset="111" static_dispatch="false">
+        <param name="v" type="const GLdouble *" count="3"/>
+        <glx rop="57"/>
+    </function>
+
+    <function name="TexCoord3f" offset="112" vectorequiv="TexCoord3fv" static_dispatch="false">
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="r" type="GLfloat"/>
+    </function>
+
+    <function name="TexCoord3fv" offset="113" static_dispatch="false">
+        <param name="v" type="const GLfloat *" count="3"/>
+        <glx rop="58"/>
+    </function>
+
+    <function name="TexCoord3i" offset="114" vectorequiv="TexCoord3iv" static_dispatch="false">
+        <param name="s" type="GLint"/>
+        <param name="t" type="GLint"/>
+        <param name="r" type="GLint"/>
+    </function>
+
+    <function name="TexCoord3iv" offset="115" static_dispatch="false">
+        <param name="v" type="const GLint *" count="3"/>
+        <glx rop="59"/>
+    </function>
+
+    <function name="TexCoord3s" offset="116" vectorequiv="TexCoord3sv" static_dispatch="false">
+        <param name="s" type="GLshort"/>
+        <param name="t" type="GLshort"/>
+        <param name="r" type="GLshort"/>
+    </function>
+
+    <function name="TexCoord3sv" offset="117" static_dispatch="false">
+        <param name="v" type="const GLshort *" count="3"/>
+        <glx rop="60"/>
+    </function>
+
+    <function name="TexCoord4d" offset="118" vectorequiv="TexCoord4dv" static_dispatch="false">
+        <param name="s" type="GLdouble"/>
+        <param name="t" type="GLdouble"/>
+        <param name="r" type="GLdouble"/>
+        <param name="q" type="GLdouble"/>
+    </function>
+
+    <function name="TexCoord4dv" offset="119" static_dispatch="false">
+        <param name="v" type="const GLdouble *" count="4"/>
+        <glx rop="61"/>
+    </function>
+
+    <function name="TexCoord4f" offset="120" vectorequiv="TexCoord4fv" static_dispatch="false">
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="r" type="GLfloat"/>
+        <param name="q" type="GLfloat"/>
+    </function>
+
+    <function name="TexCoord4fv" offset="121" static_dispatch="false">
+        <param name="v" type="const GLfloat *" count="4"/>
+        <glx rop="62"/>
+    </function>
+
+    <function name="TexCoord4i" offset="122" vectorequiv="TexCoord4iv" static_dispatch="false">
+        <param name="s" type="GLint"/>
+        <param name="t" type="GLint"/>
+        <param name="r" type="GLint"/>
+        <param name="q" type="GLint"/>
+    </function>
+
+    <function name="TexCoord4iv" offset="123" static_dispatch="false">
+        <param name="v" type="const GLint *" count="4"/>
+        <glx rop="63"/>
+    </function>
+
+    <function name="TexCoord4s" offset="124" vectorequiv="TexCoord4sv" static_dispatch="false">
+        <param name="s" type="GLshort"/>
+        <param name="t" type="GLshort"/>
+        <param name="r" type="GLshort"/>
+        <param name="q" type="GLshort"/>
+    </function>
+
+    <function name="TexCoord4sv" offset="125" static_dispatch="false">
+        <param name="v" type="const GLshort *" count="4"/>
+        <glx rop="64"/>
+    </function>
+
+    <function name="Vertex2d" offset="126" vectorequiv="Vertex2dv" static_dispatch="false">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+    </function>
+
+    <function name="Vertex2dv" offset="127" static_dispatch="false">
+        <param name="v" type="const GLdouble *" count="2"/>
+        <glx rop="65"/>
+    </function>
+
+    <function name="Vertex2f" offset="128" vectorequiv="Vertex2fv" static_dispatch="false">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+    </function>
+
+    <function name="Vertex2fv" offset="129" static_dispatch="false">
+        <param name="v" type="const GLfloat *" count="2"/>
+        <glx rop="66"/>
+    </function>
+
+    <function name="Vertex2i" offset="130" vectorequiv="Vertex2iv" static_dispatch="false">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+    </function>
+
+    <function name="Vertex2iv" offset="131" static_dispatch="false">
+        <param name="v" type="const GLint *" count="2"/>
+        <glx rop="67"/>
+    </function>
+
+    <function name="Vertex2s" offset="132" vectorequiv="Vertex2sv" static_dispatch="false">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+    </function>
+
+    <function name="Vertex2sv" offset="133" static_dispatch="false">
+        <param name="v" type="const GLshort *" count="2"/>
+        <glx rop="68"/>
+    </function>
+
+    <function name="Vertex3d" offset="134" vectorequiv="Vertex3dv" static_dispatch="false">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+    </function>
+
+    <function name="Vertex3dv" offset="135" static_dispatch="false">
+        <param name="v" type="const GLdouble *" count="3"/>
+        <glx rop="69"/>
+    </function>
+
+    <function name="Vertex3f" offset="136" vectorequiv="Vertex3fv" static_dispatch="false">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="Vertex3fv" offset="137" static_dispatch="false">
+        <param name="v" type="const GLfloat *" count="3"/>
+        <glx rop="70"/>
+    </function>
+
+    <function name="Vertex3i" offset="138" vectorequiv="Vertex3iv" static_dispatch="false">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="z" type="GLint"/>
+    </function>
+
+    <function name="Vertex3iv" offset="139" static_dispatch="false">
+        <param name="v" type="const GLint *" count="3"/>
+        <glx rop="71"/>
+    </function>
+
+    <function name="Vertex3s" offset="140" vectorequiv="Vertex3sv" static_dispatch="false">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+    </function>
+
+    <function name="Vertex3sv" offset="141" static_dispatch="false">
+        <param name="v" type="const GLshort *" count="3"/>
+        <glx rop="72"/>
+    </function>
+
+    <function name="Vertex4d" offset="142" vectorequiv="Vertex4dv" static_dispatch="false">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <param name="w" type="GLdouble"/>
+    </function>
+
+    <function name="Vertex4dv" offset="143" static_dispatch="false">
+        <param name="v" type="const GLdouble *" count="4"/>
+        <glx rop="73"/>
+    </function>
+
+    <function name="Vertex4f" offset="144" vectorequiv="Vertex4fv" static_dispatch="false">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <param name="w" type="GLfloat"/>
+    </function>
+
+    <function name="Vertex4fv" offset="145" static_dispatch="false">
+        <param name="v" type="const GLfloat *" count="4"/>
+        <glx rop="74"/>
+    </function>
+
+    <function name="Vertex4i" offset="146" vectorequiv="Vertex4iv" static_dispatch="false">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="z" type="GLint"/>
+        <param name="w" type="GLint"/>
+    </function>
+
+    <function name="Vertex4iv" offset="147" static_dispatch="false">
+        <param name="v" type="const GLint *" count="4"/>
+        <glx rop="75"/>
+    </function>
+
+    <function name="Vertex4s" offset="148" vectorequiv="Vertex4sv" static_dispatch="false">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+        <param name="w" type="GLshort"/>
+    </function>
+
+    <function name="Vertex4sv" offset="149" static_dispatch="false">
+        <param name="v" type="const GLshort *" count="4"/>
+        <glx rop="76"/>
+    </function>
+
+    <function name="ClipPlane" offset="150" static_dispatch="false">
+        <param name="plane" type="GLenum"/>
+        <param name="equation" type="const GLdouble *" count="4"/>
+        <glx rop="77"/>
+    </function>
+
+    <function name="ColorMaterial" offset="151" static_dispatch="false">
+        <param name="face" type="GLenum"/>
+        <param name="mode" type="GLenum"/>
+        <glx rop="78"/>
+    </function>
+
+    <!--function name="CullFace" offset="152" static_dispatch="false">
+        <param name="mode" type="GLenum"/>
+        <glx rop="79"/>
+    </function>
+
+    <function name="Fogf" offset="153" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="80"/>
+    </function>
+
+    <function name="Fogfv" offset="154" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="81"/>
+    </function-->
+
+    <function name="Fogi" offset="155" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="82"/>
+    </function>
+
+    <function name="Fogiv" offset="156" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="83"/>
+    </function>
+
+    <!--function name="FrontFace" offset="157" static_dispatch="false">
+        <param name="mode" type="GLenum"/>
+        <glx rop="84"/>
+    </function>
+
+    <function name="Hint" offset="158" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="mode" type="GLenum"/>
+        <glx rop="85"/>
+    </function>
+
+    <function name="Lightf" offset="159" static_dispatch="false">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="86"/>
+    </function>
+
+    <function name="Lightfv" offset="160" static_dispatch="false">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="87"/>
+    </function-->
+
+    <function name="Lighti" offset="161" static_dispatch="false">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="88"/>
+    </function>
+
+    <function name="Lightiv" offset="162" static_dispatch="false">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="89"/>
+    </function>
+
+    <!--function name="LightModelf" offset="163" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="90"/>
+    </function>
+
+    <function name="LightModelfv" offset="164" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="91"/>
+    </function-->
+
+    <function name="LightModeli" offset="165" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="92"/>
+    </function>
+
+    <function name="LightModeliv" offset="166" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="93"/>
+    </function>
+
+    <function name="LineStipple" offset="167" static_dispatch="false">
+        <param name="factor" type="GLint"/>
+        <param name="pattern" type="GLushort"/>
+        <glx rop="94"/>
+    </function>
+
+    <!--function name="LineWidth" offset="168" static_dispatch="false">
+        <param name="width" type="GLfloat"/>
+        <glx rop="95"/>
+    </function>
+
+    <function name="Materialf" offset="169" static_dispatch="false">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="96"/>
+    </function>
+
+    <function name="Materialfv" offset="170" static_dispatch="false">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="97"/>
+    </function-->
+
+    <function name="Materiali" offset="171" static_dispatch="false">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="98"/>
+    </function>
+
+    <function name="Materialiv" offset="172" static_dispatch="false">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="99"/>
+    </function>
+
+    <!--function name="PointSize" offset="173" static_dispatch="false">
+        <param name="size" type="GLfloat"/>
+        <glx rop="100"/>
+    </function-->
+
+    <function name="PolygonMode" offset="174" static_dispatch="false">
+        <param name="face" type="GLenum"/>
+        <param name="mode" type="GLenum"/>
+        <glx rop="101"/>
+    </function>
+
+    <function name="PolygonStipple" offset="175" static_dispatch="false">
+        <param name="mask" type="const GLubyte *" img_width="32" img_height="32" img_format="GL_COLOR_INDEX" img_type="GL_BITMAP" img_target="0" img_pad_dimensions="false"/>
+        <glx rop="102"/>
+    </function>
+
+    <!--function name="Scissor" offset="176" static_dispatch="false">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <glx rop="103"/>
+    </function>
+
+    <function name="ShadeModel" offset="177" static_dispatch="false">
+        <param name="mode" type="GLenum"/>
+        <glx rop="104"/>
+    </function>
+
+    <function name="TexParameterf" offset="178" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="105"/>
+    </function>
+
+    <function name="TexParameterfv" offset="179" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="106"/>
+    </function>
+
+    <function name="TexParameteri" offset="180" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="107"/>
+    </function>
+
+    <function name="TexParameteriv" offset="181" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="108"/>
+    </function-->
+
+    <function name="TexImage1D" offset="182" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_format="format" img_type="type" img_target="target" img_send_null="true" img_pad_dimensions="true"/>
+        <glx rop="109" large="true"/>
+    </function>
+
+    <!--function name="TexImage2D" offset="183" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="target" img_send_null="true" img_pad_dimensions="true"/>
+        <glx rop="110" large="true"/>
+    </function>
+
+    <function name="TexEnvf" offset="184" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="111"/>
+    </function>
+
+    <function name="TexEnvfv" offset="185" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="112"/>
+    </function>
+
+    <function name="TexEnvi" offset="186" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="113"/>
+    </function>
+
+    <function name="TexEnviv" offset="187" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="114"/>
+    </function-->
+
+    <function name="TexGend" offset="188" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLdouble"/>
+        <glx rop="115"/>
+    </function>
+
+    <function name="TexGendv" offset="189" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLdouble *" variable_param="pname"/>
+        <glx rop="116"/>
+    </function>
+
+    <!--function name="TexGenf" offset="190" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="117"/>
+    </function>
+
+    <function name="TexGenfv" offset="191" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="118"/>
+    </function>
+
+    <function name="TexGeni" offset="192" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="119"/>
+    </function>
+
+    <function name="TexGeniv" offset="193" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="120"/>
+    </function-->
+
+    <function name="FeedbackBuffer" offset="194" static_dispatch="false">
+        <param name="size" type="GLsizei"/>
+        <param name="type" type="GLenum"/>
+        <param name="buffer" type="GLfloat *" output="true"/>
+        <glx sop="105" handcode="true"/>
+    </function>
+
+    <function name="SelectBuffer" offset="195" static_dispatch="false">
+        <param name="size" type="GLsizei"/>
+        <param name="buffer" type="GLuint *" output="true"/>
+        <glx sop="106" handcode="true"/>
+    </function>
+
+    <function name="RenderMode" offset="196" static_dispatch="false">
+        <param name="mode" type="GLenum"/>
+        <return type="GLint"/>
+        <glx sop="107" handcode="true"/>
+    </function>
+
+    <function name="InitNames" offset="197" static_dispatch="false">
+        <glx rop="121"/>
+    </function>
+
+    <function name="LoadName" offset="198" static_dispatch="false">
+        <param name="name" type="GLuint"/>
+        <glx rop="122"/>
+    </function>
+
+    <function name="PassThrough" offset="199" static_dispatch="false">
+        <param name="token" type="GLfloat"/>
+        <glx rop="123"/>
+    </function>
+
+    <function name="PopName" offset="200" static_dispatch="false">
+        <glx rop="124"/>
+    </function>
+
+    <function name="PushName" offset="201" static_dispatch="false">
+        <param name="name" type="GLuint"/>
+        <glx rop="125"/>
+    </function>
+
+    <function name="DrawBuffer" offset="202" static_dispatch="false">
+        <param name="mode" type="GLenum"/>
+        <glx rop="126"/>
+    </function>
+
+    <!--function name="Clear" offset="203" static_dispatch="false">
+        <param name="mask" type="GLbitfield"/>
+        <glx rop="127"/>
+    </function-->
+
+    <function name="ClearAccum" offset="204" static_dispatch="false">
+        <param name="red" type="GLfloat"/>
+        <param name="green" type="GLfloat"/>
+        <param name="blue" type="GLfloat"/>
+        <param name="alpha" type="GLfloat"/>
+        <glx rop="128"/>
+    </function>
+
+    <function name="ClearIndex" offset="205" static_dispatch="false">
+        <param name="c" type="GLfloat"/>
+        <glx rop="129"/>
+    </function>
+
+    <!--function name="ClearColor" offset="206" static_dispatch="false">
+        <param name="red" type="GLclampf"/>
+        <param name="green" type="GLclampf"/>
+        <param name="blue" type="GLclampf"/>
+        <param name="alpha" type="GLclampf"/>
+        <glx rop="130"/>
+    </function>
+
+    <function name="ClearStencil" offset="207" static_dispatch="false">
+        <param name="s" type="GLint"/>
+        <glx rop="131"/>
+    </function-->
+
+    <function name="ClearDepth" offset="208" static_dispatch="false">
+        <param name="depth" type="GLclampd"/>
+        <glx rop="132"/>
+    </function>
+
+    <!--function name="StencilMask" offset="209" static_dispatch="false">
+        <param name="mask" type="GLuint"/>
+        <glx rop="133"/>
+    </function>
+
+    <function name="ColorMask" offset="210" static_dispatch="false">
+        <param name="red" type="GLboolean"/>
+        <param name="green" type="GLboolean"/>
+        <param name="blue" type="GLboolean"/>
+        <param name="alpha" type="GLboolean"/>
+        <glx rop="134"/>
+    </function>
+
+    <function name="DepthMask" offset="211" static_dispatch="false">
+        <param name="flag" type="GLboolean"/>
+        <glx rop="135"/>
+    </function-->
+
+    <function name="IndexMask" offset="212" static_dispatch="false">
+        <param name="mask" type="GLuint"/>
+        <glx rop="136"/>
+    </function>
+
+    <function name="Accum" offset="213" static_dispatch="false">
+        <param name="op" type="GLenum"/>
+        <param name="value" type="GLfloat"/>
+        <glx rop="137"/>
+    </function>
+
+    <!--function name="Disable" offset="214" static_dispatch="false">
+        <param name="cap" type="GLenum"/>
+        <glx rop="138" handcode="client"/>
+    </function>
+
+    <function name="Enable" offset="215" static_dispatch="false">
+        <param name="cap" type="GLenum"/>
+        <glx rop="139" handcode="client"/>
+    </function>
+
+    <function name="Finish" offset="216" static_dispatch="false">
+        <glx sop="108" handcode="true"/>
+    </function>
+
+    <function name="Flush" offset="217" static_dispatch="false">
+        <glx sop="142" handcode="true"/>
+    </function-->
+
+    <function name="PopAttrib" offset="218" static_dispatch="false">
+        <glx rop="141"/>
+    </function>
+
+    <function name="PushAttrib" offset="219" static_dispatch="false">
+        <param name="mask" type="GLbitfield"/>
+        <glx rop="142"/>
+    </function>
+
+    <function name="Map1d" offset="220" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="u1" type="GLdouble"/>
+        <param name="u2" type="GLdouble"/>
+        <param name="stride" type="GLint" client_only="true"/>
+        <param name="order" type="GLint"/>
+        <param name="points" type="const GLdouble *" variable_param="order"/>
+        <glx rop="143" handcode="true"/>
+    </function>
+
+    <function name="Map1f" offset="221" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="u1" type="GLfloat"/>
+        <param name="u2" type="GLfloat"/>
+        <param name="stride" type="GLint" client_only="true"/>
+        <param name="order" type="GLint"/>
+        <param name="points" type="const GLfloat *" variable_param="order"/>
+        <glx rop="144" handcode="true"/>
+    </function>
+
+    <function name="Map2d" offset="222" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="u1" type="GLdouble"/>
+        <param name="u2" type="GLdouble"/>
+        <param name="ustride" type="GLint" client_only="true"/>
+        <param name="uorder" type="GLint"/>
+        <param name="v1" type="GLdouble"/>
+        <param name="v2" type="GLdouble"/>
+        <param name="vstride" type="GLint" client_only="true"/>
+        <param name="vorder" type="GLint"/>
+        <param name="points" type="const GLdouble *" variable_param="uorder"/>
+        <glx rop="145" handcode="true"/>
+    </function>
+
+    <function name="Map2f" offset="223" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="u1" type="GLfloat"/>
+        <param name="u2" type="GLfloat"/>
+        <param name="ustride" type="GLint" client_only="true"/>
+        <param name="uorder" type="GLint"/>
+        <param name="v1" type="GLfloat"/>
+        <param name="v2" type="GLfloat"/>
+        <param name="vstride" type="GLint" client_only="true"/>
+        <param name="vorder" type="GLint"/>
+        <param name="points" type="const GLfloat *" variable_param="uorder"/>
+        <glx rop="146" handcode="true"/>
+    </function>
+
+    <function name="MapGrid1d" offset="224" static_dispatch="false">
+        <param name="un" type="GLint"/>
+        <param name="u1" type="GLdouble"/>
+        <param name="u2" type="GLdouble"/>
+        <glx rop="147"/>
+    </function>
+
+    <function name="MapGrid1f" offset="225" static_dispatch="false">
+        <param name="un" type="GLint"/>
+        <param name="u1" type="GLfloat"/>
+        <param name="u2" type="GLfloat"/>
+        <glx rop="148"/>
+    </function>
+
+    <function name="MapGrid2d" offset="226" static_dispatch="false">
+        <param name="un" type="GLint"/>
+        <param name="u1" type="GLdouble"/>
+        <param name="u2" type="GLdouble"/>
+        <param name="vn" type="GLint"/>
+        <param name="v1" type="GLdouble"/>
+        <param name="v2" type="GLdouble"/>
+        <glx rop="149"/>
+    </function>
+
+    <function name="MapGrid2f" offset="227" static_dispatch="false">
+        <param name="un" type="GLint"/>
+        <param name="u1" type="GLfloat"/>
+        <param name="u2" type="GLfloat"/>
+        <param name="vn" type="GLint"/>
+        <param name="v1" type="GLfloat"/>
+        <param name="v2" type="GLfloat"/>
+        <glx rop="150"/>
+    </function>
+
+    <function name="EvalCoord1d" offset="228" vectorequiv="EvalCoord1dv" static_dispatch="false">
+        <param name="u" type="GLdouble"/>
+    </function>
+
+    <function name="EvalCoord1dv" offset="229" static_dispatch="false">
+        <param name="u" type="const GLdouble *" count="1"/>
+        <glx rop="151"/>
+    </function>
+
+    <function name="EvalCoord1f" offset="230" vectorequiv="EvalCoord1fv" static_dispatch="false">
+        <param name="u" type="GLfloat"/>
+    </function>
+
+    <function name="EvalCoord1fv" offset="231" static_dispatch="false">
+        <param name="u" type="const GLfloat *" count="1"/>
+        <glx rop="152"/>
+    </function>
+
+    <function name="EvalCoord2d" offset="232" vectorequiv="EvalCoord2dv" static_dispatch="false">
+        <param name="u" type="GLdouble"/>
+        <param name="v" type="GLdouble"/>
+    </function>
+
+    <function name="EvalCoord2dv" offset="233" static_dispatch="false">
+        <param name="u" type="const GLdouble *" count="2"/>
+        <glx rop="153"/>
+    </function>
+
+    <function name="EvalCoord2f" offset="234" vectorequiv="EvalCoord2fv" static_dispatch="false">
+        <param name="u" type="GLfloat"/>
+        <param name="v" type="GLfloat"/>
+    </function>
+
+    <function name="EvalCoord2fv" offset="235" static_dispatch="false">
+        <param name="u" type="const GLfloat *" count="2"/>
+        <glx rop="154"/>
+    </function>
+
+    <function name="EvalMesh1" offset="236" static_dispatch="false">
+        <param name="mode" type="GLenum"/>
+        <param name="i1" type="GLint"/>
+        <param name="i2" type="GLint"/>
+        <glx rop="155"/>
+    </function>
+
+    <function name="EvalPoint1" offset="237" static_dispatch="false">
+        <param name="i" type="GLint"/>
+        <glx rop="156"/>
+    </function>
+
+    <function name="EvalMesh2" offset="238" static_dispatch="false">
+        <param name="mode" type="GLenum"/>
+        <param name="i1" type="GLint"/>
+        <param name="i2" type="GLint"/>
+        <param name="j1" type="GLint"/>
+        <param name="j2" type="GLint"/>
+        <glx rop="157"/>
+    </function>
+
+    <function name="EvalPoint2" offset="239" static_dispatch="false">
+        <param name="i" type="GLint"/>
+        <param name="j" type="GLint"/>
+        <glx rop="158"/>
+    </function>
+
+    <!--function name="AlphaFunc" offset="240" static_dispatch="false">
+        <param name="func" type="GLenum"/>
+        <param name="ref" type="GLclampf"/>
+        <glx rop="159"/>
+    </function>
+
+    <function name="BlendFunc" offset="241" static_dispatch="false">
+        <param name="sfactor" type="GLenum"/>
+        <param name="dfactor" type="GLenum"/>
+        <glx rop="160"/>
+    </function>
+
+    <function name="LogicOp" offset="242" static_dispatch="false">
+        <param name="opcode" type="GLenum"/>
+        <glx rop="161"/>
+    </function>
+
+    <function name="StencilFunc" offset="243" static_dispatch="false">
+        <param name="func" type="GLenum"/>
+        <param name="ref" type="GLint"/>
+        <param name="mask" type="GLuint"/>
+        <glx rop="162"/>
+    </function>
+
+    <function name="StencilOp" offset="244" static_dispatch="false">
+        <param name="fail" type="GLenum"/>
+        <param name="zfail" type="GLenum"/>
+        <param name="zpass" type="GLenum"/>
+        <glx rop="163"/>
+    </function>
+
+    <function name="DepthFunc" offset="245" static_dispatch="false">
+        <param name="func" type="GLenum"/>
+        <glx rop="164"/>
+    </function-->
+
+    <function name="PixelZoom" offset="246" static_dispatch="false">
+        <param name="xfactor" type="GLfloat"/>
+        <param name="yfactor" type="GLfloat"/>
+        <glx rop="165"/>
+    </function>
+
+    <function name="PixelTransferf" offset="247" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="166"/>
+    </function>
+
+    <function name="PixelTransferi" offset="248" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="167"/>
+    </function>
+
+    <function name="PixelStoref" offset="249" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx sop="109" handcode="client"/>
+    </function>
+
+    <!--function name="PixelStorei" offset="250" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx sop="110" handcode="client"/>
+    </function-->
+
+    <function name="PixelMapfv" offset="251" static_dispatch="false">
+        <param name="map" type="GLenum"/>
+        <param name="mapsize" type="GLsizei" counter="true"/>
+        <param name="values" type="const GLfloat *" count="mapsize"/>
+        <glx rop="168" large="true"/>
+    </function>
+
+    <function name="PixelMapuiv" offset="252" static_dispatch="false">
+        <param name="map" type="GLenum"/>
+        <param name="mapsize" type="GLsizei" counter="true"/>
+        <param name="values" type="const GLuint *" count="mapsize"/>
+        <glx rop="169" large="true"/>
+    </function>
+
+    <function name="PixelMapusv" offset="253" static_dispatch="false">
+        <param name="map" type="GLenum"/>
+        <param name="mapsize" type="GLsizei" counter="true"/>
+        <param name="values" type="const GLushort *" count="mapsize"/>
+        <glx rop="170" large="true"/>
+    </function>
+
+    <function name="ReadBuffer" offset="254" static_dispatch="false">
+        <param name="mode" type="GLenum"/>
+        <glx rop="171"/>
+    </function>
+
+    <function name="CopyPixels" offset="255" static_dispatch="false">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="type" type="GLenum"/>
+        <glx rop="172"/>
+    </function>
+
+    <!--function name="ReadPixels" offset="256" static_dispatch="false">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="GLvoid *" output="true"  img_width="width" img_height="height" img_format="format" img_type="type" img_target="0"/>
+        <glx sop="111"/>
+    </function-->
+
+    <function name="DrawPixels" offset="257" static_dispatch="false">
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="0" img_pad_dimensions="false"/>
+        <glx rop="173" large="true"/>
+    </function>
+
+    <!--function name="GetBooleanv" offset="258" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLboolean *" output="true" variable_param="pname"/>
+        <glx sop="112" handcode="client"/>
+    </function-->
+
+    <function name="GetClipPlane" offset="259" static_dispatch="false">
+        <param name="plane" type="GLenum"/>
+        <param name="equation" type="GLdouble *" output="true" count="4"/>
+        <glx sop="113" always_array="true"/>
+    </function>
+
+    <function name="GetDoublev" offset="260" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
+        <glx sop="114" handcode="client"/>
+    </function>
+
+    <!--function name="GetError" offset="261" static_dispatch="false">
+        <return type="GLenum"/>
+        <glx sop="115" handcode="client"/>
+    </function>
+
+    <function name="GetFloatv" offset="262" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="116" handcode="client"/>
+    </function>
+
+    <function name="GetIntegerv" offset="263" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="117" handcode="client"/>
+    </function>
+
+    <function name="GetLightfv" offset="264" static_dispatch="false">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="118"/>
+    </function-->
+
+    <function name="GetLightiv" offset="265" static_dispatch="false">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="119"/>
+    </function>
+
+    <function name="GetMapdv" offset="266" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="query" type="GLenum"/>
+        <param name="v" type="GLdouble *" output="true" variable_param="target query"/>
+        <glx sop="120"/>
+    </function>
+
+    <function name="GetMapfv" offset="267" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="query" type="GLenum"/>
+        <param name="v" type="GLfloat *" output="true" variable_param="target query"/>
+        <glx sop="121"/>
+    </function>
+
+    <function name="GetMapiv" offset="268" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="query" type="GLenum"/>
+        <param name="v" type="GLint *" output="true" variable_param="target query"/>
+        <glx sop="122"/>
+    </function>
+
+    <!--function name="GetMaterialfv" offset="269" static_dispatch="false">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="123"/>
+    </function-->
+
+    <function name="GetMaterialiv" offset="270" static_dispatch="false">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="124"/>
+    </function>
+
+    <function name="GetPixelMapfv" offset="271" static_dispatch="false">
+        <param name="map" type="GLenum"/>
+        <param name="values" type="GLfloat *" output="true" variable_param="map"/>
+        <glx sop="125"/>
+    </function>
+
+    <function name="GetPixelMapuiv" offset="272" static_dispatch="false">
+        <param name="map" type="GLenum"/>
+        <param name="values" type="GLuint *" output="true" variable_param="map"/>
+        <glx sop="126"/>
+    </function>
+
+    <function name="GetPixelMapusv" offset="273" static_dispatch="false">
+        <param name="map" type="GLenum"/>
+        <param name="values" type="GLushort *" output="true" variable_param="map"/>
+        <glx sop="127"/>
+    </function>
+
+    <function name="GetPolygonStipple" offset="274" static_dispatch="false">
+        <param name="mask" type="GLubyte *" output="true" img_width="32" img_height="32" img_format="GL_COLOR_INDEX" img_type="GL_BITMAP"/>
+        <glx sop="128"/>
+    </function>
+
+    <!--function name="GetString" offset="275" static_dispatch="false">
+        <param name="name" type="GLenum"/>
+        <return type="const GLubyte *"/>
+        <glx sop="129" handcode="true"/>
+    </function>
+
+    <function name="GetTexEnvfv" offset="276" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="130"/>
+    </function>
+
+    <function name="GetTexEnviv" offset="277" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="131"/>
+    </function-->
+
+    <function name="GetTexGendv" offset="278" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
+        <glx sop="132"/>
+    </function>
+
+    <!--function name="GetTexGenfv" offset="279" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="133"/>
+    </function>
+
+    <function name="GetTexGeniv" offset="280" static_dispatch="false">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="134"/>
+    </function-->
+
+    <function name="GetTexImage" offset="281" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="GLvoid *" output="true" img_width="width" img_height="height" img_depth="depth" img_format="format" img_type="type"/>
+        <glx sop="135" dimensions_in_reply="true"/>
+    </function>
+
+    <!--function name="GetTexParameterfv" offset="282" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="136"/>
+    </function>
+
+    <function name="GetTexParameteriv" offset="283" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="137"/>
+    </function-->
+
+    <function name="GetTexLevelParameterfv" offset="284" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="138"/>
+    </function>
+
+    <function name="GetTexLevelParameteriv" offset="285" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="139"/>
+    </function>
+
+    <!--function name="IsEnabled" offset="286" static_dispatch="false">
+        <param name="cap" type="GLenum"/>
+        <return type="GLboolean"/>
+        <glx sop="140" handcode="client"/>
+    </function-->
+
+    <function name="IsList" offset="287" static_dispatch="false">
+        <param name="list" type="GLuint"/>
+        <return type="GLboolean"/>
+        <glx sop="141"/>
+    </function>
+
+    <function name="DepthRange" offset="288" static_dispatch="false">
+        <param name="zNear" type="GLclampd"/>
+        <param name="zFar" type="GLclampd"/>
+        <glx rop="174"/>
+    </function>
+
+    <function name="Frustum" offset="289" static_dispatch="false">
+        <param name="left" type="GLdouble"/>
+        <param name="right" type="GLdouble"/>
+        <param name="bottom" type="GLdouble"/>
+        <param name="top" type="GLdouble"/>
+        <param name="zNear" type="GLdouble"/>
+        <param name="zFar" type="GLdouble"/>
+        <glx rop="175"/>
+    </function>
+
+    <!--function name="LoadIdentity" offset="290" static_dispatch="false">
+        <glx rop="176"/>
+    </function>
+
+    <function name="LoadMatrixf" offset="291" static_dispatch="false">
+        <param name="m" type="const GLfloat *" count="16"/>
+        <glx rop="177"/>
+    </function-->
+
+    <function name="LoadMatrixd" offset="292" static_dispatch="false">
+        <param name="m" type="const GLdouble *" count="16"/>
+        <glx rop="178"/>
+    </function>
+
+    <!--function name="MatrixMode" offset="293" static_dispatch="false">
+        <param name="mode" type="GLenum"/>
+        <glx rop="179"/>
+    </function>
+
+    <function name="MultMatrixf" offset="294" static_dispatch="false">
+        <param name="m" type="const GLfloat *" count="16"/>
+        <glx rop="180"/>
+    </function-->
+
+    <function name="MultMatrixd" offset="295" static_dispatch="false">
+        <param name="m" type="const GLdouble *" count="16"/>
+        <glx rop="181"/>
+    </function>
+
+    <function name="Ortho" offset="296" static_dispatch="false">
+        <param name="left" type="GLdouble"/>
+        <param name="right" type="GLdouble"/>
+        <param name="bottom" type="GLdouble"/>
+        <param name="top" type="GLdouble"/>
+        <param name="zNear" type="GLdouble"/>
+        <param name="zFar" type="GLdouble"/>
+        <glx rop="182"/>
+    </function>
+
+    <!--function name="PopMatrix" offset="297" static_dispatch="false">
+        <glx rop="183"/>
+    </function>
+
+    <function name="PushMatrix" offset="298" static_dispatch="false">
+        <glx rop="184"/>
+    </function-->
+
+    <function name="Rotated" offset="299" static_dispatch="false">
+        <param name="angle" type="GLdouble"/>
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <glx rop="185"/>
+    </function>
+
+    <!--function name="Rotatef" offset="300" static_dispatch="false">
+        <param name="angle" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <glx rop="186"/>
+    </function-->
+
+    <function name="Scaled" offset="301" static_dispatch="false">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <glx rop="187"/>
+    </function>
+
+    <!--function name="Scalef" offset="302" static_dispatch="false">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <glx rop="188"/>
+    </function-->
+
+    <function name="Translated" offset="303" static_dispatch="false">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <glx rop="189"/>
+    </function>
+
+    <!--function name="Translatef" offset="304" static_dispatch="false">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <glx rop="190"/>
+    </function>
+
+    <function name="Viewport" offset="305" static_dispatch="false">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <glx rop="191"/>
+    </function-->
+</category>
+
+<category name="1.1">
+    <function name="ArrayElement" offset="306" static_dispatch="false">
+        <param name="i" type="GLint"/>
+        <glx handcode="true"/>
+    </function>
+
+    <!--function name="ColorPointer" offset="308" static_dispatch="false">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="DisableClientState" offset="309" static_dispatch="false">
+        <param name="array" type="GLenum"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="DrawArrays" offset="310" static_dispatch="false">
+        <param name="mode" type="GLenum"/>
+        <param name="first" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <glx rop="193" handcode="true"/>
+    </function>
+
+    <function name="DrawElements" offset="311" static_dispatch="false">
+        <param name="mode" type="GLenum"/>
+        <param name="count" type="GLsizei"/>
+        <param name="type" type="GLenum"/>
+        <param name="indices" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function-->
+
+    <function name="EdgeFlagPointer" offset="312" static_dispatch="false">
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <!--function name="EnableClientState" offset="313" static_dispatch="false">
+        <param name="array" type="GLenum"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="GetPointerv" offset="329" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLvoid **" output="true"/>
+        <glx handcode="true"/>
+    </function-->
+
+    <function name="IndexPointer" offset="314" static_dispatch="false">
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="InterleavedArrays" offset="317" static_dispatch="false">
+        <param name="format" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <!--function name="NormalPointer" offset="318" static_dispatch="false">
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="TexCoordPointer" offset="320" static_dispatch="false">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="VertexPointer" offset="321" static_dispatch="false">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="PolygonOffset" offset="319" static_dispatch="false">
+        <param name="factor" type="GLfloat"/>
+        <param name="units" type="GLfloat"/>
+        <glx rop="192"/>
+    </function-->
+
+    <function name="CopyTexImage1D" offset="323" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <glx rop="4119"/>
+    </function>
+
+    <!--function name="CopyTexImage2D" offset="324" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <glx rop="4120"/>
+    </function-->
+
+    <function name="CopyTexSubImage1D" offset="325" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <glx rop="4121"/>
+    </function>
+
+    <!--function name="CopyTexSubImage2D" offset="326" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <glx rop="4122"/>
+    </function-->
+
+    <function name="TexSubImage1D" offset="332" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="UNUSED" type="GLuint" padding="true"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_xoff="xoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
+        <glx rop="4099" large="true"/>
+    </function>
+
+    <!--function name="TexSubImage2D" offset="333" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="UNUSED" type="GLuint" padding="true"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_xoff="xoffset" img_yoff="yoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
+        <glx rop="4100" large="true"/>
+    </function-->
+
+    <function name="AreTexturesResident" offset="322" static_dispatch="false">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="textures" type="const GLuint *" count="n"/>
+        <param name="residences" type="GLboolean *" output="true" count="n"/>
+        <return type="GLboolean"/>
+        <glx sop="143" handcode="client" always_array="true"/>
+    </function>
+
+    <!--function name="BindTexture" offset="307" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="texture" type="GLuint"/>
+        <glx rop="4117"/>
+    </function>
+
+    <function name="DeleteTextures" offset="327" static_dispatch="false">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="textures" type="const GLuint *" count="n"/>
+        <glx sop="144"/>
+    </function>
+
+    <function name="GenTextures" offset="328" static_dispatch="false">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="textures" type="GLuint *" output="true" count="n"/>
+        <glx sop="145" always_array="true"/>
+    </function>
+
+    <function name="IsTexture" offset="330" static_dispatch="false">
+        <param name="texture" type="GLuint"/>
+        <return type="GLboolean"/>
+        <glx sop="146"/>
+    </function-->
+
+    <function name="PrioritizeTextures" offset="331" static_dispatch="false">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="textures" type="const GLuint *" count="n"/>
+        <param name="priorities" type="const GLclampf *" count="n"/>
+        <glx rop="4118"/>
+    </function>
+
+    <function name="Indexub" offset="315" vectorequiv="Indexubv" static_dispatch="false">
+        <param name="c" type="GLubyte"/>
+    </function>
+
+    <function name="Indexubv" offset="316" static_dispatch="false">
+        <param name="c" type="const GLubyte *" count="1"/>
+        <glx rop="194"/>
+    </function>
+
+    <function name="PopClientAttrib" offset="334" static_dispatch="false">
+        <glx handcode="true"/>
+    </function>
+
+    <function name="PushClientAttrib" offset="335" static_dispatch="false">
+        <param name="mask" type="GLbitfield"/>
+        <glx handcode="true"/>
+    </function>
+</category>
+
+<category name="1.2">
+    <!--function name="BlendColor" offset="336" static_dispatch="false">
+        <param name="red" type="GLclampf"/>
+        <param name="green" type="GLclampf"/>
+        <param name="blue" type="GLclampf"/>
+        <param name="alpha" type="GLclampf"/>
+        <glx rop="4096"/>
+    </function>
+
+    <function name="BlendEquation" offset="337" static_dispatch="false">
+        <param name="mode" type="GLenum"/>
+        <glx rop="4097"/>
+    </function-->
+
+    <function name="DrawRangeElements" offset="338" static_dispatch="false">
+        <param name="mode" type="GLenum"/>
+        <param name="start" type="GLuint"/>
+        <param name="end" type="GLuint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="type" type="GLenum"/>
+        <param name="indices" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="ColorTable" offset="339" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="table" type="const GLvoid *" img_width="width" img_pad_dimensions="false" img_format="format" img_type="type" img_target="target"/>
+        <glx rop="2053" large="true"/>
+    </function>
+
+    <function name="ColorTableParameterfv" offset="340" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="2054"/>
+    </function>
+
+    <function name="ColorTableParameteriv" offset="341" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="2055"/>
+    </function>
+
+    <function name="CopyColorTable" offset="342" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <glx rop="2056"/>
+    </function>
+
+    <function name="GetColorTable" offset="343" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="table" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
+        <glx sop="147" dimensions_in_reply="true"/>
+    </function>
+
+    <function name="GetColorTableParameterfv" offset="344" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="148"/>
+    </function>
+
+    <function name="GetColorTableParameteriv" offset="345" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="149"/>
+    </function>
+
+    <function name="ColorSubTable" offset="346" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="start" type="GLsizei"/>
+        <param name="count" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="data" type="const GLvoid *" img_width="count" img_pad_dimensions="false" img_format="format" img_type="type" img_target="target"/>
+        <glx rop="195" large="true"/>
+    </function>
+
+    <function name="CopyColorSubTable" offset="347" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="start" type="GLsizei"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <glx rop="196"/>
+    </function>
+
+    <function name="ConvolutionFilter1D" offset="348" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="image" type="const GLvoid *" img_width="width" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
+        <glx rop="4101" large="true"/>
+    </function>
+
+    <function name="ConvolutionFilter2D" offset="349" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="image" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
+        <glx rop="4102" large="true"/>
+    </function>
+
+    <function name="ConvolutionParameterf" offset="350" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat"/>
+        <glx rop="4103"/>
+    </function>
+
+    <function name="ConvolutionParameterfv" offset="351" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="4104"/>
+    </function>
+
+    <function name="ConvolutionParameteri" offset="352" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint"/>
+        <glx rop="4105"/>
+    </function>
+
+    <function name="ConvolutionParameteriv" offset="353" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="4106"/>
+    </function>
+
+    <function name="CopyConvolutionFilter1D" offset="354" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <glx rop="4107"/>
+    </function>
+
+    <function name="CopyConvolutionFilter2D" offset="355" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <glx rop="4108"/>
+    </function>
+
+    <function name="GetConvolutionFilter" offset="356" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="image" type="GLvoid *" output="true" img_width="width" img_height="height" img_format="format" img_type="type"/>
+        <glx sop="150" dimensions_in_reply="true"/>
+    </function>
+
+    <function name="GetConvolutionParameterfv" offset="357" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="151"/>
+    </function>
+
+    <function name="GetConvolutionParameteriv" offset="358" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="152"/>
+    </function>
+
+    <function name="GetSeparableFilter" offset="359" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="row" type="GLvoid *" output="true"/>
+        <param name="column" type="GLvoid *" output="true"/>
+        <param name="span" type="GLvoid *" output="true"/>
+        <glx sop="153" handcode="true"/>
+    </function>
+
+    <function name="SeparableFilter2D" offset="360" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="row" type="const GLvoid *"/>
+        <param name="column" type="const GLvoid *"/>
+        <glx rop="4109" handcode="true"/>
+    </function>
+
+    <function name="GetHistogram" offset="361" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="reset" type="GLboolean"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="values" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
+        <glx sop="154" dimensions_in_reply="true" img_reset="reset"/>
+    </function>
+
+    <function name="GetHistogramParameterfv" offset="362" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="155"/>
+    </function>
+
+    <function name="GetHistogramParameteriv" offset="363" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="156"/>
+    </function>
+
+    <function name="GetMinmax" offset="364" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="reset" type="GLboolean"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="values" type="GLvoid *" output="true" img_width="2" img_format="format" img_type="type"/>
+        <glx sop="157" img_reset="reset"/>
+    </function>
+
+    <function name="GetMinmaxParameterfv" offset="365" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="158"/>
+    </function>
+
+    <function name="GetMinmaxParameteriv" offset="366" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="159"/>
+    </function>
+
+    <function name="Histogram" offset="367" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="sink" type="GLboolean"/>
+        <glx rop="4110"/>
+    </function>
+
+    <function name="Minmax" offset="368" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="sink" type="GLboolean"/>
+        <glx rop="4111"/>
+    </function>
+
+    <function name="ResetHistogram" offset="369" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <glx rop="4112"/>
+    </function>
+
+    <function name="ResetMinmax" offset="370" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <glx rop="4113"/>
+    </function>
+
+    <!--function name="TexImage3D" offset="371" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_format="format" img_type="type" img_target="target" img_null_flag="true" img_pad_dimensions="true"/>
+        <glx rop="4114" large="true"/>
+    </function>
+
+    <function name="TexSubImage3D" offset="372" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="UNUSED" type="GLuint" padding="true"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_xoff="xoffset" img_yoff="yoffset" img_zoff="zoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
+        <glx rop="4115" large="true"/>
+    </function>
+
+    <function name="CopyTexSubImage3D" offset="373" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <glx rop="4123"/>
+    </function-->
+</category>
+
+<category name="GL_ARB_multitexture" number="1">
+    <!--function name="ActiveTextureARB" offset="374" static_dispatch="false">
+        <param name="texture" type="GLenum"/>
+        <glx rop="197"/>
+    </function>
+
+    <function name="ClientActiveTextureARB" offset="375" static_dispatch="false">
+        <param name="texture" type="GLenum"/>
+        <glx handcode="true"/>
+    </function-->
+
+    <function name="MultiTexCoord1dARB" offset="376" vectorequiv="MultiTexCoord1dvARB" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLdouble"/>
+    </function>
+
+    <function name="MultiTexCoord1dvARB" offset="377" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLdouble *" count="1"/>
+        <glx rop="198"/>
+    </function>
+
+    <function name="MultiTexCoord1fARB" offset="378" vectorequiv="MultiTexCoord1fvARB" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLfloat"/>
+    </function>
+
+    <function name="MultiTexCoord1fvARB" offset="379" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLfloat *" count="1"/>
+        <glx rop="199"/>
+    </function>
+
+    <function name="MultiTexCoord1iARB" offset="380" vectorequiv="MultiTexCoord1ivARB" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLint"/>
+    </function>
+
+    <function name="MultiTexCoord1ivARB" offset="381" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLint *" count="1"/>
+        <glx rop="200"/>
+    </function>
+
+    <function name="MultiTexCoord1sARB" offset="382" vectorequiv="MultiTexCoord1svARB" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLshort"/>
+    </function>
+
+    <function name="MultiTexCoord1svARB" offset="383" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLshort *" count="1"/>
+        <glx rop="201"/>
+    </function>
+
+    <function name="MultiTexCoord2dARB" offset="384" vectorequiv="MultiTexCoord2dvARB" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLdouble"/>
+        <param name="t" type="GLdouble"/>
+    </function>
+
+    <function name="MultiTexCoord2dvARB" offset="385" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLdouble *" count="2"/>
+        <glx rop="202"/>
+    </function>
+
+    <function name="MultiTexCoord2fARB" offset="386" vectorequiv="MultiTexCoord2fvARB" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+    </function>
+
+    <function name="MultiTexCoord2fvARB" offset="387" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLfloat *" count="2"/>
+        <glx rop="203"/>
+    </function>
+
+    <function name="MultiTexCoord2iARB" offset="388" vectorequiv="MultiTexCoord2ivARB" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLint"/>
+        <param name="t" type="GLint"/>
+    </function>
+
+    <function name="MultiTexCoord2ivARB" offset="389" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLint *" count="2"/>
+        <glx rop="204"/>
+    </function>
+
+    <function name="MultiTexCoord2sARB" offset="390" vectorequiv="MultiTexCoord2svARB" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLshort"/>
+        <param name="t" type="GLshort"/>
+    </function>
+
+    <function name="MultiTexCoord2svARB" offset="391" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLshort *" count="2"/>
+        <glx rop="205"/>
+    </function>
+
+    <function name="MultiTexCoord3dARB" offset="392" vectorequiv="MultiTexCoord3dvARB" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLdouble"/>
+        <param name="t" type="GLdouble"/>
+        <param name="r" type="GLdouble"/>
+    </function>
+
+    <function name="MultiTexCoord3dvARB" offset="393" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLdouble *" count="3"/>
+        <glx rop="206"/>
+    </function>
+
+    <function name="MultiTexCoord3fARB" offset="394" vectorequiv="MultiTexCoord3fvARB" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="r" type="GLfloat"/>
+    </function>
+
+    <function name="MultiTexCoord3fvARB" offset="395" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLfloat *" count="3"/>
+        <glx rop="207"/>
+    </function>
+
+    <function name="MultiTexCoord3iARB" offset="396" vectorequiv="MultiTexCoord3ivARB" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLint"/>
+        <param name="t" type="GLint"/>
+        <param name="r" type="GLint"/>
+    </function>
+
+    <function name="MultiTexCoord3ivARB" offset="397" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLint *" count="3"/>
+        <glx rop="208"/>
+    </function>
+
+    <function name="MultiTexCoord3sARB" offset="398" vectorequiv="MultiTexCoord3svARB" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLshort"/>
+        <param name="t" type="GLshort"/>
+        <param name="r" type="GLshort"/>
+    </function>
+
+    <function name="MultiTexCoord3svARB" offset="399" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLshort *" count="3"/>
+        <glx rop="209"/>
+    </function>
+
+    <function name="MultiTexCoord4dARB" offset="400" vectorequiv="MultiTexCoord4dvARB" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLdouble"/>
+        <param name="t" type="GLdouble"/>
+        <param name="r" type="GLdouble"/>
+        <param name="q" type="GLdouble"/>
+    </function>
+
+    <function name="MultiTexCoord4dvARB" offset="401" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLdouble *" count="4"/>
+        <glx rop="210"/>
+    </function>
+
+    <!--function name="MultiTexCoord4fARB" offset="402" vectorequiv="MultiTexCoord4fvARB" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="r" type="GLfloat"/>
+        <param name="q" type="GLfloat"/>
+    </function-->
+
+    <function name="MultiTexCoord4fvARB" offset="403" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLfloat *" count="4"/>
+        <glx rop="211"/>
+    </function>
+
+    <function name="MultiTexCoord4iARB" offset="404" vectorequiv="MultiTexCoord4ivARB" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLint"/>
+        <param name="t" type="GLint"/>
+        <param name="r" type="GLint"/>
+        <param name="q" type="GLint"/>
+    </function>
+
+    <function name="MultiTexCoord4ivARB" offset="405" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLint *" count="4"/>
+        <glx rop="212"/>
+    </function>
+
+    <function name="MultiTexCoord4sARB" offset="406" vectorequiv="MultiTexCoord4svARB" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLshort"/>
+        <param name="t" type="GLshort"/>
+        <param name="r" type="GLshort"/>
+        <param name="q" type="GLshort"/>
+    </function>
+
+    <function name="MultiTexCoord4svARB" offset="407" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLshort *" count="4"/>
+        <glx rop="213"/>
+    </function>
+</category>
+
+<xi:include href="../gen/APPLE_vertex_array_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen-es/es_EXT.xml b/src/mapi/glapi/gen-es/es_EXT.xml
new file mode 100644 (file)
index 0000000..113d8d7
--- /dev/null
@@ -0,0 +1,125 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "../gen/gl_API.dtd">
+
+<!-- OpenGL ES extensions -->
+
+<OpenGLAPI>
+
+<category name="GL_OES_compressed_paletted_texture" number="6">
+    <enum name="PALETTE4_RGB8_OES"                        value="0x8B90"/>
+    <enum name="PALETTE4_RGBA8_OES"                       value="0x8B91"/>
+    <enum name="PALETTE4_R5_G6_B5_OES"                    value="0x8B92"/>
+    <enum name="PALETTE4_RGBA4_OES"                       value="0x8B93"/>
+    <enum name="PALETTE4_RGB5_A1_OES"                     value="0x8B94"/>
+    <enum name="PALETTE8_RGB8_OES"                        value="0x8B95"/>
+    <enum name="PALETTE8_RGBA8_OES"                       value="0x8B96"/>
+    <enum name="PALETTE8_R5_G6_B5_OES"                    value="0x8B97"/>
+    <enum name="PALETTE8_RGBA4_OES"                       value="0x8B98"/>
+    <enum name="PALETTE8_RGB5_A1_OES"                     value="0x8B99"/>
+</category>
+
+<!-- 23. GL_OES_EGL_image -->
+<xi:include href="../gen/OES_EGL_image.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<category name="GL_OES_depth24" number="24">
+    <enum name="DEPTH_COMPONENT24_OES"                    value="0x81A6"/>
+</category>
+
+<category name="GL_OES_depth32" number="25">
+    <enum name="DEPTH_COMPONENT32_OES"                    value="0x81A7"/>
+</category>
+
+<category name="GL_OES_element_index_uint" number="26">
+    <!-- No new functions, types, enums. -->
+</category>
+
+<category name="GL_OES_fbo_render_mipmap" number="27">
+    <!-- No new functions, types, enums. -->
+</category>
+
+<category name="GL_OES_mapbuffer" number="29">
+    <enum name="WRITE_ONLY_OES"                           value="0x88B9"/>
+    <enum name="BUFFER_ACCESS_OES"                        value="0x88BB"/>
+    <enum name="BUFFER_MAPPED_OES"                        value="0x88BC"/>
+    <enum name="BUFFER_MAP_POINTER_OES"                   value="0x88BD"/>
+
+    <function name="GetBufferPointervOES" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLvoid **"/>
+    </function>
+
+    <function name="MapBufferOES" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="access" type="GLenum"/>
+       <return type="GLvoid *"/>
+    </function>
+
+    <function name="UnmapBufferOES" offset="assign">
+        <param name="target" type="GLenum"/>
+       <return type="GLboolean"/>
+    </function>
+</category>
+
+<category name="GL_OES_rgb8_rgba8" number="30">
+    <enum name="RGB8_OES"                                 value="0x8051"/>
+    <enum name="RGBA8_OES"                                value="0x8058"/>
+</category>
+
+<category name="GL_OES_stencil1" number="31">
+    <enum name="STENCIL_INDEX1_OES"                       value="0x8D46"/>
+</category>
+
+<category name="GL_OES_stencil4" number="32">
+    <enum name="STENCIL_INDEX4_OES"                       value="0x8D47"/>
+</category>
+
+<category name="GL_OES_stencil8" number="33">
+    <enum name="STENCIL_INDEX8_OES"                       value="0x8D48"/>
+</category>
+
+<category name="GL_EXT_texture_filter_anisotropic" number="41">
+    <enum name="TEXTURE_MAX_ANISOTROPY_EXT"               value="0x84FE"/>
+    <enum name="MAX_TEXTURE_MAX_ANISOTROPY_EXT"           value="0x84FF"/>
+</category>
+
+<category name="GL_EXT_texture_compression_dxt1" number="49">
+    <enum name="COMPRESSED_RGB_S3TC_DXT1_EXT"             value="0x83F0"/>
+    <enum name="COMPRESSED_RGBA_S3TC_DXT1_EXT"            value="0x83F1"/>
+</category>
+
+<category name="GL_EXT_texture_format_BGRA8888" number="51">
+    <enum name="BGRA_EXT"                              value="0x80E1"/>
+</category>
+
+<category name="GL_EXT_blend_minmax" number="65">
+    <enum name="MIN_EXT"                               value="0x8007"/>
+    <enum name="MAX_EXT"                               value="0x8008"/>
+</category>
+
+<category name="GL_EXT_read_format_bgra" number="66">
+    <enum name="BGRA_EXT"                              value="0x80E1"/>
+    <enum name="UNSIGNED_SHORT_4_4_4_4_REV_EXT"        value="0x8365"/>
+    <enum name="UNSIGNED_SHORT_1_5_5_5_REV_EXT"        value="0x8366"/>
+</category>
+
+<category name="GL_EXT_multi_draw_arrays" number="69">
+    <function name="MultiDrawArraysEXT" offset="assign">
+        <param name="mode" type="GLenum"/>
+        <param name="first" type="GLint *"/> <!-- Spec bug. Should be const. -->
+        <param name="count" type="GLsizei *"/> <!-- Spec bug. Should be const. -->
+        <param name="primcount" type="GLsizei"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="MultiDrawElementsEXT" offset="assign">
+        <param name="mode" type="GLenum"/>
+        <param name="count" type="const GLsizei *"/>
+        <param name="type" type="GLenum"/>
+        <param name="indices" type="const GLvoid **"/>
+        <param name="primcount" type="GLsizei"/>
+        <glx handcode="true"/>
+    </function>
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen-es/gl_compare.py b/src/mapi/glapi/gen-es/gl_compare.py
new file mode 100644 (file)
index 0000000..6b5e43b
--- /dev/null
@@ -0,0 +1,354 @@
+#!/usr/bin/python
+#
+# Copyright (C) 2009 Chia-I Wu <olv@0xlab.org>
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# 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
+# IBM 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 os.path
+import getopt
+
+GLAPI = "../../glapi/gen"
+sys.path.append(GLAPI)
+
+import gl_XML
+import glX_XML
+
+class ApiSet(object):
+    def __init__(self, api, elts=["enum", "type", "function"]):
+        self.api = api
+        self.elts = elts
+
+    def _check_enum(self, e1, e2, strict=True):
+        if e1.name != e2.name:
+            raise ValueError("%s: name mismatch" % e1.name)
+        if e1.value != e2.value:
+            raise ValueError("%s: value 0x%04x != 0x%04x"
+                    % (e1.name, e1.value, e2.value))
+
+    def _check_type(self, t1, t2, strict=True):
+        if t1.name != t2.name:
+            raise ValueError("%s: name mismatch" % t1.name)
+        if t1.type_expr.string() != t2.type_expr.string():
+            raise ValueError("%s: type %s != %s"
+                    % (t1.name, t1.type_expr.string(), t2.type_expr.string()))
+
+    def _check_function(self, f1, f2, strict=True):
+        if f1.name != f2.name:
+            raise ValueError("%s: name mismatch" % f1.name)
+        if f1.return_type != f2.return_type:
+            raise ValueError("%s: return type %s != %s"
+                    % (f1.name, f1.return_type, f2.return_type))
+        # there might be padded parameters
+        if strict and len(f1.parameters) != len(f2.parameters):
+            raise ValueError("%s: parameter length %d != %d"
+                    % (f1.name, len(f1.parameters), len(f2.parameters)))
+        if f1.assign_offset != f2.assign_offset:
+            if ((f1.assign_offset and f2.offset < 0) or
+                (f2.assign_offset and f1.offset < 0)):
+                raise ValueError("%s: assign offset %d != %d"
+                        % (f1.name, f1.assign_offset, f2.assign_offset))
+        elif not f1.assign_offset:
+            if f1.offset != f2.offset:
+                raise ValueError("%s: offset %d != %d"
+                        % (f1.name, f1.offset, f2.offset))
+
+        if strict:
+            l1 = f1.entry_points
+            l2 = f2.entry_points
+            l1.sort()
+            l2.sort()
+            if l1 != l2:
+                raise ValueError("%s: entry points %s != %s"
+                        % (f1.name, l1, l2))
+
+            l1 = f1.static_entry_points
+            l2 = f2.static_entry_points
+            l1.sort()
+            l2.sort()
+            if l1 != l2:
+                raise ValueError("%s: static entry points %s != %s"
+                        % (f1.name, l1, l2))
+
+        pad = 0
+        for i in xrange(len(f1.parameters)):
+            p1 = f1.parameters[i]
+            p2 = f2.parameters[i + pad]
+
+            if not strict and p1.is_padding != p2.is_padding:
+                if p1.is_padding:
+                    pad -= 1
+                    continue
+                else:
+                    pad += 1
+                    p2 = f2.parameters[i + pad]
+
+            if strict and p1.name != p2.name:
+                raise ValueError("%s: parameter %d name %s != %s"
+                        % (f1.name, i, p1.name, p2.name))
+            if p1.type_expr.string() != p2.type_expr.string():
+                if (strict or
+                    # special case
+                    f1.name == "TexImage2D" and p1.name != "internalformat"):
+                    raise ValueError("%s: parameter %s type %s != %s"
+                            % (f1.name, p1.name, p1.type_expr.string(),
+                               p2.type_expr.string()))
+
+    def union(self, other):
+        union = gl_XML.gl_api(None)
+
+        if "enum" in self.elts:
+            union.enums_by_name = other.enums_by_name.copy()
+            for key, val in self.api.enums_by_name.iteritems():
+                if key not in union.enums_by_name:
+                    union.enums_by_name[key] = val
+                else:
+                    self._check_enum(val, other.enums_by_name[key])
+
+        if "type" in self.elts:
+            union.types_by_name = other.types_by_name.copy()
+            for key, val in self.api.types_by_name.iteritems():
+                if key not in union.types_by_name:
+                    union.types_by_name[key] = val
+                else:
+                    self._check_type(val, other.types_by_name[key])
+
+        if "function" in self.elts:
+            union.functions_by_name = other.functions_by_name.copy()
+            for key, val in self.api.functions_by_name.iteritems():
+                if key not in union.functions_by_name:
+                    union.functions_by_name[key] = val
+                else:
+                    self._check_function(val, other.functions_by_name[key])
+
+        return union
+
+    def intersection(self, other):
+        intersection = gl_XML.gl_api(None)
+
+        if "enum" in self.elts:
+            for key, val in self.api.enums_by_name.iteritems():
+                if key in other.enums_by_name:
+                    self._check_enum(val, other.enums_by_name[key])
+                    intersection.enums_by_name[key] = val
+
+        if "type" in self.elts:
+            for key, val in self.api.types_by_name.iteritems():
+                if key in other.types_by_name:
+                    self._check_type(val, other.types_by_name[key])
+                    intersection.types_by_name[key] = val
+
+        if "function" in self.elts:
+            for key, val in self.api.functions_by_name.iteritems():
+                if key in other.functions_by_name:
+                    self._check_function(val, other.functions_by_name[key])
+                    intersection.functions_by_name[key] = val
+
+        return intersection
+
+    def difference(self, other):
+        difference = gl_XML.gl_api(None)
+
+        if "enum" in self.elts:
+            for key, val in self.api.enums_by_name.iteritems():
+                if key not in other.enums_by_name:
+                    difference.enums_by_name[key] = val
+                else:
+                    self._check_enum(val, other.enums_by_name[key])
+
+        if "type" in self.elts:
+            for key, val in self.api.types_by_name.iteritems():
+                if key not in other.types_by_name:
+                    difference.types_by_name[key] = val
+                else:
+                    self._check_type(val, other.types_by_name[key])
+
+        if "function" in self.elts:
+            for key, val in self.api.functions_by_name.iteritems():
+                if key not in other.functions_by_name:
+                    difference.functions_by_name[key] = val
+                else:
+                    self._check_function(val, other.functions_by_name[key], False)
+
+        return difference
+
+def cmp_enum(e1, e2):
+    if e1.value < e2.value:
+        return -1
+    elif e1.value > e2.value:
+        return 1
+    else:
+        return 0
+
+def cmp_type(t1, t2):
+    return t1.size - t2.size
+
+def cmp_function(f1, f2):
+    if f1.name > f2.name:
+        return 1
+    elif f1.name < f2.name:
+        return -1
+    else:
+        return 0
+
+def spaces(n, str=""):
+    spaces = n - len(str)
+    if spaces < 1:
+        spaces = 1
+    return " " * spaces
+
+def output_enum(e, indent=0):
+    attrs = 'name="%s"' % e.name
+    if e.default_count > 0:
+        tab = spaces(37, attrs)
+        attrs += '%scount="%d"' % (tab, e.default_count)
+    tab = spaces(48, attrs)
+    val = "%04x" % e.value
+    val = "0x" + val.upper()
+    attrs += '%svalue="%s"' % (tab, val)
+
+    # no child
+    if not e.functions:
+        print '%s<enum %s/>' % (spaces(indent), attrs)
+        return
+
+    print '%s<enum %s>' % (spaces(indent), attrs)
+    for key, val in e.functions.iteritems():
+        attrs = 'name="%s"' % key
+        if val[0] != e.default_count:
+            attrs += ' count="%d"' % val[0]
+        if not val[1]:
+            attrs += ' mode="get"'
+
+        print '%s<size %s/>' % (spaces(indent * 2), attrs)
+
+    print '%s</enum>' % spaces(indent)
+
+def output_type(t, indent=0):
+    tab = spaces(16, t.name)
+    attrs = 'name="%s"%ssize="%d"' % (t.name, tab, t.size)
+    ctype = t.type_expr.string()
+    if ctype.find("unsigned") != -1:
+        attrs += ' unsigned="true"'
+    elif ctype.find("signed") == -1:
+        attrs += ' float="true"'
+    print '%s<type %s/>' % (spaces(indent), attrs)
+
+def output_function(f, indent=0):
+    attrs = 'name="%s"' % f.name
+    if f.offset > 0:
+        if f.assign_offset:
+            attrs += ' offset="assign"'
+        else:
+            attrs += ' offset="%d"' % f.offset
+    print '%s<function %s>' % (spaces(indent), attrs)
+
+    for p in f.parameters:
+        attrs = 'name="%s" type="%s"' \
+                % (p.name, p.type_expr.original_string)
+        print '%s<param %s/>' % (spaces(indent * 2), attrs)
+    if f.return_type != "void":
+        attrs = 'type="%s"' % f.return_type
+        print '%s<return %s/>' % (spaces(indent * 2), attrs)
+
+    print '%s</function>' % spaces(indent)
+
+def output_category(api, indent=0):
+    enums = api.enums_by_name.values()
+    enums.sort(cmp_enum)
+    types = api.types_by_name.values()
+    types.sort(cmp_type)
+    functions = api.functions_by_name.values()
+    functions.sort(cmp_function)
+
+    for e in enums:
+        output_enum(e, indent)
+    if enums and types:
+        print
+    for t in types:
+        output_type(t, indent)
+    if enums or types:
+        print
+    for f in functions:
+        output_function(f, indent)
+        if f != functions[-1]:
+            print
+
+def is_api_empty(api):
+    return bool(not api.enums_by_name and
+                not api.types_by_name and
+                not api.functions_by_name)
+
+def show_usage(ops):
+    print "Usage: %s [-k elts] <%s> <file1> <file2>" % (sys.argv[0], "|".join(ops))
+    print "    -k elts   A comma separated string of types of elements to"
+    print "              skip.  Possible types are enum, type, and function."
+    sys.exit(1)
+
+def main():
+    ops = ["union", "intersection", "difference"]
+    elts = ["enum", "type", "function"]
+
+    try:
+        options, args = getopt.getopt(sys.argv[1:], "k:")
+    except Exception, e:
+        show_usage(ops)
+
+    if len(args) != 3:
+        show_usage(ops)
+    op, file1, file2 = args
+    if op not in ops:
+        show_usage(ops)
+
+    skips = []
+    for opt, val in options:
+        if opt == "-k":
+            skips = val.split(",")
+
+    for elt in skips:
+        try:
+            elts.remove(elt)
+        except ValueError:
+            show_usage(ops)
+
+    api1 = gl_XML.parse_GL_API(file1, glX_XML.glx_item_factory())
+    api2 = gl_XML.parse_GL_API(file2, glX_XML.glx_item_factory())
+
+    set = ApiSet(api1, elts)
+    func = getattr(set, op)
+    result = func(api2)
+
+    if not is_api_empty(result):
+        cat_name = "%s_of_%s_and_%s" \
+                % (op, os.path.basename(file1), os.path.basename(file2))
+
+        print '<?xml version="1.0"?>'
+        print '<!DOCTYPE OpenGLAPI SYSTEM "%s/gl_API.dtd">' % GLAPI
+        print
+        print '<OpenGLAPI>'
+        print
+        print '<category name="%s">' % (cat_name)
+        output_category(result, 4)
+        print '</category>'
+        print
+        print '</OpenGLAPI>'
+
+if __name__ == "__main__":
+    main()
diff --git a/src/mapi/glapi/gen-es/gl_parse_header.py b/src/mapi/glapi/gen-es/gl_parse_header.py
new file mode 100644 (file)
index 0000000..5382eba
--- /dev/null
@@ -0,0 +1,450 @@
+#!/usr/bin/python
+#
+# Copyright (C) 2009 Chia-I Wu <olv@0xlab.org>
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# 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
+# IBM 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 os.path
+import getopt
+import re
+
+GLAPI = "../../glapi/gen"
+sys.path.append(GLAPI)
+
+class HeaderParser(object):
+    """Parser for GL header files."""
+
+    def __init__(self, verbose=0):
+        # match #if and #ifdef
+        self.IFDEF = re.compile('#\s*if(n?def\s+(?P<ifdef>\w+)|\s+(?P<if>.+))')
+        # match #endif
+        self.ENDIF = re.compile('#\s*endif')
+        # match typedef abc def;
+        self.TYPEDEF = re.compile('typedef\s+(?P<from>[\w ]+)\s+(?P<to>\w+);')
+        # match #define XYZ VAL
+        self.DEFINE = re.compile('#\s*define\s+(?P<key>\w+)(?P<value>\s+[\w"]*)?')
+        # match GLAPI
+        self.GLAPI = re.compile('^GL_?API(CALL)?\s+(?P<return>[\w\s*]+[\w*])\s+(GL)?_?APIENTRY\s+(?P<name>\w+)\s*\((?P<params>[\w\s(,*\[\])]+)\)\s*;')
+
+        self.split_params = re.compile('\s*,\s*')
+        self.split_ctype = re.compile('(\W)')
+        # ignore GL_VERSION_X_Y
+        self.ignore_enum = re.compile('GL(_ES)?_VERSION(_ES_C[ML])?_\d_\d')
+
+        self.verbose = verbose
+        self._reset()
+
+    def _reset(self):
+        """Reset to initial state."""
+        self.ifdef_levels = []
+        self.need_char = False
+
+    # use typeexpr?
+    def _format_ctype(self, ctype, fix=True):
+        """Format a ctype string, optionally fix it."""
+        # split the type string
+        tmp = self.split_ctype.split(ctype)
+        tmp = [s for s in tmp if s and s != " "]
+
+        pretty = ""
+        for i in xrange(len(tmp)):
+            # add missing GL prefix
+            if (fix and tmp[i] != "const" and tmp[i] != "*" and
+                not tmp[i].startswith("GL")):
+                tmp[i] = "GL" + tmp[i]
+
+            if i == 0:
+                pretty = tmp[i]
+            else:
+                sep = " "
+                if tmp[i - 1] == "*":
+                    sep = ""
+                pretty += sep + tmp[i]
+        return pretty
+
+    # use typeexpr?
+    def _get_ctype_attrs(self, ctype):
+        """Get the attributes of a ctype."""
+        is_float = (ctype.find("float") != -1 or ctype.find("double") != -1)
+        is_signed = not (ctype.find("unsigned")  != -1)
+
+        size = 0
+        if ctype.find("char") != -1:
+            size = 1
+        elif ctype.find("short") != -1:
+            size = 2
+        elif ctype.find("int") != -1:
+            size = 4
+        elif is_float:
+            if ctype.find("float") != -1:
+                size = 4
+            else:
+                size = 8
+
+        return (size, is_float, is_signed)
+
+    def _parse_define(self, line):
+        """Parse a #define line for an <enum>."""
+        m = self.DEFINE.search(line)
+        if not m:
+            if self.verbose and line.find("#define") >= 0:
+                print "ignore %s" % (line)
+            return None
+
+        key = m.group("key").strip()
+        val = m.group("value").strip()
+
+        # enum must begin with GL_ and be all uppercase
+        if ((not (key.startswith("GL_") and key.isupper())) or
+            (self.ignore_enum.match(key) and val == "1")):
+            if self.verbose:
+                print "ignore enum %s" % (key)
+            return None
+
+        return (key, val)
+
+    def _parse_typedef(self, line):
+        """Parse a typedef line for a <type>."""
+        m = self.TYPEDEF.search(line)
+        if not m:
+            if self.verbose and line.find("typedef") >= 0:
+                print "ignore %s" % (line)
+            return None
+
+        f = m.group("from").strip()
+        t = m.group("to").strip()
+        if not t.startswith("GL"):
+            if self.verbose:
+                print "ignore type %s" % (t)
+            return None
+        attrs = self._get_ctype_attrs(f)
+
+        return (f, t, attrs)
+
+    def _parse_gl_api(self, line):
+        """Parse a GLAPI line for a <function>."""
+        m = self.GLAPI.search(line)
+        if not m:
+            if self.verbose and line.find("APIENTRY") >= 0:
+                print "ignore %s" % (line)
+            return None
+
+        rettype = m.group("return")
+        rettype = self._format_ctype(rettype)
+        if rettype == "GLvoid":
+            rettype = ""
+
+        name = m.group("name")
+
+        param_str = m.group("params")
+        chunks = self.split_params.split(param_str)
+        chunks = [s.strip() for s in chunks]
+        if len(chunks) == 1 and (chunks[0] == "void" or chunks[0] == "GLvoid"):
+            chunks = []
+
+        params = []
+        for c in chunks:
+            # split type and variable name
+            idx = c.rfind("*")
+            if idx < 0:
+                idx = c.rfind(" ")
+            if idx >= 0:
+                idx += 1
+                ctype = c[:idx]
+                var = c[idx:]
+            else:
+                ctype = c
+                var = "unnamed"
+
+            # convert array to pointer
+            idx = var.find("[")
+            if idx >= 0:
+                var = var[:idx]
+                ctype += "*"
+
+            ctype = self._format_ctype(ctype)
+            var = var.strip()
+
+            if not self.need_char and ctype.find("GLchar") >= 0:
+                self.need_char = True
+
+            params.append((ctype, var))
+
+        return (rettype, name, params)
+
+    def _change_level(self, line):
+        """Parse a #ifdef line and change level."""
+        m = self.IFDEF.search(line)
+        if m:
+            ifdef = m.group("ifdef")
+            if not ifdef:
+                ifdef = m.group("if")
+            self.ifdef_levels.append(ifdef)
+            return True
+        m = self.ENDIF.search(line)
+        if m:
+            self.ifdef_levels.pop()
+            return True
+        return False
+
+    def _read_header(self, header):
+        """Open a header file and read its contents."""
+        lines = []
+        try:
+            fp = open(header, "rb")
+            lines = fp.readlines()
+            fp.close()
+        except IOError, e:
+            print "failed to read %s: %s" % (header, e)
+        return lines
+
+    def _cmp_enum(self, enum1, enum2):
+        """Compare two enums."""
+        # sort by length of the values as strings
+        val1 = enum1[1]
+        val2 = enum2[1]
+        ret = len(val1) - len(val2)
+        # sort by the values
+        if not ret:
+            val1 = int(val1, 16)
+            val2 = int(val2, 16)
+            ret = val1 - val2
+            # in case int cannot hold the result
+            if ret > 0:
+                ret = 1
+            elif ret < 0:
+                ret = -1
+        # sort by the names
+        if not ret:
+            if enum1[0] < enum2[0]:
+                ret = -1
+            elif enum1[0] > enum2[0]:
+                ret = 1
+        return ret
+
+    def _cmp_type(self, type1, type2):
+        """Compare two types."""
+        attrs1 = type1[2]
+        attrs2 = type2[2]
+        # sort by type size
+        ret = attrs1[0] - attrs2[0]
+        # float is larger
+        if not ret:
+            ret = attrs1[1] - attrs2[1]
+        # signed is larger
+        if not ret:
+            ret = attrs1[2] - attrs2[2]
+        # reverse
+        ret = -ret
+        return ret
+
+    def _cmp_function(self, func1, func2):
+        """Compare two functions."""
+        name1 = func1[1]
+        name2 = func2[1]
+        ret = 0
+        # sort by the names
+        if name1 < name2:
+            ret = -1
+        elif name1 > name2:
+            ret = 1
+        return ret
+
+    def _postprocess_dict(self, hdict):
+        """Post-process a header dict and return an ordered list."""
+        hlist = []
+        largest = 0
+        for key, cat in hdict.iteritems():
+            size = len(cat["enums"]) + len(cat["types"]) + len(cat["functions"])
+            # ignore empty category
+            if not size:
+                continue
+
+            cat["enums"].sort(self._cmp_enum)
+            # remove duplicates
+            dup = []
+            for i in xrange(1, len(cat["enums"])):
+                if cat["enums"][i] == cat["enums"][i - 1]:
+                    dup.insert(0, i)
+            for i in dup:
+                e = cat["enums"].pop(i)
+                if self.verbose:
+                    print "remove duplicate enum %s" % e[0]
+
+            cat["types"].sort(self._cmp_type)
+            cat["functions"].sort(self._cmp_function)
+
+            # largest category comes first
+            if size > largest:
+                hlist.insert(0, (key, cat))
+                largest = size
+            else:
+                hlist.append((key, cat))
+        return hlist
+
+    def parse(self, header):
+        """Parse a header file."""
+        self._reset()
+
+        if self.verbose:
+            print "Parsing %s" % (header)
+
+        hdict = {}
+        lines = self._read_header(header)
+        for line in lines:
+            if self._change_level(line):
+                continue
+
+            # skip until the first ifdef (i.e. __gl_h_)
+            if not self.ifdef_levels:
+                continue
+
+            cat_name = os.path.basename(header)
+            # check if we are in an extension
+            if (len(self.ifdef_levels) > 1 and
+                self.ifdef_levels[-1].startswith("GL_")):
+                cat_name = self.ifdef_levels[-1]
+
+            try:
+                cat = hdict[cat_name]
+            except KeyError:
+                cat = {
+                        "enums": [],
+                        "types": [],
+                        "functions": []
+                }
+                hdict[cat_name] = cat
+
+            key = "enums"
+            elem = self._parse_define(line)
+            if not elem:
+                key = "types"
+                elem = self._parse_typedef(line)
+            if not elem:
+                key = "functions"
+                elem = self._parse_gl_api(line)
+
+            if elem:
+                cat[key].append(elem)
+
+        if self.need_char:
+            if self.verbose:
+                print "define GLchar"
+            elem = self._parse_typedef("typedef char GLchar;")
+            cat["types"].append(elem)
+        return self._postprocess_dict(hdict)
+
+def spaces(n, str=""):
+    spaces = n - len(str)
+    if spaces < 1:
+        spaces = 1
+    return " " * spaces
+
+def output_xml(name, hlist):
+    """Output a parsed header in OpenGLAPI XML."""
+
+    for i in xrange(len(hlist)):
+        cat_name, cat = hlist[i]
+
+        print '<category name="%s">' % (cat_name)
+        indent = 4
+
+        for enum in cat["enums"]:
+            name = enum[0][3:]
+            value = enum[1]
+            tab = spaces(41, name)
+            attrs = 'name="%s"%svalue="%s"' % (name, tab, value)
+            print '%s<enum %s/>' % (spaces(indent), attrs)
+
+        if cat["enums"] and cat["types"]:
+            print
+
+        for type in cat["types"]:
+            ctype = type[0]
+            size, is_float, is_signed = type[2]
+
+            attrs = 'name="%s"' % (type[1][2:])
+            attrs += spaces(16, attrs) + 'size="%d"' % (size)
+            if is_float:
+                attrs += ' float="true"'
+            elif not is_signed:
+                attrs += ' unsigned="true"'
+
+            print '%s<type %s/>' % (spaces(indent), attrs)
+
+        for func in cat["functions"]:
+            print
+            ret = func[0]
+            name = func[1][2:]
+            params = func[2]
+
+            attrs = 'name="%s" offset="assign"' % name
+            print '%s<function %s>' % (spaces(indent), attrs)
+
+            for param in params:
+                attrs = 'name="%s" type="%s"' % (param[1], param[0])
+                print '%s<param %s/>' % (spaces(indent * 2), attrs)
+            if ret:
+                attrs = 'type="%s"' % ret
+                print '%s<return %s/>' % (spaces(indent * 2), attrs)
+
+            print '%s</function>' % spaces(indent)
+
+        print '</category>'
+        print
+
+def show_usage():
+    print "Usage: %s [-v] <header> ..." % sys.argv[0]
+    sys.exit(1)
+
+def main():
+    try:
+        args, headers = getopt.getopt(sys.argv[1:], "v")
+    except Exception, e:
+        show_usage()
+    if not headers:
+        show_usage()
+
+    verbose = 0
+    for arg in args:
+        if arg[0] == "-v":
+            verbose += 1
+
+    need_xml_header = True
+    parser = HeaderParser(verbose)
+    for h in headers:
+        h = os.path.abspath(h)
+        hlist = parser.parse(h)
+
+        if need_xml_header:
+            print '<?xml version="1.0"?>'
+            print '<!DOCTYPE OpenGLAPI SYSTEM "%s/gl_API.dtd">' % GLAPI
+            need_xml_header = False
+
+        print
+        print '<!-- %s -->' % (h)
+        print '<OpenGLAPI>'
+        print
+        output_xml(h, hlist)
+        print '</OpenGLAPI>'
+
+if __name__ == '__main__':
+    main()
diff --git a/src/mapi/glapi/gen/APPLE_object_purgeable.xml b/src/mapi/glapi/gen/APPLE_object_purgeable.xml
new file mode 100644 (file)
index 0000000..62fa64a
--- /dev/null
@@ -0,0 +1,37 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<OpenGLAPI>
+<category name="GL_APPLE_object_purgeable" number="371">
+    <enum name="RELEASED_APPLE"               value="0x8A19"/>
+    <enum name="VOLATILE_APPLE"               value="0x8A1A"/>
+    <enum name="RETAINED_APPLE"               value="0x8A1B"/>
+    <enum name="UNDEFINED_APPLE"              value="0x8A1C"/>
+    <enum name="PURGEABLE_APPLE"    count="1" value="0x8A1D">
+       <size name="GetObjectParameterivAPPLE" count="1" mode="get"/>
+    </enum>
+
+    <enum name="BUFFER_OBJECT_APPLE"          value="0x85B3"/>
+
+    <function name="ObjectPurgeableAPPLE" offset="assign">
+        <param name="objectType" type="GLenum"/>
+        <param name="name" type="GLuint"/>
+        <param name="option" type="GLenum"/>
+       <return type="GLenum"/>
+    </function>
+
+    <function name="ObjectUnpurgeableAPPLE" offset="assign">
+        <param name="objectType" type="GLenum"/>
+        <param name="name" type="GLuint"/>
+        <param name="option" type="GLenum"/>
+       <return type="GLenum"/>
+    </function>
+
+    <function name="GetObjectParameterivAPPLE" offset="assign">
+        <param name="objectType" type="GLenum"/>
+        <param name="name" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="value" type="GLint *" output="true"/>
+    </function>
+</category>
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/APPLE_vertex_array_object.xml b/src/mapi/glapi/gen/APPLE_vertex_array_object.xml
new file mode 100644 (file)
index 0000000..bd8427e
--- /dev/null
@@ -0,0 +1,27 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<OpenGLAPI>
+<category name="GL_APPLE_vertex_array_object" number="273">
+    <enum name="VERTEX_ARRAY_BINDING_APPLE"               value="0x85B5"/>
+
+    <function name="BindVertexArrayAPPLE" offset="assign" static_dispatch="false">
+        <param name="array" type="GLuint"/>
+    </function>
+
+    <function name="DeleteVertexArraysAPPLE" offset="assign" static_dispatch="false">
+        <param name="n" type="GLsizei"/>
+       <param name="arrays" type="const GLuint *" count="n"/>
+    </function>
+
+    <function name="GenVertexArraysAPPLE" offset="assign" static_dispatch="false">
+        <param name="n" type="GLsizei"/>
+       <param name="arrays" type="GLuint *" count="n" output="true"/>
+    </function>
+
+    <function name="IsVertexArrayAPPLE" offset="assign" static_dispatch="false">
+        <param name="array" type="GLuint"/>
+       <return type="GLboolean"/>
+    </function>
+</category>
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/ARB_copy_buffer.xml b/src/mapi/glapi/gen/ARB_copy_buffer.xml
new file mode 100644 (file)
index 0000000..719816d
--- /dev/null
@@ -0,0 +1,24 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<!-- Note: no GLX protocol info yet. -->
+
+
+<OpenGLAPI>
+
+<category name="GL_ARB_copy_buffer" number="59">
+
+    <enum name="COPY_READ_BUFFER"   value="0x8F36"/>
+    <enum name="COPY_WRITE_BUFFER"  value="0x8F37"/>
+
+    <function name="CopyBufferSubData" offset="assign">
+        <param name="readTarget" type="GLenum"/>
+        <param name="writeTarget" type="GLenum"/>
+        <param name="readOffset" type="GLintptr"/>
+        <param name="writeOffset" type="GLintptr"/>
+        <param name="size" type="GLsizeiptr"/>
+    </function>
+
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/ARB_depth_clamp.xml b/src/mapi/glapi/gen/ARB_depth_clamp.xml
new file mode 100644 (file)
index 0000000..157c9a8
--- /dev/null
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<OpenGLAPI>
+
+<category name="GL_ARB_depth_clamp" number="61">
+    <enum name="DEPTH_CLAMP" count="1"  value="0x864F">
+        <size name="Get" mode="get"/>
+    </enum>
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/ARB_draw_elements_base_vertex.xml b/src/mapi/glapi/gen/ARB_draw_elements_base_vertex.xml
new file mode 100644 (file)
index 0000000..f4067f4
--- /dev/null
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<!-- Note: no GLX protocol info yet. -->
+
+
+<OpenGLAPI>
+
+<category name="GL_ARB_draw_elements_base_vertex" number="62">
+
+    <function name="DrawElementsBaseVertex" offset="assign">
+        <param name="mode" type="GLenum"/>
+        <param name="count" type="GLsizei"/>
+        <param name="type" type="GLenum"/>
+        <param name="indices" type="const GLvoid *"/>
+        <param name="basevertex" type="GLint"/>
+    </function>
+
+    <function name="DrawRangeElementsBaseVertex" offset="assign">
+        <param name="mode" type="GLenum"/>
+        <param name="start" type="GLuint"/>
+        <param name="end" type="GLuint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="type" type="GLenum"/>
+        <param name="indices" type="const GLvoid *"/>
+        <param name="basevertex" type="GLint"/>
+    </function>
+
+    <function name="MultiDrawElementsBaseVertex" offset="assign">
+        <param name="mode" type="GLenum"/>
+        <param name="count" type="const GLsizei *"/>
+        <param name="type" type="GLenum"/>
+        <param name="indices" type="const GLvoid **"/>
+        <param name="primcount" type="GLsizei"/>
+        <param name="basevertex" type="const GLint *"/>
+    </function>
+
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/ARB_draw_instanced.xml b/src/mapi/glapi/gen/ARB_draw_instanced.xml
new file mode 100644 (file)
index 0000000..5741a58
--- /dev/null
@@ -0,0 +1,69 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<!-- Note: no GLX protocol info yet. -->
+
+
+<OpenGLAPI>
+
+<category name="3.1">
+
+  <function name="DrawArraysInstanced" offset="assign">
+    <param name="mode" type="GLenum"/>
+    <param name="first" type="GLint"/>
+    <param name="count" type="GLsizei"/>
+    <param name="primcount" type="GLsizei"/>
+  </function>
+
+  <function name="DrawElementsInstanced" offset="assign">
+    <param name="mode" type="GLenum"/>
+    <param name="count" type="GLsizei"/>
+    <param name="type" type="GLenum"/>
+    <param name="indices" type="const GLvoid *"/>
+    <param name="primcount" type="GLsizei"/>
+  </function>
+
+</category>
+
+
+<category name="GL_ARB_draw_instanced" number="44">
+
+  <function name="DrawArraysInstancedARB" alias="DrawArraysInstanced">
+    <param name="mode" type="GLenum"/>
+    <param name="first" type="GLint"/>
+    <param name="count" type="GLsizei"/>
+    <param name="primcount" type="GLsizei"/>
+  </function>
+
+  <function name="DrawElementsInstancedARB" alias="DrawElementsInstanced">
+    <param name="mode" type="GLenum"/>
+    <param name="count" type="GLsizei"/>
+    <param name="type" type="GLenum"/>
+    <param name="indices" type="const GLvoid *"/>
+    <param name="primcount" type="GLsizei"/>
+  </function>
+
+</category>
+
+
+<category name="GL_EXT_draw_instanced" number="327">
+
+  <function name="DrawArraysInstancedEXT"  alias="DrawArraysInstanced">
+    <param name="mode" type="GLenum"/>
+    <param name="first" type="GLint"/>
+    <param name="count" type="GLsizei"/>
+    <param name="primcount" type="GLsizei"/>
+  </function>
+
+  <function name="DrawElementsInstancedEXT" alias="DrawElementsInstanced">
+    <param name="mode" type="GLenum"/>
+    <param name="count" type="GLsizei"/>
+    <param name="type" type="GLenum"/>
+    <param name="indices" type="const GLvoid *"/>
+    <param name="primcount" type="GLsizei"/>
+  </function>
+
+</category>
+
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/ARB_framebuffer_object.xml b/src/mapi/glapi/gen/ARB_framebuffer_object.xml
new file mode 100644 (file)
index 0000000..e6bdcd6
--- /dev/null
@@ -0,0 +1,275 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<!-- Note: no GLX protocol info yet. -->
+
+
+<OpenGLAPI>
+<category name="GL_ARB_framebuffer_object" number="45">
+    <enum name="FRAMEBUFFER"                              value="0x8D40"/>
+    <enum name="READ_FRAMEBUFFER"                         value="0x8CA8"/>
+    <enum name="DRAW_FRAMEBUFFER"                         value="0x8CA9"/>
+
+    <enum name="RENDERBUFFER"                             value="0x8D41"/>
+
+    <enum name="STENCIL_INDEX1"                           value="0x8D46"/>
+    <enum name="STENCIL_INDEX4"                           value="0x8D47"/>
+    <enum name="STENCIL_INDEX8"                           value="0x8D48"/>
+    <enum name="STENCIL_INDEX16"                          value="0x8D49"/>
+
+    <enum name="RENDERBUFFER_WIDTH"              value="0x8D42"/>
+    <enum name="RENDERBUFFER_HEIGHT"             value="0x8D43"/>
+    <enum name="RENDERBUFFER_INTERNAL_FORMAT"    value="0x8D44"/>
+    <enum name="RENDERBUFFER_RED_SIZE"           value="0x8D50"/>
+    <enum name="RENDERBUFFER_GREEN_SIZE"         value="0x8D51"/>
+    <enum name="RENDERBUFFER_BLUE_SIZE"          value="0x8D52"/>
+    <enum name="RENDERBUFFER_ALPHA_SIZE"         value="0x8D53"/>
+    <enum name="RENDERBUFFER_DEPTH_SIZE"         value="0x8D54"/>
+    <enum name="RENDERBUFFER_STENCIL_SIZE"       value="0x8D55"/>
+    <enum name="RENDERBUFFER_SAMPLES"            value="0x8CAB"/>
+
+    <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE" count="1" value="0x8CD0">
+        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
+    </enum>
+    <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_NAME" count="1" value="0x8CD1">
+        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
+    </enum>
+    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL" count="1" value="0x8CD2">
+        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
+    </enum>
+    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE" count="1" value="0x8CD3">
+        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
+    </enum>
+    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER" count="1" value="0x8CD4">
+        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
+    </enum>
+    <enum name="FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING" count="1" value="0x8210">
+        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
+    </enum>
+    <enum name="FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE" count="1" value="0x8211">
+        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
+    </enum>
+    <enum name="FRAMEBUFFER_ATTACHMENT_RED_SIZE" count="1" value="0x8212">
+        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
+    </enum>
+    <enum name="FRAMEBUFFER_ATTACHMENT_GREEN_SIZE" count="1" value="0x8213">
+        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
+    </enum>
+    <enum name="FRAMEBUFFER_ATTACHMENT_BLUE_SIZE" count="1" value="0x8214">
+        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
+    </enum>
+    <enum name="FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE" count="1" value="0x8215">
+        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
+    </enum>
+    <enum name="FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE" count="1" value="0x8216">
+        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
+    </enum>
+    <enum name="FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE" count="1" value="0x8217">
+        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
+    </enum>
+
+    <enum name="SRGB"                                      value="0x8C40"/>
+    <enum name="UNSIGNED_NORMALIZED"                       value="0x8C17"/>
+    <enum name="FRAMEBUFFER_DEFAULT"                       value="0x8218"/>
+    <enum name="INDEX"                                     value="0x8222"/>
+
+    <enum name="COLOR_ATTACHMENT0"                         value="0x8CE0"/>
+    <enum name="COLOR_ATTACHMENT1"                         value="0x8CE1"/>
+    <enum name="COLOR_ATTACHMENT2"                         value="0x8CE2"/>
+    <enum name="COLOR_ATTACHMENT3"                         value="0x8CE3"/>
+    <enum name="COLOR_ATTACHMENT4"                         value="0x8CE4"/>
+    <enum name="COLOR_ATTACHMENT5"                         value="0x8CE5"/>
+    <enum name="COLOR_ATTACHMENT6"                         value="0x8CE6"/>
+    <enum name="COLOR_ATTACHMENT7"                         value="0x8CE7"/>
+    <enum name="COLOR_ATTACHMENT8"                         value="0x8CE8"/>
+    <enum name="COLOR_ATTACHMENT9"                         value="0x8CE9"/>
+    <enum name="COLOR_ATTACHMENT10"                        value="0x8CEA"/>
+    <enum name="COLOR_ATTACHMENT11"                        value="0x8CEB"/>
+    <enum name="COLOR_ATTACHMENT12"                        value="0x8CEC"/>
+    <enum name="COLOR_ATTACHMENT13"                        value="0x8CED"/>
+    <enum name="COLOR_ATTACHMENT14"                        value="0x8CEE"/>
+    <enum name="COLOR_ATTACHMENT15"                        value="0x8CEF"/>
+    <enum name="DEPTH_ATTACHMENT"                          value="0x8D00"/>
+    <enum name="STENCIL_ATTACHMENT"                        value="0x8D20"/>
+    <enum name="DEPTH_STENCIL_ATTACHMENT"                  value="0x821A"/>
+
+    <enum name="MAX_SAMPLES"                     count="1" value="0x8D57">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <enum name="FRAMEBUFFER_COMPLETE"                      value="0x8CD5"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_ATTACHMENT"         value="0x8CD6"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT" value="0x8CD7"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER"        value="0x8CDB"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_READ_BUFFER"        value="0x8CDC"/>
+    <enum name="FRAMEBUFFER_UNSUPPORTED"                   value="0x8CDD"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_MULTISAMPLE"        value="0x8D56"/>
+    <enum name="FRAMEBUFFER_UNDEFINED"                     value="0x8219"/>
+
+    <enum name="FRAMEBUFFER_BINDING"             count="1" value="0x8CA6">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_FRAMEBUFFER_BINDING"        count="1" value="0x8CA6">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="READ_FRAMEBUFFER_BINDING"        count="1" value="0x8CAA">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="RENDERBUFFER_BINDING"            count="1" value="0x8CA7">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_COLOR_ATTACHMENTS"           count="1" value="0x8CDF">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_RENDERBUFFER_SIZE"           count="1" value="0x84E8">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <enum name="INVALID_FRAMEBUFFER_OPERATION"            value="0x0506"/>
+
+    <enum name="DEPTH_STENCIL"                            value="0x84F9"/>
+
+    <enum name="UNSIGNED_INT_24_8"                        value="0x84FA"/>
+
+    <enum name="DEPTH24_STENCIL8"                         value="0x88F0"/>
+
+    <enum name="TEXTURE_STENCIL_SIZE"          count="1"  value="0x88F1">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+
+
+
+    <function name="IsRenderbuffer" alias="IsRenderbufferEXT">
+        <param name="renderbuffer" type="GLuint"/>
+       <return type="GLboolean"/>
+    </function>
+
+    <function name="BindRenderbuffer" alias="BindRenderbufferEXT">
+        <param name="target" type="GLenum"/>
+        <param name="renderbuffer" type="GLuint"/>
+    </function>
+
+    <function name="DeleteRenderbuffers" alias="DeleteRenderbuffersEXT">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="renderbuffers" type="const GLuint *" count="n"/>
+    </function>
+
+    <function name="GenRenderbuffers" alias="GenRenderbuffersEXT">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="renderbuffers" type="GLuint *" count="n" output="true"/>
+    </function>
+
+    <function name="RenderbufferStorage" alias="RenderbufferStorageEXT">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+    </function>
+
+    <function name="RenderbufferStorageMultisample" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="samples" type="GLsizei"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <glx rop="4331"/>
+    </function>
+
+    <function name="GetRenderbufferParameteriv" alias="GetRenderbufferParameterivEXT">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true"/>
+    </function>
+
+    <function name="IsFramebuffer" alias="IsFramebufferEXT">
+        <param name="framebuffer" type="GLuint"/>
+       <return type="GLboolean"/>
+    </function>
+
+    <function name="BindFramebuffer" alias="BindFramebufferEXT">
+        <param name="target" type="GLenum"/>
+        <param name="framebuffer" type="GLuint"/>
+    </function>
+
+    <function name="DeleteFramebuffers" alias="DeleteFramebuffersEXT">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="framebuffers" type="const GLuint *" count="n"/>
+    </function>
+
+    <function name="GenFramebuffers" alias="GenFramebuffersEXT">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="framebuffers" type="GLuint *" count="n" output="true"/>
+    </function>
+
+    <function name="CheckFramebufferStatus" alias="CheckFramebufferStatusEXT">
+        <param name="target" type="GLenum"/>
+       <return type="GLenum"/>
+    </function>
+
+    <function name="FramebufferTexture1D" alias="FramebufferTexture1DEXT">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="textarget" type="GLenum"/>
+        <param name="texture" type="GLuint"/>
+        <param name="level" type="GLint"/>
+    </function>
+
+    <function name="FramebufferTexture2D" alias="FramebufferTexture2DEXT">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="textarget" type="GLenum"/>
+        <param name="texture" type="GLuint"/>
+        <param name="level" type="GLint"/>
+    </function>
+
+    <function name="FramebufferTexture3D" alias="FramebufferTexture3DEXT">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="textarget" type="GLenum"/>
+        <param name="texture" type="GLuint"/>
+        <param name="level" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+    </function>
+
+    <function name="FramebufferTextureLayer" alias="FramebufferTextureLayerEXT">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="texture" type="GLuint"/>
+        <param name="level" type="GLint"/>
+        <param name="layer" type="GLint"/>
+    </function>
+
+    <function name="FramebufferRenderbuffer" alias="FramebufferRenderbufferEXT">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="renderbuffertarget" type="GLenum"/>
+        <param name="renderbuffer" type="GLuint"/>
+    </function>
+
+    <function name="GetFramebufferAttachmentParameteriv" alias="GetFramebufferAttachmentParameterivEXT">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true"/>
+    </function>
+
+    <function name="BlitFramebuffer" alias="BlitFramebufferEXT">
+        <param name="srcX0" type="GLint"/>
+        <param name="srcY0" type="GLint"/>
+        <param name="srcX1" type="GLint"/>
+        <param name="srcY1" type="GLint"/>
+        <param name="dstX0" type="GLint"/>
+        <param name="dstY0" type="GLint"/>
+        <param name="dstX1" type="GLint"/>
+        <param name="dstY1" type="GLint"/>
+        <param name="mask" type="GLbitfield"/>
+        <param name="filter" type="GLenum"/>
+    </function>
+
+    <function name="GenerateMipmap" alias="GenerateMipmapEXT">
+        <param name="target" type="GLenum"/>
+    </function>
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/ARB_map_buffer_range.xml b/src/mapi/glapi/gen/ARB_map_buffer_range.xml
new file mode 100644 (file)
index 0000000..afcb9b6
--- /dev/null
@@ -0,0 +1,34 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<!-- Note: no GLX protocol info yet. -->
+
+
+<OpenGLAPI>
+
+<category name="GL_ARB_map_buffer_range" number="50">
+
+    <enum name="MAP_READ_BIT"                value="0x0001"/>
+    <enum name="MAP_WRITE_BIT"               value="0x0002"/>
+    <enum name="MAP_INVALIDATE_RANGE_BIT"    value="0x0004"/>
+    <enum name="MAP_INVALIDATE_BUFFER_BIT"   value="0x0008"/>
+    <enum name="MAP_FLUSH_EXPLICIT_BIT"      value="0x0010"/>
+    <enum name="MAP_UNSYNCHRONIZED_BIT"      value="0x0020"/>
+
+    <function name="MapBufferRange" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="offset" type="GLintptr"/>
+        <param name="length" type="GLsizeiptr"/>
+        <param name="access" type="GLbitfield"/>
+        <return type="GLvoid *"/>
+    </function>
+
+    <function name="FlushMappedBufferRange" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="offset" type="GLintptr"/>
+        <param name="length" type="GLsizeiptr"/>
+    </function>
+
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/ARB_seamless_cube_map.xml b/src/mapi/glapi/gen/ARB_seamless_cube_map.xml
new file mode 100644 (file)
index 0000000..8dc827c
--- /dev/null
@@ -0,0 +1,12 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<OpenGLAPI>
+
+<category name="GL_ARB_seamless_cube_map" number="65">
+    <enum name="TEXTURE_CUBE_MAP_SEAMLESS"     count="1"  value="0x88F4">
+        <size name="Get" mode="get"/>
+    </enum>
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/ARB_sync.xml b/src/mapi/glapi/gen/ARB_sync.xml
new file mode 100644 (file)
index 0000000..4e4eeba
--- /dev/null
@@ -0,0 +1,84 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<OpenGLAPI>
+<category name="GL_ARB_sync" number="61">
+    <type name="int64"   size="8"                  glx_name="CARD64"/>
+    <type name="uint64"  size="8"  unsigned="true" glx_name="CARD64"/>
+    <type name="sync"    size="8"  unsigned="true" glx_name="CARD64"/>
+
+    <enum name="MAX_SERVER_WAIT_TIMEOUT"       count="1"  value="0x9111">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="OBJECT_TYPE"                   count="1"  value="0x9112">
+        <size name="GetSynciv" mode="get"/>
+    </enum>
+    <enum name="SYNC_CONDITION"                count="1"  value="0x9113">
+        <size name="GetSynciv" mode="get"/>
+    </enum>
+    <enum name="SYNC_STATUS"                   count="1"  value="0x9114">
+        <size name="GetSynciv" mode="get"/>
+    </enum>
+    <enum name="SYNC_FLAGS"                    count="1"  value="0x9115">
+        <size name="GetSynciv" mode="get"/>
+    </enum>
+
+    <enum name="SYNC_FENCE"                               value="0x9116"/>
+    <enum name="SYNC_GPU_COMMANDS_COMPLETE"               value="0x9117"/>
+    <enum name="UNSIGNALED"                               value="0x9118"/>
+    <enum name="SIGNALED"                                 value="0x9119"/>
+    <enum name="ALREADY_SIGNALED"                         value="0x911A"/>
+    <enum name="TIMEOUT_EXPIRED"                          value="0x911B"/>
+    <enum name="CONDITION_SATISFIED"                      value="0x911C"/>
+    <enum name="WAIT_FAILED"                              value="0x911D"/>
+
+    <enum name="SYNC_FLUSH_COMMANDS_BIT"                  value="0x00000001"/>
+
+    <!-- Not really an enum:
+    <enum name="TIMEOUT_IGNORED"                  value="0xFFFFFFFFFFFFFFFF"/>
+    -->
+
+
+    <function name="FenceSync" offset="assign">
+        <param name="condition" type="GLenum"/>
+        <param name="flags" type="GLbitfield"/>
+        <return type="GLsync"/>
+    </function>
+
+    <function name="IsSync" offset="assign">
+        <param name="sync" type="GLsync"/>
+       <return type="GLboolean"/>
+    </function>
+
+    <function name="DeleteSync" offset="assign">
+        <param name="sync" type="GLsync"/>
+    </function>
+
+    <function name="ClientWaitSync" offset="assign">
+        <param name="sync" type="GLsync"/>
+        <param name="flags" type="GLbitfield"/>
+       <param name="timeout" type="GLuint64"/>
+        <return type="GLenum"/>
+    </function>
+
+    <function name="WaitSync" offset="assign">
+        <param name="sync" type="GLsync"/>
+        <param name="flags" type="GLbitfield"/>
+       <param name="timeout" type="GLuint64"/>
+    </function>
+
+    <function name="GetInteger64v" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint64 *" output="true" variable_param="pname"/>
+    </function>
+
+    <function name="GetSynciv" offset="assign">
+        <param name="sync" type="GLsync"/>
+        <param name="pname" type="GLenum"/>
+        <param name="bufSize" type="GLsizei"/>
+        <param name="length" type="GLsizei *" output="true"/>
+        <param name="values" type="GLint *" output="true" variable_param="pname"/>
+    </function>
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/ARB_vertex_array_object.xml b/src/mapi/glapi/gen/ARB_vertex_array_object.xml
new file mode 100644 (file)
index 0000000..3b4ab64
--- /dev/null
@@ -0,0 +1,34 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<!-- Note: no GLX protocol info yet. -->
+
+
+<OpenGLAPI>
+
+<category name="GL_ARB_vertex_array_object" number="54">
+
+    <enum name="VERTEX_ARRAY_BINDING" value="0x85B5"/>
+
+    <function name="BindVertexArray" offset="assign">
+        <param name="array" type="GLuint"/>
+    </function>
+
+    <function name="DeleteVertexArrays" alias="DeleteVertexArraysAPPLE">
+        <param name="n" type="GLsizei"/>
+        <param name="arrays" type="const GLuint *"/>
+    </function>
+
+    <function name="GenVertexArrays" offset="assign">
+        <param name="n" type="GLsizei"/>
+        <param name="arrays" type="GLuint *"/>
+    </function>
+
+    <function name="IsVertexArray" alias="IsVertexArrayAPPLE">
+        <param name="array" type="GLuint"/>
+        <return type="GLboolean"/>
+    </function>
+
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/EXT_draw_buffers2.xml b/src/mapi/glapi/gen/EXT_draw_buffers2.xml
new file mode 100644 (file)
index 0000000..efbe61f
--- /dev/null
@@ -0,0 +1,49 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<!-- Note: no GLX protocol info yet. -->
+
+
+<OpenGLAPI>
+
+<category name="GL_EXT_draw_buffers2" number="340">
+
+    <function name="ColorMaskIndexedEXT" offset="assign">
+       <param name="buf" type="GLuint"/>
+       <param name="r" type="GLboolean"/>
+       <param name="g" type="GLboolean"/>
+       <param name="b" type="GLboolean"/>
+       <param name="a" type="GLboolean"/>
+    </function>
+
+    <function name="GetBooleanIndexedvEXT" offset="assign">
+        <param name="value" type="GLenum"/>
+       <param name="index" type="GLuint"/>
+       <param name="data" type="GLboolean *"/>
+    </function>
+
+    <function name="GetIntegerIndexedvEXT" offset="assign">
+        <param name="value" type="GLenum"/>
+       <param name="index" type="GLuint"/>
+       <param name="data" type="GLint *"/>
+    </function>
+
+    <function name="EnableIndexedEXT" offset="assign">
+        <param name="target" type="GLenum"/>
+       <param name="index" type="GLuint"/>
+    </function>
+
+    <function name="DisableIndexedEXT" offset="assign">
+        <param name="target" type="GLenum"/>
+       <param name="index" type="GLuint"/>
+    </function>
+
+    <function name ="IsEnabledIndexedEXT" offset="assign">
+        <param name="target" type="GLenum"/>
+       <param name="index" type="GLuint"/>
+       <return type="GLboolean"/>
+    </function>
+
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/EXT_framebuffer_object.xml b/src/mapi/glapi/gen/EXT_framebuffer_object.xml
new file mode 100644 (file)
index 0000000..4f418f7
--- /dev/null
@@ -0,0 +1,235 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<OpenGLAPI>
+<category name="GL_EXT_framebuffer_object" number="310">
+    <enum name="FRAMEBUFFER_EXT"                          value="0x8D40"/>
+    <enum name="RENDERBUFFER_EXT"                         value="0x8D41"/>
+    <enum name="RENDERBUFFER_WIDTH_EXT"                   value="0x8D42"/>
+    <enum name="RENDERBUFFER_HEIGHT_EXT"                  value="0x8D43"/>
+    <enum name="RENDERBUFFER_INTERNAL_FORMAT_EXT"         value="0x8D44"/>
+    <enum name="STENCIL_INDEX_EXT"                        value="0x8D45"/>
+    <enum name="STENCIL_INDEX1_EXT"                       value="0x8D46"/>
+    <enum name="STENCIL_INDEX4_EXT"                       value="0x8D47"/>
+    <enum name="STENCIL_INDEX8_EXT"                       value="0x8D48"/>
+    <enum name="STENCIL_INDEX16_EXT"                      value="0x8D49"/>
+
+    <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT"   count="1" value="0x8CD0">
+        <size name="GetFramebufferAttachmentParameterivEXT" mode="get"/>
+    </enum>
+    <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT"   count="1" value="0x8CD1">
+        <size name="GetFramebufferAttachmentParameterivEXT" mode="get"/>
+    </enum>
+    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT" count="1" value="0x8CD2">
+        <size name="GetFramebufferAttachmentParameterivEXT" mode="get"/>
+    </enum>
+    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT" count="1" value="0x8CD3">
+        <size name="GetFramebufferAttachmentParameterivEXT" mode="get"/>
+    </enum>
+    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT"    count="1" value="0x8CD4">
+        <size name="GetFramebufferAttachmentParameterivEXT" mode="get"/>
+    </enum>
+
+    <enum name="COLOR_ATTACHMENT0_EXT"                    value="0x8CE0"/>
+    <enum name="COLOR_ATTACHMENT1_EXT"                    value="0x8CE1"/>
+    <enum name="COLOR_ATTACHMENT2_EXT"                    value="0x8CE2"/>
+    <enum name="COLOR_ATTACHMENT3_EXT"                    value="0x8CE3"/>
+    <enum name="COLOR_ATTACHMENT4_EXT"                    value="0x8CE4"/>
+    <enum name="COLOR_ATTACHMENT5_EXT"                    value="0x8CE5"/>
+    <enum name="COLOR_ATTACHMENT6_EXT"                    value="0x8CE6"/>
+    <enum name="COLOR_ATTACHMENT7_EXT"                    value="0x8CE7"/>
+    <enum name="COLOR_ATTACHMENT8_EXT"                    value="0x8CE8"/>
+    <enum name="COLOR_ATTACHMENT9_EXT"                    value="0x8CE9"/>
+    <enum name="COLOR_ATTACHMENT10_EXT"                   value="0x8CEA"/>
+    <enum name="COLOR_ATTACHMENT11_EXT"                   value="0x8CEB"/>
+    <enum name="COLOR_ATTACHMENT12_EXT"                   value="0x8CEC"/>
+    <enum name="COLOR_ATTACHMENT13_EXT"                   value="0x8CED"/>
+    <enum name="COLOR_ATTACHMENT14_EXT"                   value="0x8CEE"/>
+    <enum name="COLOR_ATTACHMENT15_EXT"                   value="0x8CEF"/>
+    <enum name="DEPTH_ATTACHMENT_EXT"                     value="0x8D00"/>
+    <enum name="STENCIL_ATTACHMENT_EXT"                   value="0x8D20"/>
+
+    <enum name="FRAMEBUFFER_COMPLETE_EXT"                 value="0x8CD5"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT"    value="0x8CD6"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT"   value="0x8CD7"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT" value="0x8CD8"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT"    value="0x8CD9"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_FORMATS_EXT"       value="0x8CDA"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT"   value="0x8CDB"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT"   value="0x8CDC"/>
+    <enum name="FRAMEBUFFER_UNSUPPORTED_EXT"              value="0x8CDD"/>
+    <enum name="FRAMEBUFFER_STATUS_ERROR_EXT"             value="0x8CDE"/>
+    <enum name="FRAMEBUFFER_BINDING_EXT"        count="1" value="0x8CA6">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="RENDERBUFFER_BINDING_EXT"       count="1" value="0x8CA7">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_COLOR_ATTACHMENTS_EXT"      count="1" value="0x8CDF">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_RENDERBUFFER_SIZE_EXT"      count="1" value="0x84E8">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="INVALID_FRAMEBUFFER_OPERATION_EXT"        value="0x0506"/>
+
+    <function name="IsRenderbufferEXT" offset="assign">
+        <param name="renderbuffer" type="GLuint"/>
+       <return type="GLboolean"/>
+       <glx vendorpriv="1422"/>
+    </function>
+
+    <function name="BindRenderbufferEXT" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="renderbuffer" type="GLuint"/>
+       <glx rop="4316"/>
+    </function>
+
+    <function name="DeleteRenderbuffersEXT" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="renderbuffers" type="const GLuint *" count="n"/>
+       <glx rop="4317"/>
+    </function>
+
+    <function name="GenRenderbuffersEXT" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="renderbuffers" type="GLuint *" count="n" output="true"/>
+       <glx vendorpriv="1423" always_array="true"/>
+    </function>
+
+    <function name="RenderbufferStorageEXT" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+       <glx rop="4318"/>
+    </function>
+
+    <function name="GetRenderbufferParameterivEXT" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true"/>
+       <glx vendorpriv="1424"/>
+    </function>
+
+    <function name="IsFramebufferEXT" offset="assign">
+        <param name="framebuffer" type="GLuint"/>
+       <return type="GLboolean"/>
+       <glx vendorpriv="1425"/>
+    </function>
+
+    <function name="BindFramebufferEXT" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="framebuffer" type="GLuint"/>
+       <glx rop="4319"/>
+    </function>
+
+    <function name="DeleteFramebuffersEXT" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="framebuffers" type="const GLuint *" count="n"/>
+       <glx rop="4320"/>
+    </function>
+
+    <function name="GenFramebuffersEXT" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="framebuffers" type="GLuint *" count="n" output="true"/>
+       <glx vendorpriv="1426" always_array="true"/>
+    </function>
+
+    <function name="CheckFramebufferStatusEXT" offset="assign">
+        <param name="target" type="GLenum"/>
+       <return type="GLenum"/>
+       <glx vendorpriv="1427"/>
+    </function>
+
+    <function name="FramebufferTexture1DEXT" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="textarget" type="GLenum"/>
+        <param name="texture" type="GLuint"/>
+        <param name="level" type="GLint"/>
+       <glx rop="4321"/>
+    </function>
+
+    <function name="FramebufferTexture2DEXT" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="textarget" type="GLenum"/>
+        <param name="texture" type="GLuint"/>
+        <param name="level" type="GLint"/>
+       <glx rop="4322"/>
+    </function>
+
+    <function name="FramebufferTexture3DEXT" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="textarget" type="GLenum"/>
+        <param name="texture" type="GLuint"/>
+        <param name="level" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+       <glx rop="4323"/>
+    </function>
+
+    <function name="FramebufferRenderbufferEXT" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="renderbuffertarget" type="GLenum"/>
+        <param name="renderbuffer" type="GLuint"/>
+       <glx rop="4324"/>
+    </function>
+
+    <function name="GetFramebufferAttachmentParameterivEXT" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true"/>
+       <glx vendorpriv="1428"/>
+    </function>
+
+    <function name="GenerateMipmapEXT" offset="assign">
+        <param name="target" type="GLenum"/>
+       <glx rop="4325"/>
+    </function>
+</category>
+
+<category name="GL_EXT_framebuffer_blit" number="316">
+    <enum name="READ_FRAMEBUFFER_EXT" value="0x8CA8"/>
+    <enum name="DRAW_FRAMEBUFFER_EXT" value="0x8CA9"/>
+    <enum name="DRAW_FRAMEBUFFER_BINDING_EXT" count="1" value="0x8CA6">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="READ_FRAMEBUFFER_BINDING_EXT" count="1" value="0x8CAA">
+        <size name="Get" mode="get"/>
+    </enum>
+    <function name="BlitFramebufferEXT" offset="assign" static_dispatch="false">
+        <param name="srcX0" type="GLint"/>
+        <param name="srcY0" type="GLint"/>
+        <param name="srcX1" type="GLint"/>
+        <param name="srcY1" type="GLint"/>
+        <param name="dstX0" type="GLint"/>
+        <param name="dstY0" type="GLint"/>
+        <param name="dstX1" type="GLint"/>
+        <param name="dstY1" type="GLint"/>
+        <param name="mask" type="GLbitfield"/>
+        <param name="filter" type="GLenum"/>
+        <glx rop="4330"/>
+    </function>
+</category>
+
+<category name="GL_EXT_framebuffer_multisample" number="317">
+    <enum name="RENDERBUFFER_SAMPLES_EXT"                  value="0x8CAB"/>
+    <enum name="FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT"    value="0x8D56"/>
+    <enum name="MAX_SAMPLES_EXT"                 count="1" value="0x8D57">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="RenderbufferStorageMultisampleEXT" alias="RenderbufferStorageMultisample">
+        <param name="target" type="GLenum"/>
+        <param name="samples" type="GLsizei"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+    </function>
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/EXT_packed_depth_stencil.xml b/src/mapi/glapi/gen/EXT_packed_depth_stencil.xml
new file mode 100644 (file)
index 0000000..5be8103
--- /dev/null
@@ -0,0 +1,18 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<OpenGLAPI>
+<category name="GL_EXT_packed_depth_stencil" number="312">
+    <!-- These enums are shared with GL_NV_packed_depth_stencil. -->
+    <enum name="DEPTH_STENCIL_EXT"                        value="0x84F9"/>
+    <enum name="UNSIGNED_INT_24_8_EXT"                    value="0x84FA"/>
+
+    <enum name="DEPTH24_STENCIL8_EXT"                     value="0x88F0"/>
+
+    <enum name="TEXTURE_STENCIL_SIZE_EXT"      count="1"  value="0x88F1">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/EXT_provoking_vertex.xml b/src/mapi/glapi/gen/EXT_provoking_vertex.xml
new file mode 100644 (file)
index 0000000..71d2c72
--- /dev/null
@@ -0,0 +1,35 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<!-- Note: no GLX protocol info yet. -->
+
+
+<OpenGLAPI>
+
+<category name="GL_EXT_provoking_vertex" number="364">
+
+    <enum name="FIRST_VERTEX_CONVENTION_EXT"                  value="0x8E4D"/>
+    <enum name="LAST_VERTEX_CONVENTION_EXT"                   value="0x8E4E"/>
+    <enum name="PROVOKING_VERTEX_EXT"                         value="0x8E4F"/>
+    <enum name="QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT" value="0x8E4C"/>
+
+    <function name="ProvokingVertexEXT" offset="assign">
+        <param name="mode" type="GLenum"/>
+    </function>
+
+</category>
+
+<category name="GL_ARB_provoking_vertex" number="64">
+
+    <enum name="FIRST_VERTEX_CONVENTION"                  value="0x8E4D"/>
+    <enum name="LAST_VERTEX_CONVENTION"                   value="0x8E4E"/>
+    <enum name="PROVOKING_VERTEX"                         value="0x8E4F"/>
+    <enum name="QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION" value="0x8E4C"/>
+
+    <function name="ProvokingVertex" alias="ProvokingVertexEXT">
+        <param name="mode" type="GLenum"/>
+    </function>
+
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/EXT_texture_array.xml b/src/mapi/glapi/gen/EXT_texture_array.xml
new file mode 100644 (file)
index 0000000..b5b8bd4
--- /dev/null
@@ -0,0 +1,42 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<OpenGLAPI>
+
+<category name="GL_EXT_texture_array" number="329">
+    <enum name="TEXTURE_1D_ARRAY_EXT"                      value="0x8C18"/>
+    <enum name="PROXY_TEXTURE_1D_ARRAY_EXT"                value="0x8C19"/>
+    <enum name="TEXTURE_2D_ARRAY_EXT"                      value="0x8C1A"/>
+    <enum name="PROXY_TEXTURE_2D_ARRAY_EXT"                value="0x8C1B"/>
+
+    <enum name="TEXTURE_BINDING_1D_ARRAY_EXT"   count="1"  value="0x8C1C">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <enum name="TEXTURE_BINDING_2D_ARRAY_EXT"   count="1"  value="0x8C1D">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <enum name="MAX_ARRAY_TEXTURE_LAYERS_EXT"   count="1"  value="0x88FF">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <enum name="COMPARE_REF_DEPTH_TO_TEXTURE_EXT" count="1" value="0x884E">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT"   count="1" value="0x8CD4">
+        <size name="GetFramebufferAttachmentParameterivEXT" mode="get"/>
+    </enum>
+
+    <function name="FramebufferTextureLayerEXT" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="attachment" type="GLenum"/>
+        <param name="texture" type="GLuint"/>
+        <param name="level" type="GLint"/>
+        <param name="layer" type="GLint"/>
+       <glx rop="237"/>
+    </function>
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/EXT_transform_feedback.xml b/src/mapi/glapi/gen/EXT_transform_feedback.xml
new file mode 100644 (file)
index 0000000..abbed9b
--- /dev/null
@@ -0,0 +1,123 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<!-- Note: no GLX protocol info yet. -->
+
+
+<OpenGLAPI>
+
+<category name="GL_EXT_transform_feedback" number="352">
+
+  <enum name="TRANSFORM_FEEDBACK_BUFFER_EXT"                  value="0x8C8E"/>
+  <enum name="TRANSFORM_FEEDBACK_BUFFER_START_EXT"            value="0x8C84"/>
+  <enum name="TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT"             value="0x8C85"/>
+  <enum name="TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT"          value="0x8C8F"/>
+  <enum name="INTERLEAVED_ATTRIBS_EXT"                        value="0x8C8C"/>
+  <enum name="SEPARATE_ATTRIBS_EXT"                           value="0x8C8D"/>
+  <enum name="PRIMITIVES_GENERATED_EXT"                       value="0x8C87"/>
+  <enum name="TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT"      value="0x8C88"/>
+  <enum name="RASTERIZER_DISCARD_EXT"                         value="0x8C89"/>
+  <enum name="MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT" value="0x8C8A"/>
+  <enum name="MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT"    value="0x8C8B"/>
+  <enum name="MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT" value="0x8C80"/>
+  <enum name="TRANSFORM_FEEDBACK_VARYINGS_EXT"                value="0x8C83"/>
+  <enum name="TRANSFORM_FEEDBACK_BUFFER_MODE_EXT"             value="0x8C7F"/>
+  <enum name="TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT"      value="0x8C76"/>
+
+  <function name="BindBufferRangeEXT" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+    <param name="buffer" type="GLuint"/>
+    <param name="offset" type="GLintptr"/>
+    <param name="size" type="GLsizeiptr"/>
+  </function>
+
+  <function name="BindBufferOffsetEXT" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+    <param name="buffer" type="GLuint"/>
+    <param name="offset" type="GLintptr"/>
+  </function>
+
+  <function name="BindBufferBaseEXT" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+    <param name="buffer" type="GLuint"/>
+  </function>
+
+  <function name="BeginTransformFeedbackEXT" offset="assign">
+    <param name="mode" type="GLenum"/>
+  </function>
+
+  <function name="EndTransformFeedbackEXT" offset="assign">
+  </function>
+
+  <function name="TransformFeedbackVaryingsEXT" offset="assign">
+    <param name="program" type="GLuint"/>
+    <param name="count" type="GLsizei"/>
+    <param name="varyings" type="const char **"/>
+    <param name="bufferMode" type="GLenum"/>
+  </function>
+
+  <function name="GetTransformFeedbackVaryingEXT" offset="assign">
+    <param name="program" type="GLuint"/>
+    <param name="index" type="GLuint"/>
+    <param name="bufSize" type="GLsizei"/>
+    <param name="length" type="GLsizei *"/>
+    <param name="size" type="GLsizei *"/>
+    <param name="type" type="GLenum *"/>
+    <param name="name" type="GLchar *"/>
+  </function>
+
+  <!-- Note: the glGetIntegerIndexedvEXT() and glGetBooleanIndexedvEXT
+       functions are defined in the EXT_draw_buffers2.xml file -->
+
+</category>
+
+
+<!-- Note: these 3.0 entrypoints might get moved to a new file -->
+
+<category name="3.0">
+
+  <function name="BindBufferRange" alias="BindBufferRangeEXT">
+    <param name="target" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+    <param name="buffer" type="GLuint"/>
+    <param name="offset" type="GLintptr"/>
+    <param name="size" type="GLsizeiptr"/>
+  </function>
+
+  <function name="BindBufferBase" alias="BindBufferBaseEXT">
+    <param name="target" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+    <param name="buffer" type="GLuint"/>
+  </function>
+
+  <function name="BeginTransformFeedback" alias="BeginTransformFeedbackEXT">
+    <param name="mode" type="GLenum"/>
+  </function>
+
+  <function name="EndTransformFeedback" alias="EndTransformFeedbackEXT">
+  </function>
+
+  <function name="TransformFeedbackVaryings" alias="TransformFeedbackVaryingsEXT">
+    <param name="program" type="GLuint"/>
+    <param name="count" type="GLsizei"/>
+    <param name="varyings" type="const char **"/>
+    <param name="bufferMode" type="GLenum"/>
+  </function>
+
+  <function name="GetTransformFeedbackVarying" alias="GetTransformFeedbackVaryingEXT">
+    <param name="program" type="GLuint"/>
+    <param name="index" type="GLuint"/>
+    <param name="bufSize" type="GLsizei"/>
+    <param name="length" type="GLsizei *"/>
+    <param name="size" type="GLsizei *"/>
+    <param name="type" type="GLenum *"/>
+    <param name="name" type="GLchar *"/>
+  </function>
+
+</category>
+
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/GL3.xml b/src/mapi/glapi/gen/GL3.xml
new file mode 100644 (file)
index 0000000..0d8d935
--- /dev/null
@@ -0,0 +1,581 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<!-- Note: no GLX protocol info yet. -->
+
+
+<OpenGLAPI>
+
+<category name="3.0">
+
+  <enum name="COMPARE_REF_TO_TEXTURE"           value="0x884E"/>
+  <enum name="CLIP_DISTANCE0"                   value="0x3000"/>
+  <enum name="CLIP_DISTANCE1"                   value="0x3001"/>
+  <enum name="CLIP_DISTANCE2"                   value="0x3002"/>
+  <enum name="CLIP_DISTANCE3"                   value="0x3003"/>
+  <enum name="CLIP_DISTANCE4"                   value="0x3004"/>
+  <enum name="CLIP_DISTANCE5"                   value="0x3005"/>
+  <enum name="CLIP_DISTANCE6"                   value="0x3006"/>
+  <enum name="CLIP_DISTANCE7"                   value="0x3007"/>
+  <enum name="MAX_CLIP_DISTANCES"               value="0x0D32"/>
+  <enum name="MAJOR_VERSION"                    value="0x821B"/>
+  <enum name="MINOR_VERSION"                    value="0x821C"/>
+  <enum name="NUM_EXTENSIONS"                   value="0x821D"/>
+  <enum name="CONTEXT_FLAGS"                    value="0x821E"/>
+  <enum name="DEPTH_BUFFER"                     value="0x8223"/>
+  <enum name="STENCIL_BUFFER"                   value="0x8224"/>
+  <enum name="COMPRESSED_RED"                   value="0x8225"/>
+  <enum name="COMPRESSED_RG"                    value="0x8226"/>
+  <enum name="CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT"  value="0x0001"/>
+  <enum name="RGBA32F"                          value="0x8814"/>
+  <enum name="RGB32F"                           value="0x8815"/>
+  <enum name="RGBA16F"                          value="0x881A"/>
+  <enum name="RGB16F"                           value="0x881B"/>
+  <enum name="VERTEX_ATTRIB_ARRAY_INTEGER"      value="0x88FD"/>
+  <enum name="MAX_ARRAY_TEXTURE_LAYERS"         value="0x88FF"/>
+  <enum name="MIN_PROGRAM_TEXEL_OFFSET"         value="0x8904"/>
+  <enum name="MAX_PROGRAM_TEXEL_OFFSET"         value="0x8905"/>
+  <enum name="CLAMP_READ_COLOR"                 value="0x891C"/>
+  <enum name="FIXED_ONLY"                       value="0x891D"/>
+  <enum name="MAX_VARYING_COMPONENTS"           value="0x8B4B"/>
+  <enum name="TEXTURE_1D_ARRAY"                 value="0x8C18"/>
+  <enum name="PROXY_TEXTURE_1D_ARRAY"           value="0x8C19"/>
+  <enum name="TEXTURE_2D_ARRAY"                 value="0x8C1A"/>
+  <enum name="PROXY_TEXTURE_2D_ARRAY"           value="0x8C1B"/>
+  <enum name="TEXTURE_BINDING_1D_ARRAY"         value="0x8C1C"/>
+  <enum name="TEXTURE_BINDING_2D_ARRAY"         value="0x8C1D"/>
+  <enum name="R11F_G11F_B10F"                   value="0x8C3A"/>
+  <enum name="UNSIGNED_INT_10F_11F_11F_REV"     value="0x8C3B"/>
+  <enum name="RGB9_E5"                          value="0x8C3D"/>
+  <enum name="UNSIGNED_INT_5_9_9_9_REV"         value="0x8C3E"/>
+  <enum name="TEXTURE_SHARED_SIZE"              value="0x8C3F"/>
+  <enum name="TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH"  value="0x8C76"/>
+  <enum name="TRANSFORM_FEEDBACK_BUFFER_MODE"   value="0x8C7F"/>
+  <enum name="MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS"  value="0x8C80"/>
+  <enum name="TRANSFORM_FEEDBACK_VARYINGS"      value="0x8C83"/>
+  <enum name="TRANSFORM_FEEDBACK_BUFFER_START"  value="0x8C84"/>
+  <enum name="TRANSFORM_FEEDBACK_BUFFER_SIZE"   value="0x8C85"/>
+  <enum name="PRIMITIVES_GENERATED"             value="0x8C87"/>
+  <enum name="TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN"  value="0x8C88"/>
+  <enum name="RASTERIZER_DISCARD"               value="0x8C89"/>
+  <enum name="MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS"  value="0x8C8A"/>
+  <enum name="MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS"  value="0x8C8B"/>
+  <enum name="INTERLEAVED_ATTRIBS"              value="0x8C8C"/>
+  <enum name="SEPARATE_ATTRIBS"                 value="0x8C8D"/>
+  <enum name="TRANSFORM_FEEDBACK_BUFFER"        value="0x8C8E"/>
+  <enum name="TRANSFORM_FEEDBACK_BUFFER_BINDING"  value="0x8C8F"/>
+  <enum name="RGBA32UI"                         value="0x8D70"/>
+  <enum name="RGB32UI"                          value="0x8D71"/>
+  <enum name="RGBA16UI"                         value="0x8D76"/>
+  <enum name="RGB16UI"                          value="0x8D77"/>
+  <enum name="RGBA8UI"                          value="0x8D7C"/>
+  <enum name="RGB8UI"                           value="0x8D7D"/>
+  <enum name="RGBA32I"                          value="0x8D82"/>
+  <enum name="RGB32I"                           value="0x8D83"/>
+  <enum name="RGBA16I"                          value="0x8D88"/>
+  <enum name="RGB16I"                           value="0x8D89"/>
+  <enum name="RGBA8I"                           value="0x8D8E"/>
+  <enum name="RGB8I"                            value="0x8D8F"/>
+  <enum name="RED_INTEGER"                      value="0x8D94"/>
+  <enum name="GREEN_INTEGER"                    value="0x8D95"/>
+  <enum name="BLUE_INTEGER"                     value="0x8D96"/>
+  <enum name="RGB_INTEGER"                      value="0x8D98"/>
+  <enum name="RGBA_INTEGER"                     value="0x8D99"/>
+  <enum name="BGR_INTEGER"                      value="0x8D9A"/>
+  <enum name="BGRA_INTEGER"                     value="0x8D9B"/>
+  <enum name="SAMPLER_1D_ARRAY"                 value="0x8DC0"/>
+  <enum name="SAMPLER_2D_ARRAY"                 value="0x8DC1"/>
+  <enum name="SAMPLER_1D_ARRAY_SHADOW"          value="0x8DC3"/>
+  <enum name="SAMPLER_2D_ARRAY_SHADOW"          value="0x8DC4"/>
+  <enum name="SAMPLER_CUBE_SHADOW"              value="0x8DC5"/>
+  <enum name="UNSIGNED_INT_VEC2"                value="0x8DC6"/>
+  <enum name="UNSIGNED_INT_VEC3"                value="0x8DC7"/>
+  <enum name="UNSIGNED_INT_VEC4"                value="0x8DC8"/>
+  <enum name="INT_SAMPLER_1D"                   value="0x8DC9"/>
+  <enum name="INT_SAMPLER_2D"                   value="0x8DCA"/>
+  <enum name="INT_SAMPLER_3D"                   value="0x8DCB"/>
+  <enum name="INT_SAMPLER_CUBE"                 value="0x8DCC"/>
+  <enum name="INT_SAMPLER_1D_ARRAY"             value="0x8DCE"/>
+  <enum name="INT_SAMPLER_2D_ARRAY"             value="0x8DCF"/>
+  <enum name="UNSIGNED_INT_SAMPLER_1D"          value="0x8DD1"/>
+  <enum name="UNSIGNED_INT_SAMPLER_2D"          value="0x8DD2"/>
+  <enum name="UNSIGNED_INT_SAMPLER_3D"          value="0x8DD3"/>
+  <enum name="UNSIGNED_INT_SAMPLER_CUBE"        value="0x8DD4"/>
+  <enum name="UNSIGNED_INT_SAMPLER_1D_ARRAY"    value="0x8DD6"/>
+  <enum name="UNSIGNED_INT_SAMPLER_2D_ARRAY"    value="0x8DD7"/>
+  <enum name="QUERY_WAIT"                       value="0x8E13"/>
+  <enum name="QUERY_NO_WAIT"                    value="0x8E14"/>
+  <enum name="QUERY_BY_REGION_WAIT"             value="0x8E15"/>
+  <enum name="QUERY_BY_REGION_NO_WAIT"          value="0x8E16"/>
+  <enum name="BUFFER_ACCESS_FLAGS"              value="0x911F"/>
+  <enum name="BUFFER_MAP_LENGTH"                value="0x9120"/>
+  <enum name="BUFFER_MAP_OFFSET"                value="0x9121"/>
+
+  <function name="ClearBufferiv" offset="assign">
+    <param name="buffer" type="GLenum"/>
+    <param name="drawbuffer" type="GLint"/>
+    <param name="value" type="const GLint *"/>
+  </function>
+
+  <function name="ClearBufferuiv" offset="assign">
+    <param name="buffer" type="GLenum"/>
+    <param name="drawbuffer" type="GLint"/>
+    <param name="value" type="const GLuint *"/>
+  </function>
+
+  <function name="ClearBufferfv" offset="assign">
+    <param name="buffer" type="GLenum"/>
+    <param name="drawbuffer" type="GLint"/>
+    <param name="value" type="const GLfloat *"/>
+  </function>
+
+  <function name="ClearBufferfi" offset="assign">
+    <param name="buffer" type="GLenum"/>
+    <param name="drawbuffer" type="GLint"/>
+    <param name="depth" type="const GLfloat"/>
+    <param name="stencil" type="const GLint"/>
+  </function>
+
+  <function name="GetStringi" offset="assign">
+    <param name="name" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+      <return type="const GLubyte *"/>
+  </function>
+
+  <function name="IsEnabledi" offset="assign">
+    <param name="cap" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+      <return type="GLboolean"/>
+  </function>
+
+  <function name="GetFragDataLocation" offset="assign">
+    <param name="program" type="GLuint"/>
+    <param name="name" type="const GLchar *"/>
+      <return type="GLint"/>
+  </function>
+
+  <function name="BindFragDataLocation" offset="assign">
+    <param name="program" type="GLuint"/>
+    <param name="color" type="GLuint"/>
+    <param name="name" type="const GLchar *"/>
+  </function>
+
+  <function name="ColorMaski" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="r" type="GLboolean"/>
+    <param name="g" type="GLboolean"/>
+    <param name="b" type="GLboolean"/>
+    <param name="a" type="GLboolean"/>
+  </function>
+
+  <function name="GetBooleani_v" offset="assign">
+    <param name="cap" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+    <param name="value" type="GLboolean *"/>
+  </function>
+
+  <function name="GetIntegeri_v" offset="assign">
+    <param name="cap" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+    <param name="value" type="GLint *"/>
+  </function>
+
+  <function name="Enablei" offset="assign">
+    <param name="cap" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+  </function>
+
+  <function name="Disablei" offset="assign">
+    <param name="cap" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+  </function>
+
+  <function name="BeginTransformFeedback" offset="assign">
+    <param name="mode" type="GLenum"/>
+  </function>
+
+  <function name="EndTransformFeedback" offset="assign">
+  </function>
+
+  <function name="BindBufferRange" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+    <param name="buffer" type="GLuint"/>
+    <param name="offset" type="GLintptr"/>
+    <param name="size" type="GLsizeiptr"/>
+  </function>
+
+  <function name="BindBufferBase" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+    <param name="buffer" type="GLuint"/>
+  </function>
+
+  <function name="TransformFeedbackVaryings" offset="assign">
+    <param name="program" type="GLuint"/>
+    <param name="count" type="GLsizei"/>
+    <param name="varyings" type="const GLchar* *"/>
+    <param name="bufferMode" type="GLenum"/>
+  </function>
+
+  <function name="GetTransformFeedbackVarying" offset="assign">
+    <param name="program" type="GLuint"/>
+    <param name="index" type="GLuint"/>
+    <param name="bufSize" type="GLsizei"/>
+    <param name="length" type="GLsizei *"/>
+    <param name="size" type="GLsizei *"/>
+    <param name="type" type="GLenum *"/>
+    <param name="name" type="GLchar *"/>
+  </function>
+
+  <function name="ClampColor" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="clamp" type="GLenum"/>
+  </function>
+
+  <function name="BeginConditionalRender" offset="assign">
+    <param name="id" type="GLuint"/>
+    <param name="mode" type="GLenum"/>
+  </function>
+
+  <function name="EndConditionalRender" offset="assign">
+  </function>
+
+  <function name="VertexAttribIPointer" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="size" type="GLint"/>
+    <param name="type" type="GLenum"/>
+    <param name="stride" type="GLsizei"/>
+    <param name="pointer" type="const GLvoid *"/>
+  </function>
+
+  <function name="GetVertexAttribIiv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="pname" type="GLenum"/>
+    <param name="params" type="GLint *"/>
+  </function>
+
+  <function name="GetVertexAttribIuiv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="pname" type="GLenum"/>
+    <param name="params" type="GLuint *"/>
+  </function>
+
+  <function name="VertexAttribI1i" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="x" type="GLint"/>
+  </function>
+
+  <function name="VertexAttribI2i" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="x" type="GLint"/>
+    <param name="y" type="GLint"/>
+  </function>
+
+  <function name="VertexAttribI3i" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="x" type="GLint"/>
+    <param name="y" type="GLint"/>
+    <param name="z" type="GLint"/>
+  </function>
+
+  <function name="VertexAttribI4i" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="x" type="GLint"/>
+    <param name="y" type="GLint"/>
+    <param name="z" type="GLint"/>
+    <param name="w" type="GLint"/>
+  </function>
+
+  <function name="VertexAttribI1ui" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="x" type="GLuint"/>
+  </function>
+
+  <function name="VertexAttribI2ui" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="x" type="GLuint"/>
+    <param name="y" type="GLuint"/>
+  </function>
+
+  <function name="VertexAttribI3ui" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="x" type="GLuint"/>
+    <param name="y" type="GLuint"/>
+    <param name="z" type="GLuint"/>
+  </function>
+
+  <function name="VertexAttribI4ui" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="x" type="GLuint"/>
+    <param name="y" type="GLuint"/>
+    <param name="z" type="GLuint"/>
+    <param name="w" type="GLuint"/>
+  </function>
+
+  <function name="VertexAttribI1iv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLint *"/>
+  </function>
+
+  <function name="VertexAttribI2iv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLint *"/>
+  </function>
+
+  <function name="VertexAttribI3iv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLint *"/>
+  </function>
+
+  <function name="VertexAttribI4iv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLint *"/>
+  </function>
+
+  <function name="VertexAttribI1uiv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLuint *"/>
+  </function>
+
+  <function name="VertexAttribI2uiv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLuint *"/>
+  </function>
+
+  <function name="VertexAttribI3uiv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLuint *"/>
+  </function>
+
+  <function name="VertexAttribI4uiv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLuint *"/>
+  </function>
+
+  <function name="VertexAttribI4bv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLbyte *"/>
+  </function>
+
+  <function name="VertexAttribI4sv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLshort *"/>
+  </function>
+
+  <function name="VertexAttribI4ubv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLubyte *"/>
+  </function>
+
+  <function name="VertexAttribI4usv" offset="assign">
+    <param name="index" type="GLuint"/>
+    <param name="v" type="const GLushort *"/>
+  </function>
+
+  <function name="GetUniformuiv" offset="assign">
+    <param name="program" type="GLuint"/>
+    <param name="location" type="GLint"/>
+    <param name="params" type="GLuint *"/>
+  </function>
+
+  <function name="Uniform1ui" offset="assign">
+    <param name="locatoin" type="GLint"/>
+    <param name="x" type="GLuint"/>
+  </function>
+
+  <function name="Uniform2ui" offset="assign">
+    <param name="location" type="GLint"/>
+    <param name="x" type="GLuint"/>
+    <param name="y" type="GLuint"/>
+  </function>
+
+  <function name="Uniform3ui" offset="assign">
+    <param name="location" type="GLint"/>
+    <param name="x" type="GLuint"/>
+    <param name="y" type="GLuint"/>
+    <param name="z" type="GLuint"/>
+  </function>
+
+  <function name="Uniform4ui" offset="assign">
+    <param name="location" type="GLint"/>
+    <param name="x" type="GLuint"/>
+    <param name="y" type="GLuint"/>
+    <param name="z" type="GLuint"/>
+    <param name="w" type="GLuint"/>
+  </function>
+
+  <function name="Uniform1uiv" offset="assign">
+    <param name="location" type="GLint"/>
+    <param name="count" type="GLsizei"/>
+    <param name="value" type="const GLuint *"/>
+  </function>
+
+  <function name="Uniform2uiv" offset="assign">
+    <param name="location" type="GLint"/>
+    <param name="count" type="GLsizei"/>
+    <param name="value" type="const GLuint *"/>
+  </function>
+
+  <function name="Uniform3uiv" offset="assign">
+    <param name="location" type="GLint"/>
+    <param name="count" type="GLsizei"/>
+    <param name="value" type="const GLuint *"/>
+  </function>
+
+  <function name="Uniform4uiv" offset="assign">
+    <param name="location" type="GLint"/>
+    <param name="count" type="GLsizei"/>
+    <param name="value" type="const GLuint *"/>
+  </function>
+
+  <function name="TexParameterIiv" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="pname" type="GLenum"/>
+    <param name="value" type="const GLint *"/>
+  </function>
+
+  <function name="TexParameterIuiv" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="pname" type="GLenum"/>
+    <param name="value" type="const GLuint *"/>
+  </function>
+
+  <function name="GetTexParameterIiv" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="pname" type="GLenum"/>
+    <param name="value" type="GLint *"/>
+  </function>
+
+  <function name="GetTexParameterIuiv" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="pname" type="GLenum"/>
+    <param name="value" type="GLuint *"/>
+  </function>
+
+</category>
+
+
+<category name="3.1">
+
+  <enum name="SAMPLER_2D_RECT"                value="0x8B63"/>
+  <enum name="SAMPLER_2D_RECT_SHADOW"         value="0x8B64"/>
+  <enum name="SAMPLER_BUFFER"                 value="0x8DC2"/>
+  <enum name="INT_SAMPLER_2D_RECT"            value="0x8DCD"/>
+  <enum name="INT_SAMPLER_BUFFER"             value="0x8DD0"/>
+  <enum name="UNSIGNED_INT_SAMPLER_2D_RECT"   value="0x8DD5"/>
+  <enum name="UNSIGNED_INT_SAMPLER_BUFFER"    value="0x8DD8"/>
+  <enum name="TEXTURE_BUFFER"                 value="0x8C2A"/>
+  <enum name="MAX_TEXTURE_BUFFER_SIZE"        value="0x8C2B"/>
+  <enum name="TEXTURE_BINDING_BUFFER"         value="0x8C2C"/>
+  <enum name="TEXTURE_BUFFER_DATA_STORE_BINDING" value="0x8C2D"/>
+  <enum name="TEXTURE_BUFFER_FORMAT"          value="0x8C2E"/>
+  <enum name="TEXTURE_RECTANGLE"              value="0x84F5"/>
+  <enum name="TEXTURE_BINDING_RECTANGLE"      value="0x84F6"/>
+  <enum name="PROXY_TEXTURE_RECTANGLE"        value="0x84F7"/>
+  <enum name="MAX_RECTANGLE_TEXTURE_SIZE"     value="0x84F8"/>
+  <enum name="RED_SNORM"                      value="0x8F90"/>
+  <enum name="RG_SNORM"                       value="0x8F91"/>
+  <enum name="RGB_SNORM"                      value="0x8F92"/>
+  <enum name="RGBA_SNORM"                     value="0x8F93"/>
+  <enum name="R8_SNORM"                       value="0x8F94"/>
+  <enum name="RG8_SNORM"                      value="0x8F95"/>
+  <enum name="RGB8_SNORM"                     value="0x8F96"/>
+  <enum name="RGBA8_SNORM"                    value="0x8F97"/>
+  <enum name="R16_SNORM"                      value="0x8F98"/>
+  <enum name="RG16_SNORM"                     value="0x8F99"/>
+  <enum name="RGB16_SNORM"                    value="0x8F9A"/>
+  <enum name="RGBA16_SNORM"                   value="0x8F9B"/>
+  <enum name="SIGNED_NORMALIZED"              value="0x8F9C"/>
+  <enum name="PRIMITIVE_RESTART"              value="0x8F9D"/>
+  <enum name="PRIMITIVE_RESTART_INDEX"        value="0x8F9E"/>
+
+  <function name="DrawArraysInstanced" offset="assign">
+    <param name="mode" type="GLenum"/>
+    <param name="first" type="GLint"/>
+    <param name="count" type="GLsizei"/>
+    <param name="primcount" type="GLsizei"/>
+  </function>
+
+  <function name="DrawElementsInstanced" offset="assign">
+    <param name="mode" type="GLenum"/>
+    <param name="count" type="GLsizei"/>
+    <param name="type" type="GLenum"/>
+    <param name="indices" type="const GLvoid *"/>
+    <param name="primcount" type="GLsizei"/>
+  </function>
+
+  <function name="TexBuffer" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="internalFormat" type="GLenum"/>
+    <param name="buffer" type="GLuint"/>
+  </function>
+
+  <function name="glPrimitiveRestartIndex" offset="assign">
+    <param name="index" type="GLuint"/>
+  </function>
+
+</category>
+
+
+<category name="3.2">
+
+  <enum name="CONTEXT_CORE_PROFILE_BIT"             value="0x00000001"/>
+  <enum name="CONTEXT_COMPATIBILITY_PROFILE_BIT"    value="0x00000002"/>
+  <enum name="LINES_ADJACENCY"                      value="0x000A"/>
+  <enum name="LINE_STRIP_ADJACENCY"                 value="0x000B"/>
+  <enum name="TRIANGLES_ADJACENCY"                  value="0x000C"/>
+  <enum name="TRIANGLE_STRIP_ADJACENCY"             value="0x000D"/>
+  <enum name="PROGRAM_POINT_SIZE"                   value="0x8642"/>
+  <enum name="MAX_GEOMETRY_TEXTURE_IMAGE_UNITS"     value="0x8C29"/>
+  <enum name="FRAMEBUFFER_ATTACHMENT_LAYERED"       value="0x8DA7"/>
+  <enum name="FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS" value="0x8DA8"/>
+  <enum name="GEOMETRY_SHADER"                      value="0x8DD9"/>
+  <enum name="GEOMETRY_VERTICES_OUT"                value="0x8916"/>
+  <enum name="GEOMETRY_INPUT_TYPE"                  value="0x8917"/>
+  <enum name="GEOMETRY_OUTPUT_TYPE"                 value="0x8918"/>
+  <enum name="MAX_GEOMETRY_UNIFORM_COMPONENTS"      value="0x8DDF"/>
+  <enum name="MAX_GEOMETRY_OUTPUT_VERTICES"         value="0x8DE0"/>
+  <enum name="MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS" value="0x8DE1"/>
+  <enum name="MAX_VERTEX_OUTPUT_COMPONENTS"         value="0x9122"/>
+  <enum name="MAX_GEOMETRY_INPUT_COMPONENTS"        value="0x9123"/>
+  <enum name="MAX_GEOMETRY_OUTPUT_COMPONENTS"       value="0x9124"/>
+  <enum name="MAX_FRAGMENT_INPUT_COMPONENTS"        value="0x9125"/>
+  <enum name="CONTEXT_PROFILE_MASK"                 value="0x9126"/>
+
+  <function name="GetInteger64i_v" offset="assign">
+    <param name="cap" type="GLenum"/>
+    <param name="index" type="GLuint"/>
+    <param name="data" type="GLint64 *"/>
+  </function>
+
+  <function name="GetBufferParameteri64v" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="pname" type="GLenum"/>
+    <param name="params" type="GLint64 *"/>
+  </function>
+
+  <function name="ProgramParameteri" offset="assign">
+    <param name="program" type="GLuint"/>
+    <param name="pname" type="GLenum"/>
+    <param name="value" type="GLint"/>
+  </function>
+
+  <function name="FramebufferTexture" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="attachment" type="GLenum"/>
+    <param name="texture" type="GLuint"/>
+    <param name="level" type="GLint"/>
+  </function>
+
+  <function name="FramebufferTextureFace" offset="assign">
+    <param name="target" type="GLenum"/>
+    <param name="attachment" type="GLenum"/>
+    <param name="texture" type="GLuint"/>
+    <param name="level" type="GLint"/>
+    <param name="face" type="GLenum"/>
+  </function>
+
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/Makefile b/src/mapi/glapi/gen/Makefile
new file mode 100644 (file)
index 0000000..daa0a48
--- /dev/null
@@ -0,0 +1,207 @@
+# This file isn't used during a normal compilation since we don't want to
+# require Python in order to compile Mesa.
+# Instead, when the Mesa developers update/change the API interface it's
+# up to him/her to re-run this makefile and check in the newly generated files.
+
+
+TOP = ../../../..
+include $(TOP)/configs/current
+
+MESA_DIR = $(TOP)/src/mesa
+MESA_GLAPI_DIR = $(TOP)/src/mapi/glapi
+MESA_GLX_DIR = $(TOP)/src/glx
+
+MESA_GLAPI_OUTPUTS = \
+       $(MESA_GLAPI_DIR)/glprocs.h \
+       $(MESA_GLAPI_DIR)/glapitemp.h \
+       $(MESA_GLAPI_DIR)/glapioffsets.h \
+       $(MESA_GLAPI_DIR)/glapitable.h \
+       $(MESA_GLAPI_DIR)/glapidispatch.h
+
+MESA_GLAPI_ASM_OUTPUTS = \
+       $(MESA_GLAPI_DIR)/glapi_x86.S \
+       $(MESA_GLAPI_DIR)/glapi_x86-64.S \
+       $(MESA_GLAPI_DIR)/glapi_sparc.S
+
+MESA_OUTPUTS = \
+       $(MESA_GLAPI_OUTPUTS) \
+       $(MESA_GLAPI_ASM_OUTPUTS) \
+       $(MESA_DIR)/main/enums.c \
+       $(MESA_DIR)/main/remap_helper.h \
+       $(MESA_GLX_DIR)/indirect.c \
+       $(MESA_GLX_DIR)/indirect.h \
+       $(MESA_GLX_DIR)/indirect_init.c \
+       $(MESA_GLX_DIR)/indirect_size.h \
+       $(MESA_GLX_DIR)/indirect_size.c
+
+######################################################################
+
+XORG_GLX_DIR = $(XORG_BASE)/glx
+XORG_GLAPI_DIR = $(XORG_BASE)/glx/glapi
+
+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 \
+       $(XORG_GLAPI_DIR)/glthread.h
+
+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
+
+XORG_OUTPUTS = \
+       $(XORG_GLAPI_FILES) \
+       $(XORG_GLAPI_OUTPUTS) \
+       $(XORG_GLX_DIR)/indirect_dispatch.c \
+       $(XORG_GLX_DIR)/indirect_dispatch_swap.c \
+       $(XORG_GLX_DIR)/indirect_dispatch.h \
+       $(XORG_GLX_DIR)/indirect_reqsize.c \
+       $(XORG_GLX_DIR)/indirect_reqsize.h \
+       $(XORG_GLX_DIR)/indirect_size.h \
+       $(XORG_GLX_DIR)/indirect_size_get.c \
+       $(XORG_GLX_DIR)/indirect_size_get.h \
+       $(XORG_GLX_DIR)/indirect_table.c
+
+######################################################################
+
+API_XML = \
+       gl_API.xml \
+       ARB_copy_buffer.xml \
+       ARB_depth_clamp.xml \
+       ARB_draw_elements_base_vertex.xml \
+       ARB_draw_instanced.xml \
+       ARB_framebuffer_object.xml \
+       ARB_map_buffer_range.xml \
+       ARB_seamless_cube_map.xml \
+       ARB_sync.xml \
+       ARB_vertex_array_object.xml \
+       APPLE_object_purgeable.xml \
+       APPLE_vertex_array_object.xml \
+       EXT_draw_buffers2.xml \
+       EXT_framebuffer_object.xml \
+       EXT_packed_depth_stencil.xml \
+       EXT_provoking_vertex.xml \
+       EXT_texture_array.xml \
+       EXT_transform_feedback.xml \
+       NV_conditional_render.xml \
+       OES_EGL_image.xml
+
+COMMON = $(API_XML) gl_XML.py glX_XML.py license.py typeexpr.py
+
+COMMON_GLX = $(COMMON) glX_API.xml glX_XML.py glX_proto_common.py
+
+######################################################################
+
+all: mesa xorg
+
+mesa: $(MESA_OUTPUTS)
+
+xorg: check-xorg-source $(XORG_OUTPUTS)
+
+check-xorg-source:
+       @if ! test -d $(XORG_GLX_DIR); then \
+               echo "ERROR: Must specify path to xserver/GL/GLX checkout; set XORG_GLX_DIR."; \
+               exit 1; \
+       fi
+
+clean:
+       -rm -f *~ *.pyo
+       -rm -f $(MESA_OUTPUTS)
+
+######################################################################
+
+$(XORG_GLAPI_DIR)/%.c: $(MESA_GLAPI_DIR)/%.c
+       cp $< $@
+
+$(XORG_GLAPI_DIR)/%.h: $(MESA_GLAPI_DIR)/%.h
+       cp $< $@
+
+######################################################################
+
+$(MESA_GLAPI_DIR)/glprocs.h: gl_procs.py $(COMMON)
+       $(PYTHON2) $(PYTHON_FLAGS) $< > $@
+
+$(MESA_GLAPI_DIR)/glapitemp.h: gl_apitemp.py $(COMMON)
+       $(PYTHON2) $(PYTHON_FLAGS) $< > $@
+
+$(MESA_GLAPI_DIR)/glapioffsets.h: gl_offsets.py $(COMMON)
+       $(PYTHON2) $(PYTHON_FLAGS) $< > $@
+
+$(MESA_GLAPI_DIR)/glapitable.h: gl_table.py $(COMMON)
+       $(PYTHON2) $(PYTHON_FLAGS) $< > $@
+
+$(MESA_GLAPI_DIR)/glapidispatch.h: gl_table.py $(COMMON)
+       $(PYTHON2) $(PYTHON_FLAGS) $< -m remap_table > $@
+
+######################################################################
+
+$(MESA_GLAPI_DIR)/glapi_x86.S: gl_x86_asm.py $(COMMON)
+       $(PYTHON2) $(PYTHON_FLAGS) $< > $@
+
+$(MESA_GLAPI_DIR)/glapi_x86-64.S: gl_x86-64_asm.py $(COMMON)
+       $(PYTHON2) $(PYTHON_FLAGS) $< > $@
+
+$(MESA_GLAPI_DIR)/glapi_sparc.S: gl_SPARC_asm.py $(COMMON)
+       $(PYTHON2) $(PYTHON_FLAGS) $< > $@
+
+######################################################################
+
+$(MESA_DIR)/main/enums.c: gl_enums.py $(COMMON) $(ES_API)
+       $(PYTHON2) $(PYTHON_FLAGS) $< -f gl_API.xml \
+               -f $(MESA_GLAPI_DIR)/gen-es/es1_API.xml \
+               -f $(MESA_GLAPI_DIR)/gen-es/es2_API.xml > $@
+
+$(MESA_DIR)/main/remap_helper.h: remap_helper.py $(COMMON)
+       $(PYTHON2) $(PYTHON_FLAGS) $< > $@
+
+######################################################################
+
+$(MESA_GLX_DIR)/indirect.c: glX_proto_send.py $(COMMON_GLX)
+       $(PYTHON2) $(PYTHON_FLAGS) $< -m proto | $(INDENT) $(INDENT_FLAGS) > $@
+
+$(MESA_GLX_DIR)/indirect.h: glX_proto_send.py $(COMMON_GLX)
+       $(PYTHON2) $(PYTHON_FLAGS) $< -m init_h > $@
+
+$(MESA_GLX_DIR)/indirect_init.c: glX_proto_send.py $(COMMON_GLX)
+       $(PYTHON2) $(PYTHON_FLAGS) $< -m init_c > $@
+
+$(MESA_GLX_DIR)/indirect_size.h $(XORG_GLX_DIR)/indirect_size.h: glX_proto_size.py $(COMMON_GLX)
+       $(PYTHON2) $(PYTHON_FLAGS) $< -m size_h --only-set -h _INDIRECT_SIZE_H_ \
+         | $(INDENT) $(INDENT_FLAGS) > $@
+
+$(MESA_GLX_DIR)/indirect_size.c: glX_proto_size.py $(COMMON_GLX)
+       $(PYTHON2) $(PYTHON_FLAGS) $< -m size_c --only-set \
+         | $(INDENT) $(INDENT_FLAGS) > $@
+
+######################################################################
+
+$(XORG_GLX_DIR)/indirect_dispatch.c: glX_proto_recv.py $(COMMON_GLX)
+       $(PYTHON2) $(PYTHON_FLAGS) $< -m dispatch_c > $@
+
+$(XORG_GLX_DIR)/indirect_dispatch_swap.c: glX_proto_recv.py $(COMMON_GLX)
+       $(PYTHON2) $(PYTHON_FLAGS) $< -m dispatch_c -s > $@
+
+$(XORG_GLX_DIR)/indirect_dispatch.h: glX_proto_recv.py gl_and_glX_API.xml $(COMMON_GLX)
+       $(PYTHON2) $(PYTHON_FLAGS) $< -m dispatch_h -f gl_and_glX_API.xml -s > $@
+
+$(XORG_GLX_DIR)/indirect_size_get.h: glX_proto_size.py $(COMMON_GLX)
+       $(PYTHON2) $(PYTHON_FLAGS) $< -m size_h --only-get -h '_INDIRECT_SIZE_GET_H_' \
+         | $(INDENT) $(INDENT_FLAGS) > $@
+
+$(XORG_GLX_DIR)/indirect_size_get.c: glX_proto_size.py $(COMMON_GLX)
+       $(PYTHON2) $(PYTHON_FLAGS) $< -m size_c | $(INDENT) $(INDENT_FLAGS) > $@
+
+$(XORG_GLX_DIR)/indirect_reqsize.h: glX_proto_size.py $(COMMON_GLX)
+       $(PYTHON2) $(PYTHON_FLAGS) $< -m reqsize_h --only-get -h '_INDIRECT_SIZE_GET_H_' \
+         | $(INDENT) $(INDENT_FLAGS) -l200 > $@
+
+$(XORG_GLX_DIR)/indirect_reqsize.c: glX_proto_size.py $(COMMON_GLX)
+       $(PYTHON2) $(PYTHON_FLAGS) $< -m reqsize_c | $(INDENT) $(INDENT_FLAGS) > $@
+
+$(XORG_GLX_DIR)/indirect_table.c: glX_server_table.py gl_and_glX_API.xml $(COMMON_GLX)
+       $(PYTHON2) $(PYTHON_FLAGS) $< -f gl_and_glX_API.xml > $@
diff --git a/src/mapi/glapi/gen/NV_conditional_render.xml b/src/mapi/glapi/gen/NV_conditional_render.xml
new file mode 100644 (file)
index 0000000..8bb31dd
--- /dev/null
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<!-- Note: no GLX protocol info yet. -->
+
+
+<OpenGLAPI>
+
+<category name="GL_NV_condtitional_render" number="346">
+
+    <enum name="QUERY_WAIT_NV"               value="0x8E13"/>
+    <enum name="QUERY_NO_WAIT_NV"            value="0x8E14"/>
+    <enum name="QUERY_BY_REGION_WAIT_NV"     value="0x8E15"/>
+    <enum name="QUERY_BY_REGION_NO_WAIT_NV"  value="0x8E16"/>
+
+    <function name="BeginConditionalRenderNV" offset="assign">
+       <param name="query" type="GLuint"/>
+       <param name="mode" type="GLenum"/>
+    </function>
+
+    <function name="EndConditionalRenderNV" offset="assign">
+    </function>
+
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/OES_EGL_image.xml b/src/mapi/glapi/gen/OES_EGL_image.xml
new file mode 100644 (file)
index 0000000..1cb43d4
--- /dev/null
@@ -0,0 +1,20 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<OpenGLAPI>
+
+<category name="GL_OES_EGL_image">
+
+    <function name="EGLImageTargetTexture2DOES" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="writeOffset" type="GLvoid *"/>
+    </function>
+
+    <function name="EGLImageTargetRenderbufferStorageOES" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="writeOffset" type="GLvoid *"/>
+    </function>
+
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/extension_helper.py b/src/mapi/glapi/gen/extension_helper.py
new file mode 100644 (file)
index 0000000..2c83b4e
--- /dev/null
@@ -0,0 +1,324 @@
+#!/usr/bin/env python
+
+# (C) Copyright IBM Corporation 2005
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+
+import gl_XML
+import license
+import sys, getopt, string
+
+vtxfmt = [
+    "ArrayElement", \
+    "Color3f", \
+    "Color3fv", \
+    "Color4f", \
+    "Color4fv", \
+    "EdgeFlag", \
+    "EdgeFlagv", \
+    "EvalCoord1f", \
+    "EvalCoord1fv", \
+    "EvalCoord2f", \
+    "EvalCoord2fv", \
+    "EvalPoint1", \
+    "EvalPoint2", \
+    "FogCoordfEXT", \
+    "FogCoordfvEXT", \
+    "Indexf", \
+    "Indexfv", \
+    "Materialfv", \
+    "MultiTexCoord1fARB", \
+    "MultiTexCoord1fvARB", \
+    "MultiTexCoord2fARB", \
+    "MultiTexCoord2fvARB", \
+    "MultiTexCoord3fARB", \
+    "MultiTexCoord3fvARB", \
+    "MultiTexCoord4fARB", \
+    "MultiTexCoord4fvARB", \
+    "Normal3f", \
+    "Normal3fv", \
+    "SecondaryColor3fEXT", \
+    "SecondaryColor3fvEXT", \
+    "TexCoord1f", \
+    "TexCoord1fv", \
+    "TexCoord2f", \
+    "TexCoord2fv", \
+    "TexCoord3f", \
+    "TexCoord3fv", \
+    "TexCoord4f", \
+    "TexCoord4fv", \
+    "Vertex2f", \
+    "Vertex2fv", \
+    "Vertex3f", \
+    "Vertex3fv", \
+    "Vertex4f", \
+    "Vertex4fv", \
+    "CallList", \
+    "CallLists", \
+    "Begin", \
+    "End", \
+    "VertexAttrib1fNV", \
+    "VertexAttrib1fvNV", \
+    "VertexAttrib2fNV", \
+    "VertexAttrib2fvNV", \
+    "VertexAttrib3fNV", \
+    "VertexAttrib3fvNV", \
+    "VertexAttrib4fNV", \
+    "VertexAttrib4fvNV", \
+    "VertexAttrib1fARB", \
+    "VertexAttrib1fvARB", \
+    "VertexAttrib2fARB", \
+    "VertexAttrib2fvARB", \
+    "VertexAttrib3fARB", \
+    "VertexAttrib3fvARB", \
+    "VertexAttrib4fARB", \
+    "VertexAttrib4fvARB", \
+    "Rectf", \
+    "DrawArrays", \
+    "DrawElements", \
+    "DrawRangeElements", \
+    "EvalMesh1", \
+    "EvalMesh2", \
+]
+
+def all_entrypoints_in_abi(f, abi, api):
+       for n in f.entry_points:
+               [category, num] = api.get_category_for_name( n )
+               if category not in abi:
+                       return 0
+
+       return 1
+
+
+def any_entrypoints_in_abi(f, abi, api):
+       for n in f.entry_points:
+               [category, num] = api.get_category_for_name( n )
+               if category in abi:
+                       return 1
+
+       return 0
+
+
+def condition_for_function(f, abi, all_not_in_ABI):
+       """Create a C-preprocessor condition for the function.
+       
+       There are two modes of operation.  If all_not_in_ABI is set, a
+       condition is only created is all of the entry-point names for f are
+       not in the selected ABI.  If all_not_in_ABI is not set, a condition
+       is created if any entryp-point name is not in the selected ABI.
+       """
+
+       condition = []
+       for n in f.entry_points:
+               [category, num] = api.get_category_for_name( n )
+               if category not in abi:
+                       condition.append( 'defined(need_%s)' % (gl_XML.real_category_name( category )) )
+               elif all_not_in_ABI:
+                       return []
+
+       return condition
+
+
+class PrintGlExtensionGlue(gl_XML.gl_print_base):
+       def __init__(self):
+               gl_XML.gl_print_base.__init__(self)
+
+               self.name = "extension_helper.py (from Mesa)"
+               self.license = license.bsd_license_template % ("(C) Copyright IBM Corporation 2005", "IBM")
+               return
+
+
+       def printRealHeader(self):
+               print '#include "utils.h"'
+               print '#include "main/dispatch.h"'
+               print ''
+               return
+
+
+       def printBody(self, api):
+               abi = [ "1.0", "1.1", "1.2", "GL_ARB_multitexture" ]
+
+               category_list = {}
+
+               print '#ifndef NULL'
+               print '# define NULL 0'
+               print '#endif'
+               print ''
+
+               for f in api.functionIterateAll():
+                       condition = condition_for_function(f, abi, 0)
+                       if len(condition):
+                               print '#if %s' % (string.join(condition, " || "))
+                               print 'static const char %s_names[] =' % (f.name)
+
+                               parameter_signature = ''
+                               for p in f.parameterIterator():
+                                       if p.is_padding:
+                                               continue
+
+                                       # FIXME: This is a *really* ugly hack. :(
+
+                                       tn = p.type_expr.get_base_type_node()
+                                       if p.is_pointer():
+                                               parameter_signature += 'p'
+                                       elif tn.integer:
+                                               parameter_signature += 'i'
+                                       elif tn.size == 4:
+                                               parameter_signature += 'f'
+                                       else:
+                                               parameter_signature += 'd'
+
+                               print '    "%s\\0" /* Parameter signature */' % (parameter_signature)
+
+                               for n in f.entry_points:
+                                       print '    "gl%s\\0"' % (n)
+
+                                       [category, num] = api.get_category_for_name( n )
+                                       if category not in abi:
+                                               c = gl_XML.real_category_name(category)
+                                               if not category_list.has_key(c):
+                                                       category_list[ c ] = []
+
+                                               category_list[ c ].append( f )
+
+                               print '    "";'
+                               print '#endif'
+                               print ''
+
+               keys = category_list.keys()
+               keys.sort()
+
+               for category in keys:
+                       print '#if defined(need_%s)' % (category)
+                       print 'static const struct dri_extension_function %s_functions[] = {' % (category)
+                       
+                       for f in category_list[ category ]:
+                               # A function either has an offset that is
+                               # assigned by the ABI, or it has a remap
+                               # index.
+                               if any_entrypoints_in_abi(f, abi, api):
+                                       index_name = "-1"
+                                       offset = f.offset
+                               else:
+                                       index_name = "%s_remap_index" % (f.name)
+                                       offset = -1
+
+                               print '    { %s_names, %s, %d },' % (f.name, index_name, offset)
+
+
+                       print '    { NULL, 0, 0 }'
+                       print '};'
+                       print '#endif'
+                       print ''
+               
+               return
+
+
+class PrintInitDispatch(gl_XML.gl_print_base):
+       def __init__(self):
+               gl_XML.gl_print_base.__init__(self)
+
+               self.name = "extension_helper.py (from Mesa)"
+               self.license = license.bsd_license_template % ("(C) Copyright IBM Corporation 2005", "IBM")
+               return
+
+
+       def do_function_body(self, api, abi, vtxfmt_only):
+               last_condition_string = None
+               for f in api.functionIterateByOffset():
+                       if (f.name in vtxfmt) and not vtxfmt_only:
+                               continue
+
+                       if (f.name not in vtxfmt) and vtxfmt_only:
+                               continue
+
+                       condition = condition_for_function(f, abi, 1)
+                       condition_string = string.join(condition, " || ")
+
+                       if condition_string != last_condition_string:
+                               if last_condition_string:
+                                       print '#endif /* %s */' % (last_condition_string)
+
+                               if condition_string:
+                                       print '#if %s' % (condition_string)
+                               
+                       if vtxfmt_only:
+                               print '   disp->%s = vfmt->%s;' % (f.name, f.name)
+                       else:
+                               print '   disp->%s = _mesa_%s;' % (f.name, f.name)
+
+                       last_condition_string = condition_string
+
+               if last_condition_string:
+                       print '#endif /* %s */' % (last_condition_string)
+               
+
+
+       def printBody(self, api):
+               abi = [ "1.0", "1.1", "1.2", "GL_ARB_multitexture" ]
+               
+               print 'void driver_init_exec_table(struct _glapi_table *disp)'
+               print '{'
+               self.do_function_body(api, abi, 0)
+               print '}'
+               print ''
+               print 'void driver_install_vtxfmt(struct _glapi_table *disp, const GLvertexformat *vfmt)'
+               print '{'
+               self.do_function_body(api, abi, 1)
+               print '}'
+
+               return
+
+
+def show_usage():
+       print "Usage: %s [-f input_file_name] [-m output_mode]" % sys.argv[0]
+       print "    -m output_mode   Output mode can be one of 'extensions' or 'exec_init'."
+       sys.exit(1)
+
+if __name__ == '__main__':
+       file_name = "gl_API.xml"
+    
+       try:
+               (args, trail) = getopt.getopt(sys.argv[1:], "f:m:")
+       except Exception,e:
+               show_usage()
+
+       mode = "extensions"
+       for (arg,val) in args:
+               if arg == "-f":
+                       file_name = val
+               if arg == '-m':
+                       mode = val
+
+
+       api = gl_XML.parse_GL_API( file_name )
+
+       if mode == "extensions":
+               printer = PrintGlExtensionGlue()
+       elif mode == "exec_init":
+               printer = PrintInitDispatch()
+       else:
+               show_usage()
+
+       printer.Print( api )
diff --git a/src/mapi/glapi/gen/glX_API.xml b/src/mapi/glapi/gen/glX_API.xml
new file mode 100644 (file)
index 0000000..9e02aa4
--- /dev/null
@@ -0,0 +1,220 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<OpenGLAPI>
+
+<!-- Right now this file is just used to generate the GLX protocol
+     decode tables on the server.  The only information that is needed
+     for that purpose is the name of the function (or pseudo-function
+     in the case of Render of VendorPrivate) and its opcode.  Once
+     this file is used for other purposes, additional information will
+     need to be added.
+  -->
+
+<category name="1.0" window_system="glX">
+    <function name="Render">
+        <glx sop="1"/>
+    </function>
+
+    <function name="RenderLarge">
+        <glx sop="2"/>
+    </function>
+
+    <function name="CreateContext">
+        <glx sop="3"/>
+    </function>
+
+    <function name="DestroyContext">
+        <glx sop="4"/>
+    </function>
+
+    <function name="MakeCurrent">
+        <glx sop="5"/>
+    </function>
+
+    <function name="IsDirect">
+        <glx sop="6"/>
+    </function>
+
+    <function name="QueryVersion">
+        <glx sop="7"/>
+    </function>
+
+    <function name="WaitGL">
+        <glx sop="8"/>
+    </function>
+
+    <function name="WaitX">
+        <glx sop="9"/>
+    </function>
+
+    <function name="CopyContext">
+        <glx sop="10"/>
+    </function>
+
+    <function name="SwapBuffers">
+        <glx sop="11"/>
+    </function>
+
+    <function name="UseXFont">
+        <glx sop="12"/>
+    </function>
+
+    <function name="CreateGLXPixmap">
+        <glx sop="13"/>
+    </function>
+
+    <function name="GetVisualConfigs">
+        <glx sop="14"/>
+    </function>
+
+    <function name="DestroyGLXPixmap">
+        <glx sop="15"/>
+    </function>
+
+    <function name="VendorPrivate">
+        <glx sop="16"/>
+    </function>
+
+    <function name="VendorPrivateWithReply">
+        <glx sop="17"/>
+    </function>
+
+    <function name="QueryExtensionsString">
+        <glx sop="18"/>
+    </function>
+</category>
+
+<category name="1.1" window_system="glX">
+    <function name="QueryServerString">
+        <glx sop="19"/>
+    </function>
+
+    <function name="ClientInfo">
+        <glx sop="20"/>
+    </function>
+</category>
+
+<category name="1.3" window_system="glX">
+    <function name="GetFBConfigs">
+        <glx sop="21"/>
+    </function>
+
+    <function name="CreatePixmap">
+        <glx sop="22"/>
+    </function>
+
+    <function name="DestroyPixmap">
+        <glx sop="23"/>
+    </function>
+
+    <function name="CreateNewContext">
+        <glx sop="24"/>
+    </function>
+
+    <function name="QueryContext">
+        <glx sop="25"/>
+    </function>
+
+    <function name="MakeContextCurrent">
+        <glx sop="26"/>
+    </function>
+
+    <function name="CreatePbuffer">
+        <glx sop="27"/>
+    </function>
+
+    <function name="DestroyPbuffer">
+        <glx sop="28"/>
+    </function>
+
+    <function name="GetDrawableAttributes">
+        <glx sop="29"/>
+    </function>
+
+    <function name="ChangeDrawableAttributes">
+        <glx sop="30"/>
+    </function>
+
+    <function name="CreateWindow">
+        <glx sop="31"/>
+    </function>
+
+    <function name="DestroyWindow">
+        <glx sop="32"/>
+    </function>
+</category>
+
+<category name="GLX_SGI_swap_control" number="40" window_system="glX">
+    <function name="SwapIntervalSGI">
+        <return type="int"/>
+        <glx vendorpriv="65536"/>
+    </function>
+</category>
+
+<category name="GLX_SGI_make_current_read" number="42" window_system="glX">
+    <function name="MakeCurrentReadSGI">
+<!--        <param name="dpy" type="Display *"/>
+       <param name="draw" type="GLXDrawable"/>
+       <param name="read" type="GLXDrawable"/>
+       <param name="ctx" type="GLXContext"/> -->
+        <return type="Bool"/>
+        <glx vendorpriv="65537"/>
+    </function>
+</category>
+
+<category name="GLX_EXT_import_context" number="47" window_system="glX">
+    <function name="QueryContextInfoEXT">
+        <glx vendorpriv="1024"/>
+    </function>
+</category>
+
+<category name="GLX_SGIX_fbconfig" number="49" window_system="glX">
+    <function name="GetFBConfigsSGIX">
+        <glx vendorpriv="65540"/>
+    </function>
+
+    <function name="CreateContextWithConfigSGIX">
+        <glx vendorpriv="65541"/>
+    </function>
+
+    <function name="CreateGLXPixmapWithConfigSGIX">
+        <glx vendorpriv="65542"/>
+    </function>
+</category>
+
+<category name="GLX_SGIX_pbuffer" number="50" window_system="glX">
+    <function name="CreateGLXPbufferSGIX">
+        <glx vendorpriv="65543"/>
+    </function>
+
+    <function name="DestroyGLXPbufferSGIX">
+        <glx vendorpriv="65544"/>
+    </function>
+
+    <function name="ChangeDrawableAttributesSGIX">
+        <glx vendorpriv="65545"/>
+    </function>
+
+    <function name="GetDrawableAttributesSGIX">
+        <glx vendorpriv="65546"/>
+    </function>
+</category>
+
+<category name="GLX_MESA_copy_sub_buffer" number="215">
+    <function name="CopySubBufferMESA">
+        <glx vendorpriv="5154"/>
+    </function>
+</category>
+
+<category name="GLX_EXT_texture_from_pixmap">
+    <function name="BindTexImageEXT">
+        <glx vendorpriv="1330"/>
+    </function>
+
+    <function name="ReleaseTexImageEXT">
+        <glx vendorpriv="1331"/>
+    </function>
+</category>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/glX_XML.py b/src/mapi/glapi/gen/glX_XML.py
new file mode 100644 (file)
index 0000000..4c2e0f9
--- /dev/null
@@ -0,0 +1,570 @@
+#!/usr/bin/env python
+
+# (C) Copyright IBM Corporation 2004, 2005
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+
+import gl_XML
+import license
+import sys, getopt, string
+
+
+class glx_item_factory(gl_XML.gl_item_factory):
+       """Factory to create GLX protocol oriented objects derived from gl_item."""
+    
+       def create_item(self, name, element, context):
+               if name == "function":
+                       return glx_function(element, context)
+               elif name == "enum":
+                       return glx_enum(element, context)
+               elif name == "api":
+                       return glx_api(self)
+               else:
+                       return gl_XML.gl_item_factory.create_item(self, name, element, context)
+
+
+class glx_enum(gl_XML.gl_enum):
+       def __init__(self, element, context):
+               gl_XML.gl_enum.__init__(self, element, context)
+               
+               self.functions = {}
+
+               child = element.children
+               while child:
+                       if child.type == "element" and child.name == "size":
+                               n = child.nsProp( "name", None )
+                               c = child.nsProp( "count", None )
+                               m = child.nsProp( "mode", None )
+                               
+                               if not c:
+                                       c = self.default_count
+                               else:
+                                       c = int(c)
+
+                               if m == "get":
+                                       mode = 0
+                               else:
+                                       mode = 1
+
+                               if not self.functions.has_key(n):
+                                       self.functions[ n ] = [c, mode]
+
+                       child = child.next
+
+               return
+
+
+class glx_function(gl_XML.gl_function):
+       def __init__(self, element, context):
+               self.glx_rop = 0
+               self.glx_sop = 0
+               self.glx_vendorpriv = 0
+
+               self.glx_vendorpriv_names = []
+
+               # If this is set to true, it means that GLdouble parameters should be
+               # written to the GLX protocol packet in the order they appear in the
+               # prototype.  This is different from the "classic" ordering.  In the
+               # classic ordering GLdoubles are written to the protocol packet first,
+               # followed by non-doubles.  NV_vertex_program was the first extension
+               # to break with this tradition.
+
+               self.glx_doubles_in_order = 0
+
+               self.vectorequiv = None
+               self.output = None
+               self.can_be_large = 0
+               self.reply_always_array = 0
+               self.dimensions_in_reply = 0
+               self.img_reset = None
+
+               self.server_handcode = 0
+               self.client_handcode = 0
+               self.ignore = 0
+
+               self.count_parameter_list = []
+               self.counter_list = []
+               self.parameters_by_name = {}
+               self.offsets_calculated = 0
+
+               gl_XML.gl_function.__init__(self, element, context)
+               return
+
+
+       def process_element(self, element):
+               gl_XML.gl_function.process_element(self, element)
+
+               # If the function already has a vector equivalent set, don't
+               # set it again.  This can happen if an alias to a function
+               # appears after the function that it aliases.
+
+               if not self.vectorequiv:
+                       self.vectorequiv = element.nsProp("vectorequiv", None)
+
+
+               name = element.nsProp("name", None)
+               if name == self.name:
+                       for param in self.parameters:
+                               self.parameters_by_name[ param.name ] = param
+                               
+                               if len(param.count_parameter_list):
+                                       self.count_parameter_list.extend( param.count_parameter_list )
+                               
+                               if param.counter and param.counter not in self.counter_list:
+                                       self.counter_list.append(param.counter)
+
+
+               child = element.children
+               while child:
+                       if child.type == "element" and child.name == "glx":
+                               rop = child.nsProp( 'rop', None )
+                               sop = child.nsProp( 'sop', None )
+                               vop = child.nsProp( 'vendorpriv', None )
+
+                               if rop:
+                                       self.glx_rop = int(rop)
+
+                               if sop:
+                                       self.glx_sop = int(sop)
+
+                               if vop:
+                                       self.glx_vendorpriv = int(vop)
+                                       self.glx_vendorpriv_names.append(name)
+
+                               self.img_reset = child.nsProp( 'img_reset', None )
+
+                               # The 'handcode' attribute can be one of 'true',
+                               # 'false', 'client', or 'server'.
+
+                               handcode = child.nsProp( 'handcode', None )
+                               if handcode == "false":
+                                       self.server_handcode = 0
+                                       self.client_handcode = 0
+                               elif handcode == "true":
+                                       self.server_handcode = 1
+                                       self.client_handcode = 1
+                               elif handcode == "client":
+                                       self.server_handcode = 0
+                                       self.client_handcode = 1
+                               elif handcode == "server":
+                                       self.server_handcode = 1
+                                       self.client_handcode = 0
+                               else:
+                                       raise RuntimeError('Invalid handcode mode "%s" in function "%s".' % (handcode, self.name))
+
+                               self.ignore               = gl_XML.is_attr_true( child, 'ignore' )
+                               self.can_be_large         = gl_XML.is_attr_true( child, 'large' )
+                               self.glx_doubles_in_order = gl_XML.is_attr_true( child, 'doubles_in_order' )
+                               self.reply_always_array   = gl_XML.is_attr_true( child, 'always_array' )
+                               self.dimensions_in_reply  = gl_XML.is_attr_true( child, 'dimensions_in_reply' )
+
+                       child = child.next
+
+
+               # Do some validation of the GLX protocol information.  As
+               # new tests are discovered, they should be added here.
+
+               for param in self.parameters:
+                       if param.is_output and self.glx_rop != 0:
+                               raise RuntimeError("Render / RenderLarge commands cannot have outputs (%s)." % (self.name))
+
+               return
+
+
+       def has_variable_size_request(self):
+               """Determine if the GLX request packet is variable sized.
+
+               The GLX request packet is variable sized in several common
+               situations.
+               
+               1. The function has a non-output parameter that is counted
+                  by another parameter (e.g., the 'textures' parameter of
+                  glDeleteTextures).
+                  
+               2. The function has a non-output parameter whose count is
+                  determined by another parameter that is an enum (e.g., the
+                  'params' parameter of glLightfv).
+                  
+               3. The function has a non-output parameter that is an
+                  image.
+
+               4. The function must be hand-coded on the server.
+               """
+
+               if self.glx_rop == 0:
+                       return 0
+
+               if self.server_handcode or self.images:
+                       return 1
+
+               for param in self.parameters:
+                       if not param.is_output:
+                               if param.counter or len(param.count_parameter_list):
+                                       return 1
+
+               return 0
+
+
+       def variable_length_parameter(self):
+               for param in self.parameters:
+                       if not param.is_output:
+                               if param.counter or len(param.count_parameter_list):
+                                       return param
+                               
+               return None
+
+
+       def calculate_offsets(self):
+               if not self.offsets_calculated:
+                       # Calculate the offset of the first function parameter
+                       # in the GLX command packet.  This byte offset is
+                       # measured from the end of the Render / RenderLarge
+                       # header.  The offset for all non-pixel commends is
+                       # zero.  The offset for pixel commands depends on the
+                       # number of dimensions of the pixel data.
+
+                       if len(self.images) and not self.images[0].is_output:
+                               [dim, junk, junk, junk, junk] = self.images[0].get_dimensions()
+
+                               # The base size is the size of the pixel pack info
+                               # header used by images with the specified number
+                               # of dimensions.
+
+                               if dim <=  2:
+                                       offset = 20
+                               elif dim <= 4:
+                                       offset = 36
+                               else:
+                                       raise RuntimeError('Invalid number of dimensions %u for parameter "%s" in function "%s".' % (dim, self.image.name, self.name))
+                       else:
+                               offset = 0
+
+                       for param in self.parameterIterateGlxSend():
+                               if param.img_null_flag:
+                                       offset += 4
+
+                               if param.name != self.img_reset:
+                                       param.offset = offset
+                                       if not param.is_variable_length() and not param.is_client_only:
+                                               offset += param.size()
+                                       
+                               if self.pad_after( param ):
+                                       offset += 4
+
+
+                       self.offsets_calculated = 1
+               return
+
+
+       def offset_of(self, param_name):
+               self.calculate_offsets()
+               return self.parameters_by_name[ param_name ].offset
+
+
+       def parameterIterateGlxSend(self, include_variable_parameters = 1):
+               """Create an iterator for parameters in GLX request order."""
+
+               # The parameter lists are usually quite short, so it's easier
+               # (i.e., less code) to just generate a new list with the
+               # required elements than it is to create a new iterator class.
+               
+               temp = [ [],  [], [] ]
+               for param in self.parameters:
+                       if param.is_output: continue
+
+                       if param.is_variable_length():
+                               temp[2].append( param )
+                       elif not self.glx_doubles_in_order and param.is_64_bit():
+                               temp[0].append( param )
+                       else:
+                               temp[1].append( param )
+
+               parameters = temp[0]
+               parameters.extend( temp[1] )
+               if include_variable_parameters:
+                       parameters.extend( temp[2] )
+               return parameters.__iter__()
+
+
+       def parameterIterateCounters(self):
+               temp = []
+               for name in self.counter_list:
+                       temp.append( self.parameters_by_name[ name ] )
+
+               return temp.__iter__()
+
+
+       def parameterIterateOutputs(self):
+               temp = []
+               for p in self.parameters:
+                       if p.is_output:
+                               temp.append( p )
+
+               return temp
+
+
+       def command_fixed_length(self):
+               """Return the length, in bytes as an integer, of the
+               fixed-size portion of the command."""
+
+               if len(self.parameters) == 0:
+                       return 0
+               
+               self.calculate_offsets()
+
+               size = 0
+               for param in self.parameterIterateGlxSend(0):
+                       if param.name != self.img_reset and not param.is_client_only:
+                               if size == 0:
+                                       size = param.offset + param.size()
+                               else:
+                                       size += param.size()
+
+                               if self.pad_after( param ):
+                                       size += 4
+
+               for param in self.images:
+                       if param.img_null_flag or param.is_output:
+                               size += 4
+
+               return size
+
+
+       def command_variable_length(self):
+               """Return the length, as a string, of the variable-sized
+               portion of the command."""
+
+               size_string = ""
+               for p in self.parameterIterateGlxSend():
+                       if (not p.is_output) and (p.is_variable_length() or p.is_image()):
+                               # FIXME Replace the 1 in the size_string call
+                               # FIXME w/0 to eliminate some un-needed parnes
+                               # FIXME This would already be done, but it
+                               # FIXME adds some extra diffs to the generated
+                               # FIXME code.
+
+                               size_string = size_string + " + __GLX_PAD(%s)" % (p.size_string(1))
+
+               return size_string
+
+
+       def command_length(self):
+               size = self.command_fixed_length()
+
+               if self.glx_rop != 0:
+                       size += 4
+
+               size = ((size + 3) & ~3)
+               return "%u%s" % (size, self.command_variable_length())
+
+
+       def opcode_real_value(self):
+               """Get the true numeric value of the GLX opcode
+               
+               Behaves similarly to opcode_value, except for
+               X_GLXVendorPrivate and X_GLXVendorPrivateWithReply commands.
+               In these cases the value for the GLX opcode field (i.e.,
+               16 for X_GLXVendorPrivate or 17 for
+               X_GLXVendorPrivateWithReply) is returned.  For other 'single'
+               commands, the opcode for the command (e.g., 101 for
+               X_GLsop_NewList) is returned."""
+
+               if self.glx_vendorpriv != 0:
+                       if self.needs_reply():
+                               return 17
+                       else:
+                               return 16
+               else:
+                       return self.opcode_value()
+
+
+       def opcode_value(self):
+               """Get the unique protocol opcode for the glXFunction"""
+
+               if (self.glx_rop == 0) and self.vectorequiv:
+                       equiv = self.context.functions_by_name[ self.vectorequiv ]
+                       self.glx_rop = equiv.glx_rop
+
+
+               if self.glx_rop != 0:
+                       return self.glx_rop
+               elif self.glx_sop != 0:
+                       return self.glx_sop
+               elif self.glx_vendorpriv != 0:
+                       return self.glx_vendorpriv
+               else:
+                       return -1
+       
+
+       def opcode_rop_basename(self):
+               """Return either the name to be used for GLX protocol enum.
+               
+               Returns either the name of the function or the name of the
+               name of the equivalent vector (e.g., glVertex3fv for
+               glVertex3f) function."""
+
+               if self.vectorequiv == None:
+                       return self.name
+               else:
+                       return self.vectorequiv
+
+
+       def opcode_name(self):
+               """Get the unique protocol enum name for the glXFunction"""
+
+               if (self.glx_rop == 0) and self.vectorequiv:
+                       equiv = self.context.functions_by_name[ self.vectorequiv ]
+                       self.glx_rop = equiv.glx_rop
+                       self.glx_doubles_in_order = equiv.glx_doubles_in_order
+
+
+               if self.glx_rop != 0:
+                       return "X_GLrop_%s" % (self.opcode_rop_basename())
+               elif self.glx_sop != 0:
+                       return "X_GLsop_%s" % (self.name)
+               elif self.glx_vendorpriv != 0:
+                       return "X_GLvop_%s" % (self.name)
+               else:
+                       raise RuntimeError('Function "%s" has no opcode.' % (self.name))
+
+
+       def opcode_vendor_name(self, name):
+               if name in self.glx_vendorpriv_names:
+                       return "X_GLvop_%s" % (name)
+               else:
+                       raise RuntimeError('Function "%s" has no VendorPrivate opcode.' % (name))
+
+
+       def opcode_real_name(self):
+               """Get the true protocol enum name for the GLX opcode
+               
+               Behaves similarly to opcode_name, except for
+               X_GLXVendorPrivate and X_GLXVendorPrivateWithReply commands.
+               In these cases the string 'X_GLXVendorPrivate' or
+               'X_GLXVendorPrivateWithReply' is returned.  For other
+               single or render commands 'X_GLsop' or 'X_GLrop' plus the
+               name of the function returned."""
+
+               if self.glx_vendorpriv != 0:
+                       if self.needs_reply():
+                               return "X_GLXVendorPrivateWithReply"
+                       else:
+                               return "X_GLXVendorPrivate"
+               else:
+                       return self.opcode_name()
+
+
+       def needs_reply(self):
+               try:
+                       x = self._needs_reply
+               except Exception, e:
+                       x = 0
+                       if self.return_type != 'void':
+                               x = 1
+
+                       for param in self.parameters:
+                               if param.is_output:
+                                       x = 1
+                                       break
+
+                       self._needs_reply = x
+
+               return x
+
+
+       def pad_after(self, p):
+               """Returns the name of the field inserted after the
+               specified field to pad out the command header."""
+
+               for image in self.images:
+                       if image.img_pad_dimensions:
+                               if not image.height:
+                                       if p.name == image.width:
+                                               return "height"
+                                       elif p.name == image.img_xoff:
+                                               return "yoffset"
+                               elif not image.extent:
+                                       if p.name == image.depth:
+                                               # Should this be "size4d"?
+                                               return "extent"
+                                       elif p.name == image.img_zoff:
+                                               return "woffset"
+
+               return None
+
+
+       def has_different_protocol(self, name):
+               """Returns true if the named version of the function uses different protocol from the other versions.
+               
+               Some functions, such as glDeleteTextures and
+               glDeleteTexturesEXT are functionally identical, but have
+               different protocol.  This function returns true if the
+               named function is an alias name and that named version uses
+               different protocol from the function that is aliased.
+               """
+
+               return (name in self.glx_vendorpriv_names) and self.glx_sop
+
+
+       def static_glx_name(self, name):
+               if self.has_different_protocol(name):
+                       for n in self.glx_vendorpriv_names:
+                               if n in self.static_entry_points:
+                                       return n
+                               
+               return self.static_name(name)
+
+
+       def client_supported_for_indirect(self):
+               """Returns true if the function is supported on the client
+               side for indirect rendering."""
+
+               return not self.ignore and (self.offset != -1) and (self.glx_rop or self.glx_sop or self.glx_vendorpriv or self.vectorequiv or self.client_handcode)
+
+
+class glx_function_iterator:
+       """Class to iterate over a list of glXFunctions"""
+
+       def __init__(self, context):
+               self.iterator = context.functionIterateByOffset()
+               return
+
+
+       def __iter__(self):
+               return self
+
+
+       def next(self):
+               f = self.iterator.next()
+
+               if f.client_supported_for_indirect():
+                       return f
+               else:
+                       return self.next()
+
+
+class glx_api(gl_XML.gl_api):
+       def functionIterateGlx(self):
+               return glx_function_iterator(self)
+
diff --git a/src/mapi/glapi/gen/glX_doc.py b/src/mapi/glapi/gen/glX_doc.py
new file mode 100644 (file)
index 0000000..e9fbbe6
--- /dev/null
@@ -0,0 +1,280 @@
+#!/usr/bin/env python
+
+# (C) Copyright IBM Corporation 2004, 2005
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+
+import gl_XML, glX_XML, glX_proto_common, license
+import sys, getopt
+
+
+class glx_doc_item_factory(glX_proto_common.glx_proto_item_factory):
+       """Factory to create GLX protocol documentation oriented objects derived from glItem."""
+    
+       def create_item(self, name, element, context):
+               if name == "parameter":
+                       return glx_doc_parameter(element, context)
+               else:
+                       return glX_proto_common.glx_proto_item_factory.create_item(self, name, element, context)
+
+
+class glx_doc_parameter(gl_XML.gl_parameter):
+       def packet_type(self, type_dict):
+               """Get the type string for the packet header
+               
+               GLX protocol documentation uses type names like CARD32,
+               FLOAT64, LISTofCARD8, and ENUM.  This function converts the
+               type of the parameter to one of these names."""
+
+               list_of = ""
+               if self.is_array():
+                       list_of = "LISTof"
+
+               t_name = self.get_base_type_string()
+               if not type_dict.has_key( t_name ):
+                       type_name = "CARD8"
+               else:
+                       type_name = type_dict[ t_name ]
+
+               return "%s%s" % (list_of, type_name)
+
+
+       def packet_size(self):
+               p = None
+               s = self.size()
+               if s == 0:
+                       a_prod = "n"
+                       b_prod = self.p_type.size
+
+                       if not self.count_parameter_list and self.counter:
+                               a_prod = self.counter
+                       elif self.count_parameter_list and not self.counter or self.is_output:
+                               pass
+                       elif self.count_parameter_list and self.counter:
+                               b_prod = self.counter
+                       else:
+                               raise RuntimeError("Parameter '%s' to function '%s' has size 0." % (self.name, self.context.name))
+
+                       ss = "%s*%s" % (a_prod, b_prod)
+
+                       return [ss, p]
+               else:
+                       if s % 4 != 0:
+                               p = "p"
+
+                       return [str(s), p]
+
+class PrintGlxProtoText(gl_XML.gl_print_base):
+       def __init__(self):
+               gl_XML.gl_print_base.__init__(self)
+               self.license = ""
+
+
+       def printHeader(self):
+               return
+
+
+       def body_size(self, f):
+               # At some point, refactor this function and
+               # glXFunction::command_payload_length.
+
+               size = 0;
+               size_str = ""
+               pad_str = ""
+               plus = ""
+               for p in f.parameterIterateGlxSend():
+                       [s, pad] = p.packet_size()
+                       try: 
+                               size += int(s)
+                       except Exception,e:
+                               size_str += "%s%s" % (plus, s)
+                               plus = "+"
+
+                       if pad != None:
+                               pad_str = pad
+
+               return [size, size_str, pad_str]
+
+
+       def print_render_header(self, f):
+               [size, size_str, pad_str] = self.body_size(f)
+               size += 4;
+
+               if size_str == "":
+                       s = "%u" % ((size + 3) & ~3)
+               elif pad_str != "":
+                       s = "%u+%s+%s" % (size, size_str, pad_str)
+               else:
+                       s = "%u+%s" % (size, size_str)
+
+               print '            2        %-15s rendering command length' % (s)
+               print '            2        %-4u            rendering command opcode' % (f.glx_rop)
+               return
+
+
+       def print_single_header(self, f):
+               [size, size_str, pad_str] = self.body_size(f)
+               size = ((size + 3) / 4) + 2;
+
+               if f.glx_vendorpriv != 0:
+                       size += 1
+
+               print '            1        CARD8           opcode (X assigned)'
+               print '            1        %-4u            GLX opcode (%s)' % (f.opcode_real_value(), f.opcode_real_name())
+
+               if size_str == "":
+                       s = "%u" % (size)
+               elif pad_str != "":
+                       s = "%u+((%s+%s)/4)" % (size, size_str, pad_str)
+               else:
+                       s = "%u+((%s)/4)" % (size, size_str)
+
+               print '            2        %-15s request length' % (s)
+
+               if f.glx_vendorpriv != 0:
+                       print '            4        %-4u            vendor specific opcode' % (f.opcode_value())
+                       
+               print '            4        GLX_CONTEXT_TAG context tag'
+
+               return
+               
+
+       def print_reply(self, f):
+               print '          =>'
+               print '            1        1               reply'
+               print '            1                        unused'
+               print '            2        CARD16          sequence number'
+
+               if f.output == None:
+                       print '            4        0               reply length'
+               elif f.reply_always_array:
+                       print '            4        m               reply length'
+               else:
+                       print '            4        m               reply length, m = (n == 1 ? 0 : n)'
+
+
+               output = None
+               for x in f.parameterIterateOutputs():
+                       output = x
+                       break
+
+
+               unused = 24
+               if f.return_type != 'void':
+                       print '            4        %-15s return value' % (f.return_type)
+                       unused -= 4
+               elif output != None:
+                       print '            4                        unused'
+                       unused -= 4
+
+               if output != None:
+                       print '            4        CARD32          n'
+                       unused -= 4
+
+               if output != None:
+                       if not f.reply_always_array:
+                               print ''
+                               print '            if (n = 1) this follows:'
+                               print ''
+                               print '            4        CARD32          %s' % (output.name)
+                               print '            %-2u                       unused' % (unused - 4)
+                               print ''
+                               print '            otherwise this follows:'
+                               print ''
+
+                       print '            %-2u                       unused' % (unused)
+
+                       [s, pad] = output.packet_size()
+                       print '            %-8s %-15s %s' % (s, output.packet_type( self.type_map ), output.name)
+                       if pad != None:
+                               try:
+                                       bytes = int(s)
+                                       bytes = 4 - (bytes & 3)
+                                       print '            %-8u %-15s unused' % (bytes, "")
+                               except Exception,e:
+                                       print '            %-8s %-15s unused, %s=pad(%s)' % (pad, "", pad, s)
+               else:
+                       print '            %-2u                       unused' % (unused)
+
+
+       def print_body(self, f):
+               for p in f.parameterIterateGlxSend():
+                       [s, pad] = p.packet_size()
+                       print '            %-8s %-15s %s' % (s, p.packet_type( self.type_map ), p.name)
+                       if pad != None:
+                               try:
+                                       bytes = int(s)
+                                       bytes = 4 - (bytes & 3)
+                                       print '            %-8u %-15s unused' % (bytes, "")
+                               except Exception,e:
+                                       print '            %-8s %-15s unused, %s=pad(%s)' % (pad, "", pad, s)
+
+       def printBody(self, api):
+               self.type_map = {}
+               for t in api.typeIterate():
+                       self.type_map[ "GL" + t.name ] = t.glx_name
+
+
+               # At some point this should be expanded to support pixel
+               # functions, but I'm not going to lose any sleep over it now.
+
+               for f in api.functionIterateByOffset():
+                       if f.client_handcode or f.server_handcode or f.vectorequiv or len(f.get_images()):
+                               continue
+
+
+                       if f.glx_rop:
+                               print '        %s' % (f.name)
+                               self.print_render_header(f)
+                       elif f.glx_sop or f.glx_vendorpriv:
+                               print '        %s' % (f.name)
+                               self.print_single_header(f)
+                       else:
+                               continue
+
+                       self.print_body(f)
+
+                       if f.needs_reply():
+                               self.print_reply(f)
+
+                       print ''
+               return
+
+
+if __name__ == '__main__':
+       file_name = "gl_API.xml"
+
+       try:
+               (args, trail) = getopt.getopt(sys.argv[1:], "f:")
+       except Exception,e:
+               show_usage()
+
+       for (arg,val) in args:
+               if arg == "-f":
+                       file_name = val
+
+       api = gl_XML.parse_GL_API( file_name, glx_doc_item_factory() )
+
+       printer = PrintGlxProtoText()
+       printer.Print( api )
diff --git a/src/mapi/glapi/gen/glX_proto_common.py b/src/mapi/glapi/gen/glX_proto_common.py
new file mode 100644 (file)
index 0000000..6f094e2
--- /dev/null
@@ -0,0 +1,95 @@
+#!/usr/bin/env python
+
+# (C) Copyright IBM Corporation 2004, 2005
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+
+import gl_XML, glX_XML
+import string
+
+
+class glx_proto_item_factory(glX_XML.glx_item_factory):
+       """Factory to create GLX protocol oriented objects derived from gl_item."""
+    
+       def create_item(self, name, element, context):
+               if name == "type":
+                       return glx_proto_type(element, context)
+               else:
+                       return glX_XML.glx_item_factory.create_item(self, name, element, context)
+
+
+class glx_proto_type(gl_XML.gl_type):
+       def __init__(self, element, context):
+               gl_XML.gl_type.__init__(self, element, context)
+
+               self.glx_name = element.nsProp( "glx_name", None )
+               return
+
+
+class glx_print_proto(gl_XML.gl_print_base):
+       def size_call(self, func, outputs_also = 0):
+               """Create C code to calculate 'compsize'.
+
+               Creates code to calculate 'compsize'.  If the function does
+               not need 'compsize' to be calculated, None will be
+               returned."""
+       
+               compsize = None
+
+               for param in func.parameterIterator():
+                       if outputs_also or not param.is_output:
+                               if param.is_image():
+                                       [dim, w, h, d, junk] = param.get_dimensions()
+
+                                       compsize = '__glImageSize(%s, %s, %s, %s, %s, %s)' % (w, h, d, param.img_format, param.img_type, param.img_target)
+                                       if not param.img_send_null:
+                                               compsize = '(%s != NULL) ? %s : 0' % (param.name, compsize)
+
+                                       return compsize
+
+                               elif len(param.count_parameter_list):
+                                       parameters = string.join( param.count_parameter_list, "," )
+                                       compsize = "__gl%s_size(%s)" % (func.name, parameters)
+
+                                       return compsize
+
+               return None
+
+
+       def emit_packet_size_calculation(self, f, bias):
+               # compsize is only used in the command size calculation if
+               # the function has a non-output parameter that has a non-empty
+               # counter_parameter_list.
+
+               compsize = self.size_call(f)
+               if compsize:
+                       print '    const GLuint compsize = %s;' % (compsize)
+
+               if bias:
+                       print '    const GLuint cmdlen = %s - %u;' % (f.command_length(), bias)
+               else:
+                       print '    const GLuint cmdlen = %s;' % (f.command_length())
+
+               #print ''
+               return compsize
diff --git a/src/mapi/glapi/gen/glX_proto_recv.py b/src/mapi/glapi/gen/glX_proto_recv.py
new file mode 100644 (file)
index 0000000..31745fc
--- /dev/null
@@ -0,0 +1,554 @@
+#!/usr/bin/env python
+
+# (C) Copyright IBM Corporation 2005
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+
+import gl_XML, glX_XML, glX_proto_common, license
+import sys, getopt, string
+
+
+class PrintGlxDispatch_h(gl_XML.gl_print_base):
+       def __init__(self):
+               gl_XML.gl_print_base.__init__(self)
+
+               self.name = "glX_proto_recv.py (from Mesa)"
+               self.license = license.bsd_license_template % ( "(C) Copyright IBM Corporation 2005", "IBM")
+
+               self.header_tag = "_INDIRECT_DISPATCH_H_"
+               return
+
+
+       def printRealHeader(self):
+               self.printVisibility( "HIDDEN", "hidden" )
+               print 'struct __GLXclientStateRec;'
+               print ''
+               return
+
+
+       def printBody(self, api):
+               for func in api.functionIterateAll():
+                       if not func.ignore and not func.vectorequiv:
+                               if func.glx_rop:
+                                       print 'extern HIDDEN void __glXDisp_%s(GLbyte * pc);' % (func.name)
+                                       print 'extern HIDDEN void __glXDispSwap_%s(GLbyte * pc);' % (func.name)
+                               elif func.glx_sop or func.glx_vendorpriv:
+                                       print 'extern HIDDEN int __glXDisp_%s(struct __GLXclientStateRec *, GLbyte *);' % (func.name)
+                                       print 'extern HIDDEN int __glXDispSwap_%s(struct __GLXclientStateRec *, GLbyte *);' % (func.name)
+
+                                       if func.glx_sop and func.glx_vendorpriv:
+                                               n = func.glx_vendorpriv_names[0]
+                                               print 'extern HIDDEN int __glXDisp_%s(struct __GLXclientStateRec *, GLbyte *);' % (n)
+                                               print 'extern HIDDEN int __glXDispSwap_%s(struct __GLXclientStateRec *, GLbyte *);' % (n)
+
+               return
+
+
+class PrintGlxDispatchFunctions(glX_proto_common.glx_print_proto):
+       def __init__(self, do_swap):
+               gl_XML.gl_print_base.__init__(self)
+               self.name = "glX_proto_recv.py (from Mesa)"
+               self.license = license.bsd_license_template % ( "(C) Copyright IBM Corporation 2005", "IBM")
+
+               self.real_types = [ '', '', 'uint16_t', '', 'uint32_t', '', '', '', 'uint64_t' ]
+               self.do_swap = do_swap
+               return
+
+
+       def printRealHeader(self):
+               print '#include <X11/Xmd.h>'
+               print '#include <GL/gl.h>'
+               print '#include <GL/glxproto.h>'
+
+               print '#include <inttypes.h>'
+               print '#include "indirect_size.h"'
+               print '#include "indirect_size_get.h"'
+               print '#include "indirect_dispatch.h"'
+               print '#include "glxserver.h"'
+               print '#include "glxbyteorder.h"'
+               print '#include "indirect_util.h"'
+               print '#include "singlesize.h"'
+               print '#include "glapi.h"'
+               print '#include "glapitable.h"'
+               print '#include "glthread.h"'
+               print '#include "glapidispatch.h"'
+               print ''
+               print '#define __GLX_PAD(x)  (((x) + 3) & ~3)'
+               print ''
+               print 'typedef struct {'
+               print '    __GLX_PIXEL_3D_HDR;'
+               print '} __GLXpixel3DHeader;'
+               print ''
+               print 'extern GLboolean __glXErrorOccured( void );'
+               print 'extern void __glXClearErrorOccured( void );'
+               print ''
+               print 'static const unsigned dummy_answer[2] = {0, 0};'
+               print ''
+               return
+
+
+       def printBody(self, api):
+               if self.do_swap:
+                       self.emit_swap_wrappers(api)
+
+
+               for func in api.functionIterateByOffset():
+                       if not func.ignore and not func.server_handcode and not func.vectorequiv and (func.glx_rop or func.glx_sop or func.glx_vendorpriv):
+                               self.printFunction(func, func.name)
+                               if func.glx_sop and func.glx_vendorpriv:
+                                       self.printFunction(func, func.glx_vendorpriv_names[0])
+                                       
+
+               return
+
+
+       def printFunction(self, f, name):
+               if (f.glx_sop or f.glx_vendorpriv) and (len(f.get_images()) != 0):
+                       return
+
+               if not self.do_swap:
+                       base = '__glXDisp'
+               else:
+                       base = '__glXDispSwap'
+
+               if f.glx_rop:
+                       print 'void %s_%s(GLbyte * pc)' % (base, name)
+               else:
+                       print 'int %s_%s(__GLXclientState *cl, GLbyte *pc)' % (base, name)
+
+               print '{'
+
+               if f.glx_rop or f.vectorequiv:
+                       self.printRenderFunction(f)
+               elif f.glx_sop or f.glx_vendorpriv:
+                       if len(f.get_images()) == 0: 
+                               self.printSingleFunction(f, name)
+               else:
+                       print "/* Missing GLX protocol for %s. */" % (name)
+
+               print '}'
+               print ''
+               return
+
+
+       def swap_name(self, bytes):
+               return 'bswap_%u_array' % (8 * bytes)
+
+
+       def emit_swap_wrappers(self, api):
+               self.type_map = {}
+               already_done = [ ]
+
+               for t in api.typeIterate():
+                       te = t.get_type_expression()
+                       t_size = te.get_element_size()
+
+                       if t_size > 1 and t.glx_name:
+                               
+                               t_name = "GL" + t.name
+                               self.type_map[ t_name ] = t.glx_name
+
+                               if t.glx_name not in already_done:
+                                       real_name = self.real_types[t_size]
+
+                                       print 'static %s' % (t_name)
+                                       print 'bswap_%s( const void * src )' % (t.glx_name)
+                                       print '{'
+                                       print '    union { %s dst; %s ret; } x;' % (real_name, t_name)
+                                       print '    x.dst = bswap_%u( *(%s *) src );' % (t_size * 8, real_name)
+                                       print '    return x.ret;'
+                                       print '}'
+                                       print ''
+                                       already_done.append( t.glx_name )
+
+               for bits in [16, 32, 64]:
+                       print 'static void *'
+                       print 'bswap_%u_array( uint%u_t * src, unsigned count )' % (bits, bits)
+                       print '{'
+                       print '    unsigned  i;'
+                       print ''
+                       print '    for ( i = 0 ; i < count ; i++ ) {'
+                       print '        uint%u_t temp = bswap_%u( src[i] );' % (bits, bits)
+                       print '        src[i] = temp;'
+                       print '    }'
+                       print ''
+                       print '    return src;'
+                       print '}'
+                       print ''
+                       
+
+       def fetch_param(self, param):
+               t = param.type_string()
+               o = param.offset
+               element_size = param.size() / param.get_element_count()
+
+               if self.do_swap and (element_size != 1):
+                       if param.is_array():
+                               real_name = self.real_types[ element_size ]
+
+                               swap_func = self.swap_name( element_size )
+                               return ' (%-8s)%s( (%s *) (pc + %2s), %s )' % (t, swap_func, real_name, o, param.count)
+                       else:
+                               t_name = param.get_base_type_string()
+                               return ' (%-8s)bswap_%-7s( pc + %2s )' % (t, self.type_map[ t_name ], o)
+               else:
+                       if param.is_array():
+                               return ' (%-8s)(pc + %2u)' % (t, o)
+                       else:
+                               return '*(%-8s *)(pc + %2u)' % (t, o)
+                               
+               return None
+
+
+       def emit_function_call(self, f, retval_assign, indent):
+               list = []
+
+               for param in f.parameterIterator():
+                       if param.is_padding:
+                               continue
+
+                       if param.is_counter or param.is_image() or param.is_output or param.name in f.count_parameter_list or len(param.count_parameter_list):
+                               location = param.name
+                       else:
+                               location = self.fetch_param(param)
+
+                       list.append( '%s        %s' % (indent, location) )
+                       
+
+               if len( list ):
+                       print '%s    %sCALL_%s( GET_DISPATCH(), (' % (indent, retval_assign, f.name)
+                       print string.join( list, ",\n" )
+                       print '%s    ) );' % (indent)
+               else:
+                       print '%s    %sCALL_%s( GET_DISPATCH(), () );' % (indent, retval_assign, f.name)
+               return
+
+
+       def common_func_print_just_start(self, f, indent):
+               align64 = 0
+               need_blank = 0
+
+
+               f.calculate_offsets()
+               for param in f.parameterIterateGlxSend():
+                       # If any parameter has a 64-bit base type, then we
+                       # have to do alignment magic for the while thing.
+
+                       if param.is_64_bit():
+                               align64 = 1
+
+
+                       # FIXME img_null_flag is over-loaded.  In addition to
+                       # FIXME being used for images, it is used to signify
+                       # FIXME NULL data pointers for vertex buffer object
+                       # FIXME related functions.  Re-name it to null_data
+                       # FIXME or something similar.
+
+                       if param.img_null_flag:
+                               print '%s    const CARD32 ptr_is_null = *(CARD32 *)(pc + %s);' % (indent, param.offset - 4)
+                               cond = '(ptr_is_null != 0) ? NULL : '
+                       else:
+                               cond = ""
+
+
+                       type_string = param.type_string()
+
+                       if param.is_image():
+                               offset = f.offset_of( param.name )
+
+                               print '%s    %s const %s = (%s) (%s(pc + %s));' % (indent, type_string, param.name, type_string, cond, offset)
+                               
+                               if param.depth:
+                                       print '%s    __GLXpixel3DHeader * const hdr = (__GLXpixel3DHeader *)(pc);' % (indent)
+                               else:
+                                       print '%s    __GLXpixelHeader * const hdr = (__GLXpixelHeader *)(pc);' % (indent)
+
+                               need_blank = 1
+                       elif param.is_counter or param.name in f.count_parameter_list:
+                               location = self.fetch_param(param)
+                               print '%s    const %s %s = %s;' % (indent, type_string, param.name, location)
+                               need_blank = 1
+                       elif len(param.count_parameter_list):
+                               if param.size() == 1 and not self.do_swap:
+                                       location = self.fetch_param(param)
+                                       print '%s    %s %s = %s%s;' % (indent, type_string, param.name, cond, location)
+                               else:
+                                       print '%s    %s %s;' % (indent, type_string, param.name)
+                               need_blank = 1
+
+
+
+               if need_blank:
+                       print ''
+
+               if align64:
+                       print '#ifdef __GLX_ALIGN64'
+
+                       if f.has_variable_size_request():
+                               self.emit_packet_size_calculation(f, 4)
+                               s = "cmdlen"
+                       else:
+                               s = str((f.command_fixed_length() + 3) & ~3)
+
+                       print '    if ((unsigned long)(pc) & 7) {'
+                       print '        (void) memmove(pc-4, pc, %s);' % (s)
+                       print '        pc -= 4;'
+                       print '    }'
+                       print '#endif'
+                       print ''
+
+
+               need_blank = 0
+               if self.do_swap:
+                       for param in f.parameterIterateGlxSend():
+                               if param.count_parameter_list:
+                                       o = param.offset
+                                       count = param.get_element_count()
+                                       type_size = param.size() / count
+                                       
+                                       if param.counter:
+                                               count_name = param.counter
+                                       else:
+                                               count_name = str(count)
+
+                                       # This is basically an ugly special-
+                                       # case for glCallLists.
+
+                                       if type_size == 1:
+                                               x = [] 
+                                               x.append( [1, ['BYTE', 'UNSIGNED_BYTE', '2_BYTES', '3_BYTES', '4_BYTES']] )
+                                               x.append( [2, ['SHORT', 'UNSIGNED_SHORT']] )
+                                               x.append( [4, ['INT', 'UNSIGNED_INT', 'FLOAT']] )
+
+                                               print '    switch(%s) {' % (param.count_parameter_list[0])
+                                               for sub in x:
+                                                       for t_name in sub[1]:
+                                                               print '    case GL_%s:' % (t_name)
+
+                                                       if sub[0] == 1:
+                                                               print '        %s = (%s) (pc + %s); break;' % (param.name, param.type_string(), o)
+                                                       else:
+                                                               swap_func = self.swap_name(sub[0])
+                                                               print '        %s = (%s) %s( (%s *) (pc + %s), %s ); break;' % (param.name, param.type_string(), swap_func, self.real_types[sub[0]], o, count_name)
+                                               print '    default:'
+                                               print '        return;'
+                                               print '    }'
+                                       else:
+                                               swap_func = self.swap_name(type_size)
+                                               compsize = self.size_call(f, 1)
+                                               print '    %s = (%s) %s( (%s *) (pc + %s), %s );' % (param.name, param.type_string(), swap_func, self.real_types[type_size], o, compsize)
+
+                                       need_blank = 1
+
+               else:
+                       for param in f.parameterIterateGlxSend():
+                               if param.count_parameter_list:
+                                       print '%s    %s = (%s) (pc + %s);' % (indent, param.name, param.type_string(), param.offset)
+                                       need_blank = 1
+
+
+               if need_blank:
+                       print ''
+
+
+               return
+
+
+       def printSingleFunction(self, f, name):
+               if name not in f.glx_vendorpriv_names:
+                       print '    xGLXSingleReq * const req = (xGLXSingleReq *) pc;'
+               else:
+                       print '    xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;'
+
+               print '    int error;'
+
+               if self.do_swap:
+                   print '    __GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);'
+               else:
+                   print '    __GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);'
+
+               print ''
+               if name not in f.glx_vendorpriv_names:
+                       print '    pc += __GLX_SINGLE_HDR_SIZE;'
+               else:
+                       print '    pc += __GLX_VENDPRIV_HDR_SIZE;'
+
+               print '    if ( cx != NULL ) {'
+               self.common_func_print_just_start(f, "    ")
+               
+
+               if f.return_type != 'void':
+                       print '        %s retval;' % (f.return_type)
+                       retval_string = "retval"
+                       retval_assign = "retval = "
+               else:
+                       retval_string = "0"
+                       retval_assign = ""
+
+
+               type_size = 0
+               answer_string = "dummy_answer"
+               answer_count = "0"
+               is_array_string = "GL_FALSE"
+
+               for param in f.parameterIterateOutputs():
+                       answer_type = param.get_base_type_string()
+                       if answer_type == "GLvoid":
+                               answer_type = "GLubyte"
+
+
+                       c = param.get_element_count()
+                       type_size = (param.size() / c)
+                       if type_size == 1:
+                               size_scale = ""
+                       else:
+                               size_scale = " * %u" % (type_size)
+
+
+                       if param.count_parameter_list:
+                               print '        const GLuint compsize = %s;' % (self.size_call(f, 1))
+                               print '        %s answerBuffer[200];' %  (answer_type)
+                               print '        %s %s = __glXGetAnswerBuffer(cl, compsize%s, answerBuffer, sizeof(answerBuffer), %u);' % (param.type_string(), param.name, size_scale, type_size )
+                               answer_string = param.name
+                               answer_count = "compsize"
+
+                               print ''
+                               print '        if (%s == NULL) return BadAlloc;' % (param.name)
+                               print '        __glXClearErrorOccured();'
+                               print ''
+                       elif param.counter:
+                               print '        %s answerBuffer[200];' %  (answer_type)
+                               print '        %s %s = __glXGetAnswerBuffer(cl, %s%s, answerBuffer, sizeof(answerBuffer), %u);' % (param.type_string(), param.name, param.counter, size_scale, type_size)
+                               answer_string = param.name
+                               answer_count = param.counter
+                       elif c >= 1:
+                               print '        %s %s[%u];' % (answer_type, param.name, c)
+                               answer_string = param.name
+                               answer_count = "%u" % (c)
+
+                       if f.reply_always_array:
+                               is_array_string = "GL_TRUE"
+
+
+               self.emit_function_call(f, retval_assign, "    ")
+
+
+               if f.needs_reply():
+                       if self.do_swap:
+                               for param in f.parameterIterateOutputs():
+                                       c = param.get_element_count()
+                                       type_size = (param.size() / c)
+
+                                       if type_size > 1:
+                                               swap_name = self.swap_name( type_size )
+                                               print '        (void) %s( (uint%u_t *) %s, %s );' % (swap_name, 8 * type_size, param.name, answer_count)
+
+
+                               reply_func = '__glXSendReplySwap'
+                       else:
+                               reply_func = '__glXSendReply'
+
+                       print '        %s(cl->client, %s, %s, %u, %s, %s);' % (reply_func, answer_string, answer_count, type_size, is_array_string, retval_string)
+               #elif f.note_unflushed:
+               #       print '        cx->hasUnflushedCommands = GL_TRUE;'
+
+               print '        error = Success;'
+               print '    }'
+               print ''
+               print '    return error;'
+               return
+
+
+       def printRenderFunction(self, f):
+               # There are 4 distinct phases in a rendering dispatch function.
+               # In the first phase we compute the sizes and offsets of each
+               # element in the command.  In the second phase we (optionally)
+               # re-align 64-bit data elements.  In the third phase we
+               # (optionally) byte-swap array data.  Finally, in the fourth
+               # phase we actually dispatch the function.
+
+               self.common_func_print_just_start(f, "")
+
+               images = f.get_images()
+               if len(images):
+                       if self.do_swap:
+                               pre = "bswap_CARD32( & "
+                               post = " )"
+                       else:
+                               pre = ""
+                               post = ""
+
+                       img = images[0]
+
+                       # swapBytes and lsbFirst are single byte fields, so
+                       # the must NEVER be byte-swapped.
+
+                       if not (img.img_type == "GL_BITMAP" and img.img_format == "GL_COLOR_INDEX"):
+                               print '    CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SWAP_BYTES,   hdr->swapBytes) );'
+
+                       print '    CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_LSB_FIRST,    hdr->lsbFirst) );'
+
+                       print '    CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_ROW_LENGTH,   (GLint) %shdr->rowLength%s) );' % (pre, post)
+                       if img.depth:
+                               print '    CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_IMAGE_HEIGHT, (GLint) %shdr->imageHeight%s) );' % (pre, post)
+                       print '    CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SKIP_ROWS,    (GLint) %shdr->skipRows%s) );' % (pre, post)
+                       if img.depth:
+                               print '    CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SKIP_IMAGES,  (GLint) %shdr->skipImages%s) );' % (pre, post)
+                       print '    CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SKIP_PIXELS,  (GLint) %shdr->skipPixels%s) );' % (pre, post)
+                       print '    CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_ALIGNMENT,    (GLint) %shdr->alignment%s) );' % (pre, post)
+                       print ''
+
+
+               self.emit_function_call(f, "", "")
+               return
+
+
+if __name__ == '__main__':
+       file_name = "gl_API.xml"
+
+       try:
+               (args, trail) = getopt.getopt(sys.argv[1:], "f:m:s")
+       except Exception,e:
+               show_usage()
+
+       mode = "dispatch_c"
+       do_swap = 0
+       for (arg,val) in args:
+               if arg == "-f":
+                       file_name = val
+               elif arg == "-m":
+                       mode = val
+               elif arg == "-s":
+                       do_swap = 1
+
+       if mode == "dispatch_c":
+               printer = PrintGlxDispatchFunctions(do_swap)
+       elif mode == "dispatch_h":
+               printer = PrintGlxDispatch_h()
+       else:
+               show_usage()
+
+       api = gl_XML.parse_GL_API( file_name, glX_proto_common.glx_proto_item_factory() )
+
+       printer.Print( api )
diff --git a/src/mapi/glapi/gen/glX_proto_send.py b/src/mapi/glapi/gen/glX_proto_send.py
new file mode 100644 (file)
index 0000000..c52b85b
--- /dev/null
@@ -0,0 +1,1042 @@
+#!/usr/bin/env python
+
+# (C) Copyright IBM Corporation 2004, 2005
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+#    Jeremy Kolb <jkolb@brandeis.edu>
+
+import gl_XML, glX_XML, glX_proto_common, license
+import sys, getopt, copy, string
+
+def convertStringForXCB(str):
+    tmp = ""
+    special = [ "ARB" ]
+    i = 0
+    while i < len(str):
+        if str[i:i+3] in special:
+            tmp = '%s_%s' % (tmp, string.lower(str[i:i+3]))
+            i = i + 2;
+        elif str[i].isupper():
+            tmp = '%s_%s' % (tmp, string.lower(str[i]))
+        else:
+            tmp = '%s%s' % (tmp, str[i])
+        i += 1
+    return tmp
+
+def hash_pixel_function(func):
+       """Generate a 'unique' key for a pixel function.  The key is based on
+       the parameters written in the command packet.  This includes any
+       padding that might be added for the original function and the 'NULL
+       image' flag."""
+
+
+       h = ""
+       hash_pre = ""
+       hash_suf = ""
+       for param in func.parameterIterateGlxSend():
+               if param.is_image():
+                       [dim, junk, junk, junk, junk] = param.get_dimensions()
+
+                       d = (dim + 1) & ~1
+                       hash_pre = "%uD%uD_" % (d - 1, d)
+
+                       if param.img_null_flag:
+                               hash_suf = "_NF"
+
+               h += "%u" % (param.size())
+
+               if func.pad_after(param):
+                       h += "4"
+
+
+       n = func.name.replace("%uD" % (dim), "")
+       n = "__glx_%s_%uD%uD" % (n, d - 1, d)
+
+       h = hash_pre + h + hash_suf
+       return [h, n]
+
+
+class glx_pixel_function_stub(glX_XML.glx_function):
+       """Dummy class used to generate pixel "utility" functions that are
+       shared by multiple dimension image functions.  For example, these
+       objects are used to generate shared functions used to send GLX
+       protocol for TexImage1D and TexImage2D, TexSubImage1D and
+       TexSubImage2D, etc."""
+
+       def __init__(self, func, name):
+               # The parameters to the utility function are the same as the
+               # parameters to the real function except for the added "pad"
+               # parameters.
+
+               self.name = name
+               self.images = []
+               self.parameters = []
+               self.parameters_by_name = {}
+               for _p in func.parameterIterator():
+                       p = copy.copy(_p)
+                       self.parameters.append(p)
+                       self.parameters_by_name[ p.name ] = p
+
+
+                       if p.is_image():
+                               self.images.append(p)
+                               p.height = "height"
+
+                               if p.img_yoff == None:
+                                       p.img_yoff = "yoffset"
+
+                               if p.depth:
+                                       if p.extent == None:
+                                               p.extent = "extent"
+
+                                       if p.img_woff == None:
+                                               p.img_woff = "woffset"
+
+
+                       pad_name = func.pad_after(p)
+                       if pad_name:
+                               pad = copy.copy(p)
+                               pad.name = pad_name
+                               self.parameters.append(pad)
+                               self.parameters_by_name[ pad.name ] = pad
+                               
+
+               self.return_type = func.return_type
+
+               self.glx_rop = ~0
+               self.glx_sop = 0
+               self.glx_vendorpriv = 0
+
+               self.glx_doubles_in_order = func.glx_doubles_in_order
+
+               self.vectorequiv = None
+               self.output = None
+               self.can_be_large = func.can_be_large
+               self.reply_always_array = func.reply_always_array
+               self.dimensions_in_reply = func.dimensions_in_reply
+               self.img_reset = None
+
+               self.server_handcode = 0
+               self.client_handcode = 0
+               self.ignore = 0
+
+               self.count_parameter_list = func.count_parameter_list
+               self.counter_list = func.counter_list
+               self.offsets_calculated = 0
+               return
+
+
+class PrintGlxProtoStubs(glX_proto_common.glx_print_proto):
+       def __init__(self):
+               glX_proto_common.glx_print_proto.__init__(self)
+               self.name = "glX_proto_send.py (from Mesa)"
+               self.license = license.bsd_license_template % ( "(C) Copyright IBM Corporation 2004, 2005", "IBM")
+
+
+               self.last_category = ""
+               self.generic_sizes = [3, 4, 6, 8, 12, 16, 24, 32]
+               self.pixel_stubs = {}
+               self.debug = 0
+               return
+
+       def printRealHeader(self):
+               print ''
+               print '#include <GL/gl.h>'
+               print '#include "indirect.h"'
+               print '#include "glxclient.h"'
+               print '#include "indirect_size.h"'
+               print '#include "glapidispatch.h"'
+               print '#include "glapi.h"'
+               print '#include "glthread.h"'
+               print '#include <GL/glxproto.h>'
+               print '#ifdef USE_XCB'
+               print '#include <X11/Xlib-xcb.h>'
+               print '#include <xcb/xcb.h>'
+               print '#include <xcb/glx.h>'
+               print '#endif /* USE_XCB */'
+
+               print ''
+               print '#define __GLX_PAD(n) (((n) + 3) & ~3)'
+               print ''
+               self.printFastcall()
+               self.printNoinline()
+               print ''
+               print '#ifndef __GNUC__'
+               print '#  define __builtin_expect(x, y) x'
+               print '#endif'
+               print ''
+               print '/* If the size and opcode values are known at compile-time, this will, on'
+               print ' * x86 at least, emit them with a single instruction.'
+               print ' */'
+               print '#define emit_header(dest, op, size)            \\'
+               print '    do { union { short s[2]; int i; } temp;    \\'
+               print '         temp.s[0] = (size); temp.s[1] = (op); \\'
+               print '         *((int *)(dest)) = temp.i; } while(0)'
+               print ''
+               print """NOINLINE CARD32
+__glXReadReply( Display *dpy, size_t size, void * dest, GLboolean reply_is_always_array )
+{
+    xGLXSingleReply reply;
+    
+    (void) _XReply(dpy, (xReply *) & reply, 0, False);
+    if (size != 0) {
+        if ((reply.length > 0) || reply_is_always_array) {
+            const GLint bytes = (reply_is_always_array) 
+              ? (4 * reply.length) : (reply.size * size);
+            const GLint extra = 4 - (bytes & 3);
+
+            _XRead(dpy, dest, bytes);
+            if ( extra < 4 ) {
+                _XEatData(dpy, extra);
+            }
+        }
+        else {
+            (void) memcpy( dest, &(reply.pad3), size);
+        }
+    }
+
+    return reply.retval;
+}
+
+NOINLINE void
+__glXReadPixelReply( Display *dpy, __GLXcontext * gc, unsigned max_dim,
+    GLint width, GLint height, GLint depth, GLenum format, GLenum type,
+    void * dest, GLboolean dimensions_in_reply )
+{
+    xGLXSingleReply reply;
+    GLint size;
+    
+    (void) _XReply(dpy, (xReply *) & reply, 0, False);
+
+    if ( dimensions_in_reply ) {
+        width  = reply.pad3;
+        height = reply.pad4;
+        depth  = reply.pad5;
+       
+       if ((height == 0) || (max_dim < 2)) { height = 1; }
+       if ((depth  == 0) || (max_dim < 3)) { depth  = 1; }
+    }
+
+    size = reply.length * 4;
+    if (size != 0) {
+        void * buf = Xmalloc( size );
+
+        if ( buf == NULL ) {
+            _XEatData(dpy, size);
+            __glXSetError(gc, GL_OUT_OF_MEMORY);
+        }
+        else {
+            const GLint extra = 4 - (size & 3);
+
+            _XRead(dpy, buf, size);
+            if ( extra < 4 ) {
+                _XEatData(dpy, extra);
+            }
+
+            __glEmptyImage(gc, 3, width, height, depth, format, type,
+                           buf, dest);
+            Xfree(buf);
+        }
+    }
+}
+
+#define X_GLXSingle 0
+
+NOINLINE FASTCALL GLubyte *
+__glXSetupSingleRequest( __GLXcontext * gc, GLint sop, GLint cmdlen )
+{
+    xGLXSingleReq * req;
+    Display * const dpy = gc->currentDpy;
+
+    (void) __glXFlushRenderBuffer(gc, gc->pc);
+    LockDisplay(dpy);
+    GetReqExtra(GLXSingle, cmdlen, req);
+    req->reqType = gc->majorOpcode;
+    req->contextTag = gc->currentContextTag;
+    req->glxCode = sop;
+    return (GLubyte *)(req) + sz_xGLXSingleReq;
+}
+
+NOINLINE FASTCALL GLubyte *
+__glXSetupVendorRequest( __GLXcontext * gc, GLint code, GLint vop, GLint cmdlen )
+{
+    xGLXVendorPrivateReq * req;
+    Display * const dpy = gc->currentDpy;
+
+    (void) __glXFlushRenderBuffer(gc, gc->pc);
+    LockDisplay(dpy);
+    GetReqExtra(GLXVendorPrivate, cmdlen, req);
+    req->reqType = gc->majorOpcode;
+    req->glxCode = code;
+    req->vendorCode = vop;
+    req->contextTag = gc->currentContextTag;
+    return (GLubyte *)(req) + sz_xGLXVendorPrivateReq;
+}
+
+const GLuint __glXDefaultPixelStore[9] = { 0, 0, 0, 0, 0, 0, 0, 0, 1 };
+
+#define zero                        (__glXDefaultPixelStore+0)
+#define one                         (__glXDefaultPixelStore+8)
+#define default_pixel_store_1D      (__glXDefaultPixelStore+4)
+#define default_pixel_store_1D_size 20
+#define default_pixel_store_2D      (__glXDefaultPixelStore+4)
+#define default_pixel_store_2D_size 20
+#define default_pixel_store_3D      (__glXDefaultPixelStore+0)
+#define default_pixel_store_3D_size 36
+#define default_pixel_store_4D      (__glXDefaultPixelStore+0)
+#define default_pixel_store_4D_size 36
+"""
+
+               for size in self.generic_sizes:
+                       self.print_generic_function(size)
+               return
+
+
+       def printBody(self, api):
+
+               self.pixel_stubs = {}
+               generated_stubs = []
+
+               for func in api.functionIterateGlx():
+                       if func.client_handcode: continue
+
+                       # If the function is a pixel function with a certain
+                       # GLX protocol signature, create a fake stub function
+                       # for it.  For example, create a single stub function
+                       # that is used to implement both glTexImage1D and
+                       # glTexImage2D.
+
+                       if func.glx_rop != 0:
+                               do_it = 0
+                               for image in func.get_images():
+                                       if image.img_pad_dimensions:
+                                               do_it = 1
+                                               break
+
+
+                               if do_it:
+                                       [h, n] = hash_pixel_function(func)
+
+
+                                       self.pixel_stubs[ func.name ] = n
+                                       if h not in generated_stubs:
+                                               generated_stubs.append(h)
+
+                                               fake_func = glx_pixel_function_stub( func, n )
+                                               self.printFunction(fake_func, fake_func.name)
+
+
+                       self.printFunction(func, func.name)
+                       if func.glx_sop and func.glx_vendorpriv:
+                               self.printFunction(func, func.glx_vendorpriv_names[0])
+
+               return
+
+
+       def printFunction(self, func, name):
+               footer = '}\n'
+               if func.glx_rop == ~0:
+                       print 'static %s' % (func.return_type)
+                       print '%s( unsigned opcode, unsigned dim, %s )' % (func.name, func.get_parameter_string())
+                       print '{'
+               else:
+                       if func.has_different_protocol(name):
+                               if func.return_type == "void":
+                                       ret_string = ''
+                               else:
+                                       ret_string = "return "
+
+                               func_name = func.static_glx_name(name)
+                               print '#define %s %d' % (func.opcode_vendor_name(name), func.glx_vendorpriv)
+                               print '%s gl%s(%s)' % (func.return_type, func_name, func.get_parameter_string())
+                               print '{'
+                               print '    __GLXcontext * const gc = __glXGetCurrentContext();'
+                               print ''
+                               print '#ifdef GLX_DIRECT_RENDERING'
+                               print '    if (gc->driContext) {'
+                               print '    %sCALL_%s(GET_DISPATCH(), (%s));' % (ret_string, func.name, func.get_called_parameter_string())
+                               print '    } else'
+                               print '#endif'
+                               print '    {'
+
+                               footer = '}\n}\n'
+                       else:
+                               print '#define %s %d' % (func.opcode_name(), func.opcode_value())
+
+                               print '%s __indirect_gl%s(%s)' % (func.return_type, name, func.get_parameter_string())
+                               print '{'
+
+
+               if func.glx_rop != 0 or func.vectorequiv != None:
+                       if len(func.images):
+                               self.printPixelFunction(func)
+                       else:
+                               self.printRenderFunction(func)
+               elif func.glx_sop != 0 or func.glx_vendorpriv != 0:
+                       self.printSingleFunction(func, name)
+                       pass
+               else:
+                       print "/* Missing GLX protocol for %s. */" % (name)
+
+               print footer
+               return
+
+
+       def print_generic_function(self, n):
+               size = (n + 3) & ~3
+               print """static FASTCALL NOINLINE void
+generic_%u_byte( GLint rop, const void * ptr )
+{
+    __GLXcontext * const gc = __glXGetCurrentContext();
+    const GLuint cmdlen = %u;
+
+    emit_header(gc->pc, rop, cmdlen);
+    (void) memcpy((void *)(gc->pc + 4), ptr, %u);
+    gc->pc += cmdlen;
+    if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
+}
+""" % (n, size + 4, size)
+               return
+
+
+       def common_emit_one_arg(self, p, pc, adjust, extra_offset):
+               if p.is_array():
+                       src_ptr = p.name
+               else:
+                       src_ptr = "&" + p.name
+
+               if p.is_padding:
+                       print '(void) memset((void *)(%s + %u), 0, %s);' \
+                           % (pc, p.offset + adjust, p.size_string() )
+               elif not extra_offset:
+                       print '(void) memcpy((void *)(%s + %u), (void *)(%s), %s);' \
+                           % (pc, p.offset + adjust, src_ptr, p.size_string() )
+               else:
+                       print '(void) memcpy((void *)(%s + %u + %s), (void *)(%s), %s);' \
+                           % (pc, p.offset + adjust, extra_offset, src_ptr, p.size_string() )
+
+       def common_emit_args(self, f, pc, adjust, skip_vla):
+               extra_offset = None
+
+               for p in f.parameterIterateGlxSend( not skip_vla ):
+                       if p.name != f.img_reset:
+                               self.common_emit_one_arg(p, pc, adjust, extra_offset)
+                               
+                               if p.is_variable_length():
+                                       temp = p.size_string()
+                                       if extra_offset:
+                                               extra_offset += " + %s" % (temp)
+                                       else:
+                                               extra_offset = temp
+
+               return
+
+
+       def pixel_emit_args(self, f, pc, large):
+               """Emit the arguments for a pixel function.  This differs from
+               common_emit_args in that pixel functions may require padding
+               be inserted (i.e., for the missing width field for
+               TexImage1D), and they may also require a 'NULL image' flag
+               be inserted before the image data."""
+
+               if large:
+                       adjust = 8
+               else:
+                       adjust = 4
+
+               for param in f.parameterIterateGlxSend():
+                       if not param.is_image():
+                               self.common_emit_one_arg(param, pc, adjust, None)
+
+                               if f.pad_after(param):
+                                       print '(void) memcpy((void *)(%s + %u), zero, 4);' % (pc, (param.offset + param.size()) + adjust)
+
+                       else:
+                               [dim, width, height, depth, extent] = param.get_dimensions()
+                               if f.glx_rop == ~0:
+                                       dim_str = "dim"
+                               else:
+                                       dim_str = str(dim)
+
+                               if param.is_padding:
+                                       print '(void) memset((void *)(%s + %u), 0, %s);' \
+                                       % (pc, (param.offset - 4) + adjust, param.size_string() )
+
+                               if param.img_null_flag:
+                                       if large:
+                                               print '(void) memcpy((void *)(%s + %u), zero, 4);' % (pc, (param.offset - 4) + adjust)
+                                       else:
+                                               print '(void) memcpy((void *)(%s + %u), (void *)((%s == NULL) ? one : zero), 4);' % (pc, (param.offset - 4) + adjust, param.name)
+
+
+                               pixHeaderPtr = "%s + %u" % (pc, adjust)
+                               pcPtr = "%s + %u" % (pc, param.offset + adjust)
+
+                               if not large:
+                                       if param.img_send_null:
+                                               condition = '(compsize > 0) && (%s != NULL)' % (param.name)
+                                       else:
+                                               condition = 'compsize > 0'
+
+                                       print 'if (%s) {' % (condition)
+                                       print '    (*gc->fillImage)(gc, %s, %s, %s, %s, %s, %s, %s, %s, %s);' % (dim_str, width, height, depth, param.img_format, param.img_type, param.name, pcPtr, pixHeaderPtr)
+                                       print '} else {'
+                                       print '    (void) memcpy( %s, default_pixel_store_%uD, default_pixel_store_%uD_size );' % (pixHeaderPtr, dim, dim)
+                                       print '}'
+                               else:
+                                       print '__glXSendLargeImage(gc, compsize, %s, %s, %s, %s, %s, %s, %s, %s, %s);' % (dim_str, width, height, depth, param.img_format, param.img_type, param.name, pcPtr, pixHeaderPtr)
+
+               return
+
+
+       def large_emit_begin(self, f, op_name = None):
+               if not op_name:
+                       op_name = f.opcode_real_name()
+
+               print 'const GLint op = %s;' % (op_name)
+               print 'const GLuint cmdlenLarge = cmdlen + 4;'
+               print 'GLubyte * const pc = __glXFlushRenderBuffer(gc, gc->pc);'
+               print '(void) memcpy((void *)(pc + 0), (void *)(&cmdlenLarge), 4);'
+               print '(void) memcpy((void *)(pc + 4), (void *)(&op), 4);'
+               return
+
+
+       def common_func_print_just_start(self, f, name):
+               print '    __GLXcontext * const gc = __glXGetCurrentContext();'
+
+               # The only reason that single and vendor private commands need
+               # a variable called 'dpy' is becuase they use the SyncHandle
+               # macro.  For whatever brain-dead reason, that macro is hard-
+               # coded to use a variable called 'dpy' instead of taking a
+               # parameter.
+
+               # FIXME Simplify the logic related to skip_condition and
+               # FIXME condition_list in this function.  Basically, remove
+               # FIXME skip_condition, and just append the "dpy != NULL" type
+               # FIXME condition to condition_list from the start.  The only
+               # FIXME reason it's done in this confusing way now is to
+               # FIXME minimize the diffs in the generated code.
+
+               if not f.glx_rop:
+                       for p in f.parameterIterateOutputs():
+                               if p.is_image() and (p.img_format != "GL_COLOR_INDEX" or p.img_type != "GL_BITMAP"):
+                                       print '    const __GLXattribute * const state = gc->client_state_private;'
+                                       break
+
+                       print '    Display * const dpy = gc->currentDpy;'
+                       skip_condition = "dpy != NULL"
+               elif f.can_be_large:
+                       skip_condition = "gc->currentDpy != NULL"
+               else:
+                       skip_condition = None
+
+
+               if f.return_type != 'void':
+                       print '    %s retval = (%s) 0;' % (f.return_type, f.return_type)
+
+
+               if name != None and name not in f.glx_vendorpriv_names:
+                       print '#ifndef USE_XCB'
+               self.emit_packet_size_calculation(f, 0)
+               if name != None and name not in f.glx_vendorpriv_names:
+                       print '#endif'
+
+               condition_list = []
+               for p in f.parameterIterateCounters():
+                       condition_list.append( "%s >= 0" % (p.name) )
+                       # 'counter' parameters cannot be negative
+                       print "    if (%s < 0) {" % p.name
+                       print "        __glXSetError(gc, GL_INVALID_VALUE);"
+                       if f.return_type != 'void':
+                               print "        return 0;"
+                       else:
+                               print "        return;"
+                       print "    }"
+
+               if skip_condition:
+                       condition_list.append( skip_condition )
+
+               if len( condition_list ) > 0:
+                       if len( condition_list ) > 1:
+                               skip_condition = "(%s)" % (string.join( condition_list, ") && (" ))
+                       else:
+                               skip_condition = "%s" % (condition_list.pop(0))
+
+                       print '    if (__builtin_expect(%s, 1)) {' % (skip_condition)
+                       return 1
+               else:
+                       return 0
+
+
+       def printSingleFunction(self, f, name):
+               self.common_func_print_just_start(f, name)
+
+               if self.debug:
+                       print '        printf( "Enter %%s...\\n", "gl%s" );' % (f.name)
+
+               if name not in f.glx_vendorpriv_names:
+
+                       # XCB specific:
+                       print '#ifdef USE_XCB'
+                       if self.debug:
+                               print '        printf("\\tUsing XCB.\\n");'
+                       print '        xcb_connection_t *c = XGetXCBConnection(dpy);'
+                       print '        (void) __glXFlushRenderBuffer(gc, gc->pc);'
+                       xcb_name = 'xcb_glx%s' % convertStringForXCB(name)
+
+                       iparams=[]
+                       extra_iparams = []
+                       output = None
+                       for p in f.parameterIterator():
+                               if p.is_output:
+                                       output = p
+
+                                       if p.is_image():
+                                               if p.img_format != "GL_COLOR_INDEX" or p.img_type != "GL_BITMAP":
+                                                       extra_iparams.append("state->storePack.swapEndian")
+                                               else:
+                                                       extra_iparams.append("0")
+                                       
+                                               # Hardcode this in.  lsb_first param (apparently always GL_FALSE)
+                                               # also present in GetPolygonStipple, but taken care of above.
+                                               if xcb_name == "xcb_glx_read_pixels": 
+                                                       extra_iparams.append("0")
+                               else:
+                                       iparams.append(p.name)
+
+
+                       xcb_request = '%s(%s)' % (xcb_name, ", ".join(["c", "gc->currentContextTag"] + iparams + extra_iparams))
+
+                       if f.needs_reply():
+                               print '        %s_reply_t *reply = %s_reply(c, %s, NULL);' % (xcb_name, xcb_name, xcb_request)
+                               if output and f.reply_always_array:
+                                       print '        (void)memcpy(%s, %s_data(reply), %s_data_length(reply) * sizeof(%s));' % (output.name, xcb_name, xcb_name, output.get_base_type_string())
+
+                               elif output and not f.reply_always_array:
+                                       if not output.is_image():
+                                               print '        if (%s_data_length(reply) == 0)' % (xcb_name)
+                                               print '            (void)memcpy(%s, &reply->datum, sizeof(reply->datum));' % (output.name)
+                                               print '        else'
+                                       print '        (void)memcpy(%s, %s_data(reply), %s_data_length(reply) * sizeof(%s));' % (output.name, xcb_name, xcb_name, output.get_base_type_string())
+
+
+                               if f.return_type != 'void':
+                                       print '        retval = reply->ret_val;'
+                               print '        free(reply);'
+                       else:
+                               print '        ' + xcb_request + ';'
+                       print '#else'
+                       # End of XCB specific.
+
+
+               if f.parameters != []:
+                       pc_decl = "GLubyte const * pc ="
+               else:
+                       pc_decl = "(void)"
+
+               if name in f.glx_vendorpriv_names:
+                       print '        %s __glXSetupVendorRequest(gc, %s, %s, cmdlen);' % (pc_decl, f.opcode_real_name(), f.opcode_vendor_name(name))
+               else:
+                       print '        %s __glXSetupSingleRequest(gc, %s, cmdlen);' % (pc_decl, f.opcode_name())
+
+               self.common_emit_args(f, "pc", 0, 0)
+
+               images = f.get_images()
+
+               for img in images:
+                       if img.is_output:
+                               o = f.command_fixed_length() - 4
+                               print '        *(int32_t *)(pc + %u) = 0;' % (o)
+                               if img.img_format != "GL_COLOR_INDEX" or img.img_type != "GL_BITMAP":
+                                       print '        * (int8_t *)(pc + %u) = state->storePack.swapEndian;' % (o)
+               
+                               if f.img_reset:
+                                       print '        * (int8_t *)(pc + %u) = %s;' % (o + 1, f.img_reset)
+
+
+               return_name = ''
+               if f.needs_reply():
+                       if f.return_type != 'void':
+                               return_name = " retval"
+                               return_str = " retval = (%s)" % (f.return_type)
+                       else:
+                               return_str = " (void)"
+
+                       got_reply = 0
+
+                       for p in f.parameterIterateOutputs():
+                               if p.is_image():
+                                       [dim, w, h, d, junk] = p.get_dimensions()
+                                       if f.dimensions_in_reply:
+                                               print "        __glXReadPixelReply(dpy, gc, %u, 0, 0, 0, %s, %s, %s, GL_TRUE);" % (dim, p.img_format, p.img_type, p.name)
+                                       else:
+                                               print "        __glXReadPixelReply(dpy, gc, %u, %s, %s, %s, %s, %s, %s, GL_FALSE);" % (dim, w, h, d, p.img_format, p.img_type, p.name)
+
+                                       got_reply = 1
+                               else:
+                                       if f.reply_always_array:
+                                               aa = "GL_TRUE"
+                                       else:
+                                               aa = "GL_FALSE"
+
+                                       # gl_parameter.size() returns the size
+                                       # of the entire data item.  If the
+                                       # item is a fixed-size array, this is
+                                       # the size of the whole array.  This
+                                       # is not what __glXReadReply wants. It
+                                       # wants the size of a single data
+                                       # element in the reply packet.
+                                       # Dividing by the array size (1 for
+                                       # non-arrays) gives us this.
+
+                                       s = p.size() / p.get_element_count()
+                                       print "       %s __glXReadReply(dpy, %s, %s, %s);" % (return_str, s, p.name, aa)
+                                       got_reply = 1
+
+
+                       # If a reply wasn't read to fill an output parameter,
+                       # read a NULL reply to get the return value.
+
+                       if not got_reply:
+                               print "       %s __glXReadReply(dpy, 0, NULL, GL_FALSE);" % (return_str)
+
+
+               elif self.debug:
+                       # Only emit the extra glFinish call for functions
+                       # that don't already require a reply from the server.
+                       print '        __indirect_glFinish();'
+
+               if self.debug:
+                       print '        printf( "Exit %%s.\\n", "gl%s" );' % (name)
+
+
+               print '        UnlockDisplay(dpy); SyncHandle();'
+
+               if name not in f.glx_vendorpriv_names:
+                       print '#endif /* USE_XCB */'
+
+               print '    }'
+               print '    return%s;' % (return_name)
+               return
+
+
+       def printPixelFunction(self, f):
+               if self.pixel_stubs.has_key( f.name ):
+                       # Normally gl_function::get_parameter_string could be
+                       # used.  However, this call needs to have the missing
+                       # dimensions (e.g., a fake height value for
+                       # glTexImage1D) added in.
+
+                       p_string = ""
+                       for param in f.parameterIterateGlxSend():
+                               if param.is_padding:
+                                       continue
+
+                               p_string += ", " + param.name
+
+                               if param.is_image():
+                                       [dim, junk, junk, junk, junk] = param.get_dimensions()
+
+                               if f.pad_after(param):
+                                       p_string += ", 1"
+
+                       print '    %s(%s, %u%s );' % (self.pixel_stubs[f.name] , f.opcode_name(), dim, p_string)
+                       return
+
+
+               if self.common_func_print_just_start(f, None):
+                       trailer = "    }"
+               else:
+                       trailer = None
+
+
+               if f.can_be_large:
+                       print 'if (cmdlen <= gc->maxSmallRenderCommandSize) {'
+                       print '    if ( (gc->pc + cmdlen) > gc->bufEnd ) {'
+                       print '        (void) __glXFlushRenderBuffer(gc, gc->pc);'
+                       print '    }'
+
+               if f.glx_rop == ~0:
+                       opcode = "opcode"
+               else:
+                       opcode = f.opcode_real_name()
+
+               print 'emit_header(gc->pc, %s, cmdlen);' % (opcode)
+
+               self.pixel_emit_args( f, "gc->pc", 0 )
+               print 'gc->pc += cmdlen;'
+               print 'if (gc->pc > gc->limit) { (void) __glXFlushRenderBuffer(gc, gc->pc); }'
+
+               if f.can_be_large:
+                       print '}'
+                       print 'else {'
+
+                       self.large_emit_begin(f, opcode)
+                       self.pixel_emit_args(f, "pc", 1)
+
+                       print '}'
+
+               if trailer: print trailer
+               return
+
+
+       def printRenderFunction(self, f):
+               # There is a class of GL functions that take a single pointer
+               # as a parameter.  This pointer points to a fixed-size chunk
+               # of data, and the protocol for this functions is very
+               # regular.  Since they are so regular and there are so many
+               # of them, special case them with generic functions.  On
+               # x86, this saves about 26KB in the libGL.so binary.
+
+               if f.variable_length_parameter() == None and len(f.parameters) == 1:
+                       p = f.parameters[0]
+                       if p.is_pointer():
+                               cmdlen = f.command_fixed_length()
+                               if cmdlen in self.generic_sizes:
+                                       print '    generic_%u_byte( %s, %s );' % (cmdlen, f.opcode_real_name(), p.name)
+                                       return
+
+               if self.common_func_print_just_start(f, None):
+                       trailer = "    }"
+               else:
+                       trailer = None
+
+               if self.debug:
+                       print 'printf( "Enter %%s...\\n", "gl%s" );' % (f.name)
+
+               if f.can_be_large:
+                       print 'if (cmdlen <= gc->maxSmallRenderCommandSize) {'
+                       print '    if ( (gc->pc + cmdlen) > gc->bufEnd ) {'
+                       print '        (void) __glXFlushRenderBuffer(gc, gc->pc);'
+                       print '    }'
+
+               print 'emit_header(gc->pc, %s, cmdlen);' % (f.opcode_real_name())
+
+               self.common_emit_args(f, "gc->pc", 4, 0)
+               print 'gc->pc += cmdlen;'
+               print 'if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }'
+
+               if f.can_be_large:
+                       print '}'
+                       print 'else {'
+
+                       self.large_emit_begin(f)
+                       self.common_emit_args(f, "pc", 8, 1)
+
+                       p = f.variable_length_parameter()
+                       print '    __glXSendLargeCommand(gc, pc, %u, %s, %s);' % (p.offset + 8, p.name, p.size_string())
+                       print '}'
+
+               if self.debug:
+                       print '__indirect_glFinish();'
+                       print 'printf( "Exit %%s.\\n", "gl%s" );' % (f.name)
+
+               if trailer: print trailer
+               return
+
+
+class PrintGlxProtoInit_c(gl_XML.gl_print_base):
+       def __init__(self):
+               gl_XML.gl_print_base.__init__(self)
+
+               self.name = "glX_proto_send.py (from Mesa)"
+               self.license = license.bsd_license_template % ( \
+"""Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
+(C) Copyright IBM Corporation 2004""", "PRECISION INSIGHT, IBM")
+               return
+
+
+       def printRealHeader(self):
+               print """/**
+ * \\file indirect_init.c
+ * Initialize indirect rendering dispatch table.
+ *
+ * \\author Kevin E. Martin <kevin@precisioninsight.com>
+ * \\author Brian Paul <brian@precisioninsight.com>
+ * \\author Ian Romanick <idr@us.ibm.com>
+ */
+
+#include "indirect_init.h"
+#include "indirect.h"
+#include "glapi.h"
+
+
+/**
+ * No-op function used to initialize functions that have no GLX protocol
+ * support.
+ */
+static int NoOp(void)
+{
+    return 0;
+}
+
+/**
+ * Create and initialize a new GL dispatch table.  The table is initialized
+ * with GLX indirect rendering protocol functions.
+ */
+__GLapi * __glXNewIndirectAPI( void )
+{
+    __GLapi *glAPI;
+    GLuint entries;
+
+    entries = _glapi_get_dispatch_table_size();
+    glAPI = (__GLapi *) Xmalloc(entries * sizeof(void *));
+
+    /* first, set all entries to point to no-op functions */
+    {
+       int i;
+       void **dispatch = (void **) glAPI;
+       for (i = 0; i < entries; i++) {
+          dispatch[i] = (void *) NoOp;
+       }
+    }
+
+    /* now, initialize the entries we understand */"""
+
+       def printRealFooter(self):
+               print """
+    return glAPI;
+}
+"""
+               return
+
+
+       def printBody(self, api):
+               for [name, number] in api.categoryIterate():
+                       if number != None:
+                               preamble = '\n    /* %3u. %s */\n\n' % (int(number), name)
+                       else:
+                               preamble = '\n    /* %s */\n\n' % (name)
+
+                       for func in api.functionIterateByCategory(name):
+                               if func.client_supported_for_indirect():
+                                       print '%s    glAPI->%s = __indirect_gl%s;' % (preamble, func.name, func.name)
+                                       preamble = ''
+
+               return
+
+
+class PrintGlxProtoInit_h(gl_XML.gl_print_base):
+       def __init__(self):
+               gl_XML.gl_print_base.__init__(self)
+
+               self.name = "glX_proto_send.py (from Mesa)"
+               self.license = license.bsd_license_template % ( \
+"""Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
+(C) Copyright IBM Corporation 2004""", "PRECISION INSIGHT, IBM")
+               self.header_tag = "_INDIRECT_H_"
+
+               self.last_category = ""
+               return
+
+
+       def printRealHeader(self):
+               print """/**
+ * \\file
+ * Prototypes for indirect rendering functions.
+ *
+ * \\author Kevin E. Martin <kevin@precisioninsight.com>
+ * \\author Ian Romanick <idr@us.ibm.com>
+ */
+"""
+               self.printVisibility( "HIDDEN", "hidden" )
+               self.printFastcall()
+               self.printNoinline()
+
+               print """
+#include "glxclient.h"
+
+extern HIDDEN NOINLINE CARD32 __glXReadReply( Display *dpy, size_t size,
+    void * dest, GLboolean reply_is_always_array );
+
+extern HIDDEN NOINLINE void __glXReadPixelReply( Display *dpy,
+    __GLXcontext * gc, unsigned max_dim, GLint width, GLint height,
+    GLint depth, GLenum format, GLenum type, void * dest,
+    GLboolean dimensions_in_reply );
+
+extern HIDDEN NOINLINE FASTCALL GLubyte * __glXSetupSingleRequest(
+    __GLXcontext * gc, GLint sop, GLint cmdlen );
+
+extern HIDDEN NOINLINE FASTCALL GLubyte * __glXSetupVendorRequest(
+    __GLXcontext * gc, GLint code, GLint vop, GLint cmdlen );
+"""
+
+
+       def printBody(self, api):
+               for func in api.functionIterateGlx():
+                       params = func.get_parameter_string()
+
+                       print 'extern HIDDEN %s __indirect_gl%s(%s);' % (func.return_type, func.name, params)
+
+                       for n in func.entry_points:
+                               if func.has_different_protocol(n):
+                                       asdf = func.static_glx_name(n)
+                                       if asdf not in func.static_entry_points:
+                                               print 'extern HIDDEN %s gl%s(%s);' % (func.return_type, asdf, params)
+                                       else:
+                                               print 'GLAPI %s GLAPIENTRY gl%s(%s);' % (func.return_type, asdf, params)
+                                               
+                                       break
+
+
+
+def show_usage():
+       print "Usage: %s [-f input_file_name] [-m output_mode] [-d]" % sys.argv[0]
+       print "    -m output_mode   Output mode can be one of 'proto', 'init_c' or 'init_h'."
+       print "    -d               Enable extra debug information in the generated code."
+       sys.exit(1)
+
+
+if __name__ == '__main__':
+       file_name = "gl_API.xml"
+
+       try:
+               (args, trail) = getopt.getopt(sys.argv[1:], "f:m:d")
+       except Exception,e:
+               show_usage()
+
+       debug = 0
+       mode = "proto"
+       for (arg,val) in args:
+               if arg == "-f":
+                       file_name = val
+               elif arg == "-m":
+                       mode = val
+               elif arg == "-d":
+                       debug = 1
+
+       if mode == "proto":
+               printer = PrintGlxProtoStubs()
+       elif mode == "init_c":
+               printer = PrintGlxProtoInit_c()
+       elif mode == "init_h":
+               printer = PrintGlxProtoInit_h()
+       else:
+               show_usage()
+
+
+       printer.debug = debug
+       api = gl_XML.parse_GL_API( file_name, glX_XML.glx_item_factory() )
+
+       printer.Print( api )
diff --git a/src/mapi/glapi/gen/glX_proto_size.py b/src/mapi/glapi/gen/glX_proto_size.py
new file mode 100644 (file)
index 0000000..95cb511
--- /dev/null
@@ -0,0 +1,704 @@
+#!/usr/bin/env python
+
+# (C) Copyright IBM Corporation 2004, 2005
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+
+import gl_XML, glX_XML
+import license
+import sys, getopt, copy, string
+
+
+class glx_enum_function:
+       def __init__(self, func_name, enum_dict):
+               self.name = func_name
+               self.mode = 1
+               self.sig = None
+
+               # "enums" is a set of lists.  The element in the set is the
+               # value of the enum.  The list is the list of names for that
+               # value.  For example, [0x8126] = {"POINT_SIZE_MIN",
+               # "POINT_SIZE_MIN_ARB", "POINT_SIZE_MIN_EXT",
+               # "POINT_SIZE_MIN_SGIS"}.
+
+               self.enums = {}
+
+               # "count" is indexed by count values.  Each element of count
+               # is a list of index to "enums" that have that number of
+               # associated data elements.  For example, [4] = 
+               # {GL_AMBIENT, GL_DIFFUSE, GL_SPECULAR, GL_EMISSION,
+               # GL_AMBIENT_AND_DIFFUSE} (the enum names are used here,
+               # but the actual hexadecimal values would be in the array).
+
+               self.count = {}
+
+
+               # Fill self.count and self.enums using the dictionary of enums
+               # that was passed in.  The generic Get functions (e.g.,
+               # GetBooleanv and friends) are handled specially here.  In
+               # the data the generic Get functions are refered to as "Get".
+
+               if func_name in ["GetIntegerv", "GetBooleanv", "GetFloatv", "GetDoublev"]:
+                       match_name = "Get"
+               else:
+                       match_name = func_name
+
+               mode_set = 0
+               for enum_name in enum_dict:
+                       e = enum_dict[ enum_name ]
+
+                       if e.functions.has_key( match_name ):
+                               [count, mode] = e.functions[ match_name ]
+
+                               if mode_set and mode != self.mode:
+                                       raise RuntimeError("Not all enums for %s have the same mode." % (func_name))
+
+                               self.mode = mode
+
+                               if self.enums.has_key( e.value ):
+                                       if e.name not in self.enums[ e.value ]:
+                                               self.enums[ e.value ].append( e )
+                               else:
+                                       if not self.count.has_key( count ):
+                                               self.count[ count ] = []
+
+                                       self.enums[ e.value ] = [ e ]
+                                       self.count[ count ].append( e.value )
+
+
+               return
+
+
+       def signature( self ):
+               if self.sig == None:
+                       self.sig = ""
+                       for i in self.count:
+                               if i == None:
+                                       raise RuntimeError("i is None.  WTF?")
+
+                               self.count[i].sort()
+                               for e in self.count[i]:
+                                       self.sig += "%04x,%d," % (e, i)
+
+               return self.sig
+
+
+       def is_set( self ):
+               return self.mode
+
+
+       def PrintUsingTable(self):
+               """Emit the body of the __gl*_size function using a pair
+               of look-up tables and a mask.  The mask is calculated such
+               that (e & mask) is unique for all the valid values of e for
+               this function.  The result of (e & mask) is used as an index
+               into the first look-up table.  If it matches e, then the
+               same entry of the second table is returned.  Otherwise zero
+               is returned.
+               
+               It seems like this should cause better code to be generated.
+               However, on x86 at least, the resulting .o file is about 20%
+               larger then the switch-statment version.  I am leaving this
+               code in because the results may be different on other
+               platforms (e.g., PowerPC or x86-64)."""
+
+               return 0
+               count = 0
+               for a in self.enums:
+                       count += 1
+
+               if self.count.has_key(-1):
+                       return 0
+
+               # Determine if there is some mask M, such that M = (2^N) - 1,
+               # that will generate unique values for all of the enums.
+
+               mask = 0
+               for i in [1, 2, 3, 4, 5, 6, 7, 8]:
+                       mask = (1 << i) - 1
+
+                       fail = 0;
+                       for a in self.enums:
+                               for b in self.enums:
+                                       if a != b:
+                                               if (a & mask) == (b & mask):
+                                                       fail = 1;
+
+                       if not fail:
+                               break;
+                       else:
+                               mask = 0
+
+               if (mask != 0) and (mask < (2 * count)):
+                       masked_enums = {}
+                       masked_count = {}
+
+                       for i in range(0, mask + 1):
+                               masked_enums[i] = "0";
+                               masked_count[i] = 0;
+
+                       for c in self.count:
+                               for e in self.count[c]:
+                                       i = e & mask
+                                       enum_obj = self.enums[e][0]
+                                       masked_enums[i] = '0x%04x /* %s */' % (e, enum_obj.name )
+                                       masked_count[i] = c
+
+
+                       print '    static const GLushort a[%u] = {' % (mask + 1)
+                       for e in masked_enums:
+                               print '        %s, ' % (masked_enums[e])
+                       print '    };'
+
+                       print '    static const GLubyte b[%u] = {' % (mask + 1)
+                       for c in masked_count:
+                               print '        %u, ' % (masked_count[c])
+                       print '    };'
+
+                       print '    const unsigned idx = (e & 0x%02xU);' % (mask)
+                       print ''
+                       print '    return (e == a[idx]) ? (GLint) b[idx] : 0;'
+                       return 1;
+               else:
+                       return 0;
+
+
+       def PrintUsingSwitch(self, name):
+               """Emit the body of the __gl*_size function using a 
+               switch-statement."""
+
+               print '    switch( e ) {'
+
+               for c in self.count:
+                       for e in self.count[c]:
+                               first = 1
+
+                               # There may be multiple enums with the same
+                               # value.  This happens has extensions are
+                               # promoted from vendor-specific or EXT to
+                               # ARB and to the core.  Emit the first one as
+                               # a case label, and emit the others as
+                               # commented-out case labels.
+
+                               list = {}
+                               for enum_obj in self.enums[e]:
+                                       list[ enum_obj.priority() ] = enum_obj.name
+
+                               keys = list.keys()
+                               keys.sort()
+                               for k in keys:
+                                       j = list[k]
+                                       if first:
+                                               print '        case GL_%s:' % (j)
+                                               first = 0
+                                       else:
+                                               print '/*      case GL_%s:*/' % (j)
+                                       
+                       if c == -1:
+                               print '            return __gl%s_variable_size( e );' % (name)
+                       else:
+                               print '            return %u;' % (c)
+                                       
+               print '        default: return 0;'
+               print '    }'
+
+
+       def Print(self, name):
+               print 'INTERNAL PURE FASTCALL GLint'
+               print '__gl%s_size( GLenum e )' % (name)
+               print '{'
+
+               if not self.PrintUsingTable():
+                       self.PrintUsingSwitch(name)
+
+               print '}'
+               print ''
+
+
+class glx_server_enum_function(glx_enum_function):
+       def __init__(self, func, enum_dict):
+               glx_enum_function.__init__(self, func.name, enum_dict)
+               
+               self.function = func
+               return
+
+
+       def signature( self ):
+               if self.sig == None:
+                       sig = glx_enum_function.signature(self)
+
+                       p = self.function.variable_length_parameter()
+                       if p:
+                               sig += "%u" % (p.size())
+
+                       self.sig = sig
+
+               return self.sig;
+
+
+       def Print(self, name, printer):
+               f = self.function
+               printer.common_func_print_just_header( f )
+
+               fixup = []
+               
+               foo = {}
+               for param_name in f.count_parameter_list:
+                       o = f.offset_of( param_name )
+                       foo[o] = param_name
+
+               for param_name in f.counter_list:
+                       o = f.offset_of( param_name )
+                       foo[o] = param_name
+
+               keys = foo.keys()
+               keys.sort()
+               for o in keys:
+                       p = f.parameters_by_name[ foo[o] ]
+
+                       printer.common_emit_one_arg(p, "pc", 0)
+                       fixup.append( p.name )
+
+
+               print '    GLsizei compsize;'
+               print ''
+
+               printer.common_emit_fixups(fixup)
+
+               print ''
+               print '    compsize = __gl%s_size(%s);' % (f.name, string.join(f.count_parameter_list, ","))
+               p = f.variable_length_parameter()
+               print '    return __GLX_PAD(%s);' % (p.size_string())
+
+               print '}'
+               print ''
+
+
+class PrintGlxSizeStubs_common(gl_XML.gl_print_base):
+       do_get = (1 << 0)
+       do_set = (1 << 1)
+
+       def __init__(self, which_functions):
+               gl_XML.gl_print_base.__init__(self)
+
+               self.name = "glX_proto_size.py (from Mesa)"
+               self.license = license.bsd_license_template % ( "(C) Copyright IBM Corporation 2004", "IBM")
+
+               self.emit_set = ((which_functions & PrintGlxSizeStubs_common.do_set) != 0)
+               self.emit_get = ((which_functions & PrintGlxSizeStubs_common.do_get) != 0)
+               return
+
+
+class PrintGlxSizeStubs_c(PrintGlxSizeStubs_common):
+       def printRealHeader(self):
+               print ''
+               print '#include <GL/gl.h>'
+               if self.emit_get:
+                       print '#include "indirect_size_get.h"'
+                       print '#include "glxserver.h"'
+                       print '#include "indirect_util.h"'
+               
+               print '#include "indirect_size.h"'
+
+               print ''
+               self.printPure()
+               print ''
+               self.printFastcall()
+               print ''
+               self.printVisibility( "INTERNAL", "internal" )
+               print ''
+               print ''
+               print '#if defined(__CYGWIN__) || defined(__MINGW32__) || defined(__APPLE__)'
+               print '#  undef HAVE_ALIAS'
+               print '#endif'
+               print '#ifdef HAVE_ALIAS'
+               print '#  define ALIAS2(from,to) \\'
+               print '    INTERNAL PURE FASTCALL GLint __gl ## from ## _size( GLenum e ) \\'
+               print '        __attribute__ ((alias( # to )));'
+               print '#  define ALIAS(from,to) ALIAS2( from, __gl ## to ## _size )'
+               print '#else'
+               print '#  define ALIAS(from,to) \\'
+               print '    INTERNAL PURE FASTCALL GLint __gl ## from ## _size( GLenum e ) \\'
+               print '    { return __gl ## to ## _size( e ); }'
+               print '#endif'
+               print ''
+               print ''
+
+
+       def printBody(self, api):
+               enum_sigs = {}
+               aliases = []
+
+               for func in api.functionIterateGlx():
+                       ef = glx_enum_function( func.name, api.enums_by_name )
+                       if len(ef.enums) == 0:
+                               continue
+
+                       if (ef.is_set() and self.emit_set) or (not ef.is_set() and self.emit_get):
+                               sig = ef.signature()
+                               if enum_sigs.has_key( sig ):
+                                       aliases.append( [func.name, enum_sigs[ sig ]] )
+                               else:
+                                       enum_sigs[ sig ] = func.name
+                                       ef.Print( func.name )
+
+
+               for [alias_name, real_name] in aliases:
+                       print 'ALIAS( %s, %s )' % (alias_name, real_name)
+
+
+                               
+class PrintGlxSizeStubs_h(PrintGlxSizeStubs_common):
+       def printRealHeader(self):
+               print """/**
+ * \\file
+ * Prototypes for functions used to determine the number of data elements in
+ * various GLX protocol messages.
+ *
+ * \\author Ian Romanick <idr@us.ibm.com>
+ */
+"""
+               self.printPure();
+               print ''
+               self.printFastcall();
+               print ''
+               self.printVisibility( "INTERNAL", "internal" );
+               print ''
+
+
+       def printBody(self, api):
+               for func in api.functionIterateGlx():
+                       ef = glx_enum_function( func.name, api.enums_by_name )
+                       if len(ef.enums) == 0:
+                               continue
+
+                       if (ef.is_set() and self.emit_set) or (not ef.is_set() and self.emit_get):
+                               print 'extern INTERNAL PURE FASTCALL GLint __gl%s_size(GLenum);' % (func.name)
+
+
+class PrintGlxReqSize_common(gl_XML.gl_print_base):
+       """Common base class for PrintGlxSizeReq_h and PrintGlxSizeReq_h.
+
+       The main purpose of this common base class is to provide the infrastructure
+       for the derrived classes to iterate over the same set of functions.
+       """
+
+       def __init__(self):
+               gl_XML.gl_print_base.__init__(self)
+
+               self.name = "glX_proto_size.py (from Mesa)"
+               self.license = license.bsd_license_template % ( "(C) Copyright IBM Corporation 2005", "IBM")
+
+
+class PrintGlxReqSize_h(PrintGlxReqSize_common):
+       def __init__(self):
+               PrintGlxReqSize_common.__init__(self)
+               self.header_tag = "_INDIRECT_REQSIZE_H_"
+
+
+       def printRealHeader(self):
+               self.printVisibility("HIDDEN", "hidden")
+               print ''
+               self.printPure()
+               print ''
+
+
+       def printBody(self, api):
+               for func in api.functionIterateGlx():
+                       if not func.ignore and func.has_variable_size_request():
+                               print 'extern PURE HIDDEN int __glX%sReqSize(const GLbyte *pc, Bool swap);' % (func.name)
+
+
+class PrintGlxReqSize_c(PrintGlxReqSize_common):
+       """Create the server-side 'request size' functions.
+
+       Create the server-side functions that are used to determine what the
+       size of a varible length command should be.  The server then uses
+       this value to determine if the incoming command packed it malformed.
+       """
+
+       def __init__(self):
+               PrintGlxReqSize_common.__init__(self)
+               self.counter_sigs = {}
+
+
+       def printRealHeader(self):
+               print ''
+               print '#include <GL/gl.h>'
+               print '#include "glxserver.h"'
+               print '#include "glxbyteorder.h"'
+               print '#include "indirect_size.h"'
+               print '#include "indirect_reqsize.h"'
+               print ''
+               print '#define __GLX_PAD(x)  (((x) + 3) & ~3)'
+               print ''
+               print '#if defined(__CYGWIN__) || defined(__MINGW32__)'
+               print '#  undef HAVE_ALIAS'
+               print '#endif'
+               print '#ifdef HAVE_ALIAS'
+               print '#  define ALIAS2(from,to) \\'
+               print '    GLint __glX ## from ## ReqSize( const GLbyte * pc, Bool swap ) \\'
+               print '        __attribute__ ((alias( # to )));'
+               print '#  define ALIAS(from,to) ALIAS2( from, __glX ## to ## ReqSize )'
+               print '#else'
+               print '#  define ALIAS(from,to) \\'
+               print '    GLint __glX ## from ## ReqSize( const GLbyte * pc, Bool swap ) \\'
+               print '    { return __glX ## to ## ReqSize( pc, swap ); }'
+               print '#endif'
+               print ''
+               print ''
+
+
+       def printBody(self, api):
+               aliases = []
+               enum_functions = {}
+               enum_sigs = {}
+
+               for func in api.functionIterateGlx():
+                       if not func.has_variable_size_request(): continue
+
+                       ef = glx_server_enum_function( func, api.enums_by_name )
+                       if len(ef.enums) == 0: continue
+
+                       sig = ef.signature()
+
+                       if not enum_functions.has_key(func.name):
+                               enum_functions[ func.name ] = sig
+
+                       if not enum_sigs.has_key( sig ):
+                               enum_sigs[ sig ] = ef
+                       
+
+
+               for func in api.functionIterateGlx():
+                       # Even though server-handcode fuctions are on "the
+                       # list", and prototypes are generated for them, there
+                       # isn't enough information to generate a size
+                       # function.  If there was enough information, they
+                       # probably wouldn't need to be handcoded in the first
+                       # place!
+
+                       if func.server_handcode: continue
+                       if not func.has_variable_size_request(): continue
+
+                       if enum_functions.has_key(func.name):
+                               sig = enum_functions[func.name]
+                               ef = enum_sigs[ sig ]
+
+                               if ef.name != func.name:
+                                       aliases.append( [func.name, ef.name] )
+                               else:
+                                       ef.Print( func.name, self )
+
+                       elif func.images:
+                               self.printPixelFunction(func)
+                       elif func.has_variable_size_request():
+                               a = self.printCountedFunction(func)
+                               if a: aliases.append(a)
+
+
+               for [alias_name, real_name] in aliases:
+                       print 'ALIAS( %s, %s )' % (alias_name, real_name)
+
+               return
+
+
+       def common_emit_fixups(self, fixup):
+               """Utility function to emit conditional byte-swaps."""
+
+               if fixup:
+                       print '    if (swap) {'
+                       for name in fixup:
+                               print '        %s = bswap_32(%s);' % (name, name)
+                       print '    }'
+
+               return
+
+
+       def common_emit_one_arg(self, p, pc, adjust):
+               offset = p.offset
+               dst = p.string()
+               src = '(%s *)' % (p.type_string())
+               print '%-18s = *%11s(%s + %u);' % (dst, src, pc, offset + adjust);
+               return
+
+
+       def common_func_print_just_header(self, f):
+               print 'int'
+               print '__glX%sReqSize( const GLbyte * pc, Bool swap )' % (f.name)
+               print '{'
+
+
+       def printPixelFunction(self, f):
+               self.common_func_print_just_header(f)
+               
+               f.offset_of( f.parameters[0].name )
+               [dim, w, h, d, junk] = f.get_images()[0].get_dimensions()
+
+               print '    GLint row_length   = *  (GLint *)(pc +  4);'
+
+               if dim < 3:
+                       fixup = ['row_length', 'skip_rows', 'alignment']
+                       print '    GLint image_height = 0;'
+                       print '    GLint skip_images  = 0;'
+                       print '    GLint skip_rows    = *  (GLint *)(pc +  8);'
+                       print '    GLint alignment    = *  (GLint *)(pc + 16);'
+               else:
+                       fixup = ['row_length', 'image_height', 'skip_rows', 'skip_images', 'alignment']
+                       print '    GLint image_height = *  (GLint *)(pc +  8);'
+                       print '    GLint skip_rows    = *  (GLint *)(pc + 16);'
+                       print '    GLint skip_images  = *  (GLint *)(pc + 20);'
+                       print '    GLint alignment    = *  (GLint *)(pc + 32);'
+
+               img = f.images[0]
+               for p in f.parameterIterateGlxSend():
+                       if p.name in [w, h, d, img.img_format, img.img_type, img.img_target]:
+                               self.common_emit_one_arg(p, "pc", 0)
+                               fixup.append( p.name )
+
+               print ''
+
+               self.common_emit_fixups(fixup)
+
+               if img.img_null_flag:
+                       print ''
+                       print '    if (*(CARD32 *) (pc + %s))' % (img.offset - 4)
+                       print '        return 0;'
+
+               print ''
+               print '    return __glXImageSize(%s, %s, %s, %s, %s, %s,' % (img.img_format, img.img_type, img.img_target, w, h, d )
+               print '                          image_height, row_length, skip_images,'
+               print '                          skip_rows, alignment);'
+               print '}'
+               print ''
+               return
+
+
+       def printCountedFunction(self, f):
+
+               sig = ""
+               offset = 0
+               fixup = []
+               params = []
+               plus = ''
+               size = ''
+               param_offsets = {}
+
+               # Calculate the offset of each counter parameter and the
+               # size string for the variable length parameter(s).  While
+               # that is being done, calculate a unique signature for this
+               # function.
+
+               for p in f.parameterIterateGlxSend():
+                       if p.is_counter:
+                               fixup.append( p.name )
+                               params.append( p )
+                       elif p.counter:
+                               s = p.size()
+                               if s == 0: s = 1
+
+                               sig += "(%u,%u)" % (f.offset_of(p.counter), s)
+                               size += '%s%s' % (plus, p.size_string())
+                               plus = ' + '
+
+
+               # If the calculated signature matches a function that has
+               # already be emitted, don't emit this function.  Instead, add
+               # it to the list of function aliases.
+
+               if self.counter_sigs.has_key(sig):
+                       n = self.counter_sigs[sig];
+                       alias = [f.name, n]
+               else:
+                       alias = None
+                       self.counter_sigs[sig] = f.name
+
+                       self.common_func_print_just_header(f)
+
+                       for p in params:
+                               self.common_emit_one_arg(p, "pc", 0)
+
+
+                       print ''
+                       self.common_emit_fixups(fixup)
+                       print ''
+
+                       print '    return __GLX_PAD(%s);' % (size)
+                       print '}'
+                       print ''
+
+               return alias
+
+
+def show_usage():
+       print "Usage: %s [-f input_file_name] -m output_mode [--only-get | --only-set] [--get-alias-set]" % sys.argv[0]
+       print "    -m output_mode   Output mode can be one of 'size_c' or 'size_h'."
+       print "    --only-get       Only emit 'get'-type functions."
+       print "    --only-set       Only emit 'set'-type functions."
+       print ""
+       print "By default, both 'get' and 'set'-type functions are emitted."
+       sys.exit(1)
+
+
+if __name__ == '__main__':
+       file_name = "gl_API.xml"
+
+       try:
+               (args, trail) = getopt.getopt(sys.argv[1:], "f:m:h:", ["only-get", "only-set", "header-tag"])
+       except Exception,e:
+               show_usage()
+
+       mode = None
+       header_tag = None
+       which_functions = PrintGlxSizeStubs_common.do_get | PrintGlxSizeStubs_common.do_set
+
+       for (arg,val) in args:
+               if arg == "-f":
+                       file_name = val
+               elif arg == "-m":
+                       mode = val
+               elif arg == "--only-get":
+                       which_functions = PrintGlxSizeStubs_common.do_get
+               elif arg == "--only-set":
+                       which_functions = PrintGlxSizeStubs_common.do_set
+               elif (arg == '-h') or (arg == "--header-tag"):
+                       header_tag = val
+
+       if mode == "size_c":
+               printer = PrintGlxSizeStubs_c( which_functions )
+       elif mode == "size_h":
+               printer = PrintGlxSizeStubs_h( which_functions )
+               if header_tag:
+                       printer.header_tag = header_tag
+       elif mode == "reqsize_c":
+               printer = PrintGlxReqSize_c()
+       elif mode == "reqsize_h":
+               printer = PrintGlxReqSize_h()
+       else:
+               show_usage()
+
+       api = gl_XML.parse_GL_API( file_name, glX_XML.glx_item_factory() )
+
+
+       printer.Print( api )
diff --git a/src/mapi/glapi/gen/glX_server_table.py b/src/mapi/glapi/gen/glX_server_table.py
new file mode 100644 (file)
index 0000000..f3962f8
--- /dev/null
@@ -0,0 +1,411 @@
+#!/bin/env python
+
+# (C) Copyright IBM Corporation 2005, 2006
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+
+import gl_XML, glX_XML, glX_proto_common, license
+import sys, getopt
+
+
+def log2(value):
+       for i in range(0, 30):
+               p = 1 << i
+               if p >= value:
+                       return i
+
+       return -1
+
+
+def round_down_to_power_of_two(n):
+       """Returns the nearest power-of-two less than or equal to n."""
+
+       for i in range(30, 0, -1):
+               p = 1 << i
+               if p <= n:
+                       return p
+
+       return -1
+
+
+class function_table:
+       def __init__(self, name, do_size_check):
+               self.name_base = name
+               self.do_size_check = do_size_check
+
+
+               self.max_bits = 1
+               self.next_opcode_threshold = (1 << self.max_bits)
+               self.max_opcode = 0
+
+               self.functions = {}
+               self.lookup_table = []
+               
+               # Minimum number of opcodes in a leaf node.
+               self.min_op_bits = 3
+               self.min_op_count = (1 << self.min_op_bits)
+               return
+
+
+       def append(self, opcode, func):
+               self.functions[opcode] = func
+
+               if opcode > self.max_opcode:
+                       self.max_opcode = opcode
+
+                       if opcode > self.next_opcode_threshold:
+                               bits = log2(opcode)
+                               if (1 << bits) <= opcode:
+                                       bits += 1
+
+                               self.max_bits = bits
+                               self.next_opcode_threshold = 1 << bits
+               return
+
+
+       def divide_group(self, min_opcode, total):
+               """Divide the group starting min_opcode into subgroups.
+               Returns a tuple containing the number of bits consumed by
+               the node, the list of the children's tuple, and the number
+               of entries in the final array used by this node and its
+               children, and the depth of the subtree rooted at the node."""
+
+               remaining_bits = self.max_bits - total
+               next_opcode = min_opcode + (1 << remaining_bits)
+               empty_children = 0
+               
+               for M in range(0, remaining_bits):
+                       op_count = 1 << (remaining_bits - M);
+                       child_count = 1 << M;
+
+                       empty_children = 0
+                       full_children = 0
+                       for i in range(min_opcode, next_opcode, op_count):
+                               used = 0
+                               empty = 0
+
+                               for j in range(i, i + op_count):
+                                       if self.functions.has_key(j):
+                                               used += 1;
+                                       else:
+                                               empty += 1;
+                                               
+
+                               if empty == op_count:
+                                       empty_children += 1
+
+                               if used == op_count:
+                                       full_children += 1
+
+                       if (empty_children > 0) or (full_children == child_count) or (op_count <= self.min_op_count):
+                               break
+
+
+               # If all the remaining bits are used by this node, as is the
+               # case when M is 0 or remaining_bits, the node is a leaf.
+
+               if (M == 0) or (M == remaining_bits):
+                       return [remaining_bits, [], 0, 0]
+               else:
+                       children = []
+                       count = 1
+                       depth = 1
+                       all_children_are_nonempty_leaf_nodes = 1
+                       for i in range(min_opcode, next_opcode, op_count):
+                               n = self.divide_group(i, total + M)
+
+                               if not (n[1] == [] and not self.is_empty_leaf(i, n[0])):
+                                       all_children_are_nonempty_leaf_nodes = 0
+
+                               children.append(n)
+                               count += n[2] + 1
+                               
+                               if n[3] >= depth:
+                                       depth = n[3] + 1
+
+                       # If all of the child nodes are non-empty leaf nodes, pull
+                       # them up and make this node a leaf.
+
+                       if all_children_are_nonempty_leaf_nodes:
+                               return [remaining_bits, [], 0, 0]
+                       else:
+                               return [M, children, count, depth]
+
+
+       def is_empty_leaf(self, base_opcode, M):
+               for op in range(base_opcode, base_opcode + (1 << M)):
+                       if self.functions.has_key(op):
+                               return 0
+                               break
+
+               return 1
+
+
+       def dump_tree(self, node, base_opcode, remaining_bits, base_entry, depth):
+               M = node[0]
+               children = node[1]
+               child_M = remaining_bits - M
+
+
+               # This actually an error condition.
+               if children == []:
+                       return
+
+               print '    /* [%u] -> opcode range [%u, %u], node depth %u */' % (base_entry, base_opcode, base_opcode + (1 << remaining_bits), depth)
+               print '    %u,' % (M)
+
+               base_entry += (1 << M) + 1
+
+               child_index = base_entry
+               child_base_opcode = base_opcode
+               for child in children:
+                       if child[1] == []:
+                               if self.is_empty_leaf(child_base_opcode, child_M):
+                                       print '    EMPTY_LEAF,'
+                               else:
+                                       # Emit the index of the next dispatch
+                                       # function.  Then add all the
+                                       # dispatch functions for this leaf
+                                       # node to the dispatch function
+                                       # lookup table.
+
+                                       print '    LEAF(%u),' % (len(self.lookup_table))
+
+                                       for op in range(child_base_opcode, child_base_opcode + (1 << child_M)):
+                                               if self.functions.has_key(op):
+                                                       func = self.functions[op]
+                                                       size = func.command_fixed_length()
+
+                                                       if func.glx_rop != 0:
+                                                               size += 4
+
+                                                       size = ((size + 3) & ~3)
+
+                                                       if func.has_variable_size_request():
+                                                               size_name = "__glX%sReqSize" % (func.name)
+                                                       else:
+                                                               size_name = ""
+
+                                                       if func.glx_vendorpriv == op:
+                                                               func_name = func.glx_vendorpriv_names[0]
+                                                       else:
+                                                               func_name = func.name
+
+                                                       temp = [op, "__glXDisp_%s" % (func_name), "__glXDispSwap_%s" % (func_name), size, size_name]
+                                               else:
+                                                       temp = [op, "NULL", "NULL", 0, ""]
+
+                                               self.lookup_table.append(temp)
+                       else:
+                               print '    %u,' % (child_index)
+                               child_index += child[2]
+
+                       child_base_opcode += 1 << child_M
+
+               print ''
+
+               child_index = base_entry
+               for child in children:
+                       if child[1] != []:
+                               self.dump_tree(child, base_opcode, remaining_bits - M, child_index, depth + 1)
+                               child_index += child[2]
+
+                       base_opcode += 1 << (remaining_bits - M)
+
+
+       def Print(self):
+               # Each dispatch table consists of two data structures.
+               #
+               # The first structure is an N-way tree where the opcode for
+               # the function is the key.  Each node switches on a range of
+               # bits from the opcode.  M bits are extracted from the opcde
+               # and are used as an index to select one of the N, where
+               # N = 2^M, children.
+               #
+               # The tree is stored as a flat array.  The first value is the
+               # number of bits, M, used by the node.  For inner nodes, the
+               # following 2^M values are indexes into the array for the
+               # child nodes.  For leaf nodes, the followign 2^M values are
+               # indexes into the second data structure.
+               #
+               # If an inner node's child index is 0, the child is an empty
+               # leaf node.  That is, none of the opcodes selectable from
+               # that child exist.  Since most of the possible opcode space
+               # is unused, this allows compact data storage.
+               #
+               # The second data structure is an array of pairs of function
+               # pointers.  Each function contains a pointer to a protocol
+               # decode function and a pointer to a byte-swapped protocol
+               # decode function.  Elements in this array are selected by the
+               # leaf nodes of the first data structure.
+               #
+               # As the tree is traversed, an accumulator is kept.  This
+               # accumulator counts the bits of the opcode consumed by the
+               # traversal.  When accumulator + M = B, where B is the
+               # maximum number of bits in an opcode, the traversal has
+               # reached a leaf node.  The traversal starts with the most
+               # significant bits and works down to the least significant
+               # bits.
+               #
+               # Creation of the tree is the most complicated part.  At
+               # each node the elements are divided into groups of 2^M
+               # elements.  The value of M selected is the smallest possible
+               # value where all of the groups are either empty or full, or
+               # the groups are a preset minimum size.  If all the children
+               # of a node are non-empty leaf nodes, the children are merged
+               # to create a single leaf node that replaces the parent.
+
+               tree = self.divide_group(0, 0)
+
+               print '/*****************************************************************/'
+               print '/* tree depth = %u */' % (tree[3])
+               print 'static const int_fast16_t %s_dispatch_tree[%u] = {' % (self.name_base, tree[2])
+               self.dump_tree(tree, 0, self.max_bits, 0, 1)
+               print '};\n'
+               
+               # After dumping the tree, dump the function lookup table.
+               
+               print 'static const void *%s_function_table[%u][2] = {' % (self.name_base, len(self.lookup_table))
+               index = 0
+               for func in self.lookup_table:
+                       opcode = func[0]
+                       name = func[1]
+                       name_swap = func[2]
+                       
+                       print '    /* [% 3u] = %5u */ {%s, %s},' % (index, opcode, name, name_swap)
+                       
+                       index += 1
+
+               print '};\n'
+               
+               if self.do_size_check:
+                       var_table = []
+
+                       print 'static const int_fast16_t %s_size_table[%u][2] = {' % (self.name_base, len(self.lookup_table))
+                       index = 0
+                       var_table = []
+                       for func in self.lookup_table:
+                               opcode = func[0]
+                               fixed = func[3]
+                               var = func[4]
+                               
+                               if var != "":
+                                       var_offset = "%2u" % (len(var_table))
+                                       var_table.append(var)
+                               else:
+                                       var_offset = "~0"
+
+                               print '    /* [%3u] = %5u */ {%3u, %s},' % (index, opcode, fixed, var_offset)
+                               index += 1
+
+                               
+                       print '};\n'
+
+
+                       print 'static const gl_proto_size_func %s_size_func_table[%u] = {' % (self.name_base, len(var_table))
+                       for func in var_table:
+                               print '   %s,' % (func)
+                       print '};\n'
+
+
+               print 'const struct __glXDispatchInfo %s_dispatch_info = {' % (self.name_base)
+               print '    %u,' % (self.max_bits)
+               print '    %s_dispatch_tree,' % (self.name_base)
+               print '    %s_function_table,' % (self.name_base)
+               if self.do_size_check:
+                       print '    %s_size_table,' % (self.name_base)
+                       print '    %s_size_func_table' % (self.name_base)
+               else:
+                       print '    NULL,'
+                       print '    NULL'
+               print '};\n'
+               return
+
+
+class PrintGlxDispatchTables(glX_proto_common.glx_print_proto):
+       def __init__(self):
+               gl_XML.gl_print_base.__init__(self)
+               self.name = "glX_server_table.py (from Mesa)"
+               self.license = license.bsd_license_template % ( "(C) Copyright IBM Corporation 2005, 2006", "IBM")
+
+               self.rop_functions = function_table("Render", 1)
+               self.sop_functions = function_table("Single", 0)
+               self.vop_functions = function_table("VendorPriv", 0)
+               return
+
+
+       def printRealHeader(self):
+               print '#include <inttypes.h>'
+               print '#include "glxserver.h"'
+               print '#include "glxext.h"'
+               print '#include "indirect_dispatch.h"'
+               print '#include "indirect_reqsize.h"'
+               print '#include "g_disptab.h"'
+               print '#include "indirect_table.h"'
+               print ''
+               return
+
+
+       def printBody(self, api):
+               for f in api.functionIterateAll():
+                       if not f.ignore and f.vectorequiv == None:
+                               if f.glx_rop != 0:
+                                       self.rop_functions.append(f.glx_rop, f)
+                               if f.glx_sop != 0:
+                                       self.sop_functions.append(f.glx_sop, f)
+                               if f.glx_vendorpriv != 0:
+                                       self.vop_functions.append(f.glx_vendorpriv, f)
+
+               self.sop_functions.Print()
+               self.rop_functions.Print()
+               self.vop_functions.Print()
+               return
+
+
+if __name__ == '__main__':
+       file_name = "gl_API.xml"
+
+       try:
+               (args, trail) = getopt.getopt(sys.argv[1:], "f:m")
+       except Exception,e:
+               show_usage()
+
+       mode = "table_c"
+       for (arg,val) in args:
+               if arg == "-f":
+                       file_name = val
+               elif arg == "-m":
+                       mode = val
+
+       if mode == "table_c":
+               printer = PrintGlxDispatchTables()
+       else:
+               show_usage()
+
+
+       api = gl_XML.parse_GL_API( file_name, glX_XML.glx_item_factory() )
+
+
+       printer.Print( api )
diff --git a/src/mapi/glapi/gen/gl_API.dtd b/src/mapi/glapi/gen/gl_API.dtd
new file mode 100644 (file)
index 0000000..30c646c
--- /dev/null
@@ -0,0 +1,140 @@
+<!ELEMENT OpenGLAPI (category?, xi:include?, OpenGLAPI?)+>
+<!ELEMENT category (type*, enum*, function*)*>
+<!ELEMENT type EMPTY>
+<!ELEMENT enum (size*)>
+<!ELEMENT size EMPTY>
+<!ELEMENT function (param*, return?, glx?)*>
+<!ELEMENT param EMPTY>
+<!ELEMENT return EMPTY>
+<!ELEMENT glx EMPTY>
+
+<!ELEMENT xi:include (xi:fallback)?>
+<!ATTLIST xi:include
+          xmlns:xi  CDATA #FIXED "http://www.w3.org/2001/XInclude"
+          href       CDATA #REQUIRED
+          parse      (xml|text) "xml"
+          encoding   CDATA #IMPLIED>
+<!ELEMENT xi:fallback ANY>
+<!ATTLIST xi:fallback
+          xmlns:xi   CDATA #FIXED "http://www.w3.org/2001/XInclude">
+
+
+<!ATTLIST category name                NMTOKEN #REQUIRED
+                   number              NMTOKEN #IMPLIED
+                  window_system       NMTOKEN #IMPLIED>
+<!ATTLIST type     name                NMTOKEN #REQUIRED
+                   size                NMTOKEN #REQUIRED
+                  float               (true | false) "false"
+                  unsigned            (true | false) "false"
+                   glx_name            NMTOKEN #IMPLIED>
+<!ATTLIST enum     name                NMTOKEN #REQUIRED
+                   count               CDATA   #IMPLIED
+                   value               NMTOKEN #REQUIRED>
+<!ATTLIST function name                NMTOKEN #REQUIRED
+                   alias               NMTOKEN #IMPLIED
+                   offset              CDATA   #IMPLIED
+                   static_dispatch     (true | false) "true"
+                   vectorequiv         NMTOKEN #IMPLIED>
+<!ATTLIST size     name                NMTOKEN #REQUIRED
+                   count               NMTOKEN #IMPLIED
+                   mode                (get | set) "set">
+<!ATTLIST param    name                NMTOKEN #REQUIRED
+                   type                CDATA   #REQUIRED
+                  client_only         (true | false) "false"
+                   count               NMTOKEN #IMPLIED
+                   counter             (true | false) "false"
+                   count_scale         NMTOKEN "1"
+                   output              (true | false) "false"
+                   padding             (true | false) "false"
+                   img_width           NMTOKEN #IMPLIED
+                   img_height          NMTOKEN #IMPLIED
+                   img_depth           NMTOKEN #IMPLIED
+                   img_extent          NMTOKEN #IMPLIED
+                   img_xoff            NMTOKEN #IMPLIED
+                   img_yoff            NMTOKEN #IMPLIED
+                   img_zoff            NMTOKEN #IMPLIED
+                   img_woff            NMTOKEN #IMPLIED
+                   img_format          NMTOKEN #IMPLIED
+                   img_type            NMTOKEN #IMPLIED
+                   img_target          NMTOKEN #IMPLIED
+                   img_send_null       (true | false) "false"
+                   img_null_flag       (true | false) "false"
+                   img_pad_dimensions  (true | false) "false"
+                   variable_param      NMTOKENS #IMPLIED>
+<!ATTLIST return   type                CDATA   "void">
+<!ATTLIST glx      rop                 NMTOKEN #IMPLIED
+                   sop                 NMTOKEN #IMPLIED
+                   vendorpriv          NMTOKEN #IMPLIED
+                   large               (true | false) "false"
+                   doubles_in_order    (true | false) "false"
+                   always_array        (true | false) "false"
+                   handcode            (true | false | client | server) "false"
+                   img_reset           NMTOKEN #IMPLIED
+                   dimensions_in_reply (true | false) "false"
+                   ignore              (true | false) "false">
+
+<!--
+The various attributes for param and glx have the meanings listed below.
+When adding new functions, please annote them correctly.  In most cases this
+will just mean adding a '<glx ignore="true"/>' tag.
+
+param:
+     name - name of the parameter
+     type - fully qualified type (e.g., with "const", etc.)
+     client_only - boolean flag set on parameters which are interpreted only
+         by the client and are not present in the protocol encoding (e.g.,
+        the stride parameters to Map1f, etc.)
+     count - for counted arrays (e.g., the 'lists' parameter to glCallLists),
+         the parameter or literal that represents the count.  For functions
+         like glVertex3fv it will be a litteral, for others it will be one of
+         the parameters.
+     counter - this parameter is a counter that will be referenced by the
+         'count' attribute in another parameter.
+     count_scale - literal value scale factor for the 'count' attribute.
+         See ProgramParameters4dvNV for an example.
+     output - this parameter is used to store the output of the function.
+     variable_param - name of parameter used to determine the number of
+         elements referenced by this parameter.  This should be the name of a
+         single enum parameter.  Most of the gl*Parameter[if]v functions use
+         this.  Additionally, the enums that can be passed should be properly
+         annotated.
+     img_width / img_height / img_depth / img_extent - name of parameters
+         (or hardcoded integer) used for the dimensions of pixel data.
+     img_xoff / img_yoff / img_zoff / img_woff - name of parameters used
+         for x, y, z, and w offsets of pixel data.
+     img_format - name of parameter used as the pixel data format.
+     img_type - name of parameter used as the pixel data type.
+     img_target - name of parameter used as a texture target.  Non-texture
+        pixel data should hardcode 0.
+     img_send_null - boolean flag to determine if blank pixel data should
+        be sent when a NULL pointer is passed.  This is only used by
+        TexImage1D and TexImage2D.
+     img_null_flag - boolean flag to determine if an extra flag is used to
+        determine if a NULL pixel pointer was passed.  This is used by
+        TexSubImage1D, TexSubImage2D, TexImage3D and others.
+     img_pad_dimensions - boolean flag to determine if dimension data and
+        offset data should be padded to the next even number of dimensions.
+        For example, this will insert an empty "height" field after the
+        "width" field in the protocol for TexImage1D.
+
+glx:
+     rop - Opcode value for "render" commands
+     sop - Opcode value for "single" commands
+     vendorpriv - Opcode value for vendor private (or vendor private with
+         reply) commands
+     large - set to "true" of the render command can use RenderLarge protocol.
+     doubles_in_order - older commands always put GLdouble data at the
+         start of the render packet.  Newer commands (e.g., 
+         ProgramEnvParameter4dvARB) put the in the order that they appear
+         in the parameter list.
+     always_array - some single commands take reply data as an array or as
+         return value data (e.g., glGetLightfv).  Other single commands take
+         reply data only as an array (e.g., glGetClipPlane).
+     handcode - some functions are just too complicated to generate 
+         (e.g., glSeperableFilter2D) or operate only on client-side data
+         (e.g., glVertexPointer) and must be handcoded.
+     ignore - some functions have an entry in the dispatch table, but aren't
+         suitable for protocol implementation (e.g., glLockArraysEXT).  This
+         also applies to functions that don't have any GLX protocol specified
+         (e.g., glGetFogFuncSGIS).
+-->
diff --git a/src/mapi/glapi/gen/gl_API.xml b/src/mapi/glapi/gen/gl_API.xml
new file mode 100644 (file)
index 0000000..31df7a5
--- /dev/null
@@ -0,0 +1,12512 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<OpenGLAPI>
+
+<!-- Core versions sorted by version number. -->
+
+<category name="1.0">
+    <enum name="FALSE"                                    value="0x0"/>
+    <enum name="TRUE"                                     value="0x1"/>
+    <enum name="ZERO"                                     value="0x0"/>
+    <enum name="ONE"                                      value="0x1"/>
+    <enum name="NONE"                                     value="0x0"/>
+    <enum name="NO_ERROR"                                 value="0x0"/>
+    <enum name="POINTS"                                   value="0x0000"/>
+    <enum name="LINES"                                    value="0x0001"/>
+    <enum name="LINE_LOOP"                                value="0x0002"/>
+    <enum name="LINE_STRIP"                               value="0x0003"/>
+    <enum name="TRIANGLES"                                value="0x0004"/>
+    <enum name="TRIANGLE_STRIP"                           value="0x0005"/>
+    <enum name="TRIANGLE_FAN"                             value="0x0006"/>
+    <enum name="QUADS"                                    value="0x0007"/>
+    <enum name="QUAD_STRIP"                               value="0x0008"/>
+    <enum name="POLYGON"                                  value="0x0009"/>
+    <enum name="ACCUM"                                    value="0x0100"/>
+    <enum name="LOAD"                                     value="0x0101"/>
+    <enum name="RETURN"                                   value="0x0102"/>
+    <enum name="MULT"                                     value="0x0103"/>
+    <enum name="ADD"                                      value="0x0104"/>
+    <enum name="NEVER"                                    value="0x0200"/>
+    <enum name="LESS"                                     value="0x0201"/>
+    <enum name="EQUAL"                                    value="0x0202"/>
+    <enum name="LEQUAL"                                   value="0x0203"/>
+    <enum name="GREATER"                                  value="0x0204"/>
+    <enum name="NOTEQUAL"                                 value="0x0205"/>
+    <enum name="GEQUAL"                                   value="0x0206"/>
+    <enum name="ALWAYS"                                   value="0x0207"/>
+    <enum name="SRC_COLOR"                                value="0x0300"/>
+    <enum name="ONE_MINUS_SRC_COLOR"                      value="0x0301"/>
+    <enum name="SRC_ALPHA"                                value="0x0302"/>
+    <enum name="ONE_MINUS_SRC_ALPHA"                      value="0x0303"/>
+    <enum name="DST_ALPHA"                                value="0x0304"/>
+    <enum name="ONE_MINUS_DST_ALPHA"                      value="0x0305"/>
+    <enum name="DST_COLOR"                                value="0x0306"/>
+    <enum name="ONE_MINUS_DST_COLOR"                      value="0x0307"/>
+    <enum name="SRC_ALPHA_SATURATE"                       value="0x0308"/>
+    <enum name="FRONT_LEFT"                               value="0x0400"/>
+    <enum name="FRONT_RIGHT"                              value="0x0401"/>
+    <enum name="BACK_LEFT"                                value="0x0402"/>
+    <enum name="BACK_RIGHT"                               value="0x0403"/>
+    <enum name="FRONT"                                    value="0x0404"/>
+    <enum name="BACK"                                     value="0x0405"/>
+    <enum name="LEFT"                                     value="0x0406"/>
+    <enum name="RIGHT"                                    value="0x0407"/>
+    <enum name="FRONT_AND_BACK"                           value="0x0408"/>
+    <enum name="AUX0"                                     value="0x0409"/>
+    <enum name="AUX1"                                     value="0x040A"/>
+    <enum name="AUX2"                                     value="0x040B"/>
+    <enum name="AUX3"                                     value="0x040C"/>
+    <enum name="INVALID_VALUE"                            value="0x0501"/>
+    <enum name="INVALID_ENUM"                             value="0x0500"/>
+    <enum name="INVALID_OPERATION"                        value="0x0502"/>
+    <enum name="STACK_OVERFLOW"                           value="0x0503"/>
+    <enum name="STACK_UNDERFLOW"                          value="0x0504"/>
+    <enum name="OUT_OF_MEMORY"                            value="0x0505"/>
+    <enum name="2D"                                       value="0x0600"/>
+    <enum name="3D"                                       value="0x0601"/>
+    <enum name="3D_COLOR"                                 value="0x0602"/>
+    <enum name="3D_COLOR_TEXTURE"                         value="0x0603"/>
+    <enum name="4D_COLOR_TEXTURE"                         value="0x0604"/>
+    <enum name="PASS_THROUGH_TOKEN"                       value="0x0700"/>
+    <enum name="POINT_TOKEN"                              value="0x0701"/>
+    <enum name="LINE_TOKEN"                               value="0x0702"/>
+    <enum name="POLYGON_TOKEN"                            value="0x0703"/>
+    <enum name="BITMAP_TOKEN"                             value="0x0704"/>
+    <enum name="DRAW_PIXEL_TOKEN"                         value="0x0705"/>
+    <enum name="COPY_PIXEL_TOKEN"                         value="0x0706"/>
+    <enum name="LINE_RESET_TOKEN"                         value="0x0707"/>
+    <enum name="EXP"                                      value="0x0800"/>
+    <enum name="EXP2"                                     value="0x0801"/>
+    <enum name="CW"                                       value="0x0900"/>
+    <enum name="CCW"                                      value="0x0901"/>
+    <enum name="COEFF"                                    value="0x0A00"/>
+    <enum name="ORDER"                                    value="0x0A01"/>
+    <enum name="DOMAIN"                                   value="0x0A02"/>
+    <enum name="CURRENT_COLOR"                 count="4"  value="0x0B00">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CURRENT_INDEX"                 count="1"  value="0x0B01">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CURRENT_NORMAL"                count="3"  value="0x0B02">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CURRENT_TEXTURE_COORDS"        count="4"  value="0x0B03">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CURRENT_RASTER_COLOR"          count="4"  value="0x0B04">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CURRENT_RASTER_INDEX"          count="1"  value="0x0B05">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CURRENT_RASTER_TEXTURE_COORDS" count="4"  value="0x0B06">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CURRENT_RASTER_POSITION"       count="4"  value="0x0B07">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CURRENT_RASTER_POSITION_VALID" count="1"  value="0x0B08">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CURRENT_RASTER_DISTANCE"       count="1"  value="0x0B09">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POINT_SMOOTH"                  count="1"  value="0x0B10">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POINT_SIZE"                    count="1"  value="0x0B11">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POINT_SIZE_RANGE"              count="2"  value="0x0B12">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POINT_SIZE_GRANULARITY"        count="1"  value="0x0B13">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LINE_SMOOTH"                   count="1"  value="0x0B20">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LINE_WIDTH"                    count="1"  value="0x0B21">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LINE_WIDTH_RANGE"              count="2"  value="0x0B22">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LINE_WIDTH_GRANULARITY"        count="1"  value="0x0B23">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LINE_STIPPLE"                  count="1"  value="0x0B24">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LINE_STIPPLE_PATTERN"          count="1"  value="0x0B25">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LINE_STIPPLE_REPEAT"           count="1"  value="0x0B26">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIST_MODE"                     count="1"  value="0x0B30">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_LIST_NESTING"              count="1"  value="0x0B31">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIST_BASE"                     count="1"  value="0x0B32">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIST_INDEX"                    count="1"  value="0x0B33">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POLYGON_MODE"                  count="2"  value="0x0B40">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POLYGON_SMOOTH"                count="1"  value="0x0B41">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POLYGON_STIPPLE"               count="1"  value="0x0B42">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="EDGE_FLAG"                     count="1"  value="0x0B43">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CULL_FACE"                     count="1"  value="0x0B44">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CULL_FACE_MODE"                count="1"  value="0x0B45">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FRONT_FACE"                    count="1"  value="0x0B46">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHTING"                      count="1"  value="0x0B50">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT_MODEL_LOCAL_VIEWER"      count="1"  value="0x0B51">
+        <size name="LightModelfv"/>
+        <size name="LightModeliv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT_MODEL_TWO_SIDE"          count="1"  value="0x0B52">
+        <size name="LightModelfv"/>
+        <size name="LightModeliv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT_MODEL_AMBIENT"           count="4"  value="0x0B53">
+        <size name="LightModelfv"/>
+        <size name="LightModeliv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SHADE_MODEL"                   count="1"  value="0x0B54">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_MATERIAL_FACE"           count="1"  value="0x0B55">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_MATERIAL_PARAMETER"      count="1"  value="0x0B56">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_MATERIAL"                count="1"  value="0x0B57">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG"                           count="1"  value="0x0B60">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_INDEX"                     count="1"  value="0x0B61">
+        <size name="Fogfv"/>
+        <size name="Fogiv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_DENSITY"                   count="1"  value="0x0B62">
+        <size name="Fogfv"/>
+        <size name="Fogiv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_START"                     count="1"  value="0x0B63">
+        <size name="Fogfv"/>
+        <size name="Fogiv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_END"                       count="1"  value="0x0B64">
+        <size name="Fogfv"/>
+        <size name="Fogiv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_MODE"                      count="1"  value="0x0B65">
+        <size name="Fogfv"/>
+        <size name="Fogiv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_COLOR"                     count="4"  value="0x0B66">
+        <size name="Fogfv"/>
+        <size name="Fogiv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DEPTH_RANGE"                   count="2"  value="0x0B70">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DEPTH_TEST"                    count="1"  value="0x0B71">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DEPTH_WRITEMASK"               count="1"  value="0x0B72">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DEPTH_CLEAR_VALUE"             count="1"  value="0x0B73">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DEPTH_FUNC"                    count="1"  value="0x0B74">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ACCUM_CLEAR_VALUE"             count="4"  value="0x0B80">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_TEST"                  count="1"  value="0x0B90">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_CLEAR_VALUE"           count="1"  value="0x0B91">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_FUNC"                  count="1"  value="0x0B92">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_VALUE_MASK"            count="1"  value="0x0B93">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_FAIL"                  count="1"  value="0x0B94">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_PASS_DEPTH_FAIL"       count="1"  value="0x0B95">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_PASS_DEPTH_PASS"       count="1"  value="0x0B96">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_REF"                   count="1"  value="0x0B97">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_WRITEMASK"             count="1"  value="0x0B98">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MATRIX_MODE"                   count="1"  value="0x0BA0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="NORMALIZE"                     count="1"  value="0x0BA1">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VIEWPORT"                      count="4"  value="0x0BA2">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW_STACK_DEPTH"         count="1"  value="0x0BA3">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PROJECTION_STACK_DEPTH"        count="1"  value="0x0BA4">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_STACK_DEPTH"           count="1"  value="0x0BA5">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW_MATRIX"              count="16" value="0x0BA6">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PROJECTION_MATRIX"             count="16" value="0x0BA7">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_MATRIX"                count="16" value="0x0BA8">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ATTRIB_STACK_DEPTH"            count="1"  value="0x0BB0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CLIENT_ATTRIB_STACK_DEPTH"     count="1"  value="0x0BB1">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ALPHA_TEST"                    count="1"  value="0x0BC0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ALPHA_TEST_FUNC"               count="1"  value="0x0BC1">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ALPHA_TEST_REF"                count="1"  value="0x0BC2">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DITHER"                        count="1"  value="0x0BD0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLEND_DST"                     count="1"  value="0x0BE0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLEND_SRC"                     count="1"  value="0x0BE1">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLEND"                         count="1"  value="0x0BE2">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LOGIC_OP_MODE"                 count="1"  value="0x0BF0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LOGIC_OP"                      count="1"  value="0x0BF1">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="AUX_BUFFERS"                   count="1"  value="0x0C00">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER"                   count="1"  value="0x0C01">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="READ_BUFFER"                   count="1"  value="0x0C02">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SCISSOR_BOX"                   count="4"  value="0x0C10">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SCISSOR_TEST"                  count="1"  value="0x0C11">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="INDEX_CLEAR_VALUE"             count="1"  value="0x0C20">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="INDEX_WRITEMASK"               count="1"  value="0x0C21">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_CLEAR_VALUE"             count="4"  value="0x0C22">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_WRITEMASK"               count="4"  value="0x0C23">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="INDEX_MODE"                    count="1"  value="0x0C30">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="RGBA_MODE"                     count="1"  value="0x0C31">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DOUBLEBUFFER"                  count="1"  value="0x0C32">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STEREO"                        count="1"  value="0x0C33">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="RENDER_MODE"                   count="1"  value="0x0C40">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PERSPECTIVE_CORRECTION_HINT"   count="1"  value="0x0C50">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POINT_SMOOTH_HINT"             count="1"  value="0x0C51">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LINE_SMOOTH_HINT"              count="1"  value="0x0C52">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POLYGON_SMOOTH_HINT"           count="1"  value="0x0C53">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_HINT"                      count="1"  value="0x0C54">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_GEN_S"                 count="1"  value="0x0C60">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_GEN_T"                 count="1"  value="0x0C61">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_GEN_R"                 count="1"  value="0x0C62">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_GEN_Q"                 count="1"  value="0x0C63">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PIXEL_MAP_I_TO_I"              count="1"  value="0x0C70">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PIXEL_MAP_S_TO_S"                         value="0x0C71"/>
+    <enum name="PIXEL_MAP_I_TO_R"                         value="0x0C72"/>
+    <enum name="PIXEL_MAP_I_TO_G"                         value="0x0C73"/>
+    <enum name="PIXEL_MAP_I_TO_B"                         value="0x0C74"/>
+    <enum name="PIXEL_MAP_I_TO_A"                         value="0x0C75"/>
+    <enum name="PIXEL_MAP_R_TO_R"                         value="0x0C76"/>
+    <enum name="PIXEL_MAP_G_TO_G"                         value="0x0C77"/>
+    <enum name="PIXEL_MAP_B_TO_B"                         value="0x0C78"/>
+    <enum name="PIXEL_MAP_A_TO_A"                         value="0x0C79"/>
+    <enum name="PIXEL_MAP_I_TO_I_SIZE"         count="1"  value="0x0CB0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PIXEL_MAP_S_TO_S_SIZE"         count="1"  value="0x0CB1">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PIXEL_MAP_I_TO_R_SIZE"         count="1"  value="0x0CB2">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PIXEL_MAP_I_TO_G_SIZE"         count="1"  value="0x0CB3">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PIXEL_MAP_I_TO_B_SIZE"         count="1"  value="0x0CB4">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PIXEL_MAP_I_TO_A_SIZE"         count="1"  value="0x0CB5">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PIXEL_MAP_R_TO_R_SIZE"         count="1"  value="0x0CB6">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PIXEL_MAP_G_TO_G_SIZE"         count="1"  value="0x0CB7">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PIXEL_MAP_B_TO_B_SIZE"         count="1"  value="0x0CB8">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PIXEL_MAP_A_TO_A_SIZE"         count="1"  value="0x0CB9">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="UNPACK_SWAP_BYTES"             count="1"  value="0x0CF0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="UNPACK_LSB_FIRST"              count="1"  value="0x0CF1">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="UNPACK_ROW_LENGTH"             count="1"  value="0x0CF2">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="UNPACK_SKIP_PIXELS"            count="1"  value="0x0CF4">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="UNPACK_SKIP_ROWS"              count="1"  value="0x0CF3">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="UNPACK_ALIGNMENT"              count="1"  value="0x0CF5">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PACK_SWAP_BYTES"               count="1"  value="0x0D00">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PACK_LSB_FIRST"                count="1"  value="0x0D01">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PACK_ROW_LENGTH"               count="1"  value="0x0D02">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PACK_SKIP_ROWS"                count="1"  value="0x0D03">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PACK_SKIP_PIXELS"              count="1"  value="0x0D04">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PACK_ALIGNMENT"                count="1"  value="0x0D05">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAP_COLOR"                     count="1"  value="0x0D10">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAP_STENCIL"                   count="1"  value="0x0D11">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="INDEX_SHIFT"                   count="1"  value="0x0D12">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="INDEX_OFFSET"                  count="1"  value="0x0D13">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="RED_SCALE"                     count="1"  value="0x0D14">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="RED_BIAS"                      count="1"  value="0x0D15">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ZOOM_X"                        count="1"  value="0x0D16">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ZOOM_Y"                        count="1"  value="0x0D17">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="GREEN_SCALE"                   count="1"  value="0x0D18">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="GREEN_BIAS"                    count="1"  value="0x0D19">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLUE_SCALE"                    count="1"  value="0x0D1A">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLUE_BIAS"                     count="1"  value="0x0D1B">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ALPHA_SCALE"                   count="1"  value="0x0D1C">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ALPHA_BIAS"                    count="1"  value="0x0D1D">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DEPTH_SCALE"                   count="1"  value="0x0D1E">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DEPTH_BIAS"                    count="1"  value="0x0D1F">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_EVAL_ORDER"                count="1"  value="0x0D30">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_LIGHTS"                    count="1"  value="0x0D31">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_CLIP_PLANES"               count="1"  value="0x0D32">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_TEXTURE_SIZE"              count="1"  value="0x0D33">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_PIXEL_MAP_TABLE"           count="1"  value="0x0D34">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_ATTRIB_STACK_DEPTH"        count="1"  value="0x0D35">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_MODELVIEW_STACK_DEPTH"     count="1"  value="0x0D36">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_NAME_STACK_DEPTH"          count="1"  value="0x0D37">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_PROJECTION_STACK_DEPTH"    count="1"  value="0x0D38">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_TEXTURE_STACK_DEPTH"       count="1"  value="0x0D39">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_VIEWPORT_DIMS"             count="2"  value="0x0D3A">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_CLIENT_ATTRIB_STACK_DEPTH" count="1"  value="0x0D3B">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SUBPIXEL_BITS"                 count="1"  value="0x0D50">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="INDEX_BITS"                    count="1"  value="0x0D51">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="RED_BITS"                      count="1"  value="0x0D52">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="GREEN_BITS"                    count="1"  value="0x0D53">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLUE_BITS"                     count="1"  value="0x0D54">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ALPHA_BITS"                    count="1"  value="0x0D55">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DEPTH_BITS"                    count="1"  value="0x0D56">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_BITS"                  count="1"  value="0x0D57">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ACCUM_RED_BITS"                count="1"  value="0x0D58">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ACCUM_GREEN_BITS"              count="1"  value="0x0D59">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ACCUM_BLUE_BITS"               count="1"  value="0x0D5A">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ACCUM_ALPHA_BITS"              count="1"  value="0x0D5B">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="NAME_STACK_DEPTH"              count="1"  value="0x0D70">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="AUTO_NORMAL"                   count="1"  value="0x0D80">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAP1_COLOR_4"                  count="4"  value="0x0D90">
+        <size name="Map1d"/>
+        <size name="Map1f"/>
+        <size name="Get" count="1" mode="get"/>
+    </enum>
+    <enum name="MAP1_INDEX"                    count="1"  value="0x0D91">
+        <size name="Map1d"/>
+        <size name="Map1f"/>
+        <size name="Get" count="1" mode="get"/>
+    </enum>
+    <enum name="MAP1_NORMAL"                   count="3"  value="0x0D92">
+        <size name="Map1d"/>
+        <size name="Map1f"/>
+        <size name="Get" count="1" mode="get"/>
+    </enum>
+    <enum name="MAP1_TEXTURE_COORD_1"          count="1"  value="0x0D93">
+        <size name="Map1d"/>
+        <size name="Map1f"/>
+        <size name="Get" count="1" mode="get"/>
+    </enum>
+    <enum name="MAP1_TEXTURE_COORD_2"          count="2"  value="0x0D94">
+        <size name="Map1d"/>
+        <size name="Map1f"/>
+        <size name="Get" count="1" mode="get"/>
+    </enum>
+    <enum name="MAP1_TEXTURE_COORD_3"          count="3"  value="0x0D95">
+        <size name="Map1d"/>
+        <size name="Map1f"/>
+        <size name="Get" count="1" mode="get"/>
+    </enum>
+    <enum name="MAP1_TEXTURE_COORD_4"          count="4"  value="0x0D96">
+        <size name="Map1d"/>
+        <size name="Map1f"/>
+        <size name="Get" count="1" mode="get"/>
+    </enum>
+    <enum name="MAP1_VERTEX_3"                 count="3"  value="0x0D97">
+        <size name="Map1d"/>
+        <size name="Map1f"/>
+        <size name="Get" count="1" mode="get"/>
+    </enum>
+    <enum name="MAP1_VERTEX_4"                 count="4"  value="0x0D98">
+        <size name="Map1d"/>
+        <size name="Map1f"/>
+        <size name="Get" count="1" mode="get"/>
+    </enum>
+    <enum name="MAP2_COLOR_4"                  count="4"  value="0x0DB0">
+        <size name="Map2d"/>
+        <size name="Map2f"/>
+        <size name="Get" count="1" mode="get"/>
+    </enum>
+    <enum name="MAP2_INDEX"                    count="1"  value="0x0DB1">
+        <size name="Map2d"/>
+        <size name="Map2f"/>
+        <size name="Get" count="1" mode="get"/>
+    </enum>
+    <enum name="MAP2_NORMAL"                   count="3"  value="0x0DB2">
+        <size name="Map2d"/>
+        <size name="Map2f"/>
+        <size name="Get" count="1" mode="get"/>
+    </enum>
+    <enum name="MAP2_TEXTURE_COORD_1"          count="1"  value="0x0DB3">
+        <size name="Map2d"/>
+        <size name="Map2f"/>
+        <size name="Get" count="1" mode="get"/>
+    </enum>
+    <enum name="MAP2_TEXTURE_COORD_2"          count="2"  value="0x0DB4">
+        <size name="Map2d"/>
+        <size name="Map2f"/>
+        <size name="Get" count="1" mode="get"/>
+    </enum>
+    <enum name="MAP2_TEXTURE_COORD_3"          count="3"  value="0x0DB5">
+        <size name="Map2d"/>
+        <size name="Map2f"/>
+        <size name="Get" count="1" mode="get"/>
+    </enum>
+    <enum name="MAP2_TEXTURE_COORD_4"          count="4"  value="0x0DB6">
+        <size name="Map2d"/>
+        <size name="Map2f"/>
+        <size name="Get" count="1" mode="get"/>
+    </enum>
+    <enum name="MAP2_VERTEX_3"                 count="3"  value="0x0DB7">
+        <size name="Map2d"/>
+        <size name="Map2f"/>
+        <size name="Get" count="1" mode="get"/>
+    </enum>
+    <enum name="MAP2_VERTEX_4"                 count="4"  value="0x0DB8">
+        <size name="Map2d"/>
+        <size name="Map2f"/>
+        <size name="Get" count="1" mode="get"/>
+    </enum>
+    <enum name="MAP1_GRID_DOMAIN"              count="2"  value="0x0DD0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAP1_GRID_SEGMENTS"            count="1"  value="0x0DD1">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAP2_GRID_DOMAIN"              count="4"  value="0x0DD2">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAP2_GRID_SEGMENTS"            count="2"  value="0x0DD3">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_1D"                    count="1"  value="0x0DE0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_2D"                    count="1"  value="0x0DE1">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FEEDBACK_BUFFER_POINTER"                  value="0x0DF0"/>
+    <enum name="FEEDBACK_BUFFER_SIZE"                     value="0x0DF1"/>
+    <enum name="FEEDBACK_BUFFER_TYPE"                     value="0x0DF2"/>
+    <enum name="SELECTION_BUFFER_POINTER"                 value="0x0DF3"/>
+    <enum name="SELECTION_BUFFER_SIZE"                    value="0x0DF4"/>
+    <enum name="TEXTURE_WIDTH"                 count="1"  value="0x1000">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_HEIGHT"                count="1"  value="0x1001">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_BORDER"                count="1"  value="0x1005">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COMPONENTS"            count="1"  value="0x1003">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_BORDER_COLOR"          count="4"  value="0x1004">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="DONT_CARE"                                value="0x1100"/>
+    <enum name="FASTEST"                                  value="0x1101"/>
+    <enum name="NICEST"                                   value="0x1102"/>
+    <enum name="AMBIENT"                       count="4"  value="0x1200">
+        <size name="Materialfv"/>
+        <size name="Materialiv"/>
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetMaterialfv" mode="get"/>
+        <size name="GetMaterialiv" mode="get"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="DIFFUSE"                       count="4"  value="0x1201">
+        <size name="Materialfv"/>
+        <size name="Materialiv"/>
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetMaterialfv" mode="get"/>
+        <size name="GetMaterialiv" mode="get"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="SPECULAR"                      count="4"  value="0x1202">
+        <size name="Materialfv"/>
+        <size name="Materialiv"/>
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetMaterialfv" mode="get"/>
+        <size name="GetMaterialiv" mode="get"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="POSITION"                      count="4"  value="0x1203">
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="SPOT_DIRECTION"                count="3"  value="0x1204">
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="SPOT_EXPONENT"                 count="1"  value="0x1205">
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="SPOT_CUTOFF"                   count="1"  value="0x1206">
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="CONSTANT_ATTENUATION"          count="1"  value="0x1207">
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="LINEAR_ATTENUATION"            count="1"  value="0x1208">
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="QUADRATIC_ATTENUATION"         count="1"  value="0x1209">
+        <size name="Lightfv"/>
+        <size name="Lightiv"/>
+        <size name="GetLightfv" mode="get"/>
+        <size name="GetLightiv" mode="get"/>
+    </enum>
+    <enum name="COMPILE"                                  value="0x1300"/>
+    <enum name="COMPILE_AND_EXECUTE"                      value="0x1301"/>
+    <enum name="BYTE"                          count="1"  value="0x1400">
+        <size name="CallLists"/>
+    </enum>
+    <enum name="UNSIGNED_BYTE"                 count="1"  value="0x1401">
+        <size name="CallLists"/>
+    </enum>
+    <enum name="SHORT"                         count="2"  value="0x1402">
+        <size name="CallLists"/>
+    </enum>
+    <enum name="UNSIGNED_SHORT"                count="2"  value="0x1403">
+        <size name="CallLists"/>
+    </enum>
+    <enum name="INT"                           count="4"  value="0x1404">
+        <size name="CallLists"/>
+    </enum>
+    <enum name="UNSIGNED_INT"                  count="4"  value="0x1405">
+        <size name="CallLists"/>
+    </enum>
+    <enum name="FLOAT"                         count="4"  value="0x1406">
+        <size name="CallLists"/>
+    </enum>
+    <enum name="2_BYTES"                       count="2"  value="0x1407">
+        <size name="CallLists"/>
+    </enum>
+    <enum name="3_BYTES"                       count="3"  value="0x1408">
+        <size name="CallLists"/>
+    </enum>
+    <enum name="4_BYTES"                       count="4"  value="0x1409">
+        <size name="CallLists"/>
+    </enum>
+    <enum name="HALF_FLOAT"                    count="2"  value="0x140B">
+        <size name="CallLists"/>
+    </enum>
+    <enum name="CLEAR"                                    value="0x1500"/>
+    <enum name="AND"                                      value="0x1501"/>
+    <enum name="AND_REVERSE"                              value="0x1502"/>
+    <enum name="COPY"                                     value="0x1503"/>
+    <enum name="AND_INVERTED"                             value="0x1504"/>
+    <enum name="NOOP"                                     value="0x1505"/>
+    <enum name="XOR"                                      value="0x1506"/>
+    <enum name="OR"                                       value="0x1507"/>
+    <enum name="NOR"                                      value="0x1508"/>
+    <enum name="EQUIV"                                    value="0x1509"/>
+    <enum name="INVERT"                                   value="0x150A"/>
+    <enum name="OR_REVERSE"                               value="0x150B"/>
+    <enum name="COPY_INVERTED"                            value="0x150C"/>
+    <enum name="OR_INVERTED"                              value="0x150D"/>
+    <enum name="NAND"                                     value="0x150E"/>
+    <enum name="SET"                                      value="0x150F"/>
+    <enum name="EMISSION"                      count="4"  value="0x1600">
+        <size name="Materialfv"/>
+        <size name="Materialiv"/>
+        <size name="GetMaterialfv" mode="get"/>
+        <size name="GetMaterialiv" mode="get"/>
+    </enum>
+    <enum name="SHININESS"                     count="1"  value="0x1601">
+        <size name="Materialfv"/>
+        <size name="Materialiv"/>
+        <size name="GetMaterialfv" mode="get"/>
+        <size name="GetMaterialiv" mode="get"/>
+    </enum>
+    <enum name="AMBIENT_AND_DIFFUSE"           count="4"  value="0x1602">
+        <size name="Materialfv"/>
+        <size name="Materialiv"/>
+        <size name="GetMaterialfv" mode="get"/>
+        <size name="GetMaterialiv" mode="get"/>
+    </enum>
+    <enum name="COLOR_INDEXES"                 count="3"  value="0x1603">
+        <size name="Materialfv"/>
+        <size name="Materialiv"/>
+        <size name="GetMaterialfv" mode="get"/>
+        <size name="GetMaterialiv" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW"                                value="0x1700"/>
+    <enum name="PROJECTION"                               value="0x1701"/>
+    <enum name="TEXTURE"                                  value="0x1702"/>
+    <enum name="COLOR"                                    value="0x1800"/>
+    <enum name="DEPTH"                                    value="0x1801"/>
+    <enum name="STENCIL"                                  value="0x1802"/>
+    <enum name="COLOR_INDEX"                              value="0x1900"/>
+    <enum name="STENCIL_INDEX"                            value="0x1901"/>
+    <enum name="DEPTH_COMPONENT"                          value="0x1902"/>
+    <enum name="RED"                                      value="0x1903"/>
+    <enum name="GREEN"                                    value="0x1904"/>
+    <enum name="BLUE"                                     value="0x1905"/>
+    <enum name="ALPHA"                                    value="0x1906"/>
+    <enum name="RGBA"                                     value="0x1908"/>
+    <enum name="RGB"                                      value="0x1907"/>
+    <enum name="LUMINANCE"                                value="0x1909"/>
+    <enum name="LUMINANCE_ALPHA"                          value="0x190A"/>
+    <enum name="BITMAP"                                   value="0x1A00"/>
+    <enum name="POINT"                                    value="0x1B00"/>
+    <enum name="LINE"                                     value="0x1B01"/>
+    <enum name="FILL"                                     value="0x1B02"/>
+    <enum name="FEEDBACK"                                 value="0x1C01"/>
+    <enum name="RENDER"                                   value="0x1C00"/>
+    <enum name="SELECT"                                   value="0x1C02"/>
+    <enum name="FLAT"                                     value="0x1D00"/>
+    <enum name="SMOOTH"                                   value="0x1D01"/>
+    <enum name="KEEP"                                     value="0x1E00"/>
+    <enum name="REPLACE"                                  value="0x1E01"/>
+    <enum name="INCR"                                     value="0x1E02"/>
+    <enum name="DECR"                                     value="0x1E03"/>
+    <enum name="VENDOR"                                   value="0x1F00"/>
+    <enum name="RENDERER"                                 value="0x1F01"/>
+    <enum name="VERSION"                                  value="0x1F02"/>
+    <enum name="EXTENSIONS"                               value="0x1F03"/>
+    <enum name="S"                                        value="0x2000"/>
+    <enum name="T"                                        value="0x2001"/>
+    <enum name="R"                                        value="0x2002"/>
+    <enum name="Q"                                        value="0x2003"/>
+    <enum name="MODULATE"                                 value="0x2100"/>
+    <enum name="DECAL"                                    value="0x2101"/>
+    <enum name="TEXTURE_ENV_MODE"              count="1"  value="0x2200">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_ENV_COLOR"             count="4"  value="0x2201">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_ENV"                              value="0x2300"/>
+    <enum name="EYE_LINEAR"                               value="0x2400"/>
+    <enum name="OBJECT_LINEAR"                            value="0x2401"/>
+    <enum name="SPHERE_MAP"                               value="0x2402"/>
+    <enum name="TEXTURE_GEN_MODE"              count="1"  value="0x2500">
+        <size name="TexGendv"/>
+        <size name="TexGenfv"/>
+        <size name="TexGeniv"/>
+        <size name="GetTexGendv" mode="get"/>
+        <size name="GetTexGenfv" mode="get"/>
+        <size name="GetTexGeniv" mode="get"/>
+    </enum>
+    <enum name="OBJECT_PLANE"                  count="4"  value="0x2501">
+        <size name="TexGendv"/>
+        <size name="TexGenfv"/>
+        <size name="TexGeniv"/>
+        <size name="GetTexGendv" mode="get"/>
+        <size name="GetTexGenfv" mode="get"/>
+        <size name="GetTexGeniv" mode="get"/>
+    </enum>
+    <enum name="EYE_PLANE"                     count="4"  value="0x2502">
+        <size name="TexGendv"/>
+        <size name="TexGenfv"/>
+        <size name="TexGeniv"/>
+        <size name="GetTexGendv" mode="get"/>
+        <size name="GetTexGenfv" mode="get"/>
+        <size name="GetTexGeniv" mode="get"/>
+    </enum>
+    <enum name="NEAREST"                                  value="0x2600"/>
+    <enum name="LINEAR"                                   value="0x2601"/>
+    <enum name="NEAREST_MIPMAP_NEAREST"                   value="0x2700"/>
+    <enum name="LINEAR_MIPMAP_NEAREST"                    value="0x2701"/>
+    <enum name="NEAREST_MIPMAP_LINEAR"                    value="0x2702"/>
+    <enum name="LINEAR_MIPMAP_LINEAR"                     value="0x2703"/>
+    <enum name="TEXTURE_MAG_FILTER"            count="1"  value="0x2800">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_MIN_FILTER"            count="1"  value="0x2801">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_WRAP_S"                count="1"  value="0x2802">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_WRAP_T"                count="1"  value="0x2803">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="CLAMP"                                    value="0x2900"/>
+    <enum name="REPEAT"                                   value="0x2901"/>
+    <enum name="CLIP_PLANE0"                   count="1"  value="0x3000">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CLIP_PLANE1"                   count="1"  value="0x3001">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CLIP_PLANE2"                   count="1"  value="0x3002">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CLIP_PLANE3"                   count="1"  value="0x3003">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CLIP_PLANE4"                   count="1"  value="0x3004">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CLIP_PLANE5"                   count="1"  value="0x3005">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT0"                        count="1"  value="0x4000">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT1"                        count="1"  value="0x4001">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT2"                        count="1"  value="0x4002">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT3"                        count="1"  value="0x4003">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT4"                        count="1"  value="0x4004">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT5"                        count="1"  value="0x4005">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT6"                        count="1"  value="0x4006">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="LIGHT7"                        count="1"  value="0x4007">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CURRENT_BIT"                              value="0x00000001"/>
+    <enum name="POINT_BIT"                                value="0x00000002"/>
+    <enum name="LINE_BIT"                                 value="0x00000004"/>
+    <enum name="POLYGON_BIT"                              value="0x00000008"/>
+    <enum name="POLYGON_STIPPLE_BIT"                      value="0x00000010"/>
+    <enum name="PIXEL_MODE_BIT"                           value="0x00000020"/>
+    <enum name="LIGHTING_BIT"                             value="0x00000040"/>
+    <enum name="FOG_BIT"                                  value="0x00000080"/>
+    <enum name="DEPTH_BUFFER_BIT"                         value="0x00000100"/>
+    <enum name="ACCUM_BUFFER_BIT"                         value="0x00000200"/>
+    <enum name="STENCIL_BUFFER_BIT"                       value="0x00000400"/>
+    <enum name="VIEWPORT_BIT"                             value="0x00000800"/>
+    <enum name="TRANSFORM_BIT"                            value="0x00001000"/>
+    <enum name="ENABLE_BIT"                               value="0x00002000"/>
+    <enum name="COLOR_BUFFER_BIT"                         value="0x00004000"/>
+    <enum name="HINT_BIT"                                 value="0x00008000"/>
+    <enum name="EVAL_BIT"                                 value="0x00010000"/>
+    <enum name="LIST_BIT"                                 value="0x00020000"/>
+    <enum name="TEXTURE_BIT"                              value="0x00040000"/>
+    <enum name="SCISSOR_BIT"                              value="0x00080000"/>
+    <enum name="ALL_ATTRIB_BITS"                          value="0x000FFFFF"/>
+
+    <type name="double"  size="8"  float="true"    glx_name="FLOAT64"/>
+    <type name="clampd"  size="8"  float="true"    glx_name="FLOAT64"/>
+
+    <type name="float"   size="4"  float="true"    glx_name="FLOAT32"/>
+    <type name="clampf"  size="4"  float="true"    glx_name="FLOAT32"/>
+
+    <type name="int"     size="4"                  glx_name="CARD32"/>
+    <type name="uint"    size="4"  unsigned="true" glx_name="CARD32"/>
+    <type name="sizei"   size="4"  unsigned="true" glx_name="CARD32"/>
+    <type name="enum"    size="4"  unsigned="true" glx_name="ENUM"/>
+    <type name="bitfield" size="4" unsigned="true" glx_name="CARD32"/>
+
+    <type name="short"   size="2"                  glx_name="CARD16"/>
+    <type name="ushort"  size="2"  unsigned="true" glx_name="CARD16"/>
+
+    <type name="byte"    size="1"                  glx_name="CARD8"/>
+    <type name="ubyte"   size="1"  unsigned="true" glx_name="CARD8"/>
+    <type name="boolean" size="1"  unsigned="true" glx_name="CARD8"/>
+    
+    <type name="void"    size="1"/>
+
+    <function name="NewList" offset="0">
+        <param name="list" type="GLuint"/>
+        <param name="mode" type="GLenum"/>
+        <glx sop="101"/>
+    </function>
+
+    <function name="EndList" offset="1">
+        <glx sop="102"/>
+    </function>
+
+    <function name="CallList" offset="2">
+        <param name="list" type="GLuint"/>
+        <glx rop="1"/>
+    </function>
+
+    <function name="CallLists" offset="3">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="type" type="GLenum"/>
+        <param name="lists" type="const GLvoid *" variable_param="type" count="n"/>
+        <glx rop="2" large="true"/>
+    </function>
+
+    <function name="DeleteLists" offset="4">
+        <param name="list" type="GLuint"/>
+        <param name="range" type="GLsizei"/>
+        <glx sop="103"/>
+    </function>
+
+    <function name="GenLists" offset="5">
+        <param name="range" type="GLsizei"/>
+        <return type="GLuint"/>
+        <glx sop="104"/>
+    </function>
+
+    <function name="ListBase" offset="6">
+        <param name="base" type="GLuint"/>
+        <glx rop="3"/>
+    </function>
+
+    <function name="Begin" offset="7">
+        <param name="mode" type="GLenum"/>
+        <glx rop="4"/>
+    </function>
+
+    <function name="Bitmap" offset="8">
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="xorig" type="GLfloat"/>
+        <param name="yorig" type="GLfloat"/>
+        <param name="xmove" type="GLfloat"/>
+        <param name="ymove" type="GLfloat"/>
+        <param name="bitmap" type="const GLubyte *" img_width="width" img_height="height" img_format="GL_COLOR_INDEX" img_type="GL_BITMAP" img_target="0" img_pad_dimensions="false"/>
+        <glx rop="5" large="true"/>
+    </function>
+
+    <function name="Color3b" offset="9" vectorequiv="Color3bv">
+        <param name="red" type="GLbyte"/>
+        <param name="green" type="GLbyte"/>
+        <param name="blue" type="GLbyte"/>
+    </function>
+
+    <function name="Color3bv" offset="10">
+        <param name="v" type="const GLbyte *" count="3"/>
+        <glx rop="6"/>
+    </function>
+
+    <function name="Color3d" offset="11" vectorequiv="Color3dv">
+        <param name="red" type="GLdouble"/>
+        <param name="green" type="GLdouble"/>
+        <param name="blue" type="GLdouble"/>
+    </function>
+
+    <function name="Color3dv" offset="12">
+        <param name="v" type="const GLdouble *" count="3"/>
+        <glx rop="7"/>
+    </function>
+
+    <function name="Color3f" offset="13" vectorequiv="Color3fv">
+        <param name="red" type="GLfloat"/>
+        <param name="green" type="GLfloat"/>
+        <param name="blue" type="GLfloat"/>
+    </function>
+
+    <function name="Color3fv" offset="14">
+        <param name="v" type="const GLfloat *" count="3"/>
+        <glx rop="8"/>
+    </function>
+
+    <function name="Color3i" offset="15" vectorequiv="Color3iv">
+        <param name="red" type="GLint"/>
+        <param name="green" type="GLint"/>
+        <param name="blue" type="GLint"/>
+    </function>
+
+    <function name="Color3iv" offset="16">
+        <param name="v" type="const GLint *" count="3"/>
+        <glx rop="9"/>
+    </function>
+
+    <function name="Color3s" offset="17" vectorequiv="Color3sv">
+        <param name="red" type="GLshort"/>
+        <param name="green" type="GLshort"/>
+        <param name="blue" type="GLshort"/>
+    </function>
+
+    <function name="Color3sv" offset="18">
+        <param name="v" type="const GLshort *" count="3"/>
+        <glx rop="10"/>
+    </function>
+
+    <function name="Color3ub" offset="19" vectorequiv="Color3ubv">
+        <param name="red" type="GLubyte"/>
+        <param name="green" type="GLubyte"/>
+        <param name="blue" type="GLubyte"/>
+    </function>
+
+    <function name="Color3ubv" offset="20">
+        <param name="v" type="const GLubyte *" count="3"/>
+        <glx rop="11"/>
+    </function>
+
+    <function name="Color3ui" offset="21" vectorequiv="Color3uiv">
+        <param name="red" type="GLuint"/>
+        <param name="green" type="GLuint"/>
+        <param name="blue" type="GLuint"/>
+    </function>
+
+    <function name="Color3uiv" offset="22">
+        <param name="v" type="const GLuint *" count="3"/>
+        <glx rop="12"/>
+    </function>
+
+    <function name="Color3us" offset="23" vectorequiv="Color3usv">
+        <param name="red" type="GLushort"/>
+        <param name="green" type="GLushort"/>
+        <param name="blue" type="GLushort"/>
+    </function>
+
+    <function name="Color3usv" offset="24">
+        <param name="v" type="const GLushort *" count="3"/>
+        <glx rop="13"/>
+    </function>
+
+    <function name="Color4b" offset="25" vectorequiv="Color4bv">
+        <param name="red" type="GLbyte"/>
+        <param name="green" type="GLbyte"/>
+        <param name="blue" type="GLbyte"/>
+        <param name="alpha" type="GLbyte"/>
+    </function>
+
+    <function name="Color4bv" offset="26">
+        <param name="v" type="const GLbyte *" count="4"/>
+        <glx rop="14"/>
+    </function>
+
+    <function name="Color4d" offset="27" vectorequiv="Color4dv">
+        <param name="red" type="GLdouble"/>
+        <param name="green" type="GLdouble"/>
+        <param name="blue" type="GLdouble"/>
+        <param name="alpha" type="GLdouble"/>
+    </function>
+
+    <function name="Color4dv" offset="28">
+        <param name="v" type="const GLdouble *" count="4"/>
+        <glx rop="15"/>
+    </function>
+
+    <function name="Color4f" offset="29" vectorequiv="Color4fv">
+        <param name="red" type="GLfloat"/>
+        <param name="green" type="GLfloat"/>
+        <param name="blue" type="GLfloat"/>
+        <param name="alpha" type="GLfloat"/>
+    </function>
+
+    <function name="Color4fv" offset="30">
+        <param name="v" type="const GLfloat *" count="4"/>
+        <glx rop="16"/>
+    </function>
+
+    <function name="Color4i" offset="31" vectorequiv="Color4iv">
+        <param name="red" type="GLint"/>
+        <param name="green" type="GLint"/>
+        <param name="blue" type="GLint"/>
+        <param name="alpha" type="GLint"/>
+    </function>
+
+    <function name="Color4iv" offset="32">
+        <param name="v" type="const GLint *" count="4"/>
+        <glx rop="17"/>
+    </function>
+
+    <function name="Color4s" offset="33" vectorequiv="Color4sv">
+        <param name="red" type="GLshort"/>
+        <param name="green" type="GLshort"/>
+        <param name="blue" type="GLshort"/>
+        <param name="alpha" type="GLshort"/>
+    </function>
+
+    <function name="Color4sv" offset="34">
+        <param name="v" type="const GLshort *" count="4"/>
+        <glx rop="18"/>
+    </function>
+
+    <function name="Color4ub" offset="35" vectorequiv="Color4ubv">
+        <param name="red" type="GLubyte"/>
+        <param name="green" type="GLubyte"/>
+        <param name="blue" type="GLubyte"/>
+        <param name="alpha" type="GLubyte"/>
+    </function>
+
+    <function name="Color4ubv" offset="36">
+        <param name="v" type="const GLubyte *" count="4"/>
+        <glx rop="19"/>
+    </function>
+
+    <function name="Color4ui" offset="37" vectorequiv="Color4uiv">
+        <param name="red" type="GLuint"/>
+        <param name="green" type="GLuint"/>
+        <param name="blue" type="GLuint"/>
+        <param name="alpha" type="GLuint"/>
+    </function>
+
+    <function name="Color4uiv" offset="38">
+        <param name="v" type="const GLuint *" count="4"/>
+        <glx rop="20"/>
+    </function>
+
+    <function name="Color4us" offset="39" vectorequiv="Color4usv">
+        <param name="red" type="GLushort"/>
+        <param name="green" type="GLushort"/>
+        <param name="blue" type="GLushort"/>
+        <param name="alpha" type="GLushort"/>
+    </function>
+
+    <function name="Color4usv" offset="40">
+        <param name="v" type="const GLushort *" count="4"/>
+        <glx rop="21"/>
+    </function>
+
+    <function name="EdgeFlag" offset="41" vectorequiv="EdgeFlagv">
+        <param name="flag" type="GLboolean"/>
+    </function>
+
+    <function name="EdgeFlagv" offset="42">
+        <param name="flag" type="const GLboolean *" count="1"/>
+        <glx rop="22"/>
+    </function>
+
+    <function name="End" offset="43">
+        <glx rop="23"/>
+    </function>
+
+    <function name="Indexd" offset="44" vectorequiv="Indexdv">
+        <param name="c" type="GLdouble"/>
+    </function>
+
+    <function name="Indexdv" offset="45">
+        <param name="c" type="const GLdouble *" count="1"/>
+        <glx rop="24"/>
+    </function>
+
+    <function name="Indexf" offset="46" vectorequiv="Indexfv">
+        <param name="c" type="GLfloat"/>
+    </function>
+
+    <function name="Indexfv" offset="47">
+        <param name="c" type="const GLfloat *" count="1"/>
+        <glx rop="25"/>
+    </function>
+
+    <function name="Indexi" offset="48" vectorequiv="Indexiv">
+        <param name="c" type="GLint"/>
+    </function>
+
+    <function name="Indexiv" offset="49">
+        <param name="c" type="const GLint *" count="1"/>
+        <glx rop="26"/>
+    </function>
+
+    <function name="Indexs" offset="50" vectorequiv="Indexsv">
+        <param name="c" type="GLshort"/>
+    </function>
+
+    <function name="Indexsv" offset="51">
+        <param name="c" type="const GLshort *" count="1"/>
+        <glx rop="27"/>
+    </function>
+
+    <function name="Normal3b" offset="52" vectorequiv="Normal3bv">
+        <param name="nx" type="GLbyte"/>
+        <param name="ny" type="GLbyte"/>
+        <param name="nz" type="GLbyte"/>
+    </function>
+
+    <function name="Normal3bv" offset="53">
+        <param name="v" type="const GLbyte *" count="3"/>
+        <glx rop="28"/>
+    </function>
+
+    <function name="Normal3d" offset="54" vectorequiv="Normal3dv">
+        <param name="nx" type="GLdouble"/>
+        <param name="ny" type="GLdouble"/>
+        <param name="nz" type="GLdouble"/>
+    </function>
+
+    <function name="Normal3dv" offset="55">
+        <param name="v" type="const GLdouble *" count="3"/>
+        <glx rop="29"/>
+    </function>
+
+    <function name="Normal3f" offset="56" vectorequiv="Normal3fv">
+        <param name="nx" type="GLfloat"/>
+        <param name="ny" type="GLfloat"/>
+        <param name="nz" type="GLfloat"/>
+    </function>
+
+    <function name="Normal3fv" offset="57">
+        <param name="v" type="const GLfloat *" count="3"/>
+        <glx rop="30"/>
+    </function>
+
+    <function name="Normal3i" offset="58" vectorequiv="Normal3iv">
+        <param name="nx" type="GLint"/>
+        <param name="ny" type="GLint"/>
+        <param name="nz" type="GLint"/>
+    </function>
+
+    <function name="Normal3iv" offset="59">
+        <param name="v" type="const GLint *" count="3"/>
+        <glx rop="31"/>
+    </function>
+
+    <function name="Normal3s" offset="60" vectorequiv="Normal3sv">
+        <param name="nx" type="GLshort"/>
+        <param name="ny" type="GLshort"/>
+        <param name="nz" type="GLshort"/>
+    </function>
+
+    <function name="Normal3sv" offset="61">
+        <param name="v" type="const GLshort *" count="3"/>
+        <glx rop="32"/>
+    </function>
+
+    <function name="RasterPos2d" offset="62" vectorequiv="RasterPos2dv">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+    </function>
+
+    <function name="RasterPos2dv" offset="63">
+        <param name="v" type="const GLdouble *" count="2"/>
+        <glx rop="33"/>
+    </function>
+
+    <function name="RasterPos2f" offset="64" vectorequiv="RasterPos2fv">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+    </function>
+
+    <function name="RasterPos2fv" offset="65">
+        <param name="v" type="const GLfloat *" count="2"/>
+        <glx rop="34"/>
+    </function>
+
+    <function name="RasterPos2i" offset="66" vectorequiv="RasterPos2iv">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+    </function>
+
+    <function name="RasterPos2iv" offset="67">
+        <param name="v" type="const GLint *" count="2"/>
+        <glx rop="35"/>
+    </function>
+
+    <function name="RasterPos2s" offset="68" vectorequiv="RasterPos2sv">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+    </function>
+
+    <function name="RasterPos2sv" offset="69">
+        <param name="v" type="const GLshort *" count="2"/>
+        <glx rop="36"/>
+    </function>
+
+    <function name="RasterPos3d" offset="70" vectorequiv="RasterPos3dv">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+    </function>
+
+    <function name="RasterPos3dv" offset="71">
+        <param name="v" type="const GLdouble *" count="3"/>
+        <glx rop="37"/>
+    </function>
+
+    <function name="RasterPos3f" offset="72" vectorequiv="RasterPos3fv">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="RasterPos3fv" offset="73">
+        <param name="v" type="const GLfloat *" count="3"/>
+        <glx rop="38"/>
+    </function>
+
+    <function name="RasterPos3i" offset="74" vectorequiv="RasterPos3iv">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="z" type="GLint"/>
+    </function>
+
+    <function name="RasterPos3iv" offset="75">
+        <param name="v" type="const GLint *" count="3"/>
+        <glx rop="39"/>
+    </function>
+
+    <function name="RasterPos3s" offset="76" vectorequiv="RasterPos3sv">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+    </function>
+
+    <function name="RasterPos3sv" offset="77">
+        <param name="v" type="const GLshort *" count="3"/>
+        <glx rop="40"/>
+    </function>
+
+    <function name="RasterPos4d" offset="78" vectorequiv="RasterPos4dv">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <param name="w" type="GLdouble"/>
+    </function>
+
+    <function name="RasterPos4dv" offset="79">
+        <param name="v" type="const GLdouble *" count="4"/>
+        <glx rop="41"/>
+    </function>
+
+    <function name="RasterPos4f" offset="80" vectorequiv="RasterPos4fv">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <param name="w" type="GLfloat"/>
+    </function>
+
+    <function name="RasterPos4fv" offset="81">
+        <param name="v" type="const GLfloat *" count="4"/>
+        <glx rop="42"/>
+    </function>
+
+    <function name="RasterPos4i" offset="82" vectorequiv="RasterPos4iv">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="z" type="GLint"/>
+        <param name="w" type="GLint"/>
+    </function>
+
+    <function name="RasterPos4iv" offset="83">
+        <param name="v" type="const GLint *" count="4"/>
+        <glx rop="43"/>
+    </function>
+
+    <function name="RasterPos4s" offset="84" vectorequiv="RasterPos4sv">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+        <param name="w" type="GLshort"/>
+    </function>
+
+    <function name="RasterPos4sv" offset="85">
+        <param name="v" type="const GLshort *" count="4"/>
+        <glx rop="44"/>
+    </function>
+
+    <function name="Rectd" offset="86" vectorequiv="Rectdv">
+        <param name="x1" type="GLdouble"/>
+        <param name="y1" type="GLdouble"/>
+        <param name="x2" type="GLdouble"/>
+        <param name="y2" type="GLdouble"/>
+    </function>
+
+    <function name="Rectdv" offset="87">
+        <param name="v1" type="const GLdouble *" count="2"/>
+        <param name="v2" type="const GLdouble *" count="2"/>
+        <glx rop="45"/>
+    </function>
+
+    <function name="Rectf" offset="88" vectorequiv="Rectfv">
+        <param name="x1" type="GLfloat"/>
+        <param name="y1" type="GLfloat"/>
+        <param name="x2" type="GLfloat"/>
+        <param name="y2" type="GLfloat"/>
+    </function>
+
+    <function name="Rectfv" offset="89">
+        <param name="v1" type="const GLfloat *" count="2"/>
+        <param name="v2" type="const GLfloat *" count="2"/>
+        <glx rop="46"/>
+    </function>
+
+    <function name="Recti" offset="90" vectorequiv="Rectiv">
+        <param name="x1" type="GLint"/>
+        <param name="y1" type="GLint"/>
+        <param name="x2" type="GLint"/>
+        <param name="y2" type="GLint"/>
+    </function>
+
+    <function name="Rectiv" offset="91">
+        <param name="v1" type="const GLint *" count="2"/>
+        <param name="v2" type="const GLint *" count="2"/>
+        <glx rop="47"/>
+    </function>
+
+    <function name="Rects" offset="92" vectorequiv="Rectsv">
+        <param name="x1" type="GLshort"/>
+        <param name="y1" type="GLshort"/>
+        <param name="x2" type="GLshort"/>
+        <param name="y2" type="GLshort"/>
+    </function>
+
+    <function name="Rectsv" offset="93">
+        <param name="v1" type="const GLshort *" count="2"/>
+        <param name="v2" type="const GLshort *" count="2"/>
+        <glx rop="48"/>
+    </function>
+
+    <function name="TexCoord1d" offset="94" vectorequiv="TexCoord1dv">
+        <param name="s" type="GLdouble"/>
+    </function>
+
+    <function name="TexCoord1dv" offset="95">
+        <param name="v" type="const GLdouble *" count="1"/>
+        <glx rop="49"/>
+    </function>
+
+    <function name="TexCoord1f" offset="96" vectorequiv="TexCoord1fv">
+        <param name="s" type="GLfloat"/>
+    </function>
+
+    <function name="TexCoord1fv" offset="97">
+        <param name="v" type="const GLfloat *" count="1"/>
+        <glx rop="50"/>
+    </function>
+
+    <function name="TexCoord1i" offset="98" vectorequiv="TexCoord1iv">
+        <param name="s" type="GLint"/>
+    </function>
+
+    <function name="TexCoord1iv" offset="99">
+        <param name="v" type="const GLint *" count="1"/>
+        <glx rop="51"/>
+    </function>
+
+    <function name="TexCoord1s" offset="100" vectorequiv="TexCoord1sv">
+        <param name="s" type="GLshort"/>
+    </function>
+
+    <function name="TexCoord1sv" offset="101">
+        <param name="v" type="const GLshort *" count="1"/>
+        <glx rop="52"/>
+    </function>
+
+    <function name="TexCoord2d" offset="102" vectorequiv="TexCoord2dv">
+        <param name="s" type="GLdouble"/>
+        <param name="t" type="GLdouble"/>
+    </function>
+
+    <function name="TexCoord2dv" offset="103">
+        <param name="v" type="const GLdouble *" count="2"/>
+        <glx rop="53"/>
+    </function>
+
+    <function name="TexCoord2f" offset="104" vectorequiv="TexCoord2fv">
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+    </function>
+
+    <function name="TexCoord2fv" offset="105">
+        <param name="v" type="const GLfloat *" count="2"/>
+        <glx rop="54"/>
+    </function>
+
+    <function name="TexCoord2i" offset="106" vectorequiv="TexCoord2iv">
+        <param name="s" type="GLint"/>
+        <param name="t" type="GLint"/>
+    </function>
+
+    <function name="TexCoord2iv" offset="107">
+        <param name="v" type="const GLint *" count="2"/>
+        <glx rop="55"/>
+    </function>
+
+    <function name="TexCoord2s" offset="108" vectorequiv="TexCoord2sv">
+        <param name="s" type="GLshort"/>
+        <param name="t" type="GLshort"/>
+    </function>
+
+    <function name="TexCoord2sv" offset="109">
+        <param name="v" type="const GLshort *" count="2"/>
+        <glx rop="56"/>
+    </function>
+
+    <function name="TexCoord3d" offset="110" vectorequiv="TexCoord3dv">
+        <param name="s" type="GLdouble"/>
+        <param name="t" type="GLdouble"/>
+        <param name="r" type="GLdouble"/>
+    </function>
+
+    <function name="TexCoord3dv" offset="111">
+        <param name="v" type="const GLdouble *" count="3"/>
+        <glx rop="57"/>
+    </function>
+
+    <function name="TexCoord3f" offset="112" vectorequiv="TexCoord3fv">
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="r" type="GLfloat"/>
+    </function>
+
+    <function name="TexCoord3fv" offset="113">
+        <param name="v" type="const GLfloat *" count="3"/>
+        <glx rop="58"/>
+    </function>
+
+    <function name="TexCoord3i" offset="114" vectorequiv="TexCoord3iv">
+        <param name="s" type="GLint"/>
+        <param name="t" type="GLint"/>
+        <param name="r" type="GLint"/>
+    </function>
+
+    <function name="TexCoord3iv" offset="115">
+        <param name="v" type="const GLint *" count="3"/>
+        <glx rop="59"/>
+    </function>
+
+    <function name="TexCoord3s" offset="116" vectorequiv="TexCoord3sv">
+        <param name="s" type="GLshort"/>
+        <param name="t" type="GLshort"/>
+        <param name="r" type="GLshort"/>
+    </function>
+
+    <function name="TexCoord3sv" offset="117">
+        <param name="v" type="const GLshort *" count="3"/>
+        <glx rop="60"/>
+    </function>
+
+    <function name="TexCoord4d" offset="118" vectorequiv="TexCoord4dv">
+        <param name="s" type="GLdouble"/>
+        <param name="t" type="GLdouble"/>
+        <param name="r" type="GLdouble"/>
+        <param name="q" type="GLdouble"/>
+    </function>
+
+    <function name="TexCoord4dv" offset="119">
+        <param name="v" type="const GLdouble *" count="4"/>
+        <glx rop="61"/>
+    </function>
+
+    <function name="TexCoord4f" offset="120" vectorequiv="TexCoord4fv">
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="r" type="GLfloat"/>
+        <param name="q" type="GLfloat"/>
+    </function>
+
+    <function name="TexCoord4fv" offset="121">
+        <param name="v" type="const GLfloat *" count="4"/>
+        <glx rop="62"/>
+    </function>
+
+    <function name="TexCoord4i" offset="122" vectorequiv="TexCoord4iv">
+        <param name="s" type="GLint"/>
+        <param name="t" type="GLint"/>
+        <param name="r" type="GLint"/>
+        <param name="q" type="GLint"/>
+    </function>
+
+    <function name="TexCoord4iv" offset="123">
+        <param name="v" type="const GLint *" count="4"/>
+        <glx rop="63"/>
+    </function>
+
+    <function name="TexCoord4s" offset="124" vectorequiv="TexCoord4sv">
+        <param name="s" type="GLshort"/>
+        <param name="t" type="GLshort"/>
+        <param name="r" type="GLshort"/>
+        <param name="q" type="GLshort"/>
+    </function>
+
+    <function name="TexCoord4sv" offset="125">
+        <param name="v" type="const GLshort *" count="4"/>
+        <glx rop="64"/>
+    </function>
+
+    <function name="Vertex2d" offset="126" vectorequiv="Vertex2dv">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+    </function>
+
+    <function name="Vertex2dv" offset="127">
+        <param name="v" type="const GLdouble *" count="2"/>
+        <glx rop="65"/>
+    </function>
+
+    <function name="Vertex2f" offset="128" vectorequiv="Vertex2fv">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+    </function>
+
+    <function name="Vertex2fv" offset="129">
+        <param name="v" type="const GLfloat *" count="2"/>
+        <glx rop="66"/>
+    </function>
+
+    <function name="Vertex2i" offset="130" vectorequiv="Vertex2iv">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+    </function>
+
+    <function name="Vertex2iv" offset="131">
+        <param name="v" type="const GLint *" count="2"/>
+        <glx rop="67"/>
+    </function>
+
+    <function name="Vertex2s" offset="132" vectorequiv="Vertex2sv">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+    </function>
+
+    <function name="Vertex2sv" offset="133">
+        <param name="v" type="const GLshort *" count="2"/>
+        <glx rop="68"/>
+    </function>
+
+    <function name="Vertex3d" offset="134" vectorequiv="Vertex3dv">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+    </function>
+
+    <function name="Vertex3dv" offset="135">
+        <param name="v" type="const GLdouble *" count="3"/>
+        <glx rop="69"/>
+    </function>
+
+    <function name="Vertex3f" offset="136" vectorequiv="Vertex3fv">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="Vertex3fv" offset="137">
+        <param name="v" type="const GLfloat *" count="3"/>
+        <glx rop="70"/>
+    </function>
+
+    <function name="Vertex3i" offset="138" vectorequiv="Vertex3iv">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="z" type="GLint"/>
+    </function>
+
+    <function name="Vertex3iv" offset="139">
+        <param name="v" type="const GLint *" count="3"/>
+        <glx rop="71"/>
+    </function>
+
+    <function name="Vertex3s" offset="140" vectorequiv="Vertex3sv">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+    </function>
+
+    <function name="Vertex3sv" offset="141">
+        <param name="v" type="const GLshort *" count="3"/>
+        <glx rop="72"/>
+    </function>
+
+    <function name="Vertex4d" offset="142" vectorequiv="Vertex4dv">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <param name="w" type="GLdouble"/>
+    </function>
+
+    <function name="Vertex4dv" offset="143">
+        <param name="v" type="const GLdouble *" count="4"/>
+        <glx rop="73"/>
+    </function>
+
+    <function name="Vertex4f" offset="144" vectorequiv="Vertex4fv">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <param name="w" type="GLfloat"/>
+    </function>
+
+    <function name="Vertex4fv" offset="145">
+        <param name="v" type="const GLfloat *" count="4"/>
+        <glx rop="74"/>
+    </function>
+
+    <function name="Vertex4i" offset="146" vectorequiv="Vertex4iv">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="z" type="GLint"/>
+        <param name="w" type="GLint"/>
+    </function>
+
+    <function name="Vertex4iv" offset="147">
+        <param name="v" type="const GLint *" count="4"/>
+        <glx rop="75"/>
+    </function>
+
+    <function name="Vertex4s" offset="148" vectorequiv="Vertex4sv">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+        <param name="w" type="GLshort"/>
+    </function>
+
+    <function name="Vertex4sv" offset="149">
+        <param name="v" type="const GLshort *" count="4"/>
+        <glx rop="76"/>
+    </function>
+
+    <function name="ClipPlane" offset="150">
+        <param name="plane" type="GLenum"/>
+        <param name="equation" type="const GLdouble *" count="4"/>
+        <glx rop="77"/>
+    </function>
+
+    <function name="ColorMaterial" offset="151">
+        <param name="face" type="GLenum"/>
+        <param name="mode" type="GLenum"/>
+        <glx rop="78"/>
+    </function>
+
+    <function name="CullFace" offset="152">
+        <param name="mode" type="GLenum"/>
+        <glx rop="79"/>
+    </function>
+
+    <function name="Fogf" offset="153">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="80"/>
+    </function>
+
+    <function name="Fogfv" offset="154">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="81"/>
+    </function>
+
+    <function name="Fogi" offset="155">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="82"/>
+    </function>
+
+    <function name="Fogiv" offset="156">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="83"/>
+    </function>
+
+    <function name="FrontFace" offset="157">
+        <param name="mode" type="GLenum"/>
+        <glx rop="84"/>
+    </function>
+
+    <function name="Hint" offset="158">
+        <param name="target" type="GLenum"/>
+        <param name="mode" type="GLenum"/>
+        <glx rop="85"/>
+    </function>
+
+    <function name="Lightf" offset="159">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="86"/>
+    </function>
+
+    <function name="Lightfv" offset="160">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="87"/>
+    </function>
+
+    <function name="Lighti" offset="161">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="88"/>
+    </function>
+
+    <function name="Lightiv" offset="162">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="89"/>
+    </function>
+
+    <function name="LightModelf" offset="163">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="90"/>
+    </function>
+
+    <function name="LightModelfv" offset="164">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="91"/>
+    </function>
+
+    <function name="LightModeli" offset="165">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="92"/>
+    </function>
+
+    <function name="LightModeliv" offset="166">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="93"/>
+    </function>
+
+    <function name="LineStipple" offset="167">
+        <param name="factor" type="GLint"/>
+        <param name="pattern" type="GLushort"/>
+        <glx rop="94"/>
+    </function>
+
+    <function name="LineWidth" offset="168">
+        <param name="width" type="GLfloat"/>
+        <glx rop="95"/>
+    </function>
+
+    <function name="Materialf" offset="169">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="96"/>
+    </function>
+
+    <function name="Materialfv" offset="170">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="97"/>
+    </function>
+
+    <function name="Materiali" offset="171">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="98"/>
+    </function>
+
+    <function name="Materialiv" offset="172">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="99"/>
+    </function>
+
+    <function name="PointSize" offset="173">
+        <param name="size" type="GLfloat"/>
+        <glx rop="100"/>
+    </function>
+
+    <function name="PolygonMode" offset="174">
+        <param name="face" type="GLenum"/>
+        <param name="mode" type="GLenum"/>
+        <glx rop="101"/>
+    </function>
+
+    <function name="PolygonStipple" offset="175">
+        <param name="mask" type="const GLubyte *" img_width="32" img_height="32" img_format="GL_COLOR_INDEX" img_type="GL_BITMAP" img_target="0" img_pad_dimensions="false"/>
+        <glx rop="102"/>
+    </function>
+
+    <function name="Scissor" offset="176">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <glx rop="103"/>
+    </function>
+
+    <function name="ShadeModel" offset="177">
+        <param name="mode" type="GLenum"/>
+        <glx rop="104"/>
+    </function>
+
+    <function name="TexParameterf" offset="178">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="105"/>
+    </function>
+
+    <function name="TexParameterfv" offset="179">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="106"/>
+    </function>
+
+    <function name="TexParameteri" offset="180">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="107"/>
+    </function>
+
+    <function name="TexParameteriv" offset="181">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="108"/>
+    </function>
+
+    <function name="TexImage1D" offset="182">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_format="format" img_type="type" img_target="target" img_send_null="true" img_pad_dimensions="true"/>
+        <glx rop="109" large="true"/>
+    </function>
+
+    <function name="TexImage2D" offset="183">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="target" img_send_null="true" img_pad_dimensions="true"/>
+        <glx rop="110" large="true"/>
+    </function>
+
+    <function name="TexEnvf" offset="184">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="111"/>
+    </function>
+
+    <function name="TexEnvfv" offset="185">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="112"/>
+    </function>
+
+    <function name="TexEnvi" offset="186">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="113"/>
+    </function>
+
+    <function name="TexEnviv" offset="187">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="114"/>
+    </function>
+
+    <function name="TexGend" offset="188">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLdouble"/>
+        <glx rop="115"/>
+    </function>
+
+    <function name="TexGendv" offset="189">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLdouble *" variable_param="pname"/>
+        <glx rop="116"/>
+    </function>
+
+    <function name="TexGenf" offset="190">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="117"/>
+    </function>
+
+    <function name="TexGenfv" offset="191">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="118"/>
+    </function>
+
+    <function name="TexGeni" offset="192">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="119"/>
+    </function>
+
+    <function name="TexGeniv" offset="193">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="120"/>
+    </function>
+
+    <function name="FeedbackBuffer" offset="194">
+        <param name="size" type="GLsizei"/>
+        <param name="type" type="GLenum"/>
+        <param name="buffer" type="GLfloat *" output="true"/>
+        <glx sop="105" handcode="true"/>
+    </function>
+
+    <function name="SelectBuffer" offset="195">
+        <param name="size" type="GLsizei"/>
+        <param name="buffer" type="GLuint *" output="true"/>
+        <glx sop="106" handcode="true"/>
+    </function>
+
+    <function name="RenderMode" offset="196">
+        <param name="mode" type="GLenum"/>
+        <return type="GLint"/>
+        <glx sop="107" handcode="true"/>
+    </function>
+
+    <function name="InitNames" offset="197">
+        <glx rop="121"/>
+    </function>
+
+    <function name="LoadName" offset="198">
+        <param name="name" type="GLuint"/>
+        <glx rop="122"/>
+    </function>
+
+    <function name="PassThrough" offset="199">
+        <param name="token" type="GLfloat"/>
+        <glx rop="123"/>
+    </function>
+
+    <function name="PopName" offset="200">
+        <glx rop="124"/>
+    </function>
+
+    <function name="PushName" offset="201">
+        <param name="name" type="GLuint"/>
+        <glx rop="125"/>
+    </function>
+
+    <function name="DrawBuffer" offset="202">
+        <param name="mode" type="GLenum"/>
+        <glx rop="126"/>
+    </function>
+
+    <function name="Clear" offset="203">
+        <param name="mask" type="GLbitfield"/>
+        <glx rop="127"/>
+    </function>
+
+    <function name="ClearAccum" offset="204">
+        <param name="red" type="GLfloat"/>
+        <param name="green" type="GLfloat"/>
+        <param name="blue" type="GLfloat"/>
+        <param name="alpha" type="GLfloat"/>
+        <glx rop="128"/>
+    </function>
+
+    <function name="ClearIndex" offset="205">
+        <param name="c" type="GLfloat"/>
+        <glx rop="129"/>
+    </function>
+
+    <function name="ClearColor" offset="206">
+        <param name="red" type="GLclampf"/>
+        <param name="green" type="GLclampf"/>
+        <param name="blue" type="GLclampf"/>
+        <param name="alpha" type="GLclampf"/>
+        <glx rop="130"/>
+    </function>
+
+    <function name="ClearStencil" offset="207">
+        <param name="s" type="GLint"/>
+        <glx rop="131"/>
+    </function>
+
+    <function name="ClearDepth" offset="208">
+        <param name="depth" type="GLclampd"/>
+        <glx rop="132"/>
+    </function>
+
+    <function name="StencilMask" offset="209">
+        <param name="mask" type="GLuint"/>
+        <glx rop="133"/>
+    </function>
+
+    <function name="ColorMask" offset="210">
+        <param name="red" type="GLboolean"/>
+        <param name="green" type="GLboolean"/>
+        <param name="blue" type="GLboolean"/>
+        <param name="alpha" type="GLboolean"/>
+        <glx rop="134"/>
+    </function>
+
+    <function name="DepthMask" offset="211">
+        <param name="flag" type="GLboolean"/>
+        <glx rop="135"/>
+    </function>
+
+    <function name="IndexMask" offset="212">
+        <param name="mask" type="GLuint"/>
+        <glx rop="136"/>
+    </function>
+
+    <function name="Accum" offset="213">
+        <param name="op" type="GLenum"/>
+        <param name="value" type="GLfloat"/>
+        <glx rop="137"/>
+    </function>
+
+    <function name="Disable" offset="214">
+        <param name="cap" type="GLenum"/>
+        <glx rop="138" handcode="client"/>
+    </function>
+
+    <function name="Enable" offset="215">
+        <param name="cap" type="GLenum"/>
+        <glx rop="139" handcode="client"/>
+    </function>
+
+    <function name="Finish" offset="216">
+        <glx sop="108" handcode="true"/>
+    </function>
+
+    <function name="Flush" offset="217">
+        <glx sop="142" handcode="true"/>
+    </function>
+
+    <function name="PopAttrib" offset="218">
+        <glx rop="141"/>
+    </function>
+
+    <function name="PushAttrib" offset="219">
+        <param name="mask" type="GLbitfield"/>
+        <glx rop="142"/>
+    </function>
+
+    <function name="Map1d" offset="220">
+        <param name="target" type="GLenum"/>
+        <param name="u1" type="GLdouble"/>
+        <param name="u2" type="GLdouble"/>
+        <param name="stride" type="GLint" client_only="true"/>
+        <param name="order" type="GLint"/>
+        <param name="points" type="const GLdouble *" variable_param="order"/>
+        <glx rop="143" handcode="true"/>
+    </function>
+
+    <function name="Map1f" offset="221">
+        <param name="target" type="GLenum"/>
+        <param name="u1" type="GLfloat"/>
+        <param name="u2" type="GLfloat"/>
+        <param name="stride" type="GLint" client_only="true"/>
+        <param name="order" type="GLint"/>
+        <param name="points" type="const GLfloat *" variable_param="order"/>
+        <glx rop="144" handcode="true"/>
+    </function>
+
+    <function name="Map2d" offset="222">
+        <param name="target" type="GLenum"/>
+        <param name="u1" type="GLdouble"/>
+        <param name="u2" type="GLdouble"/>
+        <param name="ustride" type="GLint" client_only="true"/>
+        <param name="uorder" type="GLint"/>
+        <param name="v1" type="GLdouble"/>
+        <param name="v2" type="GLdouble"/>
+        <param name="vstride" type="GLint" client_only="true"/>
+        <param name="vorder" type="GLint"/>
+        <param name="points" type="const GLdouble *" variable_param="uorder"/>
+        <glx rop="145" handcode="true"/>
+    </function>
+
+    <function name="Map2f" offset="223">
+        <param name="target" type="GLenum"/>
+        <param name="u1" type="GLfloat"/>
+        <param name="u2" type="GLfloat"/>
+        <param name="ustride" type="GLint" client_only="true"/>
+        <param name="uorder" type="GLint"/>
+        <param name="v1" type="GLfloat"/>
+        <param name="v2" type="GLfloat"/>
+        <param name="vstride" type="GLint" client_only="true"/>
+        <param name="vorder" type="GLint"/>
+        <param name="points" type="const GLfloat *" variable_param="uorder"/>
+        <glx rop="146" handcode="true"/>
+    </function>
+
+    <function name="MapGrid1d" offset="224">
+        <param name="un" type="GLint"/>
+        <param name="u1" type="GLdouble"/>
+        <param name="u2" type="GLdouble"/>
+        <glx rop="147"/>
+    </function>
+
+    <function name="MapGrid1f" offset="225">
+        <param name="un" type="GLint"/>
+        <param name="u1" type="GLfloat"/>
+        <param name="u2" type="GLfloat"/>
+        <glx rop="148"/>
+    </function>
+
+    <function name="MapGrid2d" offset="226">
+        <param name="un" type="GLint"/>
+        <param name="u1" type="GLdouble"/>
+        <param name="u2" type="GLdouble"/>
+        <param name="vn" type="GLint"/>
+        <param name="v1" type="GLdouble"/>
+        <param name="v2" type="GLdouble"/>
+        <glx rop="149"/>
+    </function>
+
+    <function name="MapGrid2f" offset="227">
+        <param name="un" type="GLint"/>
+        <param name="u1" type="GLfloat"/>
+        <param name="u2" type="GLfloat"/>
+        <param name="vn" type="GLint"/>
+        <param name="v1" type="GLfloat"/>
+        <param name="v2" type="GLfloat"/>
+        <glx rop="150"/>
+    </function>
+
+    <function name="EvalCoord1d" offset="228" vectorequiv="EvalCoord1dv">
+        <param name="u" type="GLdouble"/>
+    </function>
+
+    <function name="EvalCoord1dv" offset="229">
+        <param name="u" type="const GLdouble *" count="1"/>
+        <glx rop="151"/>
+    </function>
+
+    <function name="EvalCoord1f" offset="230" vectorequiv="EvalCoord1fv">
+        <param name="u" type="GLfloat"/>
+    </function>
+
+    <function name="EvalCoord1fv" offset="231">
+        <param name="u" type="const GLfloat *" count="1"/>
+        <glx rop="152"/>
+    </function>
+
+    <function name="EvalCoord2d" offset="232" vectorequiv="EvalCoord2dv">
+        <param name="u" type="GLdouble"/>
+        <param name="v" type="GLdouble"/>
+    </function>
+
+    <function name="EvalCoord2dv" offset="233">
+        <param name="u" type="const GLdouble *" count="2"/>
+        <glx rop="153"/>
+    </function>
+
+    <function name="EvalCoord2f" offset="234" vectorequiv="EvalCoord2fv">
+        <param name="u" type="GLfloat"/>
+        <param name="v" type="GLfloat"/>
+    </function>
+
+    <function name="EvalCoord2fv" offset="235">
+        <param name="u" type="const GLfloat *" count="2"/>
+        <glx rop="154"/>
+    </function>
+
+    <function name="EvalMesh1" offset="236">
+        <param name="mode" type="GLenum"/>
+        <param name="i1" type="GLint"/>
+        <param name="i2" type="GLint"/>
+        <glx rop="155"/>
+    </function>
+
+    <function name="EvalPoint1" offset="237">
+        <param name="i" type="GLint"/>
+        <glx rop="156"/>
+    </function>
+
+    <function name="EvalMesh2" offset="238">
+        <param name="mode" type="GLenum"/>
+        <param name="i1" type="GLint"/>
+        <param name="i2" type="GLint"/>
+        <param name="j1" type="GLint"/>
+        <param name="j2" type="GLint"/>
+        <glx rop="157"/>
+    </function>
+
+    <function name="EvalPoint2" offset="239">
+        <param name="i" type="GLint"/>
+        <param name="j" type="GLint"/>
+        <glx rop="158"/>
+    </function>
+
+    <function name="AlphaFunc" offset="240">
+        <param name="func" type="GLenum"/>
+        <param name="ref" type="GLclampf"/>
+        <glx rop="159"/>
+    </function>
+
+    <function name="BlendFunc" offset="241">
+        <param name="sfactor" type="GLenum"/>
+        <param name="dfactor" type="GLenum"/>
+        <glx rop="160"/>
+    </function>
+
+    <function name="LogicOp" offset="242">
+        <param name="opcode" type="GLenum"/>
+        <glx rop="161"/>
+    </function>
+
+    <function name="StencilFunc" offset="243">
+        <param name="func" type="GLenum"/>
+        <param name="ref" type="GLint"/>
+        <param name="mask" type="GLuint"/>
+        <glx rop="162"/>
+    </function>
+
+    <function name="StencilOp" offset="244">
+        <param name="fail" type="GLenum"/>
+        <param name="zfail" type="GLenum"/>
+        <param name="zpass" type="GLenum"/>
+        <glx rop="163"/>
+    </function>
+
+    <function name="DepthFunc" offset="245">
+        <param name="func" type="GLenum"/>
+        <glx rop="164"/>
+    </function>
+
+    <function name="PixelZoom" offset="246">
+        <param name="xfactor" type="GLfloat"/>
+        <param name="yfactor" type="GLfloat"/>
+        <glx rop="165"/>
+    </function>
+
+    <function name="PixelTransferf" offset="247">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="166"/>
+    </function>
+
+    <function name="PixelTransferi" offset="248">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="167"/>
+    </function>
+
+    <function name="PixelStoref" offset="249">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx sop="109" handcode="client"/>
+    </function>
+
+    <function name="PixelStorei" offset="250">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx sop="110" handcode="client"/>
+    </function>
+
+    <function name="PixelMapfv" offset="251">
+        <param name="map" type="GLenum"/>
+        <param name="mapsize" type="GLsizei" counter="true"/>
+        <param name="values" type="const GLfloat *" count="mapsize"/>
+        <glx rop="168" large="true"/>
+    </function>
+
+    <function name="PixelMapuiv" offset="252">
+        <param name="map" type="GLenum"/>
+        <param name="mapsize" type="GLsizei" counter="true"/>
+        <param name="values" type="const GLuint *" count="mapsize"/>
+        <glx rop="169" large="true"/>
+    </function>
+
+    <function name="PixelMapusv" offset="253">
+        <param name="map" type="GLenum"/>
+        <param name="mapsize" type="GLsizei" counter="true"/>
+        <param name="values" type="const GLushort *" count="mapsize"/>
+        <glx rop="170" large="true"/>
+    </function>
+
+    <function name="ReadBuffer" offset="254">
+        <param name="mode" type="GLenum"/>
+        <glx rop="171"/>
+    </function>
+
+    <function name="CopyPixels" offset="255">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="type" type="GLenum"/>
+        <glx rop="172"/>
+    </function>
+
+    <function name="ReadPixels" offset="256">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="GLvoid *" output="true"  img_width="width" img_height="height" img_format="format" img_type="type" img_target="0"/>
+        <glx sop="111"/>
+    </function>
+
+    <function name="DrawPixels" offset="257">
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="0" img_pad_dimensions="false"/>
+        <glx rop="173" large="true"/>
+    </function>
+
+    <function name="GetBooleanv" offset="258">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLboolean *" output="true" variable_param="pname"/>
+        <glx sop="112" handcode="client"/>
+    </function>
+
+    <function name="GetClipPlane" offset="259">
+        <param name="plane" type="GLenum"/>
+        <param name="equation" type="GLdouble *" output="true" count="4"/>
+        <glx sop="113" always_array="true"/>
+    </function>
+
+    <function name="GetDoublev" offset="260">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
+        <glx sop="114" handcode="client"/>
+    </function>
+
+    <function name="GetError" offset="261">
+        <return type="GLenum"/>
+        <glx sop="115" handcode="client"/>
+    </function>
+
+    <function name="GetFloatv" offset="262">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="116" handcode="client"/>
+    </function>
+
+    <function name="GetIntegerv" offset="263">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="117" handcode="client"/>
+    </function>
+
+    <function name="GetLightfv" offset="264">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="118"/>
+    </function>
+
+    <function name="GetLightiv" offset="265">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="119"/>
+    </function>
+
+    <function name="GetMapdv" offset="266">
+        <param name="target" type="GLenum"/>
+        <param name="query" type="GLenum"/>
+        <param name="v" type="GLdouble *" output="true" variable_param="target query"/>
+        <glx sop="120"/>
+    </function>
+
+    <function name="GetMapfv" offset="267">
+        <param name="target" type="GLenum"/>
+        <param name="query" type="GLenum"/>
+        <param name="v" type="GLfloat *" output="true" variable_param="target query"/>
+        <glx sop="121"/>
+    </function>
+
+    <function name="GetMapiv" offset="268">
+        <param name="target" type="GLenum"/>
+        <param name="query" type="GLenum"/>
+        <param name="v" type="GLint *" output="true" variable_param="target query"/>
+        <glx sop="122"/>
+    </function>
+
+    <function name="GetMaterialfv" offset="269">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="123"/>
+    </function>
+
+    <function name="GetMaterialiv" offset="270">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="124"/>
+    </function>
+
+    <function name="GetPixelMapfv" offset="271">
+        <param name="map" type="GLenum"/>
+        <param name="values" type="GLfloat *" output="true" variable_param="map"/>
+        <glx sop="125"/>
+    </function>
+
+    <function name="GetPixelMapuiv" offset="272">
+        <param name="map" type="GLenum"/>
+        <param name="values" type="GLuint *" output="true" variable_param="map"/>
+        <glx sop="126"/>
+    </function>
+
+    <function name="GetPixelMapusv" offset="273">
+        <param name="map" type="GLenum"/>
+        <param name="values" type="GLushort *" output="true" variable_param="map"/>
+        <glx sop="127"/>
+    </function>
+
+    <function name="GetPolygonStipple" offset="274">
+        <param name="mask" type="GLubyte *" output="true" img_width="32" img_height="32" img_format="GL_COLOR_INDEX" img_type="GL_BITMAP"/>
+        <glx sop="128"/>
+    </function>
+
+    <function name="GetString" offset="275">
+        <param name="name" type="GLenum"/>
+        <return type="const GLubyte *"/>
+        <glx sop="129" handcode="true"/>
+    </function>
+
+    <function name="GetTexEnvfv" offset="276">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="130"/>
+    </function>
+
+    <function name="GetTexEnviv" offset="277">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="131"/>
+    </function>
+
+    <function name="GetTexGendv" offset="278">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
+        <glx sop="132"/>
+    </function>
+
+    <function name="GetTexGenfv" offset="279">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="133"/>
+    </function>
+
+    <function name="GetTexGeniv" offset="280">
+        <param name="coord" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="134"/>
+    </function>
+
+    <function name="GetTexImage" offset="281">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="GLvoid *" output="true" img_width="width" img_height="height" img_depth="depth" img_format="format" img_type="type"/>
+        <glx sop="135" dimensions_in_reply="true"/>
+    </function>
+
+    <function name="GetTexParameterfv" offset="282">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="136"/>
+    </function>
+
+    <function name="GetTexParameteriv" offset="283">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="137"/>
+    </function>
+
+    <function name="GetTexLevelParameterfv" offset="284">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="138"/>
+    </function>
+
+    <function name="GetTexLevelParameteriv" offset="285">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="139"/>
+    </function>
+
+    <function name="IsEnabled" offset="286">
+        <param name="cap" type="GLenum"/>
+        <return type="GLboolean"/>
+        <glx sop="140" handcode="client"/>
+    </function>
+
+    <function name="IsList" offset="287">
+        <param name="list" type="GLuint"/>
+        <return type="GLboolean"/>
+        <glx sop="141"/>
+    </function>
+
+    <function name="DepthRange" offset="288">
+        <param name="zNear" type="GLclampd"/>
+        <param name="zFar" type="GLclampd"/>
+        <glx rop="174"/>
+    </function>
+
+    <function name="Frustum" offset="289">
+        <param name="left" type="GLdouble"/>
+        <param name="right" type="GLdouble"/>
+        <param name="bottom" type="GLdouble"/>
+        <param name="top" type="GLdouble"/>
+        <param name="zNear" type="GLdouble"/>
+        <param name="zFar" type="GLdouble"/>
+        <glx rop="175"/>
+    </function>
+
+    <function name="LoadIdentity" offset="290">
+        <glx rop="176"/>
+    </function>
+
+    <function name="LoadMatrixf" offset="291">
+        <param name="m" type="const GLfloat *" count="16"/>
+        <glx rop="177"/>
+    </function>
+
+    <function name="LoadMatrixd" offset="292">
+        <param name="m" type="const GLdouble *" count="16"/>
+        <glx rop="178"/>
+    </function>
+
+    <function name="MatrixMode" offset="293">
+        <param name="mode" type="GLenum"/>
+        <glx rop="179"/>
+    </function>
+
+    <function name="MultMatrixf" offset="294">
+        <param name="m" type="const GLfloat *" count="16"/>
+        <glx rop="180"/>
+    </function>
+
+    <function name="MultMatrixd" offset="295">
+        <param name="m" type="const GLdouble *" count="16"/>
+        <glx rop="181"/>
+    </function>
+
+    <function name="Ortho" offset="296">
+        <param name="left" type="GLdouble"/>
+        <param name="right" type="GLdouble"/>
+        <param name="bottom" type="GLdouble"/>
+        <param name="top" type="GLdouble"/>
+        <param name="zNear" type="GLdouble"/>
+        <param name="zFar" type="GLdouble"/>
+        <glx rop="182"/>
+    </function>
+
+    <function name="PopMatrix" offset="297">
+        <glx rop="183"/>
+    </function>
+
+    <function name="PushMatrix" offset="298">
+        <glx rop="184"/>
+    </function>
+
+    <function name="Rotated" offset="299">
+        <param name="angle" type="GLdouble"/>
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <glx rop="185"/>
+    </function>
+
+    <function name="Rotatef" offset="300">
+        <param name="angle" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <glx rop="186"/>
+    </function>
+
+    <function name="Scaled" offset="301">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <glx rop="187"/>
+    </function>
+
+    <function name="Scalef" offset="302">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <glx rop="188"/>
+    </function>
+
+    <function name="Translated" offset="303">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <glx rop="189"/>
+    </function>
+
+    <function name="Translatef" offset="304">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <glx rop="190"/>
+    </function>
+
+    <function name="Viewport" offset="305">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <glx rop="191"/>
+    </function>
+</category>
+
+<category name="1.1">
+    <enum name="INDEX_LOGIC_OP"                           value="0x0BF1"/>
+    <enum name="COLOR_LOGIC_OP"                           value="0x0BF2"/>
+    <enum name="TEXTURE_INTERNAL_FORMAT"                  value="0x1003"/>
+    <enum name="DOUBLE"                                   value="0x140A"/>
+    <enum name="POLYGON_OFFSET_UNITS"          count="1"  value="0x2A00">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POLYGON_OFFSET_POINT"                     value="0x2A01"/>
+    <enum name="POLYGON_OFFSET_LINE"                      value="0x2A02"/>
+    <enum name="R3_G3_B2"                                 value="0x2A10"/>
+    <enum name="V2F"                                      value="0x2A20"/>
+    <enum name="V3F"                                      value="0x2A21"/>
+    <enum name="C4UB_V2F"                                 value="0x2A22"/>
+    <enum name="C4UB_V3F"                                 value="0x2A23"/>
+    <enum name="C3F_V3F"                                  value="0x2A24"/>
+    <enum name="N3F_V3F"                                  value="0x2A25"/>
+    <enum name="C4F_N3F_V3F"                              value="0x2A26"/>
+    <enum name="T2F_V3F"                                  value="0x2A27"/>
+    <enum name="T4F_V4F"                                  value="0x2A28"/>
+    <enum name="T2F_C4UB_V3F"                             value="0x2A29"/>
+    <enum name="T2F_C3F_V3F"                              value="0x2A2A"/>
+    <enum name="T2F_N3F_V3F"                              value="0x2A2B"/>
+    <enum name="T2F_C4F_N3F_V3F"                          value="0x2A2C"/>
+    <enum name="T4F_C4F_N3F_V4F"                          value="0x2A2D"/>
+    <enum name="POLYGON_OFFSET_FILL"                      value="0x8037"/>
+    <enum name="POLYGON_OFFSET_FACTOR"         count="1"  value="0x8038">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POLYGON_OFFSET_BIAS"                      value="0x8039"/>
+    <enum name="ALPHA4"                                   value="0x803B"/>
+    <enum name="ALPHA8"                                   value="0x803C"/>
+    <enum name="ALPHA12"                                  value="0x803D"/>
+    <enum name="ALPHA16"                                  value="0x803E"/>
+    <enum name="LUMINANCE4"                               value="0x803F"/>
+    <enum name="LUMINANCE8"                               value="0x8040"/>
+    <enum name="LUMINANCE12"                              value="0x8041"/>
+    <enum name="LUMINANCE16"                              value="0x8042"/>
+    <enum name="LUMINANCE4_ALPHA4"                        value="0x8043"/>
+    <enum name="LUMINANCE6_ALPHA2"                        value="0x8044"/>
+    <enum name="LUMINANCE8_ALPHA8"                        value="0x8045"/>
+    <enum name="LUMINANCE12_ALPHA4"                       value="0x8046"/>
+    <enum name="LUMINANCE12_ALPHA12"                      value="0x8047"/>
+    <enum name="LUMINANCE16_ALPHA16"                      value="0x8048"/>
+    <enum name="INTENSITY"                                value="0x8049"/>
+    <enum name="INTENSITY4"                               value="0x804A"/>
+    <enum name="INTENSITY8"                               value="0x804B"/>
+    <enum name="INTENSITY12"                              value="0x804C"/>
+    <enum name="INTENSITY16"                              value="0x804D"/>
+    <enum name="RGB4"                                     value="0x804F"/>
+    <enum name="RGB5"                                     value="0x8050"/>
+    <enum name="RGB8"                                     value="0x8051"/>
+    <enum name="RGB10"                                    value="0x8052"/>
+    <enum name="RGB12"                                    value="0x8053"/>
+    <enum name="RGB16"                                    value="0x8054"/>
+    <enum name="RGBA2"                                    value="0x8055"/>
+    <enum name="RGBA4"                                    value="0x8056"/>
+    <enum name="RGB5_A1"                                  value="0x8057"/>
+    <enum name="RGBA8"                                    value="0x8058"/>
+    <enum name="RGB10_A2"                                 value="0x8059"/>
+    <enum name="RGBA12"                                   value="0x805A"/>
+    <enum name="RGBA16"                                   value="0x805B"/>
+    <enum name="TEXTURE_RED_SIZE"              count="1"  value="0x805C">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_GREEN_SIZE"            count="1"  value="0x805D">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_BLUE_SIZE"             count="1"  value="0x805E">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_ALPHA_SIZE"            count="1"  value="0x805F">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_LUMINANCE_SIZE"        count="1"  value="0x8060">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_INTENSITY_SIZE"        count="1"  value="0x8061">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="PROXY_TEXTURE_1D"                         value="0x8063"/>
+    <enum name="PROXY_TEXTURE_2D"                         value="0x8064"/>
+    <enum name="TEXTURE_PRIORITY"              count="1"  value="0x8066">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_RESIDENT"              count="1"  value="0x8067">
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_BINDING_1D"            count="1"  value="0x8068">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_BINDING_2D"            count="1"  value="0x8069">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ARRAY"                  count="1"  value="0x8074">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="NORMAL_ARRAY"                  count="1"  value="0x8075">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_ARRAY"                   count="1"  value="0x8076">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="INDEX_ARRAY"                   count="1"  value="0x8077">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COORD_ARRAY"           count="1"  value="0x8078">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="EDGE_FLAG_ARRAY"               count="1"  value="0x8079">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ARRAY_SIZE"             count="1"  value="0x807A">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ARRAY_TYPE"             count="1"  value="0x807B">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ARRAY_STRIDE"           count="1"  value="0x807C">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="NORMAL_ARRAY_TYPE"             count="1"  value="0x807E">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="NORMAL_ARRAY_STRIDE"           count="1"  value="0x807F">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_ARRAY_SIZE"              count="1"  value="0x8081">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_ARRAY_TYPE"              count="1"  value="0x8082">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_ARRAY_STRIDE"            count="1"  value="0x8083">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="INDEX_ARRAY_TYPE"              count="1"  value="0x8085">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="INDEX_ARRAY_STRIDE"            count="1"  value="0x8086">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COORD_ARRAY_SIZE"      count="1"  value="0x8088">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COORD_ARRAY_TYPE"      count="1"  value="0x8089">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COORD_ARRAY_STRIDE"    count="1"  value="0x808A">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="EDGE_FLAG_ARRAY_STRIDE"        count="1"  value="0x808C">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ARRAY_POINTER"                     value="0x808E"/>
+    <enum name="NORMAL_ARRAY_POINTER"                     value="0x808F"/>
+    <enum name="COLOR_ARRAY_POINTER"                      value="0x8090"/>
+    <enum name="INDEX_ARRAY_POINTER"                      value="0x8091"/>
+    <enum name="TEXTURE_COORD_ARRAY_POINTER"              value="0x8092"/>
+    <enum name="EDGE_FLAG_ARRAY_POINTER"                  value="0x8093"/>
+    <enum name="CLIENT_PIXEL_STORE_BIT"                   value="0x00000001"/>
+    <enum name="CLIENT_VERTEX_ARRAY_BIT"                  value="0x00000002"/>
+    <enum name="ALL_CLIENT_ATTRIB_BITS"                   value="0xFFFFFFFF"/>
+    <enum name="CLIENT_ALL_ATTRIB_BITS"                   value="0xFFFFFFFF"/>
+
+    <function name="ArrayElement" offset="306">
+        <param name="i" type="GLint"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="ColorPointer" offset="308">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="DisableClientState" offset="309">
+        <param name="array" type="GLenum"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="DrawArrays" offset="310">
+        <param name="mode" type="GLenum"/>
+        <param name="first" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <glx rop="193" handcode="true"/>
+    </function>
+
+    <function name="DrawElements" offset="311">
+        <param name="mode" type="GLenum"/>
+        <param name="count" type="GLsizei"/>
+        <param name="type" type="GLenum"/>
+        <param name="indices" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="EdgeFlagPointer" offset="312">
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="EnableClientState" offset="313">
+        <param name="array" type="GLenum"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="GetPointerv" offset="329">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLvoid **" output="true"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="IndexPointer" offset="314">
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="InterleavedArrays" offset="317">
+        <param name="format" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="NormalPointer" offset="318">
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="TexCoordPointer" offset="320">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="VertexPointer" offset="321">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="PolygonOffset" offset="319">
+        <param name="factor" type="GLfloat"/>
+        <param name="units" type="GLfloat"/>
+        <glx rop="192"/>
+    </function>
+
+    <function name="CopyTexImage1D" offset="323">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <glx rop="4119"/>
+    </function>
+
+    <function name="CopyTexImage2D" offset="324">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <glx rop="4120"/>
+    </function>
+
+    <function name="CopyTexSubImage1D" offset="325">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <glx rop="4121"/>
+    </function>
+
+    <function name="CopyTexSubImage2D" offset="326">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <glx rop="4122"/>
+    </function>
+
+    <function name="TexSubImage1D" offset="332">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="UNUSED" type="GLuint" padding="true"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_xoff="xoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
+        <glx rop="4099" large="true"/>
+    </function>
+
+    <function name="TexSubImage2D" offset="333">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="UNUSED" type="GLuint" padding="true"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_xoff="xoffset" img_yoff="yoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
+        <glx rop="4100" large="true"/>
+    </function>
+
+    <function name="AreTexturesResident" offset="322">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="textures" type="const GLuint *" count="n"/>
+        <param name="residences" type="GLboolean *" output="true" count="n"/>
+        <return type="GLboolean"/>
+        <glx sop="143" handcode="client" always_array="true"/>
+    </function>
+
+    <function name="BindTexture" offset="307">
+        <param name="target" type="GLenum"/>
+        <param name="texture" type="GLuint"/>
+        <glx rop="4117"/>
+    </function>
+
+    <function name="DeleteTextures" offset="327">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="textures" type="const GLuint *" count="n"/>
+        <glx sop="144"/>
+    </function>
+
+    <function name="GenTextures" offset="328">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="textures" type="GLuint *" output="true" count="n"/>
+        <glx sop="145" always_array="true"/>
+    </function>
+
+    <function name="IsTexture" offset="330">
+        <param name="texture" type="GLuint"/>
+        <return type="GLboolean"/>
+        <glx sop="146"/>
+    </function>
+
+    <function name="PrioritizeTextures" offset="331">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="textures" type="const GLuint *" count="n"/>
+        <param name="priorities" type="const GLclampf *" count="n"/>
+        <glx rop="4118"/>
+    </function>
+
+    <function name="Indexub" offset="315" vectorequiv="Indexubv">
+        <param name="c" type="GLubyte"/>
+    </function>
+
+    <function name="Indexubv" offset="316">
+        <param name="c" type="const GLubyte *" count="1"/>
+        <glx rop="194"/>
+    </function>
+
+    <function name="PopClientAttrib" offset="334">
+        <glx handcode="true"/>
+    </function>
+
+    <function name="PushClientAttrib" offset="335">
+        <param name="mask" type="GLbitfield"/>
+        <glx handcode="true"/>
+    </function>
+</category>
+
+<category name="1.2">
+    <enum name="UNSIGNED_BYTE_3_3_2"                      value="0x8032"/>
+    <enum name="UNSIGNED_SHORT_4_4_4_4"                   value="0x8033"/>
+    <enum name="UNSIGNED_SHORT_5_5_5_1"                   value="0x8034"/>
+    <enum name="UNSIGNED_INT_8_8_8_8"                     value="0x8035"/>
+    <enum name="UNSIGNED_INT_10_10_10_2"                  value="0x8036"/>
+    <enum name="RESCALE_NORMAL"                count="1"  value="0x803A">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_BINDING_3D"            count="1"  value="0x806A">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PACK_SKIP_IMAGES"              count="1"  value="0x806B">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PACK_IMAGE_HEIGHT"             count="1"  value="0x806C">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="UNPACK_SKIP_IMAGES"            count="1"  value="0x806D">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="UNPACK_IMAGE_HEIGHT"           count="1"  value="0x806E">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_3D"                    count="1"  value="0x806F">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PROXY_TEXTURE_3D"                         value="0x8070"/>
+    <enum name="TEXTURE_DEPTH"                 count="1"  value="0x8071">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_WRAP_R"                count="1"  value="0x8072">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="MAX_3D_TEXTURE_SIZE"           count="1"  value="0x8073">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="UNSIGNED_BYTE_2_3_3_REV"                  value="0x8362"/>
+    <enum name="UNSIGNED_SHORT_5_6_5"                     value="0x8363"/>
+    <enum name="UNSIGNED_SHORT_5_6_5_REV"                 value="0x8364"/>
+    <enum name="UNSIGNED_SHORT_4_4_4_4_REV"               value="0x8365"/>
+    <enum name="UNSIGNED_SHORT_1_5_5_5_REV"               value="0x8366"/>
+    <enum name="UNSIGNED_INT_8_8_8_8_REV"                 value="0x8367"/>
+    <enum name="UNSIGNED_INT_2_10_10_10_REV"              value="0x8368"/>
+    <enum name="BGR"                                      value="0x80E0"/>
+    <enum name="BGRA"                                     value="0x80E1"/>
+    <enum name="MAX_ELEMENTS_VERTICES"         count="1"  value="0x80E8">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_ELEMENTS_INDICES"          count="1"  value="0x80E9">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CLAMP_TO_EDGE"                            value="0x812F"/>
+    <enum name="TEXTURE_MIN_LOD"               count="1"  value="0x813A">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_MAX_LOD"               count="1"  value="0x813B">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_BASE_LEVEL"            count="1"  value="0x813C">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_MAX_LEVEL"             count="1"  value="0x813D">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="LIGHT_MODEL_COLOR_CONTROL"     count="1"  value="0x81F8">
+        <size name="LightModelfv"/>
+        <size name="LightModeliv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SINGLE_COLOR"                             value="0x81F9"/>
+    <enum name="SEPARATE_SPECULAR_COLOR"                  value="0x81FA"/>
+    <enum name="SMOOTH_POINT_SIZE_RANGE"       count="2"  value="0x0B12">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SMOOTH_POINT_SIZE_GRANULARITY" count="1"  value="0x0B13">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SMOOTH_LINE_WIDTH_RANGE"       count="2"  value="0x0B22">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SMOOTH_LINE_WIDTH_GRANULARITY" count="1"  value="0x0B23">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ALIASED_POINT_SIZE_RANGE"      count="2"  value="0x846D">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ALIASED_LINE_WIDTH_RANGE"      count="2"  value="0x846E">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <!-- These enums are actually part of the ARB_imaging subset. -->
+
+    <enum name="CONSTANT_COLOR"                           value="0x8001"/>
+    <enum name="ONE_MINUS_CONSTANT_COLOR"                 value="0x8002"/>
+    <enum name="CONSTANT_ALPHA"                           value="0x8003"/>
+    <enum name="ONE_MINUS_CONSTANT_ALPHA"                 value="0x8004"/>
+    <enum name="BLEND_COLOR"                   count="4"  value="0x8005">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FUNC_ADD"                                 value="0x8006"/>
+    <enum name="MIN"                                      value="0x8007"/>
+    <enum name="MAX"                                      value="0x8008"/>
+    <enum name="BLEND_EQUATION"                count="1"  value="0x8009">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FUNC_SUBTRACT"                            value="0x800A"/>
+    <enum name="FUNC_REVERSE_SUBTRACT"                    value="0x800B"/>
+    <enum name="CONVOLUTION_1D"                count="1"  value="0x8010">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CONVOLUTION_2D"                count="1"  value="0x8011">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SEPARABLE_2D"                  count="1"  value="0x8012">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <enum name="CONVOLUTION_BORDER_MODE"       count="1"  value="0x8013">
+        <size name="ConvolutionParameterfv"/>
+        <size name="ConvolutionParameteriv"/>
+        <size name="GetConvolutionParameterfv" mode="get"/>
+        <size name="GetConvolutionParameteriv" mode="get"/>
+    </enum>
+    <enum name="CONVOLUTION_BORDER_COLOR"      count="4"  value="0x8154">
+        <size name="ConvolutionParameterfv"/>
+        <size name="ConvolutionParameteriv"/>
+        <size name="GetConvolutionParameterfv" mode="get"/>
+        <size name="GetConvolutionParameteriv" mode="get"/>
+    </enum>
+    <enum name="CONVOLUTION_FILTER_SCALE"      count="4"  value="0x8014">
+        <size name="ConvolutionParameterfv"/>
+        <size name="ConvolutionParameteriv"/>
+        <size name="GetConvolutionParameterfv" mode="get"/>
+        <size name="GetConvolutionParameteriv" mode="get"/>
+    </enum>
+    <enum name="CONVOLUTION_FILTER_BIAS"       count="4"  value="0x8015">
+        <size name="ConvolutionParameterfv"/>
+        <size name="ConvolutionParameteriv"/>
+        <size name="GetConvolutionParameterfv" mode="get"/>
+        <size name="GetConvolutionParameteriv" mode="get"/>
+    </enum>
+    <enum name="REDUCE"                                   value="0x8016"/>
+    <enum name="CONVOLUTION_FORMAT"            count="1"  value="0x8017">
+        <size name="GetConvolutionParameterfv" mode="get"/>
+        <size name="GetConvolutionParameteriv" mode="get"/>
+    </enum>
+    <enum name="CONVOLUTION_WIDTH"             count="1"  value="0x8018">
+        <size name="GetConvolutionParameterfv" mode="get"/>
+        <size name="GetConvolutionParameteriv" mode="get"/>
+    </enum>
+    <enum name="CONVOLUTION_HEIGHT"            count="1"  value="0x8019">
+        <size name="GetConvolutionParameterfv" mode="get"/>
+        <size name="GetConvolutionParameteriv" mode="get"/>
+    </enum>
+    <enum name="MAX_CONVOLUTION_WIDTH"         count="1"  value="0x801A">
+        <size name="GetConvolutionParameterfv" mode="get"/>
+        <size name="GetConvolutionParameteriv" mode="get"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_CONVOLUTION_HEIGHT"        count="1"  value="0x801B">
+        <size name="GetConvolutionParameterfv" mode="get"/>
+        <size name="GetConvolutionParameteriv" mode="get"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_CONVOLUTION_RED_SCALE"    count="1"  value="0x801C">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_CONVOLUTION_GREEN_SCALE"  count="1"  value="0x801D">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_CONVOLUTION_BLUE_SCALE"   count="1"  value="0x801E">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_CONVOLUTION_ALPHA_SCALE"  count="1"  value="0x801F">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_CONVOLUTION_RED_BIAS"     count="1"  value="0x8020">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_CONVOLUTION_GREEN_BIAS"   count="1"  value="0x8021">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_CONVOLUTION_BLUE_BIAS"    count="1"  value="0x8022">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_CONVOLUTION_ALPHA_BIAS"   count="1"  value="0x8023">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <enum name="HISTOGRAM"                     count="1"  value="0x8024">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PROXY_HISTOGRAM"                          value="0x8025"/>
+    <enum name="HISTOGRAM_WIDTH"               count="1"  value="0x8026">
+        <size name="GetHistogramParameterfv" mode="get"/>
+        <size name="GetHistogramParameteriv" mode="get"/>
+    </enum>
+    <enum name="HISTOGRAM_FORMAT"              count="1"  value="0x8027">
+        <size name="GetHistogramParameterfv" mode="get"/>
+        <size name="GetHistogramParameteriv" mode="get"/>
+    </enum>
+    <enum name="HISTOGRAM_RED_SIZE"            count="1"  value="0x8028">
+        <size name="GetHistogramParameterfv" mode="get"/>
+        <size name="GetHistogramParameteriv" mode="get"/>
+    </enum>
+    <enum name="HISTOGRAM_GREEN_SIZE"          count="1"  value="0x8029">
+        <size name="GetHistogramParameterfv" mode="get"/>
+        <size name="GetHistogramParameteriv" mode="get"/>
+    </enum>
+    <enum name="HISTOGRAM_BLUE_SIZE"           count="1"  value="0x802A">
+        <size name="GetHistogramParameterfv" mode="get"/>
+        <size name="GetHistogramParameteriv" mode="get"/>
+    </enum>
+    <enum name="HISTOGRAM_ALPHA_SIZE"          count="1"  value="0x802B">
+        <size name="GetHistogramParameterfv" mode="get"/>
+        <size name="GetHistogramParameteriv" mode="get"/>
+    </enum>
+    <enum name="HISTOGRAM_LUMINANCE_SIZE"      count="1"  value="0x802C">
+        <size name="GetHistogramParameterfv" mode="get"/>
+        <size name="GetHistogramParameteriv" mode="get"/>
+    </enum>
+    <enum name="HISTOGRAM_SINK"                count="1"  value="0x802D">
+        <size name="GetHistogramParameterfv" mode="get"/>
+        <size name="GetHistogramParameteriv" mode="get"/>
+    </enum>
+    <enum name="MINMAX"                        count="1"  value="0x802E">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MINMAX_FORMAT"                 count="1"  value="0x802F">
+        <size name="GetMinmaxParameterfv" mode="get"/>
+        <size name="GetMinmaxParameteriv" mode="get"/>
+    </enum>
+    <enum name="MINMAX_SINK"                   count="1"  value="0x8030">
+        <size name="GetMinmaxParameterfv" mode="get"/>
+        <size name="GetMinmaxParameteriv" mode="get"/>
+    </enum>
+
+    <enum name="COLOR_MATRIX"                  count="16" value="0x80B1">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_MATRIX_STACK_DEPTH"      count="1"  value="0x80B2">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_COLOR_MATRIX_STACK_DEPTH"  count="1"  value="0x80B3">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_COLOR_MATRIX_RED_SCALE"   count="1"  value="0x80B4">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_COLOR_MATRIX_GREEN_SCALE" count="1"  value="0x80B5">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_COLOR_MATRIX_BLUE_SCALE"  count="1"  value="0x80B6">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_COLOR_MATRIX_ALPHA_SCALE" count="1"  value="0x80B7">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_COLOR_MATRIX_RED_BIAS"    count="1"  value="0x80B8">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_COLOR_MATRIX_GREEN_BIAS"  count="1"  value="0x80B9">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_COLOR_MATRIX_BLUE_BIAS"   count="1"  value="0x80BA">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_COLOR_MATRIX_ALPHA_BIAS"  count="1"  value="0x80BB">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <enum name="COLOR_TABLE"                   count="1"  value="0x80D0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_CONVOLUTION_COLOR_TABLE"  count="1"  value="0x80D1">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_COLOR_MATRIX_COLOR_TABLE" count="1"  value="0x80D2">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PROXY_COLOR_TABLE"                              value="0x80D3"/>
+    <enum name="PROXY_POST_CONVOLUTION_COLOR_TABLE"             value="0x80D4"/>
+    <enum name="PROXY_POST_COLOR_MATRIX_COLOR_TABLE"            value="0x80D5"/>
+
+    <enum name="COLOR_TABLE_SCALE"             count="4"  value="0x80D6">
+        <size name="ColorTableParameterfv"/>
+        <size name="ColorTableParameteriv"/>
+        <size name="GetColorTableParameterfv" mode="get"/>
+        <size name="GetColorTableParameteriv" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_BIAS"              count="4"  value="0x80D7">
+        <size name="ColorTableParameterfv"/>
+        <size name="ColorTableParameteriv"/>
+        <size name="GetColorTableParameterfv" mode="get"/>
+        <size name="GetColorTableParameteriv" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_FORMAT"            count="1"  value="0x80D8">
+        <size name="GetColorTableParameterfv" mode="get"/>
+        <size name="GetColorTableParameteriv" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_WIDTH"             count="1"  value="0x80D9">
+        <size name="GetColorTableParameterfv" mode="get"/>
+        <size name="GetColorTableParameteriv" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_RED_SIZE"          count="1"  value="0x80DA">
+        <size name="GetColorTableParameterfv" mode="get"/>
+        <size name="GetColorTableParameteriv" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_GREEN_SIZE"        count="1"  value="0x80DB">
+        <size name="GetColorTableParameterfv" mode="get"/>
+        <size name="GetColorTableParameteriv" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_BLUE_SIZE"         count="1"  value="0x80DC">
+        <size name="GetColorTableParameterfv" mode="get"/>
+        <size name="GetColorTableParameteriv" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_ALPHA_SIZE"        count="1"  value="0x80DD">
+        <size name="GetColorTableParameterfv" mode="get"/>
+        <size name="GetColorTableParameteriv" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_LUMINANCE_SIZE"    count="1"  value="0x80DE">
+        <size name="GetColorTableParameterfv" mode="get"/>
+        <size name="GetColorTableParameteriv" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_INTENSITY_SIZE"    count="1"  value="0x80DF">
+        <size name="GetColorTableParameterfv" mode="get"/>
+        <size name="GetColorTableParameteriv" mode="get"/>
+    </enum>
+
+
+    <function name="BlendColor" offset="336">
+        <param name="red" type="GLclampf"/>
+        <param name="green" type="GLclampf"/>
+        <param name="blue" type="GLclampf"/>
+        <param name="alpha" type="GLclampf"/>
+        <glx rop="4096"/>
+    </function>
+
+    <function name="BlendEquation" offset="337">
+        <param name="mode" type="GLenum"/>
+        <glx rop="4097"/>
+    </function>
+
+    <function name="DrawRangeElements" offset="338">
+        <param name="mode" type="GLenum"/>
+        <param name="start" type="GLuint"/>
+        <param name="end" type="GLuint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="type" type="GLenum"/>
+        <param name="indices" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="ColorTable" offset="339">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="table" type="const GLvoid *" img_width="width" img_pad_dimensions="false" img_format="format" img_type="type" img_target="target"/>
+        <glx rop="2053" large="true"/>
+    </function>
+
+    <function name="ColorTableParameterfv" offset="340">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="2054"/>
+    </function>
+
+    <function name="ColorTableParameteriv" offset="341">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="2055"/>
+    </function>
+
+    <function name="CopyColorTable" offset="342">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <glx rop="2056"/>
+    </function>
+
+    <function name="GetColorTable" offset="343">
+        <param name="target" type="GLenum"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="table" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
+        <glx sop="147" dimensions_in_reply="true"/>
+    </function>
+
+    <function name="GetColorTableParameterfv" offset="344">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="148"/>
+    </function>
+
+    <function name="GetColorTableParameteriv" offset="345">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="149"/>
+    </function>
+
+    <function name="ColorSubTable" offset="346">
+        <param name="target" type="GLenum"/>
+        <param name="start" type="GLsizei"/>
+        <param name="count" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="data" type="const GLvoid *" img_width="count" img_pad_dimensions="false" img_format="format" img_type="type" img_target="target"/>
+        <glx rop="195" large="true"/>
+    </function>
+
+    <function name="CopyColorSubTable" offset="347">
+        <param name="target" type="GLenum"/>
+        <param name="start" type="GLsizei"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <glx rop="196"/>
+    </function>
+
+    <function name="ConvolutionFilter1D" offset="348">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="image" type="const GLvoid *" img_width="width" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
+        <glx rop="4101" large="true"/>
+    </function>
+
+    <function name="ConvolutionFilter2D" offset="349">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="image" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
+        <glx rop="4102" large="true"/>
+    </function>
+
+    <function name="ConvolutionParameterf" offset="350">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat"/>
+        <glx rop="4103"/>
+    </function>
+
+    <function name="ConvolutionParameterfv" offset="351">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="4104"/>
+    </function>
+
+    <function name="ConvolutionParameteri" offset="352">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint"/>
+        <glx rop="4105"/>
+    </function>
+
+    <function name="ConvolutionParameteriv" offset="353">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="4106"/>
+    </function>
+
+    <function name="CopyConvolutionFilter1D" offset="354">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <glx rop="4107"/>
+    </function>
+
+    <function name="CopyConvolutionFilter2D" offset="355">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <glx rop="4108"/>
+    </function>
+
+    <function name="GetConvolutionFilter" offset="356">
+        <param name="target" type="GLenum"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="image" type="GLvoid *" output="true" img_width="width" img_height="height" img_format="format" img_type="type"/>
+        <glx sop="150" dimensions_in_reply="true"/>
+    </function>
+
+    <function name="GetConvolutionParameterfv" offset="357">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="151"/>
+    </function>
+
+    <function name="GetConvolutionParameteriv" offset="358">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="152"/>
+    </function>
+
+    <function name="GetSeparableFilter" offset="359">
+        <param name="target" type="GLenum"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="row" type="GLvoid *" output="true"/>
+        <param name="column" type="GLvoid *" output="true"/>
+        <param name="span" type="GLvoid *" output="true"/>
+        <glx sop="153" handcode="true"/>
+    </function>
+
+    <function name="SeparableFilter2D" offset="360">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="row" type="const GLvoid *"/>
+        <param name="column" type="const GLvoid *"/>
+        <glx rop="4109" handcode="true"/>
+    </function>
+
+    <function name="GetHistogram" offset="361">
+        <param name="target" type="GLenum"/>
+        <param name="reset" type="GLboolean"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="values" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
+        <glx sop="154" dimensions_in_reply="true" img_reset="reset"/>
+    </function>
+
+    <function name="GetHistogramParameterfv" offset="362">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="155"/>
+    </function>
+
+    <function name="GetHistogramParameteriv" offset="363">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="156"/>
+    </function>
+
+    <function name="GetMinmax" offset="364">
+        <param name="target" type="GLenum"/>
+        <param name="reset" type="GLboolean"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="values" type="GLvoid *" output="true" img_width="2" img_format="format" img_type="type"/>
+        <glx sop="157" img_reset="reset"/>
+    </function>
+
+    <function name="GetMinmaxParameterfv" offset="365">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx sop="158"/>
+    </function>
+
+    <function name="GetMinmaxParameteriv" offset="366">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="159"/>
+    </function>
+
+    <function name="Histogram" offset="367">
+        <param name="target" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="sink" type="GLboolean"/>
+        <glx rop="4110"/>
+    </function>
+
+    <function name="Minmax" offset="368">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="sink" type="GLboolean"/>
+        <glx rop="4111"/>
+    </function>
+
+    <function name="ResetHistogram" offset="369">
+        <param name="target" type="GLenum"/>
+        <glx rop="4112"/>
+    </function>
+
+    <function name="ResetMinmax" offset="370">
+        <param name="target" type="GLenum"/>
+        <glx rop="4113"/>
+    </function>
+
+    <function name="TexImage3D" offset="371">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_format="format" img_type="type" img_target="target" img_null_flag="true" img_pad_dimensions="true"/>
+        <glx rop="4114" large="true"/>
+    </function>
+
+    <function name="TexSubImage3D" offset="372">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="UNUSED" type="GLuint" padding="true"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_xoff="xoffset" img_yoff="yoffset" img_zoff="zoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
+        <glx rop="4115" large="true"/>
+    </function>
+
+    <function name="CopyTexSubImage3D" offset="373">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <glx rop="4123"/>
+    </function>
+</category>
+
+<category name="1.3">
+    <enum name="TEXTURE0"                                 value="0x84C0"/>
+    <enum name="TEXTURE1"                                 value="0x84C1"/>
+    <enum name="TEXTURE2"                                 value="0x84C2"/>
+    <enum name="TEXTURE3"                                 value="0x84C3"/>
+    <enum name="TEXTURE4"                                 value="0x84C4"/>
+    <enum name="TEXTURE5"                                 value="0x84C5"/>
+    <enum name="TEXTURE6"                                 value="0x84C6"/>
+    <enum name="TEXTURE7"                                 value="0x84C7"/>
+    <enum name="TEXTURE8"                                 value="0x84C8"/>
+    <enum name="TEXTURE9"                                 value="0x84C9"/>
+    <enum name="TEXTURE10"                                value="0x84CA"/>
+    <enum name="TEXTURE11"                                value="0x84CB"/>
+    <enum name="TEXTURE12"                                value="0x84CC"/>
+    <enum name="TEXTURE13"                                value="0x84CD"/>
+    <enum name="TEXTURE14"                                value="0x84CE"/>
+    <enum name="TEXTURE15"                                value="0x84CF"/>
+    <enum name="TEXTURE16"                                value="0x84D0"/>
+    <enum name="TEXTURE17"                                value="0x84D1"/>
+    <enum name="TEXTURE18"                                value="0x84D2"/>
+    <enum name="TEXTURE19"                                value="0x84D3"/>
+    <enum name="TEXTURE20"                                value="0x84D4"/>
+    <enum name="TEXTURE21"                                value="0x84D5"/>
+    <enum name="TEXTURE22"                                value="0x84D6"/>
+    <enum name="TEXTURE23"                                value="0x84D7"/>
+    <enum name="TEXTURE24"                                value="0x84D8"/>
+    <enum name="TEXTURE25"                                value="0x84D9"/>
+    <enum name="TEXTURE26"                                value="0x84DA"/>
+    <enum name="TEXTURE27"                                value="0x84DB"/>
+    <enum name="TEXTURE28"                                value="0x84DC"/>
+    <enum name="TEXTURE29"                                value="0x84DD"/>
+    <enum name="TEXTURE30"                                value="0x84DE"/>
+    <enum name="TEXTURE31"                                value="0x84DF"/>
+    <enum name="ACTIVE_TEXTURE"                count="1"  value="0x84E0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CLIENT_ACTIVE_TEXTURE"         count="1"  value="0x84E1">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_TEXTURE_UNITS"             count="1"  value="0x84E2">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TRANSPOSE_MODELVIEW_MATRIX"               value="0x84E3"/>
+    <enum name="TRANSPOSE_PROJECTION_MATRIX"              value="0x84E4"/>
+    <enum name="TRANSPOSE_TEXTURE_MATRIX"                 value="0x84E5"/>
+    <enum name="TRANSPOSE_COLOR_MATRIX"                   value="0x84E6"/>
+    <enum name="MULTISAMPLE"                   count="1"  value="0x809D">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLE_ALPHA_TO_COVERAGE"      count="1"  value="0x809E">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLE_ALPHA_TO_ONE"           count="1"  value="0x809F">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLE_COVERAGE"               count="1"  value="0x80A0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLE_BUFFERS"                count="1"  value="0x80A8">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLES"                       count="1"  value="0x80A9">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLE_COVERAGE_VALUE"         count="1"  value="0x80AA">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLE_COVERAGE_INVERT"        count="1"  value="0x80AB">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MULTISAMPLE_BIT"                          value="0x20000000"/>
+    <enum name="NORMAL_MAP"                               value="0x8511"/>
+    <enum name="REFLECTION_MAP"                           value="0x8512"/>
+    <enum name="TEXTURE_CUBE_MAP"              count="1"  value="0x8513">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_BINDING_CUBE_MAP"      count="1"  value="0x8514">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_CUBE_MAP_POSITIVE_X"              value="0x8515"/>
+    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_X"              value="0x8516"/>
+    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Y"              value="0x8517"/>
+    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Y"              value="0x8518"/>
+    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Z"              value="0x8519"/>
+    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Z"              value="0x851A"/>
+    <enum name="PROXY_TEXTURE_CUBE_MAP"                   value="0x851B"/>
+    <enum name="MAX_CUBE_MAP_TEXTURE_SIZE"     count="1"  value="0x851C">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COMPRESSED_ALPHA"                         value="0x84E9"/>
+    <enum name="COMPRESSED_LUMINANCE"                     value="0x84EA"/>
+    <enum name="COMPRESSED_LUMINANCE_ALPHA"               value="0x84EB"/>
+    <enum name="COMPRESSED_INTENSITY"                     value="0x84EC"/>
+    <enum name="COMPRESSED_RGB"                           value="0x84ED"/>
+    <enum name="COMPRESSED_RGBA"                          value="0x84EE"/>
+    <enum name="TEXTURE_COMPRESSION_HINT"      count="1"  value="0x84EF">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COMPRESSED_IMAGE_SIZE" count="1"  value="0x86A0">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COMPRESSED"            count="1"  value="0x86A1">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="NUM_COMPRESSED_TEXTURE_FORMATS" count="1" value="0x86A2">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COMPRESSED_TEXTURE_FORMATS"    count="-1"  value="0x86A3">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CLAMP_TO_BORDER"                          value="0x812D"/>
+    <enum name="COMBINE"                                  value="0x8570"/>
+    <enum name="COMBINE_RGB"                   count="1"  value="0x8571">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="COMBINE_ALPHA"                 count="1"  value="0x8572">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="SOURCE0_RGB"                   count="1"  value="0x8580">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="SOURCE1_RGB"                   count="1"  value="0x8581">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="SOURCE2_RGB"                   count="1"  value="0x8582">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="SOURCE0_ALPHA"                 count="1"  value="0x8588">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="SOURCE1_ALPHA"                 count="1"  value="0x8589">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="SOURCE2_ALPHA"                 count="1"  value="0x858A">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="OPERAND0_RGB"                  count="1"  value="0x8590">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="OPERAND1_RGB"                  count="1"  value="0x8591">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="OPERAND2_RGB"                  count="1"  value="0x8592">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="OPERAND0_ALPHA"                count="1"  value="0x8598">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="OPERAND1_ALPHA"                count="1"  value="0x8599">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="OPERAND2_ALPHA"                count="1"  value="0x859A">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="RGB_SCALE"                     count="1"  value="0x8573">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="ADD_SIGNED"                               value="0x8574"/>
+    <enum name="INTERPOLATE"                              value="0x8575"/>
+    <enum name="SUBTRACT"                                 value="0x84E7"/>
+    <enum name="CONSTANT"                                 value="0x8576"/>
+    <enum name="PRIMARY_COLOR"                            value="0x8577"/>
+    <enum name="PREVIOUS"                                 value="0x8578"/>
+    <enum name="DOT3_RGB"                                 value="0x86AE"/>
+    <enum name="DOT3_RGBA"                                value="0x86AF"/>
+
+    <function name="ActiveTexture" alias="ActiveTextureARB">
+        <param name="texture" type="GLenum"/>
+    </function>
+
+    <function name="ClientActiveTexture" alias="ClientActiveTextureARB">
+        <param name="texture" type="GLenum"/>
+    </function>
+
+    <function name="MultiTexCoord1d" alias="MultiTexCoord1dARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLdouble"/>
+    </function>
+
+    <function name="MultiTexCoord1dv" alias="MultiTexCoord1dvARB">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLdouble *"/>
+    </function>
+
+    <function name="MultiTexCoord1f" alias="MultiTexCoord1fARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLfloat"/>
+    </function>
+
+    <function name="MultiTexCoord1fv" alias="MultiTexCoord1fvARB">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="MultiTexCoord1i" alias="MultiTexCoord1iARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLint"/>
+    </function>
+
+    <function name="MultiTexCoord1iv" alias="MultiTexCoord1ivARB">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLint *"/>
+    </function>
+
+    <function name="MultiTexCoord1s" alias="MultiTexCoord1sARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLshort"/>
+    </function>
+
+    <function name="MultiTexCoord1sv" alias="MultiTexCoord1svARB">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLshort *"/>
+    </function>
+
+    <function name="MultiTexCoord2d" alias="MultiTexCoord2dARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLdouble"/>
+        <param name="t" type="GLdouble"/>
+    </function>
+
+    <function name="MultiTexCoord2dv" alias="MultiTexCoord2dvARB">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLdouble *"/>
+    </function>
+
+    <function name="MultiTexCoord2f" alias="MultiTexCoord2fARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+    </function>
+
+    <function name="MultiTexCoord2fv" alias="MultiTexCoord2fvARB">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="MultiTexCoord2i" alias="MultiTexCoord2iARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLint"/>
+        <param name="t" type="GLint"/>
+    </function>
+
+    <function name="MultiTexCoord2iv" alias="MultiTexCoord2ivARB">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLint *"/>
+    </function>
+
+    <function name="MultiTexCoord2s" alias="MultiTexCoord2sARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLshort"/>
+        <param name="t" type="GLshort"/>
+    </function>
+
+    <function name="MultiTexCoord2sv" alias="MultiTexCoord2svARB">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLshort *"/>
+    </function>
+
+    <function name="MultiTexCoord3d" alias="MultiTexCoord3dARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLdouble"/>
+        <param name="t" type="GLdouble"/>
+        <param name="r" type="GLdouble"/>
+    </function>
+
+    <function name="MultiTexCoord3dv" alias="MultiTexCoord3dvARB">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLdouble *"/>
+    </function>
+
+    <function name="MultiTexCoord3f" alias="MultiTexCoord3fARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="r" type="GLfloat"/>
+    </function>
+
+    <function name="MultiTexCoord3fv" alias="MultiTexCoord3fvARB">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="MultiTexCoord3i" alias="MultiTexCoord3iARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLint"/>
+        <param name="t" type="GLint"/>
+        <param name="r" type="GLint"/>
+    </function>
+
+    <function name="MultiTexCoord3iv" alias="MultiTexCoord3ivARB">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLint *"/>
+    </function>
+
+    <function name="MultiTexCoord3s" alias="MultiTexCoord3sARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLshort"/>
+        <param name="t" type="GLshort"/>
+        <param name="r" type="GLshort"/>
+    </function>
+
+    <function name="MultiTexCoord3sv" alias="MultiTexCoord3svARB">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLshort *"/>
+    </function>
+
+    <function name="MultiTexCoord4d" alias="MultiTexCoord4dARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLdouble"/>
+        <param name="t" type="GLdouble"/>
+        <param name="r" type="GLdouble"/>
+        <param name="q" type="GLdouble"/>
+    </function>
+
+    <function name="MultiTexCoord4dv" alias="MultiTexCoord4dvARB">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLdouble *"/>
+    </function>
+
+    <function name="MultiTexCoord4f" alias="MultiTexCoord4fARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="r" type="GLfloat"/>
+        <param name="q" type="GLfloat"/>
+    </function>
+
+    <function name="MultiTexCoord4fv" alias="MultiTexCoord4fvARB">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="MultiTexCoord4i" alias="MultiTexCoord4iARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLint"/>
+        <param name="t" type="GLint"/>
+        <param name="r" type="GLint"/>
+        <param name="q" type="GLint"/>
+    </function>
+
+    <function name="MultiTexCoord4iv" alias="MultiTexCoord4ivARB">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLint *"/>
+    </function>
+
+    <function name="MultiTexCoord4s" alias="MultiTexCoord4sARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLshort"/>
+        <param name="t" type="GLshort"/>
+        <param name="r" type="GLshort"/>
+        <param name="q" type="GLshort"/>
+    </function>
+
+    <function name="MultiTexCoord4sv" alias="MultiTexCoord4svARB">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLshort *"/>
+    </function>
+
+    <function name="LoadTransposeMatrixf" alias="LoadTransposeMatrixfARB">
+        <param name="m" type="const GLfloat *"/>
+    </function>
+
+    <function name="LoadTransposeMatrixd" alias="LoadTransposeMatrixdARB">
+        <param name="m" type="const GLdouble *"/>
+    </function>
+
+    <function name="MultTransposeMatrixf" alias="MultTransposeMatrixfARB">
+        <param name="m" type="const GLfloat *"/>
+    </function>
+
+    <function name="MultTransposeMatrixd" alias="MultTransposeMatrixdARB">
+        <param name="m" type="const GLdouble *"/>
+    </function>
+
+    <function name="SampleCoverage" alias="SampleCoverageARB">
+        <param name="value" type="GLclampf"/>
+        <param name="invert" type="GLboolean"/>
+    </function>
+
+    <function name="CompressedTexImage3D" alias="CompressedTexImage3DARB">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="imageSize" type="GLsizei"/>
+        <param name="data" type="const GLvoid *"/>
+    </function>
+
+    <function name="CompressedTexImage2D" alias="CompressedTexImage2DARB">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="imageSize" type="GLsizei"/>
+        <param name="data" type="const GLvoid *"/>
+    </function>
+
+    <function name="CompressedTexImage1D" alias="CompressedTexImage1DARB">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="imageSize" type="GLsizei"/>
+        <param name="data" type="const GLvoid *"/>
+    </function>
+
+    <function name="CompressedTexSubImage3D" alias="CompressedTexSubImage3DARB">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="imageSize" type="GLsizei"/>
+        <param name="data" type="const GLvoid *"/>
+    </function>
+
+    <function name="CompressedTexSubImage2D" alias="CompressedTexSubImage2DARB">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="imageSize" type="GLsizei"/>
+        <param name="data" type="const GLvoid *"/>
+    </function>
+
+    <function name="CompressedTexSubImage1D" alias="CompressedTexSubImage1DARB">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="imageSize" type="GLsizei"/>
+        <param name="data" type="const GLvoid *"/>
+    </function>
+
+    <function name="GetCompressedTexImage" alias="GetCompressedTexImageARB">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="img" type="GLvoid *" output="true"/>
+    </function>
+</category>
+
+<category name="1.4">
+    <enum name="BLEND_DST_RGB"                 count="1"  value="0x80C8">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLEND_SRC_RGB"                 count="1"  value="0x80C9">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLEND_DST_ALPHA"               count="1"  value="0x80CA">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLEND_SRC_ALPHA"               count="1"  value="0x80CB">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POINT_SIZE_MIN"                count="1"  value="0x8126">
+        <size name="PointParameterfvEXT"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POINT_SIZE_MAX"                count="1"  value="0x8127">
+        <size name="PointParameterfvEXT"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POINT_FADE_THRESHOLD_SIZE"     count="1"  value="0x8128">
+        <size name="PointParameterfvEXT"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POINT_DISTANCE_ATTENUATION"    count="3"  value="0x8129">
+        <size name="PointParameterfvEXT"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="GENERATE_MIPMAP"               count="1"  value="0x8191">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="GENERATE_MIPMAP_HINT"                     value="0x8192"/>
+    <enum name="DEPTH_COMPONENT16"                        value="0x81A5"/>
+    <enum name="DEPTH_COMPONENT24"                        value="0x81A6"/>
+    <enum name="DEPTH_COMPONENT32"                        value="0x81A7"/>
+    <enum name="MIRRORED_REPEAT"                          value="0x8370"/>
+    <enum name="FOG_COORDINATE_SOURCE"         count="1"  value="0x8450">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_COORDINATE"                           value="0x8451"/>
+    <enum name="FRAGMENT_DEPTH"                           value="0x8452"/>
+    <enum name="CURRENT_FOG_COORDINATE"        count="1"  value="0x8453">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_COORDINATE_ARRAY_TYPE"     count="1"  value="0x8454">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_COORDINATE_ARRAY_STRIDE"   count="1"  value="0x8455">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_COORDINATE_ARRAY_POINTER"             value="0x8456"/>
+    <enum name="FOG_COORDINATE_ARRAY"          count="1"  value="0x8457">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_SUM"                                value="0x8458"/>
+    <enum name="CURRENT_SECONDARY_COLOR"       count="4"  value="0x8459">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SECONDARY_COLOR_ARRAY_SIZE"    count="1"  value="0x845A">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SECONDARY_COLOR_ARRAY_TYPE"    count="1"  value="0x845B">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SECONDARY_COLOR_ARRAY_STRIDE"  count="1"  value="0x845C">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SECONDARY_COLOR_ARRAY_POINTER"            value="0x845D"/>
+    <enum name="SECONDARY_COLOR_ARRAY"         count="1"  value="0x845E">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_TEXTURE_LOD_BIAS"          count="1"  value="0x84FD">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_FILTER_CONTROL"                   value="0x8500"/>
+    <enum name="TEXTURE_LOD_BIAS"              count="1"  value="0x8501">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="INCR_WRAP"                                value="0x8507"/>
+    <enum name="DECR_WRAP"                                value="0x8508"/>
+    <enum name="TEXTURE_DEPTH_SIZE"            count="1"  value="0x884A">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="DEPTH_TEXTURE_MODE"            count="1"  value="0x884B">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COMPARE_MODE"          count="1"  value="0x884C">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COMPARE_FUNC"          count="1"  value="0x884D">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="COMPARE_R_TO_TEXTURE"                     value="0x884E"/>
+
+    <function name="BlendFuncSeparate" alias="BlendFuncSeparateEXT">
+        <param name="sfactorRGB" type="GLenum"/>
+        <param name="dfactorRGB" type="GLenum"/>
+        <param name="sfactorAlpha" type="GLenum"/>
+        <param name="dfactorAlpha" type="GLenum"/>
+    </function>
+
+    <function name="FogCoordf" alias="FogCoordfEXT">
+        <param name="coord" type="GLfloat"/>
+    </function>
+
+    <function name="FogCoordfv" alias="FogCoordfvEXT">
+        <param name="coord" type="const GLfloat *"/>
+    </function>
+
+    <function name="FogCoordd" alias="FogCoorddEXT">
+        <param name="coord" type="GLdouble"/>
+    </function>
+
+    <function name="FogCoorddv" alias="FogCoorddvEXT">
+        <param name="coord" type="const GLdouble *"/>
+    </function>
+
+    <function name="FogCoordPointer" alias="FogCoordPointerEXT">
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+    </function>
+
+    <function name="MultiDrawArrays" alias="MultiDrawArraysEXT">
+        <param name="mode" type="GLenum"/>
+        <param name="first" type="GLint *"/> <!-- Spec bug. Should be const. -->
+        <param name="count" type="GLsizei *"/> <!-- Spec bug. Should be const. -->
+        <param name="primcount" type="GLsizei"/>
+    </function>
+
+    <function name="MultiDrawElements" alias="MultiDrawElementsEXT">
+        <param name="mode" type="GLenum"/>
+        <param name="count" type="const GLsizei *"/>
+        <param name="type" type="GLenum"/>
+        <param name="indices" type="const GLvoid **"/>
+        <param name="primcount" type="GLsizei"/>
+    </function>
+
+    <function name="PointParameterf" alias="PointParameterfEXT">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+    </function>
+
+    <function name="PointParameterfv" alias="PointParameterfvEXT">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *"/>
+    </function>
+
+    <function name="PointParameteri" alias="PointParameteriNV">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+    </function>
+
+    <function name="PointParameteriv" alias="PointParameterivNV">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *"/>
+    </function>
+
+    <function name="SecondaryColor3b" alias="SecondaryColor3bEXT">
+        <param name="red" type="GLbyte"/>
+        <param name="green" type="GLbyte"/>
+        <param name="blue" type="GLbyte"/>
+    </function>
+
+    <function name="SecondaryColor3bv" alias="SecondaryColor3bvEXT">
+        <param name="v" type="const GLbyte *"/>
+    </function>
+
+    <function name="SecondaryColor3d" alias="SecondaryColor3dEXT">
+        <param name="red" type="GLdouble"/>
+        <param name="green" type="GLdouble"/>
+        <param name="blue" type="GLdouble"/>
+    </function>
+
+    <function name="SecondaryColor3dv" alias="SecondaryColor3dvEXT">
+        <param name="v" type="const GLdouble *"/>
+    </function>
+
+    <function name="SecondaryColor3f" alias="SecondaryColor3fEXT">
+        <param name="red" type="GLfloat"/>
+        <param name="green" type="GLfloat"/>
+        <param name="blue" type="GLfloat"/>
+    </function>
+
+    <function name="SecondaryColor3fv" alias="SecondaryColor3fvEXT">
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="SecondaryColor3i" alias="SecondaryColor3iEXT">
+        <param name="red" type="GLint"/>
+        <param name="green" type="GLint"/>
+        <param name="blue" type="GLint"/>
+    </function>
+
+    <function name="SecondaryColor3iv" alias="SecondaryColor3ivEXT">
+        <param name="v" type="const GLint *"/>
+    </function>
+
+    <function name="SecondaryColor3s" alias="SecondaryColor3sEXT">
+        <param name="red" type="GLshort"/>
+        <param name="green" type="GLshort"/>
+        <param name="blue" type="GLshort"/>
+    </function>
+
+    <function name="SecondaryColor3sv" alias="SecondaryColor3svEXT">
+        <param name="v" type="const GLshort *"/>
+    </function>
+
+    <function name="SecondaryColor3ub" alias="SecondaryColor3ubEXT">
+        <param name="red" type="GLubyte"/>
+        <param name="green" type="GLubyte"/>
+        <param name="blue" type="GLubyte"/>
+    </function>
+
+    <function name="SecondaryColor3ubv" alias="SecondaryColor3ubvEXT">
+        <param name="v" type="const GLubyte *"/>
+    </function>
+
+    <function name="SecondaryColor3ui" alias="SecondaryColor3uiEXT">
+        <param name="red" type="GLuint"/>
+        <param name="green" type="GLuint"/>
+        <param name="blue" type="GLuint"/>
+    </function>
+
+    <function name="SecondaryColor3uiv" alias="SecondaryColor3uivEXT">
+        <param name="v" type="const GLuint *"/>
+    </function>
+
+    <function name="SecondaryColor3us" alias="SecondaryColor3usEXT">
+        <param name="red" type="GLushort"/>
+        <param name="green" type="GLushort"/>
+        <param name="blue" type="GLushort"/>
+    </function>
+
+    <function name="SecondaryColor3usv" alias="SecondaryColor3usvEXT">
+        <param name="v" type="const GLushort *"/>
+    </function>
+
+    <function name="SecondaryColorPointer" alias="SecondaryColorPointerEXT">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+    </function>
+
+    <function name="WindowPos2d" alias="WindowPos2dMESA">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+    </function>
+
+    <function name="WindowPos2dv" alias="WindowPos2dvMESA">
+        <param name="v" type="const GLdouble *"/>
+    </function>
+
+    <function name="WindowPos2f" alias="WindowPos2fMESA">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+    </function>
+
+    <function name="WindowPos2fv" alias="WindowPos2fvMESA">
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="WindowPos2i" alias="WindowPos2iMESA">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+    </function>
+
+    <function name="WindowPos2iv" alias="WindowPos2ivMESA">
+        <param name="v" type="const GLint *"/>
+    </function>
+
+    <function name="WindowPos2s" alias="WindowPos2sMESA">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+    </function>
+
+    <function name="WindowPos2sv" alias="WindowPos2svMESA">
+        <param name="v" type="const GLshort *"/>
+    </function>
+
+    <function name="WindowPos3d" alias="WindowPos3dMESA">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+    </function>
+
+    <function name="WindowPos3dv" alias="WindowPos3dvMESA">
+        <param name="v" type="const GLdouble *"/>
+    </function>
+
+    <function name="WindowPos3f" alias="WindowPos3fMESA">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="WindowPos3fv" alias="WindowPos3fvMESA">
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="WindowPos3i" alias="WindowPos3iMESA">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="z" type="GLint"/>
+    </function>
+
+    <function name="WindowPos3iv" alias="WindowPos3ivMESA">
+        <param name="v" type="const GLint *"/>
+    </function>
+
+    <function name="WindowPos3s" alias="WindowPos3sMESA">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+    </function>
+
+    <function name="WindowPos3sv" alias="WindowPos3svMESA">
+        <param name="v" type="const GLshort *"/>
+    </function>
+</category>
+
+<category name="1.5">
+    <enum name="BUFFER_SIZE"                              value="0x8764"/>
+    <enum name="BUFFER_USAGE"                             value="0x8765"/>
+    <enum name="QUERY_COUNTER_BITS"                       value="0x8864"/>
+    <enum name="CURRENT_QUERY"                            value="0x8865"/>
+    <enum name="QUERY_RESULT"                             value="0x8866"/>
+    <enum name="QUERY_RESULT_AVAILABLE"                   value="0x8867"/>
+    <enum name="ARRAY_BUFFER"                             value="0x8892"/>
+    <enum name="ELEMENT_ARRAY_BUFFER"                     value="0x8893"/>
+    <enum name="ARRAY_BUFFER_BINDING"                     value="0x8894"/>
+    <enum name="ELEMENT_ARRAY_BUFFER_BINDING"             value="0x8895"/>
+    <enum name="VERTEX_ARRAY_BUFFER_BINDING"              value="0x8896"/>
+    <enum name="NORMAL_ARRAY_BUFFER_BINDING"              value="0x8897"/>
+    <enum name="COLOR_ARRAY_BUFFER_BINDING"               value="0x8898"/>
+    <enum name="INDEX_ARRAY_BUFFER_BINDING"               value="0x8899"/>
+    <enum name="TEXTURE_COORD_ARRAY_BUFFER_BINDING"       value="0x889A"/>
+    <enum name="EDGE_FLAG_ARRAY_BUFFER_BINDING"           value="0x889B"/>
+    <enum name="SECONDARY_COLOR_ARRAY_BUFFER_BINDING"     value="0x889C"/>
+    <enum name="FOG_COORDINATE_ARRAY_BUFFER_BINDING"      value="0x889D"/>
+    <enum name="WEIGHT_ARRAY_BUFFER_BINDING"              value="0x889E"/>
+    <enum name="VERTEX_ATTRIB_ARRAY_BUFFER_BINDING"       value="0x889F"/>
+    <enum name="READ_ONLY"                                value="0x88B8"/>
+    <enum name="WRITE_ONLY"                               value="0x88B9"/>
+    <enum name="READ_WRITE"                               value="0x88BA"/>
+    <enum name="BUFFER_ACCESS"                            value="0x88BB"/>
+    <enum name="BUFFER_MAPPED"                            value="0x88BC"/>
+    <enum name="BUFFER_MAP_POINTER"                       value="0x88BD"/>
+    <enum name="STREAM_DRAW"                              value="0x88E0"/>
+    <enum name="STREAM_READ"                              value="0x88E1"/>
+    <enum name="STREAM_COPY"                              value="0x88E2"/>
+    <enum name="STATIC_DRAW"                              value="0x88E4"/>
+    <enum name="STATIC_READ"                              value="0x88E5"/>
+    <enum name="STATIC_COPY"                              value="0x88E6"/>
+    <enum name="DYNAMIC_DRAW"                             value="0x88E8"/>
+    <enum name="DYNAMIC_READ"                             value="0x88E9"/>
+    <enum name="DYNAMIC_COPY"                             value="0x88EA"/>
+    <enum name="SAMPLES_PASSED"                count="1"  value="0x8914"/>
+    <enum name="FOG_COORD_SRC"                            value="0x8450">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_COORD"                                value="0x8451"/>
+    <enum name="CURRENT_FOG_COORD"             count="1"  value="0x8453">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_COORD_ARRAY_TYPE"          count="1"  value="0x8454">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_COORD_ARRAY_STRIDE"        count="1"  value="0x8455">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_COORD_ARRAY_POINTER"                  value="0x8456"/>
+    <enum name="FOG_COORD_ARRAY"               count="1"  value="0x8457">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_COORD_ARRAY_BUFFER_BINDING"           value="0x889D"/>
+    <enum name="SRC0_RGB"                                 value="0x8580"/>
+    <enum name="SRC1_RGB"                                 value="0x8581"/>
+    <enum name="SRC2_RGB"                                 value="0x8582"/>
+    <enum name="SRC0_ALPHA"                               value="0x8588"/>
+    <enum name="SRC1_ALPHA"                               value="0x8589"/>
+    <enum name="SRC2_ALPHA"                               value="0x858A"/>
+
+    <type name="intptr"   size="4"                  glx_name="CARD32"/>
+    <type name="sizeiptr" size="4"  unsigned="true" glx_name="CARD32"/>
+
+    <function name="BindBuffer" alias="BindBufferARB">
+        <param name="target" type="GLenum"/>
+        <param name="buffer" type="GLuint"/>
+    </function>
+
+    <function name="BufferData" alias="BufferDataARB">
+        <param name="target" type="GLenum"/>
+        <param name="size" type="GLsizeiptr"/>
+        <param name="data" type="const GLvoid *"/>
+        <param name="usage" type="GLenum"/>
+    </function>
+
+    <function name="BufferSubData" alias="BufferSubDataARB">
+        <param name="target" type="GLenum"/>
+        <param name="offset" type="GLintptr"/>
+        <param name="size" type="GLsizeiptr"/>
+        <param name="data" type="const GLvoid *"/>
+    </function>
+
+    <function name="DeleteBuffers" alias="DeleteBuffersARB">
+        <param name="n" type="GLsizei"/>
+        <param name="buffer" type="const GLuint *"/>
+    </function>
+
+    <function name="GenBuffers" alias="GenBuffersARB">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="buffer" type="GLuint *" output="true" count="n"/>
+    </function>
+
+    <function name="GetBufferParameteriv" alias="GetBufferParameterivARB">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+    </function>
+
+    <function name="GetBufferPointerv" alias="GetBufferPointervARB">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLvoid **" output="true"/>
+    </function>
+
+    <function name="GetBufferSubData" alias="GetBufferSubDataARB">
+        <param name="target" type="GLenum"/>
+        <param name="offset" type="GLintptr"/>
+        <param name="size" type="GLsizeiptr"/>
+        <param name="data" type="GLvoid *" output="true"/>
+    </function>
+
+    <function name="IsBuffer" alias="IsBufferARB">
+        <param name="buffer" type="GLuint"/>
+        <return type="GLboolean"/>
+    </function>
+
+    <function name="MapBuffer" alias="MapBufferARB">
+        <param name="target" type="GLenum"/>
+        <param name="access" type="GLenum"/>
+        <return type="GLvoid *"/>
+    </function>
+
+    <function name="UnmapBuffer" alias="UnmapBufferARB">
+        <param name="target" type="GLenum"/>
+        <return type="GLboolean"/>
+    </function>
+
+    <function name="GenQueries" alias="GenQueriesARB">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="ids" type="GLuint *" output="true" count="n"/>
+    </function>
+
+    <function name="DeleteQueries" alias="DeleteQueriesARB">
+        <param name="n" type="GLsizei"/>
+        <param name="ids" type="const GLuint *"/>
+    </function>
+
+    <function name="IsQuery" alias="IsQueryARB">
+        <param name="id" type="GLuint"/>
+        <return type="GLboolean"/>
+    </function>
+
+    <function name="BeginQuery" alias="BeginQueryARB">
+        <param name="target" type="GLenum"/>
+        <param name="id" type="GLuint"/>
+    </function>
+
+    <function name="EndQuery" alias="EndQueryARB">
+        <param name="target" type="GLenum"/>
+    </function>
+
+    <function name="GetQueryiv" alias="GetQueryivARB">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+    </function>
+
+    <function name="GetQueryObjectiv" alias="GetQueryObjectivARB">
+        <param name="id" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+    </function>
+
+    <function name="GetQueryObjectuiv" alias="GetQueryObjectuivARB">
+        <param name="id" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLuint *" output="true" variable_param="pname"/>
+    </function>
+</category>
+
+
+<category name="2.0">
+    <!-- XXX some of the enums and functions probably need additional -->
+    <!-- flags/attributes. -->
+
+    <type name="char"   size="1" glx_name="CARD8"/>
+
+    <enum name="BLEND_EQUATION_RGB"            value="0x8009"/>
+    <enum name="VERTEX_ATTRIB_ARRAY_ENABLED"      value="0x8622"/>
+    <enum name="VERTEX_ATTRIB_ARRAY_SIZE"         value="0x8623"/>
+    <enum name="VERTEX_ATTRIB_ARRAY_STRIDE"       value="0x8624"/>
+    <enum name="VERTEX_ATTRIB_ARRAY_TYPE"         value="0x8625"/>
+    <enum name="CURRENT_VERTEX_ATTRIB"            value="0x8626"/>
+    <enum name="VERTEX_PROGRAM_POINT_SIZE"        value="0x8642"/>
+    <enum name="VERTEX_PROGRAM_TWO_SIDE"          value="0x8643"/>
+    <enum name="VERTEX_ATTRIB_ARRAY_POINTER"      value="0x8645"/>
+    <enum name="STENCIL_BACK_FUNC"                value="0x8800"/>
+    <enum name="STENCIL_BACK_FAIL"                value="0x8801"/>
+    <enum name="STENCIL_BACK_PASS_DEPTH_FAIL"     value="0x8802"/>
+    <enum name="STENCIL_BACK_PASS_DEPTH_PASS"     value="0x8803"/>
+    <enum name="MAX_DRAW_BUFFERS"                 value="0x8824"/>
+    <enum name="DRAW_BUFFER0"                     value="0x8825"/>
+    <enum name="DRAW_BUFFER1"                     value="0x8826"/>
+    <enum name="DRAW_BUFFER2"                     value="0x8827"/>
+    <enum name="DRAW_BUFFER3"                     value="0x8828"/>
+    <enum name="DRAW_BUFFER4"                     value="0x8829"/>
+    <enum name="DRAW_BUFFER5"                     value="0x882A"/>
+    <enum name="DRAW_BUFFER6"                     value="0x882B"/>
+    <enum name="DRAW_BUFFER7"                     value="0x882C"/>
+    <enum name="DRAW_BUFFER8"                     value="0x882D"/>
+    <enum name="DRAW_BUFFER9"                     value="0x882E"/>
+    <enum name="DRAW_BUFFER10"                    value="0x882F"/>
+    <enum name="DRAW_BUFFER11"                    value="0x8830"/>
+    <enum name="DRAW_BUFFER12"                    value="0x8831"/>
+    <enum name="DRAW_BUFFER13"                    value="0x8832"/>
+    <enum name="DRAW_BUFFER14"                    value="0x8833"/>
+    <enum name="DRAW_BUFFER15"                    value="0x8834"/>
+    <enum name="BLEND_EQUATION_ALPHA"             value="0x883D"/>
+    <enum name="POINT_SPRITE"                     value="0x8861"/>
+    <enum name="COORD_REPLACE"                    value="0x8862"/>
+    <enum name="MAX_VERTEX_ATTRIBS"               value="0x8869"/>
+    <enum name="VERTEX_ATTRIB_ARRAY_NORMALIZED"   value="0x886A"/>
+    <enum name="MAX_TEXTURE_COORDS"               value="0x8871"/>
+    <enum name="MAX_TEXTURE_IMAGE_UNITS"          value="0x8872"/>
+    <enum name="FRAGMENT_SHADER"                  value="0x8B30"/>
+    <enum name="VERTEX_SHADER"                    value="0x8B31"/>
+    <enum name="MAX_FRAGMENT_UNIFORM_COMPONENTS"  value="0x8B49"/>
+    <enum name="MAX_VERTEX_UNIFORM_COMPONENTS"    value="0x8B4A"/>
+    <enum name="MAX_VARYING_FLOATS"               value="0x8B4B"/>
+    <enum name="MAX_VERTEX_TEXTURE_IMAGE_UNITS"   value="0x8B4C"/>
+    <enum name="MAX_COMBINED_TEXTURE_IMAGE_UNITS" value="0x8B4D"/>
+    <enum name="SHADER_TYPE"                      value="0x8B4F"/>
+    <enum name="FLOAT_VEC2"                       value="0x8B50"/>
+    <enum name="FLOAT_VEC3"                       value="0x8B51"/>
+    <enum name="FLOAT_VEC4"                       value="0x8B52"/>
+    <enum name="INT_VEC2"                         value="0x8B53"/>
+    <enum name="INT_VEC3"                         value="0x8B54"/>
+    <enum name="INT_VEC4"                         value="0x8B55"/>
+    <enum name="BOOL"                             value="0x8B56"/>
+    <enum name="BOOL_VEC2"                        value="0x8B57"/>
+    <enum name="BOOL_VEC3"                        value="0x8B58"/>
+    <enum name="BOOL_VEC4"                        value="0x8B59"/>
+    <enum name="FLOAT_MAT2"                       value="0x8B5A"/>
+    <enum name="FLOAT_MAT3"                       value="0x8B5B"/>
+    <enum name="FLOAT_MAT4"                       value="0x8B5C"/>
+    <enum name="SAMPLER_1D"                       value="0x8B5D"/>
+    <enum name="SAMPLER_2D"                       value="0x8B5E"/>
+    <enum name="SAMPLER_3D"                       value="0x8B5F"/>
+    <enum name="SAMPLER_CUBE"                     value="0x8B60"/>
+    <enum name="SAMPLER_1D_SHADOW"                value="0x8B61"/>
+    <enum name="SAMPLER_2D_SHADOW"                value="0x8B62"/>
+    <enum name="DELETE_STATUS"                    value="0x8B80"/>
+    <enum name="COMPILE_STATUS"                   value="0x8B81"/>
+    <enum name="LINK_STATUS"                      value="0x8B82"/>
+    <enum name="VALIDATE_STATUS"                  value="0x8B83"/>
+    <enum name="INFO_LOG_LENGTH"                  value="0x8B84"/>
+    <enum name="ATTACHED_SHADERS"                 value="0x8B85"/>
+    <enum name="ACTIVE_UNIFORMS"                  value="0x8B86"/>
+    <enum name="ACTIVE_UNIFORM_MAX_LENGTH"        value="0x8B87"/>
+    <enum name="SHADER_SOURCE_LENGTH"             value="0x8B88"/>
+    <enum name="ACTIVE_ATTRIBUTES"                value="0x8B89"/>
+    <enum name="ACTIVE_ATTRIBUTE_MAX_LENGTH"      value="0x8B8A"/>
+    <enum name="FRAGMENT_SHADER_DERIVATIVE_HINT"  value="0x8B8B"/>
+    <enum name="SHADING_LANGUAGE_VERSION"         value="0x8B8C"/>
+    <enum name="CURRENT_PROGRAM"                  value="0x8B8D"/>
+    <enum name="POINT_SPRITE_COORD_ORIGIN" count="1"  value="0x8CA0">
+        <size name="PointParameterfvEXT"/>
+        <size name="PointParameterivNV"/>
+    </enum>
+    <enum name="LOWER_LEFT"                       value="0x8CA1"/>
+    <enum name="UPPER_LEFT"                       value="0x8CA2"/>
+    <enum name="STENCIL_BACK_REF"                 value="0x8CA3"/>
+    <enum name="STENCIL_BACK_VALUE_MASK"          value="0x8CA4"/>
+    <enum name="STENCIL_BACK_WRITEMASK"           value="0x8CA5"/>
+
+    <function name="BlendEquationSeparate" alias="BlendEquationSeparateEXT">
+        <param name="modeRGB" type="GLenum"/>
+        <param name="modeA" type="GLenum"/>
+    </function>
+
+    <function name="DrawBuffers" alias="DrawBuffersARB">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="bufs" type="const GLenum *" count="n"/>
+    </function>
+
+    <function name="StencilFuncSeparate" offset="assign">
+        <param name="face" type="GLenum"/>
+        <param name="func" type="GLenum"/>
+        <param name="ref" type="GLint"/>
+        <param name="mask" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="StencilOpSeparate" offset="assign">
+        <param name="face" type="GLenum"/>
+        <param name="sfail" type="GLenum"/>
+        <param name="zfail" type="GLenum"/>
+        <param name="zpass" type="GLenum"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="StencilMaskSeparate" offset="assign">
+        <param name="face" type="GLenum"/>
+        <param name="mask" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="AttachShader" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="shader" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="BindAttribLocation" alias="BindAttribLocationARB">
+        <param name="program" type="GLuint"/>
+        <param name="index" type="GLuint"/>
+        <param name="name" type="const GLchar *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="CompileShader" alias="CompileShaderARB">
+        <param name="shader" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="CreateProgram" offset="assign">
+        <return type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="CreateShader" offset="assign">
+        <param name="type" type="GLenum"/>
+        <return type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="DeleteProgram" offset="assign">
+        <param name="program" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="DeleteShader" offset="assign">
+        <param name="program" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="DetachShader" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="shader" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="DisableVertexAttribArray" alias="DisableVertexAttribArrayARB">
+        <param name="index" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="EnableVertexAttribArray" alias="EnableVertexAttribArrayARB">
+        <param name="index" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetActiveAttrib" alias="GetActiveAttribARB">
+        <param name="program" type="GLuint"/>
+        <param name="index" type="GLuint"/>
+        <param name="bufSize" type="GLsizei "/>
+        <param name="length" type="GLsizei *" output="true"/>
+        <param name="size" type="GLint *" output="true"/>
+        <param name="type" type="GLenum *" output="true"/>
+        <param name="name" type="GLchar *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetActiveUniform" alias="GetActiveUniformARB">
+        <param name="program" type="GLuint"/>
+        <param name="index" type="GLuint"/>
+        <param name="bufSize" type="GLsizei"/>
+        <param name="length" type="GLsizei *" output="true"/>
+        <param name="size" type="GLint *" output="true"/>
+        <param name="type" type="GLenum *" output="true"/>
+        <param name="name" type="GLchar *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetAttachedShaders" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="maxCount" type="GLsizei"/>
+        <param name="count" type="GLsizei *" output="true"/>
+        <param name="obj" type="GLuint *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetAttribLocation" alias="GetAttribLocationARB">
+        <param name="program" type="GLuint"/>
+        <param name="name" type="const GLchar *"/>
+        <return type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetProgramiv" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetProgramInfoLog" offset="assign">
+        <param name="program" type="GLuint"/>
+        <param name="bufSize" type="GLsizei"/>
+        <param name="length" type="GLsizei *"/>
+        <param name="infoLog" type="GLchar *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetShaderiv" offset="assign">
+        <param name="shader" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetShaderInfoLog" offset="assign">
+        <param name="shader" type="GLuint"/>
+        <param name="bufSize" type="GLsizei"/>
+        <param name="length" type="GLsizei *"/>
+        <param name="infoLog" type="GLchar *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetShaderSource" alias="GetShaderSourceARB">
+        <param name="shader" type="GLuint"/>
+        <param name="bufSize" type="GLsizei"/>
+        <param name="length" type="GLsizei *" output="true"/>
+        <param name="source" type="GLchar *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetUniformLocation" alias="GetUniformLocationARB">
+        <param name="program" type="GLuint"/>
+        <param name="name" type="const GLchar *"/>
+        <return type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetUniformfv" alias="GetUniformfvARB">
+        <param name="program" type="GLuint"/>
+        <param name="location" type="GLint"/>
+        <param name="params" type="GLfloat *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetUniformiv" alias="GetUniformivARB">
+        <param name="program" type="GLuint"/>
+        <param name="location" type="GLint"/>
+        <param name="params" type="GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetVertexAttribdv" alias="GetVertexAttribdvARB">
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetVertexAttribfv" alias="GetVertexAttribfvARB">
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetVertexAttribiv" alias="GetVertexAttribivARB">
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetVertexAttribPointerv" alias="GetVertexAttribPointervNV">
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="pointer" type="GLvoid **" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="IsProgram" offset="assign">
+        <param name="program" type="GLuint"/>
+        <return type="GLboolean"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="IsShader" offset="assign">
+        <param name="shader" type="GLuint"/>
+        <return type="GLboolean"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="LinkProgram" alias="LinkProgramARB">
+        <param name="program" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="ShaderSource" alias="ShaderSourceARB">
+        <param name="shader" type="GLuint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="string" type="const GLchar **"/>
+        <param name="length" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="UseProgram" alias="UseProgramObjectARB">
+        <param name="program" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform1f" alias="Uniform1fARB">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="Uniform2f" alias="Uniform2fARB">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLfloat"/>
+        <param name="v1" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="Uniform3f" alias="Uniform3fARB">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLfloat"/>
+        <param name="v1" type="GLfloat"/>
+        <param name="v2" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="Uniform4f" alias="Uniform4fARB">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLfloat"/>
+        <param name="v1" type="GLfloat"/>
+        <param name="v2" type="GLfloat"/>
+        <param name="v3" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform1i" alias="Uniform1iARB">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="Uniform2i" alias="Uniform2iARB">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLint"/>
+        <param name="v1" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="Uniform3i" alias="Uniform3iARB">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLint"/>
+        <param name="v1" type="GLint"/>
+        <param name="v2" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="Uniform4i" alias="Uniform4iARB">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLint"/>
+        <param name="v1" type="GLint"/>
+        <param name="v2" type="GLint"/>
+        <param name="v3" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform1fv" alias="Uniform1fvARB">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="Uniform2fv" alias="Uniform2fvARB">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="Uniform3fv" alias="Uniform3fvARB">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="Uniform4fv" alias="Uniform4fvARB">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform1iv" alias="Uniform1ivARB">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="Uniform2iv" alias="Uniform2ivARB">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="Uniform3iv" alias="Uniform3ivARB">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="Uniform4iv" alias="Uniform4ivARB">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="UniformMatrix2fv" alias="UniformMatrix2fvARB">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="transpose" type="GLboolean"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="UniformMatrix3fv" alias="UniformMatrix3fvARB">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="transpose" type="GLboolean"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="UniformMatrix4fv" alias="UniformMatrix4fvARB">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="transpose" type="GLboolean"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="ValidateProgram" alias="ValidateProgramARB">
+        <param name="program" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="VertexAttrib1d" alias="VertexAttrib1dARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLdouble"/>
+    </function>
+    <function name="VertexAttrib1dv" alias="VertexAttrib1dvARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLdouble *"/>
+    </function>
+    <function name="VertexAttrib1f" alias="VertexAttrib1fARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+    </function>
+    <function name="VertexAttrib1fv" alias="VertexAttrib1fvARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+    <function name="VertexAttrib1s" alias="VertexAttrib1sARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLshort"/>
+    </function>
+    <function name="VertexAttrib1sv" alias="VertexAttrib1svARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLshort *"/>
+    </function>
+
+    <function name="VertexAttrib2d" alias="VertexAttrib2dARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+    </function>
+    <function name="VertexAttrib2dv" alias="VertexAttrib2dvARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLdouble *"/>
+    </function>
+    <function name="VertexAttrib2f" alias="VertexAttrib2fARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+    </function>
+    <function name="VertexAttrib2fv" alias="VertexAttrib2fvARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+    <function name="VertexAttrib2s" alias="VertexAttrib2sARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+    </function>
+    <function name="VertexAttrib2sv" alias="VertexAttrib2svARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLshort *"/>
+    </function>
+
+    <function name="VertexAttrib3d" alias="VertexAttrib3dARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+    </function>
+    <function name="VertexAttrib3dv" alias="VertexAttrib3dvARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLdouble *"/>
+    </function>
+    <function name="VertexAttrib3f" alias="VertexAttrib3fARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+    <function name="VertexAttrib3fv" alias="VertexAttrib3fvARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+    <function name="VertexAttrib3s" alias="VertexAttrib3sARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+    </function>
+    <function name="VertexAttrib3sv" alias="VertexAttrib3svARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLshort *"/>
+    </function>
+
+    <function name="VertexAttrib4Nbv" alias="VertexAttrib4NbvARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLbyte *"/>
+    </function>
+    <function name="VertexAttrib4Niv" alias="VertexAttrib4NivARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLint *"/>
+    </function>
+    <function name="VertexAttrib4Nsv" alias="VertexAttrib4NsvARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLshort *"/>
+    </function>
+    <function name="VertexAttrib4Nub" alias="VertexAttrib4NubARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLubyte"/>
+        <param name="y" type="GLubyte"/>
+        <param name="z" type="GLubyte"/>
+        <param name="w" type="GLubyte"/>
+    </function>
+    <function name="VertexAttrib4Nubv" alias="VertexAttrib4NubvARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLubyte *"/>
+    </function>
+    <function name="VertexAttrib4Nuiv" alias="VertexAttrib4NuivARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLuint *"/>
+    </function>
+    <function name="VertexAttrib4Nusv" alias="VertexAttrib4NusvARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLushort *"/>
+    </function>
+    <function name="VertexAttrib4bv" alias="VertexAttrib4bvARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLbyte *" count="4"/>
+    </function>
+    <function name="VertexAttrib4d" alias="VertexAttrib4dARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <param name="w" type="GLdouble"/>
+    </function>
+    <function name="VertexAttrib4dv" alias="VertexAttrib4dvARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLdouble *"/>
+    </function>
+    <function name="VertexAttrib4f" alias="VertexAttrib4fARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <param name="w" type="GLfloat"/>
+    </function>
+    <function name="VertexAttrib4fv" alias="VertexAttrib4fvARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+    <function name="VertexAttrib4iv" alias="VertexAttrib4ivARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLint *" count="4"/>
+    </function>
+    <function name="VertexAttrib4s" alias="VertexAttrib4sARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+        <param name="w" type="GLshort"/>
+    </function>
+    <function name="VertexAttrib4sv" alias="VertexAttrib4svARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLshort *"/>
+    </function>
+    <function name="VertexAttrib4ubv" alias="VertexAttrib4ubvARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLubyte *" count="4"/>
+    </function>
+    <function name="VertexAttrib4uiv" alias="VertexAttrib4uivARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLuint *" count="4"/>
+    </function>
+    <function name="VertexAttrib4usv" alias="VertexAttrib4usvARB">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLushort *" count="4"/>
+    </function>
+
+    <function name="VertexAttribPointer" alias="VertexAttribPointerARB">
+        <param name="index" type="GLuint"/>
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="normalized" type="GLboolean"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+    </function>
+
+</category>
+
+
+<category name="2.1">
+    <!-- XXX some of the enums and functions probably need additional -->
+    <!-- flags/attributes. -->
+
+    <enum name="CURRENT_RASTER_SECONDARY_COLOR" value="0x845F"/>
+    <enum name="PIXEL_PACK_BUFFER"              value="0x88EB"/>
+    <enum name="PIXEL_UNPACK_BUFFER"            value="0x88EC"/>
+    <enum name="PIXEL_PACK_BUFFER_BINDING"      value="0x88ED"/>
+    <enum name="PIXEL_UNPACK_BUFFER_BINDING"    value="0x88EF"/>
+    <enum name="FLOAT_MAT2x3"                   value="0x8B65"/>
+    <enum name="FLOAT_MAT2x4"                   value="0x8B66"/>
+    <enum name="FLOAT_MAT3x2"                   value="0x8B67"/>
+    <enum name="FLOAT_MAT3x4"                   value="0x8B68"/>
+    <enum name="FLOAT_MAT4x2"                   value="0x8B69"/>
+    <enum name="FLOAT_MAT4x3"                   value="0x8B6A"/>
+    <enum name="SRGB"                           value="0x8C40"/>
+    <enum name="SRGB8"                          value="0x8C41"/>
+    <enum name="SRGB_ALPHA"                     value="0x8C42"/>
+    <enum name="SRGB8_ALPHA8"                   value="0x8C43"/>
+    <enum name="SLUMINANCE_ALPHA"               value="0x8C44"/>
+    <enum name="SLUMINANCE8_ALPHA8"             value="0x8C45"/>
+    <enum name="SLUMINANCE"                     value="0x8C46"/>
+    <enum name="SLUMINANCE8"                    value="0x8C47"/>
+    <enum name="COMPRESSED_SRGB"                value="0x8C48"/>
+    <enum name="COMPRESSED_SRGB_ALPHA"          value="0x8C49"/>
+    <enum name="COMPRESSED_SLUMINANCE"          value="0x8C4A"/>
+    <enum name="COMPRESSED_SLUMINANCE_ALPHA"    value="0x8C4B"/>
+
+    <function name="UniformMatrix2x3fv" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="transpose" type="GLboolean"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="UniformMatrix3x2fv" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="transpose" type="GLboolean"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="UniformMatrix2x4fv" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="transpose" type="GLboolean"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="UniformMatrix4x2fv" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="transpose" type="GLboolean"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="UniformMatrix3x4fv" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="transpose" type="GLboolean"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="UniformMatrix4x3fv" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="transpose" type="GLboolean"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+</category>
+
+
+<!-- ARB extensions sorted by extension number. -->
+
+<category name="GL_ARB_multitexture" number="1">
+    <enum name="TEXTURE0_ARB"                             value="0x84C0"/>
+    <enum name="TEXTURE1_ARB"                             value="0x84C1"/>
+    <enum name="TEXTURE2_ARB"                             value="0x84C2"/>
+    <enum name="TEXTURE3_ARB"                             value="0x84C3"/>
+    <enum name="TEXTURE4_ARB"                             value="0x84C4"/>
+    <enum name="TEXTURE5_ARB"                             value="0x84C5"/>
+    <enum name="TEXTURE6_ARB"                             value="0x84C6"/>
+    <enum name="TEXTURE7_ARB"                             value="0x84C7"/>
+    <enum name="TEXTURE8_ARB"                             value="0x84C8"/>
+    <enum name="TEXTURE9_ARB"                             value="0x84C9"/>
+    <enum name="TEXTURE10_ARB"                            value="0x84CA"/>
+    <enum name="TEXTURE11_ARB"                            value="0x84CB"/>
+    <enum name="TEXTURE12_ARB"                            value="0x84CC"/>
+    <enum name="TEXTURE13_ARB"                            value="0x84CD"/>
+    <enum name="TEXTURE14_ARB"                            value="0x84CE"/>
+    <enum name="TEXTURE15_ARB"                            value="0x84CF"/>
+    <enum name="TEXTURE16_ARB"                            value="0x84D0"/>
+    <enum name="TEXTURE17_ARB"                            value="0x84D1"/>
+    <enum name="TEXTURE18_ARB"                            value="0x84D2"/>
+    <enum name="TEXTURE19_ARB"                            value="0x84D3"/>
+    <enum name="TEXTURE20_ARB"                            value="0x84D4"/>
+    <enum name="TEXTURE21_ARB"                            value="0x84D5"/>
+    <enum name="TEXTURE22_ARB"                            value="0x84D6"/>
+    <enum name="TEXTURE23_ARB"                            value="0x84D7"/>
+    <enum name="TEXTURE24_ARB"                            value="0x84D8"/>
+    <enum name="TEXTURE25_ARB"                            value="0x84D9"/>
+    <enum name="TEXTURE26_ARB"                            value="0x84DA"/>
+    <enum name="TEXTURE27_ARB"                            value="0x84DB"/>
+    <enum name="TEXTURE28_ARB"                            value="0x84DC"/>
+    <enum name="TEXTURE29_ARB"                            value="0x84DD"/>
+    <enum name="TEXTURE30_ARB"                            value="0x84DE"/>
+    <enum name="TEXTURE31_ARB"                            value="0x84DF"/>
+    <enum name="ACTIVE_TEXTURE_ARB"            count="1"  value="0x84E0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CLIENT_ACTIVE_TEXTURE_ARB"     count="1"  value="0x84E1">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_TEXTURE_UNITS_ARB"         count="1"  value="0x84E2">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="ActiveTextureARB" offset="374">
+        <param name="texture" type="GLenum"/>
+        <glx rop="197"/>
+    </function>
+
+    <function name="ClientActiveTextureARB" offset="375">
+        <param name="texture" type="GLenum"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="MultiTexCoord1dARB" offset="376" vectorequiv="MultiTexCoord1dvARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLdouble"/>
+    </function>
+
+    <function name="MultiTexCoord1dvARB" offset="377">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLdouble *" count="1"/>
+        <glx rop="198"/>
+    </function>
+
+    <function name="MultiTexCoord1fARB" offset="378" vectorequiv="MultiTexCoord1fvARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLfloat"/>
+    </function>
+
+    <function name="MultiTexCoord1fvARB" offset="379">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLfloat *" count="1"/>
+        <glx rop="199"/>
+    </function>
+
+    <function name="MultiTexCoord1iARB" offset="380" vectorequiv="MultiTexCoord1ivARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLint"/>
+    </function>
+
+    <function name="MultiTexCoord1ivARB" offset="381">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLint *" count="1"/>
+        <glx rop="200"/>
+    </function>
+
+    <function name="MultiTexCoord1sARB" offset="382" vectorequiv="MultiTexCoord1svARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLshort"/>
+    </function>
+
+    <function name="MultiTexCoord1svARB" offset="383">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLshort *" count="1"/>
+        <glx rop="201"/>
+    </function>
+
+    <function name="MultiTexCoord2dARB" offset="384" vectorequiv="MultiTexCoord2dvARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLdouble"/>
+        <param name="t" type="GLdouble"/>
+    </function>
+
+    <function name="MultiTexCoord2dvARB" offset="385">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLdouble *" count="2"/>
+        <glx rop="202"/>
+    </function>
+
+    <function name="MultiTexCoord2fARB" offset="386" vectorequiv="MultiTexCoord2fvARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+    </function>
+
+    <function name="MultiTexCoord2fvARB" offset="387">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLfloat *" count="2"/>
+        <glx rop="203"/>
+    </function>
+
+    <function name="MultiTexCoord2iARB" offset="388" vectorequiv="MultiTexCoord2ivARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLint"/>
+        <param name="t" type="GLint"/>
+    </function>
+
+    <function name="MultiTexCoord2ivARB" offset="389">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLint *" count="2"/>
+        <glx rop="204"/>
+    </function>
+
+    <function name="MultiTexCoord2sARB" offset="390" vectorequiv="MultiTexCoord2svARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLshort"/>
+        <param name="t" type="GLshort"/>
+    </function>
+
+    <function name="MultiTexCoord2svARB" offset="391">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLshort *" count="2"/>
+        <glx rop="205"/>
+    </function>
+
+    <function name="MultiTexCoord3dARB" offset="392" vectorequiv="MultiTexCoord3dvARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLdouble"/>
+        <param name="t" type="GLdouble"/>
+        <param name="r" type="GLdouble"/>
+    </function>
+
+    <function name="MultiTexCoord3dvARB" offset="393">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLdouble *" count="3"/>
+        <glx rop="206"/>
+    </function>
+
+    <function name="MultiTexCoord3fARB" offset="394" vectorequiv="MultiTexCoord3fvARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="r" type="GLfloat"/>
+    </function>
+
+    <function name="MultiTexCoord3fvARB" offset="395">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLfloat *" count="3"/>
+        <glx rop="207"/>
+    </function>
+
+    <function name="MultiTexCoord3iARB" offset="396" vectorequiv="MultiTexCoord3ivARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLint"/>
+        <param name="t" type="GLint"/>
+        <param name="r" type="GLint"/>
+    </function>
+
+    <function name="MultiTexCoord3ivARB" offset="397">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLint *" count="3"/>
+        <glx rop="208"/>
+    </function>
+
+    <function name="MultiTexCoord3sARB" offset="398" vectorequiv="MultiTexCoord3svARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLshort"/>
+        <param name="t" type="GLshort"/>
+        <param name="r" type="GLshort"/>
+    </function>
+
+    <function name="MultiTexCoord3svARB" offset="399">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLshort *" count="3"/>
+        <glx rop="209"/>
+    </function>
+
+    <function name="MultiTexCoord4dARB" offset="400" vectorequiv="MultiTexCoord4dvARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLdouble"/>
+        <param name="t" type="GLdouble"/>
+        <param name="r" type="GLdouble"/>
+        <param name="q" type="GLdouble"/>
+    </function>
+
+    <function name="MultiTexCoord4dvARB" offset="401">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLdouble *" count="4"/>
+        <glx rop="210"/>
+    </function>
+
+    <function name="MultiTexCoord4fARB" offset="402" vectorequiv="MultiTexCoord4fvARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="r" type="GLfloat"/>
+        <param name="q" type="GLfloat"/>
+    </function>
+
+    <function name="MultiTexCoord4fvARB" offset="403">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLfloat *" count="4"/>
+        <glx rop="211"/>
+    </function>
+
+    <function name="MultiTexCoord4iARB" offset="404" vectorequiv="MultiTexCoord4ivARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLint"/>
+        <param name="t" type="GLint"/>
+        <param name="r" type="GLint"/>
+        <param name="q" type="GLint"/>
+    </function>
+
+    <function name="MultiTexCoord4ivARB" offset="405">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLint *" count="4"/>
+        <glx rop="212"/>
+    </function>
+
+    <function name="MultiTexCoord4sARB" offset="406" vectorequiv="MultiTexCoord4svARB">
+        <param name="target" type="GLenum"/>
+        <param name="s" type="GLshort"/>
+        <param name="t" type="GLshort"/>
+        <param name="r" type="GLshort"/>
+        <param name="q" type="GLshort"/>
+    </function>
+
+    <function name="MultiTexCoord4svARB" offset="407">
+        <param name="target" type="GLenum"/>
+        <param name="v" type="const GLshort *" count="4"/>
+        <glx rop="213"/>
+    </function>
+</category>
+
+<!-- ARB extension number 2 is a GLX extension. -->
+
+<category name="GL_ARB_transpose_matrix" number="3">
+    <enum name="TRANSPOSE_MODELVIEW_MATRIX_ARB"           value="0x84E3"/>
+    <enum name="TRANSPOSE_PROJECTION_MATRIX_ARB"          value="0x84E4"/>
+    <enum name="TRANSPOSE_TEXTURE_MATRIX_ARB"             value="0x84E5"/>
+    <enum name="TRANSPOSE_COLOR_MATRIX_ARB"               value="0x84E6"/>
+
+    <function name="LoadTransposeMatrixfARB" offset="assign">
+        <param name="m" type="const GLfloat *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="LoadTransposeMatrixdARB" offset="assign">
+        <param name="m" type="const GLdouble *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="MultTransposeMatrixfARB" offset="assign">
+        <param name="m" type="const GLfloat *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="MultTransposeMatrixdARB" offset="assign">
+        <param name="m" type="const GLdouble *"/>
+        <glx handcode="true"/>
+    </function>
+</category>
+
+<!-- ARB extension number 4 is a WGL extension. -->
+
+<category name="GL_ARB_multisample" number="5">
+    <enum name="MULTISAMPLE_ARB"               count="1"  value="0x809D">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLE_ALPHA_TO_COVERAGE_ARB"  count="1"  value="0x809E">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLE_ALPHA_TO_ONE_ARB"       count="1"  value="0x809F">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLE_COVERAGE_ARB"           count="1"  value="0x80A0">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLE_BUFFERS_ARB"            count="1"  value="0x80A8">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLES_ARB"                   count="1"  value="0x80A9">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLE_COVERAGE_VALUE_ARB"     count="1"  value="0x80AA">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SAMPLE_COVERAGE_INVERT_ARB"    count="1"  value="0x80AB">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MULTISAMPLE_BIT_ARB"                      value="0x20000000"/>
+
+    <function name="SampleCoverageARB" offset="assign">
+        <param name="value" type="GLclampf"/>
+        <param name="invert" type="GLboolean"/>
+        <glx rop="229"/>
+    </function>
+</category>
+
+<category name="GL_ARB_texture_env_add" number="6">
+    <!-- No new functions, types, enums. -->
+</category>
+
+<category name="GL_ARB_texture_cube_map" number="7">
+    <enum name="NORMAL_MAP_ARB"                           value="0x8511"/>
+    <enum name="REFLECTION_MAP_ARB"                       value="0x8512"/>
+    <enum name="TEXTURE_CUBE_MAP_ARB"          count="1"  value="0x8513">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_BINDING_CUBE_MAP_ARB"  count="1"  value="0x8514">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_CUBE_MAP_POSITIVE_X_ARB"          value="0x8515"/>
+    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_X_ARB"          value="0x8516"/>
+    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Y_ARB"          value="0x8517"/>
+    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB"          value="0x8518"/>
+    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Z_ARB"          value="0x8519"/>
+    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB"          value="0x851A"/>
+    <enum name="PROXY_TEXTURE_CUBE_MAP_ARB"               value="0x851B"/>
+    <enum name="MAX_CUBE_MAP_TEXTURE_SIZE_ARB" count="1"  value="0x851C">
+        <size name="Get" mode="get"/>
+    </enum>
+</category>
+
+<!-- ARB extension number 8 is a WGL extension. -->
+<!-- ARB extension number 9 is a WGL extension. -->
+<!-- ARB extension number 10 is a WGL extension. -->
+<!-- ARB extension number 11 is a WGL extension. -->
+
+<category name="GL_ARB_texture_compression" number="12">
+    <enum name="COMPRESSED_ALPHA_ARB"                     value="0x84E9"/>
+    <enum name="COMPRESSED_LUMINANCE_ARB"                 value="0x84EA"/>
+    <enum name="COMPRESSED_LUMINANCE_ALPHA_ARB"           value="0x84EB"/>
+    <enum name="COMPRESSED_INTENSITY_ARB"                 value="0x84EC"/>
+    <enum name="COMPRESSED_RGB_ARB"                       value="0x84ED"/>
+    <enum name="COMPRESSED_RGBA_ARB"                      value="0x84EE"/>
+    <enum name="TEXTURE_COMPRESSION_HINT_ARB"  count="1"  value="0x84EF">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COMPRESSED_IMAGE_SIZE_ARB" count="1" value="0x86A0">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COMPRESSED_ARB"        count="1"  value="0x86A1">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="NUM_COMPRESSED_TEXTURE_FORMATS_ARB" count="1" value="0x86A2">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COMPRESSED_FORMATS_ARB"           value="0x86A3"/>
+
+    <function name="CompressedTexImage3DARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="imageSize" type="GLsizei" counter="true"/>
+        <param name="data" type="const GLvoid *" count="imageSize"/>
+        <glx rop="216" handcode="client"/>
+    </function>
+
+    <function name="CompressedTexImage2DARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="imageSize" type="GLsizei" counter="true"/>
+        <param name="data" type="const GLvoid *" count="imageSize"/>
+        <glx rop="215" handcode="client"/>
+    </function>
+
+    <function name="CompressedTexImage1DARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="imageSize" type="GLsizei" counter="true"/>
+        <param name="data" type="const GLvoid *" count="imageSize"/>
+        <glx rop="214" handcode="client"/>
+    </function>
+
+    <function name="CompressedTexSubImage3DARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="imageSize" type="GLsizei" counter="true"/>
+        <param name="data" type="const GLvoid *" count="imageSize"/>
+        <glx rop="219" handcode="client"/>
+    </function>
+
+    <function name="CompressedTexSubImage2DARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="imageSize" type="GLsizei" counter="true"/>
+        <param name="data" type="const GLvoid *" count="imageSize"/>
+        <glx rop="218" handcode="client"/>
+    </function>
+
+    <function name="CompressedTexSubImage1DARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="imageSize" type="GLsizei" counter="true"/>
+        <param name="data" type="const GLvoid *" count="imageSize"/>
+        <glx rop="217" handcode="client"/>
+    </function>
+
+    <function name="GetCompressedTexImageARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="img" type="GLvoid *" output="true"/>
+
+        <!-- This has to be hand coded because the image size is in the
+             "wrong" place.  Technically, this should be a
+             'always_array="true"' case.  The size field in the reply would
+             be at offset 12.  However, the size is actually at offset 16.
+             This is where the 'width' is in a GetTexImage reply. -->
+        <glx sop="160" handcode="true"/>
+    </function>
+</category>
+
+<category name="GL_ARB_texture_border_clamp" number="13">
+    <enum name="CLAMP_TO_BORDER_ARB"                      value="0x812D"/>
+</category>
+
+<category name="GL_ARB_point_parameters" number="14">
+    <enum name="POINT_SIZE_MIN_ARB"            count="1"  value="0x8126">
+        <size name="PointParameterfvEXT"/>
+    </enum>
+    <enum name="POINT_SIZE_MAX_ARB"            count="1"  value="0x8127">
+        <size name="PointParameterfvEXT"/>
+    </enum>
+    <enum name="POINT_FADE_THRESHOLD_SIZE_ARB" count="1"  value="0x8128">
+        <size name="PointParameterfvEXT"/>
+    </enum>
+    <enum name="POINT_DISTANCE_ATTENUATION_ARB" count="3" value="0x8129">
+        <size name="PointParameterfvEXT"/>
+    </enum>
+
+    <function name="PointParameterfARB" alias="PointParameterfEXT">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="2065"/>
+    </function>
+
+    <function name="PointParameterfvARB" alias="PointParameterfvEXT">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="2066"/>
+    </function>
+</category>
+
+<category name="GL_ARB_vertex_blend" number="15">
+    <enum name="MAX_VERTEX_UNITS_ARB"          count="1"  value="0x86A4">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ACTIVE_VERTEX_UNITS_ARB"       count="1"  value="0x86A5">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="WEIGHT_SUM_UNITY_ARB"          count="1"  value="0x86A6">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_BLEND_ARB"              count="1"  value="0x86A7">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CURRENT_WEIGHT_ARB"            count="1"  value="0x86A8">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="WEIGHT_ARRAY_TYPE_ARB"         count="1"  value="0x86A9">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="WEIGHT_ARRAY_STRIDE_ARB"       count="1"  value="0x86AA">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="WEIGHT_ARRAY_SIZE_ARB"         count="1"  value="0x86AB">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="WEIGHT_ARRAY_POINTER_ARB"                 value="0x86AC"/>
+    <enum name="WEIGHT_ARRAY_ARB"              count="1"  value="0x86AD">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW0_ARB"                count="16" value="0x1700">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW1_ARB"                count="16" value="0x850A">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW2_ARB"                count="16" value="0x8722">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW3_ARB"                count="16" value="0x8723">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW4_ARB"                count="16" value="0x8724">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW5_ARB"                count="16" value="0x8725">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW6_ARB"                count="16" value="0x8726">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW7_ARB"                count="16" value="0x8727">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW8_ARB"                count="16" value="0x8728">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW9_ARB"                count="16" value="0x8729">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW10_ARB"               count="16" value="0x872A">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW11_ARB"               count="16" value="0x872B">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW12_ARB"               count="16" value="0x872C">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW13_ARB"               count="16" value="0x872D">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW14_ARB"               count="16" value="0x872E">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW15_ARB"               count="16" value="0x872F">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW16_ARB"               count="16" value="0x8730">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW17_ARB"               count="16" value="0x8731">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW18_ARB"               count="16" value="0x8732">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW19_ARB"               count="16" value="0x8733">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW20_ARB"               count="16" value="0x8734">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW21_ARB"               count="16" value="0x8735">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW22_ARB"               count="16" value="0x8736">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW23_ARB"               count="16" value="0x8737">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW24_ARB"               count="16" value="0x8738">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW25_ARB"               count="16" value="0x8739">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW26_ARB"               count="16" value="0x873A">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW27_ARB"               count="16" value="0x873B">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW28_ARB"               count="16" value="0x873C">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW29_ARB"               count="16" value="0x873D">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW30_ARB"               count="16" value="0x873E">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MODELVIEW31_ARB"               count="16" value="0x873F">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="WeightbvARB">
+        <param name="size" type="GLint"/>
+        <param name="weights" type="const GLbyte *"/>
+    </function>
+
+    <function name="WeightsvARB">
+        <param name="size" type="GLint"/>
+        <param name="weights" type="const GLshort *"/>
+    </function>
+
+    <function name="WeightivARB">
+        <param name="size" type="GLint"/>
+        <param name="weights" type="const GLint *"/>
+    </function>
+
+    <function name="WeightfvARB">
+        <param name="size" type="GLint"/>
+        <param name="weights" type="const GLfloat *"/>
+    </function>
+
+    <function name="WeightdvARB">
+        <param name="size" type="GLint"/>
+        <param name="weights" type="const GLdouble *"/>
+    </function>
+
+    <function name="WeightubvARB">
+        <param name="size" type="GLint"/>
+        <param name="weights" type="const GLubyte *"/>
+    </function>
+
+    <function name="WeightusvARB">
+        <param name="size" type="GLint"/>
+        <param name="weights" type="const GLushort *"/>
+    </function>
+
+    <function name="WeightuivARB">
+        <param name="size" type="GLint"/>
+        <param name="weights" type="const GLuint *"/>
+    </function>
+
+    <function name="WeightPointerARB">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="VertexBlendARB">
+        <param name="count" type="GLint"/>
+    </function>
+</category>
+
+<category name="GL_ARB_matrix_palette" number="16">
+    <enum name="MATRIX_PALETTE_ARB"            count="1"  value="0x8840">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_MATRIX_PALETTE_STACK_DEPTH_ARB" count="1" value="0x8841">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_PALETTE_MATRICES_ARB"      count="1"  value="0x8842">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CURRENT_PALETTE_MATRIX_ARB"    count="1"  value="0x8843">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MATRIX_INDEX_ARRAY_ARB"        count="1"  value="0x8844">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CURRENT_MATRIX_INDEX_ARB"      count="1"  value="0x8845">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MATRIX_INDEX_ARRAY_SIZE_ARB"   count="1"  value="0x8846">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MATRIX_INDEX_ARRAY_TYPE_ARB"   count="1"  value="0x8847">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MATRIX_INDEX_ARRAY_STRIDE_ARB" count="1"  value="0x8848">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MATRIX_INDEX_ARRAY_POINTER_ARB"           value="0x8849"/>
+
+    <function name="CurrentPaletteMatrixARB">
+        <param name="index" type="GLint"/>
+        <glx ignore="true" rop="4329"/>
+    </function>
+
+    <function name="MatrixIndexubvARB">
+        <param name="size" type="GLint" counter="true"/>
+        <param name="indices" type="const GLubyte *" count="size"/>
+        <glx ignore="true" rop="4326"/>
+    </function>
+
+    <function name="MatrixIndexusvARB">
+        <param name="size" type="GLint" counter="true"/>
+        <param name="indices" type="const GLushort *" count="size"/>
+        <glx ignore="true" rop="4327"/>
+    </function>
+
+    <function name="MatrixIndexuivARB">
+        <param name="size" type="GLint" counter="true"/>
+        <param name="indices" type="const GLuint *" count="size"/>
+        <glx ignore="true" rop="4328"/>
+    </function>
+
+    <function name="MatrixIndexPointerARB">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+</category>
+
+<category name="GL_ARB_texture_env_combine" number="17">
+    <enum name="COMBINE_ARB"                              value="0x8570"/>
+    <enum name="COMBINE_RGB_ARB"                          value="0x8571"/>
+    <enum name="COMBINE_ALPHA_ARB"                        value="0x8572"/>
+    <enum name="SOURCE0_RGB_ARB"                          value="0x8580"/>
+    <enum name="SOURCE1_RGB_ARB"                          value="0x8581"/>
+    <enum name="SOURCE2_RGB_ARB"                          value="0x8582"/>
+    <enum name="SOURCE0_ALPHA_ARB"                        value="0x8588"/>
+    <enum name="SOURCE1_ALPHA_ARB"                        value="0x8589"/>
+    <enum name="SOURCE2_ALPHA_ARB"                        value="0x858A"/>
+    <enum name="OPERAND0_RGB_ARB"                         value="0x8590"/>
+    <enum name="OPERAND1_RGB_ARB"                         value="0x8591"/>
+    <enum name="OPERAND2_RGB_ARB"                         value="0x8592"/>
+    <enum name="OPERAND0_ALPHA_ARB"                       value="0x8598"/>
+    <enum name="OPERAND1_ALPHA_ARB"                       value="0x8599"/>
+    <enum name="OPERAND2_ALPHA_ARB"                       value="0x859A"/>
+    <enum name="RGB_SCALE_ARB"                            value="0x8573"/>
+    <enum name="ADD_SIGNED_ARB"                           value="0x8574"/>
+    <enum name="INTERPOLATE_ARB"                          value="0x8575"/>
+    <enum name="SUBTRACT_ARB"                             value="0x84E7"/>
+    <enum name="CONSTANT_ARB"                             value="0x8576"/>
+    <enum name="PRIMARY_COLOR_ARB"                        value="0x8577"/>
+    <enum name="PREVIOUS_ARB"                             value="0x8578"/>
+</category>
+
+<category name="GL_ARB_texture_env_crossbar" number="18">
+    <!-- No new functions, types, enums. -->
+</category>
+
+<category name="GL_ARB_texture_env_dot3" number="19">
+    <enum name="DOT3_RGB_ARB"                             value="0x86AE"/>
+    <enum name="DOT3_RGBA_ARB"                            value="0x86AF"/>
+</category>
+
+<!-- ARB extension number 20 is a WGL extension. -->
+
+<category name="GL_ARB_texture_mirrored_repeat" number="21">
+    <enum name="MIRRORED_REPEAT_ARB"                      value="0x8370"/>
+</category>
+
+<category name="GL_ARB_depth_texture" number="22">
+    <enum name="DEPTH_COMPONENT16_ARB"                    value="0x81A5"/>
+    <enum name="DEPTH_COMPONENT24_ARB"                    value="0x81A6"/>
+    <enum name="DEPTH_COMPONENT32_ARB"                    value="0x81A7"/>
+    <enum name="TEXTURE_DEPTH_SIZE_ARB"        count="1"  value="0x884A">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="DEPTH_TEXTURE_MODE_ARB"        count="1"  value="0x884B">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+</category>
+
+<category name="GL_ARB_shadow" number="23">
+    <enum name="TEXTURE_COMPARE_MODE_ARB"      count="1"  value="0x884C">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COMPARE_FUNC_ARB"      count="1"  value="0x884D">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="COMPARE_R_TO_TEXTURE_ARB"                 value="0x884E"/>
+</category>
+
+<category name="GL_ARB_shadow_ambient" number="24">
+    <enum name="TEXTURE_COMPARE_FAIL_VALUE_ARB" count="1" value="0x80BF">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+</category>
+
+<category name="GL_ARB_window_pos" number="25">
+    <function name="WindowPos2dARB" alias="WindowPos2dMESA">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+    </function>
+
+    <function name="WindowPos2fARB" alias="WindowPos2fMESA">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+    </function>
+
+    <function name="WindowPos2iARB" alias="WindowPos2iMESA">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+    </function>
+
+    <function name="WindowPos2sARB" alias="WindowPos2sMESA">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+    </function>
+
+    <function name="WindowPos2dvARB" alias="WindowPos2dvMESA">
+        <param name="v" type="const GLdouble *"/>
+    </function>
+
+    <function name="WindowPos2fvARB" alias="WindowPos2fvMESA">
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="WindowPos2ivARB" alias="WindowPos2ivMESA">
+        <param name="v" type="const GLint *"/>
+    </function>
+
+    <function name="WindowPos2svARB" alias="WindowPos2svMESA">
+        <param name="v" type="const GLshort *"/>
+    </function>
+
+    <function name="WindowPos3dARB" alias="WindowPos3dMESA">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+    </function>
+
+    <function name="WindowPos3fARB" alias="WindowPos3fMESA">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="WindowPos3iARB" alias="WindowPos3iMESA">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="z" type="GLint"/>
+    </function>
+
+    <function name="WindowPos3sARB" alias="WindowPos3sMESA">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+    </function>
+
+    <function name="WindowPos3dvARB" alias="WindowPos3dvMESA">
+        <param name="v" type="const GLdouble *"/>
+    </function>
+
+    <function name="WindowPos3fvARB" alias="WindowPos3fvMESA">
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="WindowPos3ivARB" alias="WindowPos3ivMESA">
+        <param name="v" type="const GLint *"/>
+    </function>
+
+    <function name="WindowPos3svARB" alias="WindowPos3svMESA">
+        <param name="v" type="const GLshort *"/>
+    </function>
+</category>
+
+<category name="GL_ARB_vertex_program" number="26">
+    <enum name="COLOR_SUM_ARB"                 count="1"  value="0x8458">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_PROGRAM_ARB"            count="1"  value="0x8620">
+        <size name="GetVertexAttribdvARB" mode="get"/>
+        <size name="GetVertexAttribfvARB" mode="get"/>
+        <size name="GetVertexAttribivARB" mode="get"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ATTRIB_ARRAY_ENABLED_ARB" count="1" value="0x8622">
+        <size name="GetVertexAttribdvARB" mode="get"/>
+        <size name="GetVertexAttribfvARB" mode="get"/>
+        <size name="GetVertexAttribivARB" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ATTRIB_ARRAY_SIZE_ARB"  count="1"  value="0x8623">
+        <size name="GetVertexAttribdvARB" mode="get"/>
+        <size name="GetVertexAttribfvARB" mode="get"/>
+        <size name="GetVertexAttribivARB" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ATTRIB_ARRAY_STRIDE_ARB" count="1" value="0x8624">
+        <size name="GetVertexAttribdvARB" mode="get"/>
+        <size name="GetVertexAttribfvARB" mode="get"/>
+        <size name="GetVertexAttribivARB" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ATTRIB_ARRAY_TYPE_ARB"  count="1"  value="0x8625">
+        <size name="GetVertexAttribdvARB" mode="get"/>
+        <size name="GetVertexAttribfvARB" mode="get"/>
+        <size name="GetVertexAttribivARB" mode="get"/>
+    </enum>
+    <enum name="CURRENT_VERTEX_ATTRIB_ARB"     count="1"  value="0x8626">
+        <size name="GetVertexAttribdvARB" mode="get"/>
+        <size name="GetVertexAttribfvARB" mode="get"/>
+        <size name="GetVertexAttribivARB" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_LENGTH_ARB"            count="1"  value="0x8627">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_STRING_ARB"                       value="0x8628"/>
+    <enum name="MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB" count="1" value="0x862E">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_MATRICES_ARB"      count="1"  value="0x862F">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CURRENT_MATRIX_STACK_DEPTH_ARB" count="1" value="0x8640">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="CURRENT_MATRIX_ARB"            count="16" value="0x8641">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_PROGRAM_POINT_SIZE_ARB" count="1"  value="0x8642">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_PROGRAM_TWO_SIDE_ARB"   count="1"  value="0x8643">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ATTRIB_ARRAY_POINTER_ARB"          value="0x8645"/>
+    <enum name="PROGRAM_ERROR_POSITION_ARB"    count="1"  value="0x864B">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_BINDING_ARB"           count="1"  value="0x8677">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_VERTEX_ATTRIBS_ARB"        count="1"  value="0x8869">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB"       value="0x886A"/>
+    <enum name="PROGRAM_ERROR_STRING_ARB"                 value="0x8874"/>
+    <enum name="PROGRAM_FORMAT_ASCII_ARB"                 value="0x8875"/>
+    <enum name="PROGRAM_FORMAT_ARB"            count="1"  value="0x8876">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_INSTRUCTIONS_ARB"      count="1"  value="0x88A0">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_INSTRUCTIONS_ARB"  count="1"  value="0x88A1">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_NATIVE_INSTRUCTIONS_ARB" count="1" value="0x88A2">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB" count="1" value="0x88A3">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_TEMPORARIES_ARB"       count="1"  value="0x88A4">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_TEMPORARIES_ARB"   count="1"  value="0x88A5">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_NATIVE_TEMPORARIES_ARB" count="1" value="0x88A6">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_NATIVE_TEMPORARIES_ARB" count="1" value="0x88A7">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_PARAMETERS_ARB"        count="1"  value="0x88A8">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_PARAMETERS_ARB"    count="1"  value="0x88A9">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_NATIVE_PARAMETERS_ARB" count="1"  value="0x88AA">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_NATIVE_PARAMETERS_ARB" count="1" value="0x88AB">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_ATTRIBS_ARB"           count="1"  value="0x88AC">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_ATTRIBS_ARB"       count="1"  value="0x88AD">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_NATIVE_ATTRIBS_ARB"    count="1"  value="0x88AE">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_NATIVE_ATTRIBS_ARB" count="1" value="0x88AF">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_ADDRESS_REGISTERS_ARB" count="1"  value="0x88B0">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_ADDRESS_REGISTERS_ARB" count="1" value="0x88B1">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB" count="1" value="0x88B2">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB" count="1" value="0x88B3">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_LOCAL_PARAMETERS_ARB" count="1" value="0x88B4">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_ENV_PARAMETERS_ARB" count="1" value="0x88B5">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_UNDER_NATIVE_LIMITS_ARB" count="1" value="0x88B6">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="TRANSPOSE_CURRENT_MATRIX_ARB"  count="16" value="0x88B7">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MATRIX0_ARB"                              value="0x88C0"/>
+    <enum name="MATRIX1_ARB"                              value="0x88C1"/>
+    <enum name="MATRIX2_ARB"                              value="0x88C2"/>
+    <enum name="MATRIX3_ARB"                              value="0x88C3"/>
+    <enum name="MATRIX4_ARB"                              value="0x88C4"/>
+    <enum name="MATRIX5_ARB"                              value="0x88C5"/>
+    <enum name="MATRIX6_ARB"                              value="0x88C6"/>
+    <enum name="MATRIX7_ARB"                              value="0x88C7"/>
+    <enum name="MATRIX8_ARB"                              value="0x88C8"/>
+    <enum name="MATRIX9_ARB"                              value="0x88C9"/>
+    <enum name="MATRIX10_ARB"                             value="0x88CA"/>
+    <enum name="MATRIX11_ARB"                             value="0x88CB"/>
+    <enum name="MATRIX12_ARB"                             value="0x88CC"/>
+    <enum name="MATRIX13_ARB"                             value="0x88CD"/>
+    <enum name="MATRIX14_ARB"                             value="0x88CE"/>
+    <enum name="MATRIX15_ARB"                             value="0x88CF"/>
+    <enum name="MATRIX16_ARB"                             value="0x88D0"/>
+    <enum name="MATRIX17_ARB"                             value="0x88D1"/>
+    <enum name="MATRIX18_ARB"                             value="0x88D2"/>
+    <enum name="MATRIX19_ARB"                             value="0x88D3"/>
+    <enum name="MATRIX20_ARB"                             value="0x88D4"/>
+    <enum name="MATRIX21_ARB"                             value="0x88D5"/>
+    <enum name="MATRIX22_ARB"                             value="0x88D6"/>
+    <enum name="MATRIX23_ARB"                             value="0x88D7"/>
+    <enum name="MATRIX24_ARB"                             value="0x88D8"/>
+    <enum name="MATRIX25_ARB"                             value="0x88D9"/>
+    <enum name="MATRIX26_ARB"                             value="0x88DA"/>
+    <enum name="MATRIX27_ARB"                             value="0x88DB"/>
+    <enum name="MATRIX28_ARB"                             value="0x88DC"/>
+    <enum name="MATRIX29_ARB"                             value="0x88DD"/>
+    <enum name="MATRIX30_ARB"                             value="0x88DE"/>
+    <enum name="MATRIX31_ARB"                             value="0x88DF"/>
+
+    <function name="GetVertexAttribdvARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
+        <glx handcode="client" vendorpriv="1301"/>
+    </function>
+
+    <function name="GetVertexAttribfvARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx handcode="client" vendorpriv="1302"/>
+    </function>
+
+    <function name="GetVertexAttribivARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx handcode="client" vendorpriv="1303"/>
+    </function>
+
+    <function name="VertexAttrib1dARB" offset="assign" vectorequiv="VertexAttrib1dvARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLdouble"/>
+    </function>
+
+    <function name="VertexAttrib1dvARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLdouble *" count="1"/>
+        <glx rop="4197" doubles_in_order="true"/>
+    </function>
+
+    <function name="VertexAttrib1fARB" offset="assign" vectorequiv="VertexAttrib1fvARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+    </function>
+
+    <function name="VertexAttrib1fvARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLfloat *" count="1"/>
+        <glx rop="4193"/>
+    </function>
+
+    <function name="VertexAttrib1sARB" offset="assign" vectorequiv="VertexAttrib1svARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLshort"/>
+    </function>
+
+    <function name="VertexAttrib1svARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLshort *" count="1"/>
+        <glx rop="4189"/>
+    </function>
+
+    <function name="VertexAttrib2dARB" offset="assign" vectorequiv="VertexAttrib2dvARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+    </function>
+
+    <function name="VertexAttrib2dvARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLdouble *" count="2"/>
+        <glx rop="4198" doubles_in_order="true"/>
+    </function>
+
+    <function name="VertexAttrib2fARB" offset="assign" vectorequiv="VertexAttrib2fvARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+    </function>
+
+    <function name="VertexAttrib2fvARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLfloat *" count="2"/>
+        <glx rop="4194"/>
+    </function>
+
+    <function name="VertexAttrib2sARB" offset="assign" vectorequiv="VertexAttrib2svARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+    </function>
+
+    <function name="VertexAttrib2svARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLshort *" count="2"/>
+        <glx rop="4190"/>
+    </function>
+
+    <function name="VertexAttrib3dARB" offset="assign" vectorequiv="VertexAttrib3dvARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+    </function>
+
+    <function name="VertexAttrib3dvARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLdouble *" count="3"/>
+        <glx rop="4199" doubles_in_order="true"/>
+    </function>
+
+    <function name="VertexAttrib3fARB" offset="assign" vectorequiv="VertexAttrib3fvARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="VertexAttrib3fvARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLfloat *" count="3"/>
+        <glx rop="4195"/>
+    </function>
+
+    <function name="VertexAttrib3sARB" offset="assign" vectorequiv="VertexAttrib3svARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+    </function>
+
+    <function name="VertexAttrib3svARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLshort *" count="3"/>
+        <glx rop="4191"/>
+    </function>
+
+    <function name="VertexAttrib4dARB" offset="assign" vectorequiv="VertexAttrib4dvARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <param name="w" type="GLdouble"/>
+    </function>
+
+    <function name="VertexAttrib4dvARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLdouble *" count="4"/>
+        <glx rop="4200" doubles_in_order="true"/>
+    </function>
+
+    <function name="VertexAttrib4fARB" offset="assign" vectorequiv="VertexAttrib4fvARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <param name="w" type="GLfloat"/>
+    </function>
+
+    <function name="VertexAttrib4fvARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLfloat *" count="4"/>
+        <glx rop="4196"/>
+    </function>
+
+    <function name="VertexAttrib4sARB" offset="assign" vectorequiv="VertexAttrib4svARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+        <param name="w" type="GLshort"/>
+    </function>
+
+    <function name="VertexAttrib4svARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLshort *" count="4"/>
+        <glx rop="4192"/>
+    </function>
+
+    <function name="VertexAttrib4NubARB" offset="assign" vectorequiv="VertexAttrib4NubvARB">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLubyte"/>
+        <param name="y" type="GLubyte"/>
+        <param name="z" type="GLubyte"/>
+        <param name="w" type="GLubyte"/>
+    </function>
+
+    <function name="VertexAttrib4NubvARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLubyte *" count="4"/>
+        <glx rop="4201"/>
+    </function>
+
+    <function name="VertexAttrib4bvARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLbyte *" count="4"/>
+        <glx rop="4230"/>
+    </function>
+
+    <function name="VertexAttrib4ivARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLint *" count="4"/>
+        <glx rop="4231"/>
+    </function>
+
+    <function name="VertexAttrib4ubvARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLubyte *" count="4"/>
+        <glx rop="4232"/>
+    </function>
+
+    <function name="VertexAttrib4usvARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLushort *" count="4"/>
+        <glx rop="4233"/>
+    </function>
+
+    <function name="VertexAttrib4uivARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLuint *" count="4"/>
+        <glx rop="4234"/>
+    </function>
+
+    <function name="VertexAttrib4NbvARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLbyte *" count="4"/>
+        <glx rop="4235"/>
+    </function>
+
+    <function name="VertexAttrib4NsvARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLshort *" count="4"/>
+        <glx rop="4236"/>
+    </function>
+
+    <function name="VertexAttrib4NivARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLint *" count="4"/>
+        <glx rop="4237"/>
+    </function>
+
+    <function name="VertexAttrib4NusvARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLushort *" count="4"/>
+        <glx rop="4238"/>
+    </function>
+
+    <function name="VertexAttrib4NuivARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLuint *" count="4"/>
+        <glx rop="4239"/>
+    </function>
+
+    <function name="VertexAttribPointerARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="normalized" type="GLboolean"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="EnableVertexAttribArrayARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="DisableVertexAttribArrayARB" offset="assign">
+        <param name="index" type="GLuint"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="ProgramStringARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="format" type="GLenum"/>
+        <param name="len" type="GLsizei" counter="true"/>
+        <param name="string" type="const GLvoid *" count="len"/>
+        <glx rop="4217" large="true"/>
+    </function>
+
+    <function name="BindProgramARB" alias="BindProgramNV">
+        <param name="target" type="GLenum"/>
+        <param name="program" type="GLuint"/>
+    </function>
+
+    <function name="DeleteProgramsARB" alias="DeleteProgramsNV">
+        <param name="n" type="GLsizei"/>
+        <param name="programs" type="const GLuint *"/>
+    </function>
+
+    <function name="GenProgramsARB" alias="GenProgramsNV">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="programs" type="GLuint *" output="true" count="n"/>
+    </function>
+
+    <function name="IsProgramARB" alias="IsProgramNV">
+        <param name="program" type="GLuint"/>
+        <return type="GLboolean"/>
+    </function>
+
+    <function name="ProgramEnvParameter4dARB" offset="assign" vectorequiv="ProgramEnvParameter4dvARB">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <param name="w" type="GLdouble"/>
+    </function>
+
+    <function name="ProgramEnvParameter4dvARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="params" type="const GLdouble *" count="4"/>
+        <glx rop="4185" doubles_in_order="true"/>
+    </function>
+
+    <function name="ProgramEnvParameter4fARB" offset="assign" vectorequiv="ProgramEnvParameter4fvARB">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <param name="w" type="GLfloat"/>
+    </function>
+
+    <function name="ProgramEnvParameter4fvARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="params" type="const GLfloat *" count="4"/>
+        <glx rop="4184"/>
+    </function>
+
+    <function name="ProgramLocalParameter4dARB" offset="assign" vectorequiv="ProgramLocalParameter4dvARB">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <param name="w" type="GLdouble"/>
+    </function>
+
+    <function name="ProgramLocalParameter4dvARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="params" type="const GLdouble *" count="4"/>
+        <glx rop="4216" doubles_in_order="true"/>
+    </function>
+
+    <function name="ProgramLocalParameter4fARB" offset="assign" vectorequiv="ProgramLocalParameter4fvARB">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <param name="w" type="GLfloat"/>
+    </function>
+
+    <function name="ProgramLocalParameter4fvARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="params" type="const GLfloat *" count="4"/>
+        <glx rop="4215"/>
+    </function>
+
+    <!-- The GetProgramEnvParameter[df]vARB are handcoded because there
+         is an extra CARD32 of padding after the "index" field.  Originally,
+         GetProgranEnvParameter[df]vARB and GetProgramParameter[df]vNV
+         shared the same GLX protocol.  The pad field was where the pname
+         parameter was in the NV functions.  When this error was discovered
+         and fixed, there was already at least one implementation of
+         GLX protocol for ARB_vertex_program, but there were no
+         implementations of NV_vertex_program.  The sollution was to renumber
+         the opcodes for NV_vertex_program and convert the unused field in
+         the ARB_vertex_program protocol to unused padding.
+      -->
+
+    <function name="GetProgramEnvParameterdvARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="params" type="GLdouble *" output="true" count="4"/>
+        <glx vendorpriv="1297" handcode="client" doubles_in_order="true"/>
+    </function>
+
+    <function name="GetProgramEnvParameterfvARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="params" type="GLfloat *" output="true" count="4"/>
+        <glx vendorpriv="1296" handcode="client"/>
+    </function>
+
+    <function name="GetProgramLocalParameterdvARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="params" type="GLdouble *" output="true" count="4"/>
+        <glx vendorpriv="1306" handcode="client" doubles_in_order="true"/>
+    </function>
+
+    <function name="GetProgramLocalParameterfvARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="params" type="GLfloat *" output="true" count="4"/>
+        <glx vendorpriv="1305" handcode="client"/>
+    </function>
+
+
+    <function name="GetProgramivARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx vendorpriv="1307"/>
+    </function>
+
+    <function name="GetProgramStringARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="string" type="GLvoid *" output="true"/>
+        <glx vendorpriv="1308" handcode="server" always_array="true"/>
+    </function>
+
+    <function name="GetVertexAttribPointervARB" alias="GetVertexAttribPointervNV">
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="pointer" type="GLvoid **" output="true"/>
+    </function>
+</category>
+
+<category name="GL_ARB_fragment_program" number="27">
+    <enum name="FRAGMENT_PROGRAM_ARB"          count="1"  value="0x8804">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_ALU_INSTRUCTIONS_ARB"  count="1"  value="0x8805">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_TEX_INSTRUCTIONS_ARB"  count="1"  value="0x8806">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_TEX_INDIRECTIONS_ARB"  count="1"  value="0x8807">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB" count="1" value="0x8808">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB" count="1" value="0x8809">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB" count="1" value="0x880A">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_ALU_INSTRUCTIONS_ARB" count="1" value="0x880B">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_TEX_INSTRUCTIONS_ARB" count="1" value="0x880C">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_TEX_INDIRECTIONS_ARB" count="1" value="0x880D">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB" count="1" value="0x880E">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB" count="1" value="0x880F">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB" count="1" value="0x8810">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_TEXTURE_COORDS_ARB"        count="1"  value="0x8871">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_TEXTURE_IMAGE_UNITS_ARB"   count="1"  value="0x8872">
+        <size name="Get" mode="get"/>
+    </enum>
+</category>
+
+<category name="GL_ARB_vertex_buffer_object" number="28">
+    <enum name="BUFFER_SIZE_ARB"               count="1"  value="0x8764">
+        <size name="GetBufferParameterivARB" mode="get"/>
+    </enum>
+    <enum name="BUFFER_USAGE_ARB"              count="1"  value="0x8765">
+        <size name="GetBufferParameterivARB" mode="get"/>
+    </enum>
+    <enum name="ARRAY_BUFFER_BINDING_ARB"      count="1"  value="0x8894">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ELEMENT_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x8895">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x8896">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="NORMAL_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x8897">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COLOR_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x8898">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="INDEX_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x8899">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x889A">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x889B">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x889C">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x889D">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="WEIGHT_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x889E">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x889F">
+        <size name="GetVertexAttribdvARB" mode="get"/>
+        <size name="GetVertexAttribfvARB" mode="get"/>
+        <size name="GetVertexAttribivARB" mode="get"/>
+    </enum>
+    <enum name="READ_ONLY_ARB"                            value="0x88B8"/>
+    <enum name="WRITE_ONLY_ARB"                           value="0x88B9"/>
+    <enum name="READ_WRITE_ARB"                           value="0x88BA"/>
+    <enum name="BUFFER_ACCESS_ARB"             count="1"  value="0x88BB">
+        <size name="GetBufferParameterivARB" mode="get"/>
+    </enum>
+    <enum name="BUFFER_MAPPED_ARB"             count="1"  value="0x88BC">
+        <size name="GetBufferParameterivARB" mode="get"/>
+    </enum>
+    <enum name="BUFFER_MAP_POINTER_ARB"                   value="0x88BD"/>
+    <enum name="STREAM_DRAW_ARB"                          value="0x88E0"/>
+    <enum name="STREAM_READ_ARB"                          value="0x88E1"/>
+    <enum name="STREAM_COPY_ARB"                          value="0x88E2"/>
+    <enum name="STATIC_DRAW_ARB"                          value="0x88E4"/>
+    <enum name="STATIC_READ_ARB"                          value="0x88E5"/>
+    <enum name="STATIC_COPY_ARB"                          value="0x88E6"/>
+    <enum name="DYNAMIC_DRAW_ARB"                         value="0x88E8"/>
+    <enum name="DYNAMIC_READ_ARB"                         value="0x88E9"/>
+    <enum name="DYNAMIC_COPY_ARB"                         value="0x88EA"/>
+
+    <type name="intptrARB"   size="4"                  glx_name="CARD32"/>
+    <type name="sizeiptrARB" size="4"  unsigned="true" glx_name="CARD32"/>
+
+    <function name="BindBufferARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="buffer" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="BufferDataARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="size" type="GLsizeiptrARB" counter="true"/>
+        <param name="data" type="const GLvoid *" count="size" img_null_flag="true"/>
+        <param name="usage" type="GLenum"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="BufferSubDataARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="offset" type="GLintptrARB"/>
+        <param name="size" type="GLsizeiptrARB" counter="true"/>
+        <param name="data" type="const GLvoid *" count="size"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="DeleteBuffersARB" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="buffer" type="const GLuint *" count="n"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GenBuffersARB" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="buffer" type="GLuint *" output="true" count="n"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetBufferParameterivARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetBufferPointervARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLvoid **" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetBufferSubDataARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="offset" type="GLintptrARB"/>
+        <param name="size" type="GLsizeiptrARB" counter="true"/>
+        <param name="data" type="GLvoid *" output="true" count="size"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="IsBufferARB" offset="assign">
+        <param name="buffer" type="GLuint"/>
+        <return type="GLboolean"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="MapBufferARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="access" type="GLenum"/>
+        <return type="GLvoid *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="UnmapBufferARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <return type="GLboolean"/>
+        <glx ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_ARB_occlusion_query" number="29">
+    <enum name="QUERY_COUNTER_BITS_ARB"        count="1"  value="0x8864">
+        <size name="GetQueryivARB" mode="get"/>
+    </enum>
+    <enum name="CURRENT_QUERY_ARB"             count="1"  value="0x8865">
+        <size name="GetQueryivARB" mode="get"/>
+    </enum>
+    <enum name="QUERY_RESULT_ARB"              count="1"  value="0x8866">
+        <size name="GetQueryObjectivARB" mode="get"/>
+        <size name="GetQueryObjectuivARB" mode="get"/>
+    </enum>
+    <enum name="QUERY_RESULT_AVAILABLE_ARB"    count="1"  value="0x8867">
+        <size name="GetQueryObjectivARB" mode="get"/>
+        <size name="GetQueryObjectuivARB" mode="get"/>
+    </enum>
+    <enum name="SAMPLES_PASSED_ARB"                       value="0x8914"/>
+
+    <function name="GenQueriesARB" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="ids" type="GLuint *" output="true" count="n"/>
+        <glx sop="162" always_array="true"/>
+    </function>
+
+    <function name="DeleteQueriesARB" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="ids" type="const GLuint *" count="n"/>
+        <glx sop="161"/>
+    </function>
+
+    <function name="IsQueryARB" offset="assign">
+        <param name="id" type="GLuint"/>
+        <return type="GLboolean"/>
+        <glx sop="163"/>
+    </function>
+
+    <function name="BeginQueryARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="id" type="GLuint"/>
+        <glx rop="231"/>
+    </function>
+
+    <function name="EndQueryARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <glx rop="232"/>
+    </function>
+
+    <function name="GetQueryivARB" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="164"/>
+    </function>
+
+    <function name="GetQueryObjectivARB" offset="assign">
+        <param name="id" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx sop="165"/>
+    </function>
+
+    <function name="GetQueryObjectuivARB" offset="assign">
+        <param name="id" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLuint *" output="true" variable_param="pname"/>
+        <glx sop="166"/>
+    </function>
+</category>
+
+<category name="GL_ARB_shader_objects" number="30">
+    <enum name="PROGRAM_OBJECT_ARB"                       value="0x8B40"/>
+    <enum name="SHADER_OBJECT_ARB"                        value="0x8B48"/>
+    <enum name="OBJECT_TYPE_ARB"                          value="0x8B4E"/>
+    <enum name="OBJECT_SUBTYPE_ARB"                       value="0x8B4F"/>
+    <enum name="FLOAT_VEC2_ARB"                           value="0x8B50"/>
+    <enum name="FLOAT_VEC3_ARB"                           value="0x8B51"/>
+    <enum name="FLOAT_VEC4_ARB"                           value="0x8B52"/>
+    <enum name="INT_VEC2_ARB"                             value="0x8B53"/>
+    <enum name="INT_VEC3_ARB"                             value="0x8B54"/>
+    <enum name="INT_VEC4_ARB"                             value="0x8B55"/>
+    <enum name="BOOL_ARB"                                 value="0x8B56"/>
+    <enum name="BOOL_VEC2_ARB"                            value="0x8B57"/>
+    <enum name="BOOL_VEC3_ARB"                            value="0x8B58"/>
+    <enum name="BOOL_VEC4_ARB"                            value="0x8B59"/>
+    <enum name="FLOAT_MAT2_ARB"                           value="0x8B5A"/>
+    <enum name="FLOAT_MAT3_ARB"                           value="0x8B5B"/>
+    <enum name="FLOAT_MAT4_ARB"                           value="0x8B5C"/>
+    <enum name="OBJECT_DELETE_STATUS_ARB"                 value="0x8B80"/>
+    <enum name="OBJECT_COMPILE_STATUS_ARB"                value="0x8B81"/>
+    <enum name="OBJECT_LINK_STATUS_ARB"                   value="0x8B82"/>
+    <enum name="OBJECT_VALIDATE_STATUS_ARB"               value="0x8B83"/>
+    <enum name="OBJECT_INFO_LOG_LENGTH_ARB"               value="0x8B84"/>
+    <enum name="OBJECT_ATTACHED_OBJECTS_ARB"              value="0x8B85"/>
+    <enum name="OBJECT_ACTIVE_UNIFORMS_ARB"               value="0x8B86"/>
+    <enum name="OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB"     value="0x8B87"/>
+    <enum name="OBJECT_SHADER_SOURCE_LENGTH_ARB"          value="0x8B88"/>
+
+    <type name="charARB"   size="1" glx_name="CARD8"/>
+    <type name="handleARB" size="4" glx_name="CARD32"/>
+
+    <function name="DeleteObjectARB" offset="assign">
+        <param name="obj" type="GLhandleARB"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetHandleARB" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <return type="GLhandleARB"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="DetachObjectARB" offset="assign">
+        <param name="containerObj" type="GLhandleARB"/>
+        <param name="attachedObj" type="GLhandleARB"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="CreateShaderObjectARB" offset="assign">
+        <param name="shaderType" type="GLenum"/>
+        <return type="GLhandleARB"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="ShaderSourceARB" offset="assign">
+        <param name="shader" type="GLhandleARB"/>
+        <param name="count" type="GLsizei"/>
+        <param name="string" type="const GLcharARB **"/>
+        <param name="length" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="CompileShaderARB" offset="assign">
+        <param name="shader" type="GLhandleARB"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="CreateProgramObjectARB" offset="assign">
+        <return type="GLhandleARB"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="AttachObjectARB" offset="assign">
+        <param name="containerObj" type="GLhandleARB"/>
+        <param name="obj" type="GLhandleARB"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="LinkProgramARB" offset="assign">
+        <param name="program" type="GLhandleARB"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="UseProgramObjectARB" offset="assign">
+        <param name="program" type="GLhandleARB"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="ValidateProgramARB" offset="assign">
+        <param name="program" type="GLhandleARB"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform1fARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform2fARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLfloat"/>
+        <param name="v1" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform3fARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLfloat"/>
+        <param name="v1" type="GLfloat"/>
+        <param name="v2" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform4fARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLfloat"/>
+        <param name="v1" type="GLfloat"/>
+        <param name="v2" type="GLfloat"/>
+        <param name="v3" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform1iARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform2iARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLint"/>
+        <param name="v1" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform3iARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLint"/>
+        <param name="v1" type="GLint"/>
+        <param name="v2" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform4iARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="v0" type="GLint"/>
+        <param name="v1" type="GLint"/>
+        <param name="v2" type="GLint"/>
+        <param name="v3" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform1fvARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform2fvARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform3fvARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform4fvARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform1ivARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform2ivARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform3ivARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="Uniform4ivARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="value" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="UniformMatrix2fvARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="transpose" type="GLboolean"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="UniformMatrix3fvARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="transpose" type="GLboolean"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="UniformMatrix4fvARB" offset="assign">
+        <param name="location" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="transpose" type="GLboolean"/>
+        <param name="value" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetObjectParameterfvARB" offset="assign">
+        <param name="obj" type="GLhandleARB"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetObjectParameterivARB" offset="assign">
+        <param name="obj" type="GLhandleARB"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetInfoLogARB" offset="assign">
+        <param name="obj" type="GLhandleARB"/>
+        <param name="maxLength" type="GLsizei"/>
+        <param name="length" type="GLsizei *" output="true"/>
+        <param name="infoLog" type="GLcharARB *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetAttachedObjectsARB" offset="assign">
+        <param name="containerObj" type="GLhandleARB"/>
+        <param name="maxLength" type="GLsizei"/>
+        <param name="length" type="GLsizei *" output="true"/>
+        <param name="infoLog" type="GLhandleARB *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetUniformLocationARB" offset="assign">
+        <param name="program" type="GLhandleARB"/>
+        <param name="name" type="const GLcharARB *"/>
+        <return type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetActiveUniformARB" offset="assign">
+        <param name="program" type="GLhandleARB"/>
+        <param name="index" type="GLuint"/>
+        <param name="bufSize" type="GLsizei"/>
+        <param name="length" type="GLsizei *" output="true"/>
+        <param name="size" type="GLint *" output="true"/>
+        <param name="type" type="GLenum *" output="true"/>
+        <param name="name" type="GLcharARB *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetUniformfvARB" offset="assign">
+        <param name="program" type="GLhandleARB"/>
+        <param name="location" type="GLint"/>
+        <param name="params" type="GLfloat *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetUniformivARB" offset="assign">
+        <param name="program" type="GLhandleARB"/>
+        <param name="location" type="GLint"/>
+        <param name="params" type="GLint *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetShaderSourceARB" offset="assign">
+        <param name="shader" type="GLhandleARB"/>
+        <param name="bufSize" type="GLsizei"/>
+        <param name="length" type="GLsizei *" output="true"/>
+        <param name="source" type="GLcharARB *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_ARB_vertex_shader" number="31">
+    <enum name="VERTEX_SHADER_ARB"                        value="0x8B31"/>
+    <enum name="MAX_VERTEX_UNIFORM_COMPONENTS_ARB"        value="0x8B4A"/>
+    <enum name="MAX_VARYING_FLOATS_ARB"                   value="0x8B4B"/>
+    <enum name="MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB"       value="0x8B4C"/>
+    <enum name="MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB"     value="0x8B4D"/>
+    <enum name="OBJECT_ACTIVE_ATTRIBUTES_ARB"             value="0x8B89"/>
+    <enum name="OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB"   value="0x8B8A"/>
+
+    <function name="BindAttribLocationARB" offset="assign">
+        <param name="program" type="GLhandleARB"/>
+        <param name="index" type="GLuint"/>
+        <param name="name" type="const GLcharARB *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetActiveAttribARB" offset="assign">
+        <param name="program" type="GLhandleARB"/>
+        <param name="index" type="GLuint"/>
+        <param name="bufSize" type="GLsizei"/>
+        <param name="length" type="GLsizei *" output="true"/>
+        <param name="size" type="GLint *" output="true"/>
+        <param name="type" type="GLenum *" output="true"/>
+        <param name="name" type="GLcharARB *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetAttribLocationARB" offset="assign">
+        <param name="program" type="GLhandleARB"/>
+        <param name="name" type="const GLcharARB *"/>
+        <return type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_ARB_fragment_shader" number="32">
+    <enum name="FRAGMENT_SHADER_ARB"                      value="0x8B30"/>
+    <enum name="MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB"      value="0x8B49"/>
+</category>
+
+<category name="GL_ARB_shading_language_100" number="33">
+    <!-- No new functions, types, enums. -->
+</category>
+
+<category name="GL_ARB_texture_non_power_of_two" number="34">
+    <!-- No new functions, types, enums. -->
+</category>
+
+<category name="GL_ARB_point_sprite" number="35">
+    <enum name="POINT_SPRITE_ARB"              count="1"  value="0x8861">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COORD_REPLACE_ARB"             count="1"  value="0x8862">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+</category>
+
+<category name="GL_ARB_fragment_program_shadow" number="36">
+    <!-- No new functions, types, enums. -->
+</category>
+
+<category name="GL_ARB_draw_buffers" number="37">
+    <enum name="MAX_DRAW_BUFFERS_ARB"          count="1"  value="0x8824">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER0_ARB"              count="1"  value="0x8825">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER1_ARB"              count="1"  value="0x8826">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER2_ARB"              count="1"  value="0x8827">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER3_ARB"              count="1"  value="0x8828">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER4_ARB"              count="1"  value="0x8829">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER5_ARB"              count="1"  value="0x882A">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER6_ARB"              count="1"  value="0x882B">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER7_ARB"              count="1"  value="0x882C">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER8_ARB"              count="1"  value="0x882D">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER9_ARB"              count="1"  value="0x882E">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER10_ARB"             count="1"  value="0x882F">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER11_ARB"             count="1"  value="0x8830">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER12_ARB"             count="1"  value="0x8831">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER13_ARB"             count="1"  value="0x8832">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER14_ARB"             count="1"  value="0x8833">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER15_ARB"             count="1"  value="0x8834">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="DrawBuffersARB" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="bufs" type="const GLenum *" count="n"/>
+        <glx rop="233" large="true"/>
+    </function>
+</category>
+
+<category name="GL_ARB_texture_rectangle" number="38">
+    <enum name="TEXTURE_RECTANGLE_ARB"         count="1"  value="0x84F5">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_BINDING_RECTANGLE_ARB" count="1"  value="0x84F6">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PROXY_TEXTURE_RECTANGLE_ARB"              value="0x84F7"/>
+    <enum name="MAX_RECTANGLE_TEXTURE_SIZE_ARB" count="1" value="0x84F8">
+        <size name="Get" mode="get"/>
+    </enum>
+</category>
+
+<xi:include href="ARB_framebuffer_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<xi:include href="ARB_copy_buffer.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<xi:include href="ARB_depth_clamp.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<xi:include href="ARB_map_buffer_range.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<xi:include href="ARB_vertex_array_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<xi:include href="ARB_sync.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<xi:include href="ARB_seamless_cube_map.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<xi:include href="ARB_draw_elements_base_vertex.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<xi:include href="NV_conditional_render.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<xi:include href="EXT_transform_feedback.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<xi:include href="ARB_draw_instanced.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+
+<!-- Non-ARB extensions sorted by extension number. -->
+
+<category name="GL_EXT_blend_color" number="2">
+    <enum name="CONSTANT_COLOR_EXT"                       value="0x8001"/>
+    <enum name="ONE_MINUS_CONSTANT_COLOR_EXT"             value="0x8002"/>
+    <enum name="CONSTANT_ALPHA_EXT"                       value="0x8003"/>
+    <enum name="ONE_MINUS_CONSTANT_ALPHA_EXT"             value="0x8004"/>
+    <enum name="BLEND_COLOR_EXT"               count="4"  value="0x8005">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="BlendColorEXT" alias="BlendColor">
+        <param name="red" type="GLclampf"/>
+        <param name="green" type="GLclampf"/>
+        <param name="blue" type="GLclampf"/>
+        <param name="alpha" type="GLclampf"/>
+    </function>
+</category>
+
+<category name="GL_EXT_polygon_offset" number="3">
+    <function name="PolygonOffsetEXT" offset="assign">
+        <param name="factor" type="GLfloat"/>
+        <param name="bias" type="GLfloat"/>
+        <glx rop="4098" ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_EXT_texture" number="4">
+    <enum name="ALPHA4_EXT"                               value="0x803B"/>
+    <enum name="ALPHA8_EXT"                               value="0x803C"/>
+    <enum name="ALPHA12_EXT"                              value="0x803D"/>
+    <enum name="ALPHA16_EXT"                              value="0x803E"/>
+    <enum name="LUMINANCE4_EXT"                           value="0x803F"/>
+    <enum name="LUMINANCE8_EXT"                           value="0x8040"/>
+    <enum name="LUMINANCE12_EXT"                          value="0x8041"/>
+    <enum name="LUMINANCE16_EXT"                          value="0x8042"/>
+    <enum name="LUMINANCE4_ALPHA4_EXT"                    value="0x8043"/>
+    <enum name="LUMINANCE6_ALPHA2_EXT"                    value="0x8044"/>
+    <enum name="LUMINANCE8_ALPHA8_EXT"                    value="0x8045"/>
+    <enum name="LUMINANCE12_ALPHA4_EXT"                   value="0x8046"/>
+    <enum name="LUMINANCE12_ALPHA12_EXT"                  value="0x8047"/>
+    <enum name="LUMINANCE16_ALPHA16_EXT"                  value="0x8048"/>
+    <enum name="INTENSITY_EXT"                            value="0x8049"/>
+    <enum name="INTENSITY4_EXT"                           value="0x804A"/>
+    <enum name="INTENSITY8_EXT"                           value="0x804B"/>
+    <enum name="INTENSITY12_EXT"                          value="0x804C"/>
+    <enum name="INTENSITY16_EXT"                          value="0x804D"/>
+    <enum name="RGB2_EXT"                                 value="0x804E"/>
+    <enum name="RGB4_EXT"                                 value="0x804F"/>
+    <enum name="RGB5_EXT"                                 value="0x8050"/>
+    <enum name="RGB8_EXT"                                 value="0x8051"/>
+    <enum name="RGB10_EXT"                                value="0x8052"/>
+    <enum name="RGB12_EXT"                                value="0x8053"/>
+    <enum name="RGB16_EXT"                                value="0x8054"/>
+    <enum name="RGBA2_EXT"                                value="0x8055"/>
+    <enum name="RGBA4_EXT"                                value="0x8056"/>
+    <enum name="RGB5_A1_EXT"                              value="0x8057"/>
+    <enum name="RGBA8_EXT"                                value="0x8058"/>
+    <enum name="RGB10_A2_EXT"                             value="0x8059"/>
+    <enum name="RGBA12_EXT"                               value="0x805A"/>
+    <enum name="RGBA16_EXT"                               value="0x805B"/>
+    <enum name="TEXTURE_RED_SIZE_EXT"          count="1"  value="0x805C">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_GREEN_SIZE_EXT"        count="1"  value="0x805D">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_BLUE_SIZE_EXT"         count="1"  value="0x805E">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_ALPHA_SIZE_EXT"        count="1"  value="0x805F">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_LUMINANCE_SIZE_EXT"    count="1"  value="0x8060">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_INTENSITY_SIZE_EXT"    count="1"  value="0x8061">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+    <enum name="REPLACE_EXT"                              value="0x8062"/>
+    <enum name="PROXY_TEXTURE_1D_EXT"                     value="0x8063"/>
+    <enum name="PROXY_TEXTURE_2D_EXT"                     value="0x8064"/>
+    <enum name="TEXTURE_TOO_LARGE_EXT"                    value="0x8065"/>
+</category>
+
+<!-- Extension number 5 is not listed in the extension registry. -->
+
+<category name="GL_EXT_texture3D" number="6">
+    <function name="TexImage3DEXT" alias="TexImage3D">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="const GLvoid *"/>
+    </function>
+
+    <function name="TexSubImage3DEXT" alias="TexSubImage3D">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="UNUSED" type="GLuint" padding="true"/>
+        <param name="pixels" type="const GLvoid *"/>
+    </function>
+</category>
+
+<category name="GL_SGIS_texture_filter4" number="7">
+    <function name="GetTexFilterFuncSGIS">
+        <param name="target" type="GLenum"/>
+        <param name="filter" type="GLenum"/>
+        <param name="weights" type="GLfloat *" output="true"/>
+        <glx vendorpriv="4101" ignore="true"/>
+    </function>
+
+    <function name="TexFilterFuncSGIS">
+        <param name="target" type="GLenum"/>
+        <param name="filter" type="GLenum"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="weights" type="const GLfloat *" count="n"/>
+        <glx rop="2064" ignore="true"/>
+    </function>
+</category>
+
+<!-- Extension number 8 is not listed in the extension registry. -->
+
+<category name="GL_EXT_subtexture" number="9">
+    <function name="TexSubImage1DEXT" alias="TexSubImage1D">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="UNUSED" type="GLuint" padding="true"/>
+        <param name="pixels" type="const GLvoid *"/>
+    </function>
+
+    <function name="TexSubImage2DEXT" alias="TexSubImage2D">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="UNUSED" type="GLuint" padding="true"/>
+        <param name="pixels" type="const GLvoid *"/>
+    </function>
+</category>
+
+<category name="GL_EXT_copy_texture" number="10">
+    <function name="CopyTexImage1DEXT" alias="CopyTexImage1D">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+    </function>
+
+    <function name="CopyTexImage2DEXT" alias="CopyTexImage2D">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+    </function>
+
+    <function name="CopyTexSubImage1DEXT" alias="CopyTexSubImage1D">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+    </function>
+
+    <function name="CopyTexSubImage2DEXT" alias="CopyTexSubImage2D">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+    </function>
+
+    <function name="CopyTexSubImage3DEXT" alias="CopyTexSubImage3D">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+    </function>
+</category>
+
+<category name="GL_EXT_histogram" number="11">
+    <enum name="HISTOGRAM_EXT"                            value="0x8024"/>
+    <enum name="PROXY_HISTOGRAM_EXT"                      value="0x8025"/>
+    <enum name="HISTOGRAM_WIDTH_EXT"           count="1"  value="0x8026">
+        <size name="GetHistogramParameterfvEXT" mode="get"/>
+        <size name="GetHistogramParameterivEXT" mode="get"/>
+    </enum>
+    <enum name="HISTOGRAM_FORMAT_EXT"          count="1"  value="0x8027">
+        <size name="GetHistogramParameterfvEXT" mode="get"/>
+        <size name="GetHistogramParameterivEXT" mode="get"/>
+    </enum>
+    <enum name="HISTOGRAM_RED_SIZE_EXT"        count="1"  value="0x8028">
+        <size name="GetHistogramParameterfvEXT" mode="get"/>
+        <size name="GetHistogramParameterivEXT" mode="get"/>
+    </enum>
+    <enum name="HISTOGRAM_GREEN_SIZE_EXT"      count="1"  value="0x8029">
+        <size name="GetHistogramParameterfvEXT" mode="get"/>
+        <size name="GetHistogramParameterivEXT" mode="get"/>
+    </enum>
+    <enum name="HISTOGRAM_BLUE_SIZE_EXT"       count="1"  value="0x802A">
+        <size name="GetHistogramParameterfvEXT" mode="get"/>
+        <size name="GetHistogramParameterivEXT" mode="get"/>
+    </enum>
+    <enum name="HISTOGRAM_ALPHA_SIZE_EXT"      count="1"  value="0x802B">
+        <size name="GetHistogramParameterfvEXT" mode="get"/>
+        <size name="GetHistogramParameterivEXT" mode="get"/>
+    </enum>
+    <enum name="HISTOGRAM_LUMINANCE_SIZE_EXT"  count="1"  value="0x802C">
+        <size name="GetHistogramParameterfvEXT" mode="get"/>
+        <size name="GetHistogramParameterivEXT" mode="get"/>
+    </enum>
+    <enum name="HISTOGRAM_SINK_EXT"            count="1"  value="0x802D">
+        <size name="GetHistogramParameterfvEXT" mode="get"/>
+        <size name="GetHistogramParameterivEXT" mode="get"/>
+    </enum>
+    <enum name="MINMAX_EXT"                               value="0x802E"/>
+    <enum name="MINMAX_FORMAT_EXT"             count="1"  value="0x802F">
+        <size name="GetMinmaxParameterfvEXT" mode="get"/>
+        <size name="GetMinmaxParameterivEXT" mode="get"/>
+    </enum>
+    <enum name="MINMAX_SINK_EXT"               count="1"  value="0x8030">
+        <size name="GetMinmaxParameterfvEXT" mode="get"/>
+        <size name="GetMinmaxParameterivEXT" mode="get"/>
+    </enum>
+    <enum name="TABLE_TOO_LARGE_EXT"                      value="0x8031"/>
+
+    <function name="GetHistogramEXT" alias="GetHistogram" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="reset" type="GLboolean"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="values" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
+        <glx vendorpriv="5" dimensions_in_reply="true" img_reset="reset"/>
+    </function>
+
+    <function name="GetHistogramParameterfvEXT" alias="GetHistogramParameterfv" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx vendorpriv="6"/>
+    </function>
+
+    <function name="GetHistogramParameterivEXT" alias="GetHistogramParameteriv" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx vendorpriv="7"/>
+    </function>
+
+    <function name="GetMinmaxEXT" alias="GetMinmax" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="reset" type="GLboolean"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="values" type="GLvoid *" output="true" img_width="2" img_format="format" img_type="type"/>
+        <glx vendorpriv="8" img_reset="reset"/>
+    </function>
+
+    <function name="GetMinmaxParameterfvEXT" alias="GetMinmaxParameterfv" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx vendorpriv="9"/>
+    </function>
+
+    <function name="GetMinmaxParameterivEXT" alias="GetMinmaxParameteriv" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx vendorpriv="10"/>
+    </function>
+
+    <function name="HistogramEXT" alias="Histogram" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="sink" type="GLboolean"/>
+    </function>
+
+    <function name="MinmaxEXT" alias="Minmax" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="sink" type="GLboolean"/>
+    </function>
+
+    <function name="ResetHistogramEXT" alias="ResetHistogram" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+    </function>
+
+    <function name="ResetMinmaxEXT" alias="ResetMinmax" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+    </function>
+</category>
+
+<category name="GL_EXT_convolution" number="12">
+    <enum name="CONVOLUTION_BORDER_MODE_EXT"   count="1"  value="0x8013">
+        <size name="ConvolutionParameterfv"/>
+        <size name="ConvolutionParameteriv"/>
+        <size name="GetConvolutionParameterfv" mode="get"/>
+        <size name="GetConvolutionParameteriv" mode="get"/>
+    </enum>
+    <enum name="CONVOLUTION_FILTER_SCALE_EXT"  count="4"  value="0x8014">
+        <size name="ConvolutionParameterfv"/>
+        <size name="ConvolutionParameteriv"/>
+        <size name="GetConvolutionParameterfv" mode="get"/>
+        <size name="GetConvolutionParameteriv" mode="get"/>
+    </enum>
+    <enum name="CONVOLUTION_FILTER_BIAS_EXT"   count="4"  value="0x8015">
+        <size name="ConvolutionParameterfv"/>
+        <size name="ConvolutionParameteriv"/>
+        <size name="GetConvolutionParameterfv" mode="get"/>
+        <size name="GetConvolutionParameteriv" mode="get"/>
+    </enum>
+    <enum name="REDUCE_EXT"                               value="0x8016"/>
+    <enum name="CONVOLUTION_FORMAT_EXT"        count="1"  value="0x8017">
+        <size name="GetConvolutionParameterfv" mode="get"/>
+        <size name="GetConvolutionParameteriv" mode="get"/>
+    </enum>
+    <enum name="CONVOLUTION_WIDTH_EXT"         count="1"  value="0x8018">
+        <size name="GetConvolutionParameterfv" mode="get"/>
+        <size name="GetConvolutionParameteriv" mode="get"/>
+    </enum>
+    <enum name="CONVOLUTION_HEIGHT_EXT"        count="1"  value="0x8019">
+        <size name="GetConvolutionParameterfv" mode="get"/>
+        <size name="GetConvolutionParameteriv" mode="get"/>
+    </enum>
+    <enum name="MAX_CONVOLUTION_WIDTH_EXT"     count="1"  value="0x801A">
+        <size name="GetConvolutionParameterfv" mode="get"/>
+        <size name="GetConvolutionParameteriv" mode="get"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_CONVOLUTION_HEIGHT_EXT"    count="1"  value="0x801B">
+        <size name="GetConvolutionParameterfv" mode="get"/>
+        <size name="GetConvolutionParameteriv" mode="get"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_CONVOLUTION_RED_SCALE_EXT" count="1" value="0x801C">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_CONVOLUTION_GREEN_SCALE_EXT" count="1" value="0x801D">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_CONVOLUTION_BLUE_SCALE_EXT" count="1" value="0x801E">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_CONVOLUTION_ALPHA_SCALE_EXT" count="1" value="0x801F">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_CONVOLUTION_RED_BIAS_EXT" count="1"  value="0x8020">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_CONVOLUTION_GREEN_BIAS_EXT" count="1" value="0x8021">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_CONVOLUTION_BLUE_BIAS_EXT" count="1" value="0x8022">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="POST_CONVOLUTION_ALPHA_BIAS_EXT" count="1" value="0x8023">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="ConvolutionFilter1DEXT" alias="ConvolutionFilter1D" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="image" type="const GLvoid *"/>
+    </function>
+
+    <function name="ConvolutionFilter2DEXT" alias="ConvolutionFilter2D" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="image" type="const GLvoid *"/>
+    </function>
+
+    <function name="ConvolutionParameterfEXT" alias="ConvolutionParameterf" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat"/>
+    </function>
+
+    <function name="ConvolutionParameterfvEXT" alias="ConvolutionParameterfv" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *"/>
+    </function>
+
+    <function name="ConvolutionParameteriEXT" alias="ConvolutionParameteri" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint"/>
+    </function>
+
+    <function name="ConvolutionParameterivEXT" alias="ConvolutionParameteriv" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *"/>
+    </function>
+
+    <function name="CopyConvolutionFilter1DEXT" alias="CopyConvolutionFilter1D" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+    </function>
+
+    <function name="CopyConvolutionFilter2DEXT" alias="CopyConvolutionFilter2D" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+    </function>
+
+    <function name="GetConvolutionFilterEXT" alias="GetConvolutionFilter" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="image" type="GLvoid *" output="true" img_width="width" img_height="height" img_format="format" img_type="type"/>
+        <glx vendorpriv="1" dimensions_in_reply="true"/>
+    </function>
+
+    <function name="GetConvolutionParameterfvEXT" alias="GetConvolutionParameterfv" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx vendorpriv="2"/>
+    </function>
+
+    <function name="GetConvolutionParameterivEXT" alias="GetConvolutionParameteriv" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx vendorpriv="3"/>
+    </function>
+
+    <function name="GetSeparableFilterEXT" alias="GetSeparableFilter" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="row" type="GLvoid *" output="true"/>
+        <param name="column" type="GLvoid *" output="true"/>
+        <param name="span" type="GLvoid *" output="true"/>
+        <glx vendorpriv="4" handcode="true"/>
+    </function>
+
+    <function name="SeparableFilter2DEXT" alias="SeparableFilter2D" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="row" type="const GLvoid *"/>
+        <param name="column" type="const GLvoid *"/>
+    </function>
+</category>
+
+<category name="GL_SGI_color_matrix" number="13">
+    <enum name="COLOR_MATRIX_SGI"                         value="0x80B1"/>
+    <enum name="COLOR_MATRIX_STACK_DEPTH_SGI"             value="0x80B2"/>
+    <enum name="MAX_COLOR_MATRIX_STACK_DEPTH_SGI"         value="0x80B3"/>
+    <enum name="POST_COLOR_MATRIX_RED_SCALE_SGI"          value="0x80B4"/>
+    <enum name="POST_COLOR_MATRIX_GREEN_SCALE_SGI"        value="0x80B5"/>
+    <enum name="POST_COLOR_MATRIX_BLUE_SCALE_SGI"         value="0x80B6"/>
+    <enum name="POST_COLOR_MATRIX_ALPHA_SCALE_SGI"        value="0x80B7"/>
+    <enum name="POST_COLOR_MATRIX_RED_BIAS_SGI"           value="0x80B8"/>
+    <enum name="POST_COLOR_MATRIX_GREEN_BIAS_SGI"         value="0x80B9"/>
+    <enum name="POST_COLOR_MATRIX_BLUE_BIAS_SGI"          value="0x80BA"/>
+    <enum name="POST_COLOR_MATRIX_ALPHA_BIAS_SGI"         value="0x80BB"/>
+</category>
+
+<category name="GL_SGI_color_table" number="14">
+    <enum name="COLOR_TABLE_SCALE_SGI"         count="4"  value="0x80D6">
+        <size name="ColorTableParameterfvSGI"/>
+        <size name="ColorTableParameterivSGI"/>
+        <size name="GetColorTableParameterfvSGI" mode="get"/>
+        <size name="GetColorTableParameterivSGI" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_BIAS_SGI"          count="4"  value="0x80D7">
+        <size name="ColorTableParameterfvSGI"/>
+        <size name="ColorTableParameterivSGI"/>
+        <size name="GetColorTableParameterfvSGI" mode="get"/>
+        <size name="GetColorTableParameterivSGI" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_FORMAT_SGI"        count="1"  value="0x80D8">
+        <size name="GetColorTableParameterfvSGI" mode="get"/>
+        <size name="GetColorTableParameterivSGI" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_WIDTH_SGI"         count="1"  value="0x80D9">
+        <size name="GetColorTableParameterfvSGI" mode="get"/>
+        <size name="GetColorTableParameterivSGI" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_RED_SIZE_SGI"      count="1"  value="0x80DA">
+        <size name="GetColorTableParameterfvSGI" mode="get"/>
+        <size name="GetColorTableParameterivSGI" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_GREEN_SIZE_SGI"    count="1"  value="0x80DB">
+        <size name="GetColorTableParameterfvSGI" mode="get"/>
+        <size name="GetColorTableParameterivSGI" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_BLUE_SIZE_SGI"     count="1"  value="0x80DC">
+        <size name="GetColorTableParameterfvSGI" mode="get"/>
+        <size name="GetColorTableParameterivSGI" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_ALPHA_SIZE_SGI"    count="1"  value="0x80DD">
+        <size name="GetColorTableParameterfvSGI" mode="get"/>
+        <size name="GetColorTableParameterivSGI" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_LUMINANCE_SIZE_SGI" count="1" value="0x80DE">
+        <size name="GetColorTableParameterfvSGI" mode="get"/>
+        <size name="GetColorTableParameterivSGI" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_INTENSITY_SIZE_SGI" count="1" value="0x80DF">
+        <size name="GetColorTableParameterfvSGI" mode="get"/>
+        <size name="GetColorTableParameterivSGI" mode="get"/>
+    </enum>
+
+    <function name="ColorTableSGI" alias="ColorTable" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="table" type="const GLvoid *"/>
+    </function>
+
+    <function name="ColorTableParameterfvSGI" alias="ColorTableParameterfv" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *"/>
+    </function>
+
+    <function name="ColorTableParameterivSGI" alias="ColorTableParameteriv" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *"/>
+    </function>
+
+    <function name="CopyColorTableSGI" alias="CopyColorTable" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+    </function>
+
+    <function name="GetColorTableSGI" alias="GetColorTable" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="table" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
+        <glx vendorpriv="4098" dimensions_in_reply="true"/>
+    </function>
+
+    <function name="GetColorTableParameterfvSGI" alias="GetColorTableParameterfv" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx vendorpriv="4099"/>
+    </function>
+
+    <function name="GetColorTableParameterivSGI" alias="GetColorTableParameteriv" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx vendorpriv="4100"/>
+    </function>
+</category>
+
+<category name="GL_SGIS_pixel_texture" number="15">
+    <function name="PixelTexGenParameteriSGIS" offset="assign" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="PixelTexGenParameterivSGIS" offset="assign" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="PixelTexGenParameterfSGIS" offset="assign" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="PixelTexGenParameterfvSGIS" offset="assign" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetPixelTexGenParameterivSGIS" offset="assign" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetPixelTexGenParameterfvSGIS" offset="assign" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_SGIS_texture4D" number="16">
+    <function name="TexImage4DSGIS">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="size4d" type="GLsizei"/>
+        <param name="border" type="GLint"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_extent="size4d" img_format="format" img_type="type" img_target="target" img_null_flag="true" img_pad_dimensions="true"/>
+        <glx rop="2057" ignore="true"/>
+    </function>
+
+    <function name="TexSubImage4DSGIS">
+        <param name="target" type="GLenum"/>
+        <param name="level" type="GLint"/>
+        <param name="xoffset" type="GLint"/>
+        <param name="yoffset" type="GLint"/>
+        <param name="zoffset" type="GLint"/>
+        <param name="woffset" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+        <param name="height" type="GLsizei"/>
+        <param name="depth" type="GLsizei"/>
+        <param name="size4d" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="UNUSED" type="GLuint" padding="true"/>
+        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_extent="size4d" img_xoff="xoffset" img_yoff="yoffset" img_zoff="zoffset" img_woff="woffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
+        <glx rop="2058" ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_SGI_texture_color_table" number="17">
+    <enum name="TEXTURE_COLOR_TABLE_SGI"                  value="0x80BC"/>
+    <enum name="PROXY_TEXTURE_COLOR_TABLE_SGI"            value="0x80BD"/>
+</category>
+
+<!-- Extension number 19 is not listed in the extension registry. -->
+
+<category name="GL_EXT_texture_object" number="20">
+    <function name="AreTexturesResidentEXT" alias="AreTexturesResident">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="textures" type="const GLuint *" count="n"/>
+        <param name="residences" type="GLboolean *" output="true" count="n"/>
+        <return type="GLboolean"/>
+        <glx vendorpriv="11" handcode="client" always_array="true"/>
+    </function>
+
+    <function name="BindTextureEXT" alias="BindTexture">
+        <param name="target" type="GLenum"/>
+        <param name="texture" type="GLuint"/>
+    </function>
+
+    <function name="DeleteTexturesEXT" alias="DeleteTextures">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="textures" type="const GLuint *" count="n"/>
+        <glx vendorpriv="12"/>
+    </function>
+
+    <function name="GenTexturesEXT" alias="GenTextures">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="textures" type="GLuint *" output="true" count="n"/>
+        <glx vendorpriv="13" always_array="true"/>
+    </function>
+
+    <function name="IsTextureEXT" alias="IsTexture">
+        <param name="texture" type="GLuint"/>
+        <return type="GLboolean"/>
+        <glx vendorpriv="14"/>
+    </function>
+
+    <function name="PrioritizeTexturesEXT" alias="PrioritizeTextures">
+        <param name="n" type="GLsizei"/>
+        <param name="textures" type="const GLuint *"/>
+        <param name="priorities" type="const GLclampf *"/>
+    </function>
+</category>
+
+<category name="GL_SGIS_detail_texture" number="21">
+    <function name="DetailTexFuncSGIS">
+        <param name="target" type="GLenum"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="points" type="const GLfloat *" count="n"/>
+        <glx rop="2051" ignore="true"/>
+    </function>
+
+    <function name="GetDetailTexFuncSGIS">
+        <param name="target" type="GLenum"/>
+        <param name="points" type="GLfloat *" output="true"/>
+        <glx vendorpriv="4096" ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_SGIS_sharpen_texture" number="22">
+    <function name="SharpenTexFuncSGIS">
+        <param name="target" type="GLenum"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="points" type="const GLfloat *" count="n" count_scale="2"/>
+        <glx rop="2052" ignore="true"/>
+    </function>
+
+    <function name="GetSharpenTexFuncSGIS">
+        <param name="target" type="GLenum"/>
+        <param name="points" type="GLfloat *" output="true"/>
+        <glx vendorpriv="4097" ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_SGIS_multisample" number="25">
+    <function name="SampleMaskSGIS" offset="assign" static_dispatch="false">
+        <param name="value" type="GLclampf"/>
+        <param name="invert" type="GLboolean"/>
+        <glx rop="2048"/>
+    </function>
+
+    <function name="SamplePatternSGIS" offset="assign" static_dispatch="false">
+        <param name="pattern" type="GLenum"/>
+        <glx rop="2049"/>
+    </function>
+</category>
+
+<!-- Extension number 26 is not listed in the extension registry. -->
+
+<category name="GL_EXT_rescale_normal" number="27">
+    <enum name="RESCALE_NORMAL_EXT"            count="1"  value="0x803A">
+        <size name="Get" mode="get"/>
+    </enum>
+</category>
+
+<!-- Extension number 28 is a GLX extension. -->
+<!-- Extension number 29 is not listed in the extension registry. -->
+
+<category name="GL_EXT_vertex_array" number="30">
+    <function name="ArrayElementEXT" alias="ArrayElement">
+        <param name="i" type="GLint"/>
+    </function>
+
+    <function name="ColorPointerEXT" offset="assign">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="count" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="DrawArraysEXT" alias="DrawArrays">
+        <param name="mode" type="GLenum"/>
+        <param name="first" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+    </function>
+
+    <function name="EdgeFlagPointerEXT" offset="assign">
+        <param name="stride" type="GLsizei"/>
+        <param name="count" type="GLsizei"/>
+        <param name="pointer" type="const GLboolean *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="GetPointervEXT" alias="GetPointerv">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLvoid **" output="true"/>
+    </function>
+
+    <function name="IndexPointerEXT" offset="assign">
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="count" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="NormalPointerEXT" offset="assign">
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="count" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="TexCoordPointerEXT" offset="assign">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="count" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="VertexPointerEXT" offset="assign">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="count" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+</category>
+
+<category name="GL_SGIS_generate_mipmap" number="32">
+    <enum name="GENERATE_MIPMAP_SGIS"          count="1"  value="0x8191">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="GENERATE_MIPMAP_HINT_SGIS"                value="0x8192"/>
+</category>
+
+<category name="GL_SGIX_clipmap" number="33">
+    <enum name="LINEAR_CLIPMAP_LINEAR_SGIX"               value="0x8170"/>
+    <enum name="TEXTURE_CLIPMAP_CENTER_SGIX"   count="2"  value="0x8171">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_CLIPMAP_FRAME_SGIX"    count="1"  value="0x8172">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_CLIPMAP_OFFSET_SGIX"   count="2"  value="0x8173">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX" count="3" value="0x8174">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_CLIPMAP_LOD_OFFSET_SGIX"          value="0x8175"/>
+    <enum name="TEXTURE_CLIPMAP_DEPTH_SGIX"               value="0x8176"/>
+    <enum name="MAX_CLIPMAP_DEPTH_SGIX"                   value="0x8177"/>
+    <enum name="MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX"           value="0x8178"/>
+    <enum name="NEAREST_CLIPMAP_NEAREST_SGIX"             value="0x844D"/>
+    <enum name="NEAREST_CLIPMAP_LINEAR_SGIX"              value="0x844E"/>
+    <enum name="LINEAR_CLIPMAP_NEAREST_SGIX"              value="0x844F"/>
+</category>
+
+<category name="GL_SGIX_shadow" number="34">
+    <enum name="TEXTURE_COMPARE_SGIX"          count="1"  value="0x819A">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_COMPARE_OPERATOR_SGIX" count="1"  value="0x819B">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_LEQUAL_R_SGIX"                    value="0x819C"/>
+    <enum name="TEXTURE_GEQUAL_R_SGIX"                    value="0x819D"/>
+</category>
+
+<category name="GL_SGIS_texture_edge_clamp" number="35">
+    <enum name="CLAMP_TO_EDGE_SGIS"                       value="0x812F"/>
+</category>
+
+<category name="GL_SGIS_texture_border_clamp" number="36">
+    <enum name="CLAMP_TO_BORDER_SGIS"                     value="0x812D"/>
+</category>
+
+<category name="GL_EXT_blend_minmax" number="37">
+    <enum name="FUNC_ADD_EXT"                             value="0x8006"/>
+    <enum name="MIN_EXT"                                  value="0x8007"/>
+    <enum name="MAX_EXT"                                  value="0x8008"/>
+    <enum name="BLEND_EQUATION_EXT"            count="1"  value="0x8009">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="BlendEquationEXT" alias="BlendEquation">
+        <param name="mode" type="GLenum"/>
+    </function>
+</category>
+
+<category name="GL_EXT_blend_subtract" number="38">
+    <enum name="FUNC_SUBTRACT_EXT"                        value="0x800A"/>
+    <enum name="FUNC_REVERSE_SUBTRACT_EXT"                value="0x800B"/>
+
+    <!-- <function name="BlendEquationEXT" alias="BlendEquation">
+        <param name="mode" type="GLenum"/>
+    </function> -->
+</category>
+
+<!-- Extension number 40 is a GLX extension. -->
+<!-- Extension number 41 is a GLX extension. -->
+<!-- Extension number 42 is a GLX extension. -->
+<!-- Extension number 43 is a GLX extension. -->
+<!-- Extension number 44 is a GLX extension. -->
+<!-- Extension number 46 is not listed in the extension registry. -->
+<!-- Extension number 47 is a GLX extension. -->
+<!-- Extension number 48 is not listed in the extension registry. -->
+<!-- Extension number 49 is a GLX extension. -->
+<!-- Extension number 50 is a GLX extension. -->
+
+<category name="GL_SGIX_sprite" number="52">
+    <function name="SpriteParameterfSGIX">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="SpriteParameterfvSGIX">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="SpriteParameteriSGIX">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="SpriteParameterivSGIX">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_EXT_point_parameters" number="54">
+    <enum name="POINT_SIZE_MIN_EXT"            count="1"  value="0x8126">
+        <size name="PointParameterfvEXT"/>
+    </enum>
+    <enum name="POINT_SIZE_MAX_EXT"            count="1"  value="0x8127">
+        <size name="PointParameterfvEXT"/>
+    </enum>
+    <enum name="POINT_FADE_THRESHOLD_SIZE_EXT" count="1"  value="0x8128">
+        <size name="PointParameterfvEXT"/>
+    </enum>
+    <enum name="POINT_DISTANCE_ATTENUATION_EXT" count="3" value="0x8129">
+        <size name="PointParameterfvEXT"/>
+    </enum>
+
+    <function name="PointParameterfEXT" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="2065"/>
+    </function>
+
+    <function name="PointParameterfvEXT" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="2066"/>
+    </function>
+</category>
+
+<category name="GL_SGIX_instruments" number="55">
+    <function name="GetInstrumentsSGIX">
+        <return type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="InstrumentsBufferSGIX">
+        <param name="size" type="GLsizei"/>
+        <param name="buffer" type="GLint *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="PollInstrumentsSGIX">
+        <param name="marker_p" type="GLint *" output="true"/>
+        <return type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="ReadInstrumentsSGIX">
+        <param name="marker" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="StartInstrumentsSGIX">
+        <glx ignore="true"/>
+    </function>
+
+    <function name="StopInstrumentsSGIX">
+        <param name="marker" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_SGIX_texture_scale_bias" number="56">
+    <enum name="POST_TEXTURE_FILTER_BIAS_SGIX"  count="4" value="0x8179">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="POST_TEXTURE_FILTER_SCALE_SGIX" count="4" value="0x817A">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="POST_TEXTURE_FILTER_BIAS_RANGE_SGIX"      value="0x817B"/>
+    <enum name="POST_TEXTURE_FILTER_SCALE_RANGE_SGIX"     value="0x817C"/>
+</category>
+
+<category name="GL_SGIX_framezoom" number="57">
+    <function name="FrameZoomSGIX">
+        <param name="factor" type="GLint"/>
+        <glx rop="2072" ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_SGIX_tag_sample_buffer" number="58">
+    <function name="TagSampleBufferSGIX">
+        <glx rop="2050" ignore="true"/>
+    </function>
+</category>
+
+<!-- Extension number 59 is not listed in the extension registry. -->
+
+<category name="GL_SGIX_reference_plane" number="60">
+    <function name="ReferencePlaneSGIX">
+        <param name="equation" type="const GLdouble *" count="4"/>
+        <glx rop="2071" ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_SGIX_flush_raster" number="61">
+    <function name="FlushRasterSGIX">
+        <glx vendorpriv="4105" ignore="true"/>
+    </function>
+</category>
+
+<!-- Extension number 62 is a GLX extension. -->
+
+<category name="GL_SGIX_depth_texture" number="63">
+    <enum name="DEPTH_COMPONENT16_SGIX"                   value="0x81A5"/>
+    <enum name="DEPTH_COMPONENT24_SGIX"                   value="0x81A6"/>
+    <enum name="DEPTH_COMPONENT32_SGIX"                   value="0x81A7"/>
+</category>
+
+<category name="GL_SGIS_fog_function" number="64">
+    <function name="FogFuncSGIS">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="points" type="const GLfloat *" count="n" count_scale="2"/>
+        <glx rop="2067" ignore="true"/>
+    </function>
+
+    <function name="GetFogFuncSGIS">
+        <param name="points" type="GLfloat *" output="true"/>
+        <!-- GLX protocol for this function is unknown. -->
+    </function>
+</category>
+
+<category name="GL_SGIX_fog_offset" number="65">
+    <enum name="FOG_OFFSET_SGIX"                          value="0x8198"/>
+    <enum name="FOG_OFFSET_VALUE_SGIX"         count="1"  value="0x8199">
+        <size name="Fogfv"/>
+        <size name="Fogiv"/>
+    </enum>
+</category>
+
+<category name="GL_HP_image_transform" number="66">
+    <function name="ImageTransformParameteriHP">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+    </function>
+
+    <function name="ImageTransformParameterfHP">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+    </function>
+
+    <function name="ImageTransformParameterivHP">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *"/>
+    </function>
+
+    <function name="ImageTransformParameterfvHP">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *"/>
+    </function>
+
+    <function name="GetImageTransformParameterivHP">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+    </function>
+
+    <function name="GetImageTransformParameterfvHP">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+    </function>
+</category>
+
+<category name="GL_HP_convolution_border_modes" number="67">
+    <enum name="IGNORE_BORDER_HP"                         value="0x8150"/>
+    <enum name="CONSTANT_BORDER_HP"                       value="0x8151"/>
+    <enum name="REPLICATE_BORDER_HP"                      value="0x8153"/>
+    <enum name="CONVOLUTION_BORDER_COLOR_HP"   count="4"  value="0x8154">
+        <size name="ConvolutionParameterfv"/>
+        <size name="ConvolutionParameteriv"/>
+        <size name="GetConvolutionParameterfv" mode="get"/>
+        <size name="GetConvolutionParameteriv" mode="get"/>
+    </enum>
+</category>
+
+<!-- Extension number 68 is not listed in the extension registry. -->
+<!-- Extension number 70 is not listed in the extension registry. -->
+<!-- Extension number 71 is not listed in the extension registry. -->
+<!-- Extension number 72 is not listed in the extension registry. -->
+<!-- Extension number 73 is not listed in the extension registry. -->
+
+<category name="GL_EXT_color_subtable" number="74">
+    <function name="ColorSubTableEXT" alias="ColorSubTable" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="start" type="GLsizei"/>
+        <param name="count" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="data" type="const GLvoid *"/>
+    </function>
+
+    <function name="CopyColorSubTableEXT" alias="CopyColorSubTable" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="start" type="GLsizei"/>
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="width" type="GLsizei"/>
+    </function>
+</category>
+
+<!-- Extension number 75 is a GLU extension. -->
+
+<category name="GL_PGI_misc_hints" number="77">
+    <function name="HintPGI">
+        <param name="target" type="GLenum"/>
+        <param name="mode" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_EXT_paletted_texture" number="78">
+    <enum name="COLOR_TABLE_FORMAT_EXT"        count="1"  value="0x80D8">
+        <size name="GetColorTableParameterfv" mode="get"/>
+        <size name="GetColorTableParameteriv" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_WIDTH_EXT"         count="1"  value="0x80D9">
+        <size name="GetColorTableParameterfv" mode="get"/>
+        <size name="GetColorTableParameteriv" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_RED_SIZE_EXT"      count="1"  value="0x80DA">
+        <size name="GetColorTableParameterfv" mode="get"/>
+        <size name="GetColorTableParameteriv" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_GREEN_SIZE_EXT"    count="1"  value="0x80DB">
+        <size name="GetColorTableParameterfv" mode="get"/>
+        <size name="GetColorTableParameteriv" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_BLUE_SIZE_EXT"     count="1"  value="0x80DC">
+        <size name="GetColorTableParameterfv" mode="get"/>
+        <size name="GetColorTableParameteriv" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_ALPHA_SIZE_EXT"    count="1"  value="0x80DD">
+        <size name="GetColorTableParameterfv" mode="get"/>
+        <size name="GetColorTableParameteriv" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_LUMINANCE_SIZE_EXT" count="1" value="0x80DE">
+        <size name="GetColorTableParameterfv" mode="get"/>
+        <size name="GetColorTableParameteriv" mode="get"/>
+    </enum>
+    <enum name="COLOR_TABLE_INTENSITY_SIZE_EXT" count="1" value="0x80DF">
+        <size name="GetColorTableParameterfv" mode="get"/>
+        <size name="GetColorTableParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_INDEX_SIZE_EXT"        count="1"  value="0x80ED">
+        <size name="GetTexLevelParameterfv" mode="get"/>
+        <size name="GetTexLevelParameteriv" mode="get"/>
+    </enum>
+
+    <function name="ColorTableEXT" alias="ColorTable">
+        <param name="target" type="GLenum"/>
+        <param name="internalformat" type="GLenum"/>
+        <param name="width" type="GLsizei"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="table" type="const GLvoid *"/>
+    </function>
+
+    <function name="GetColorTableEXT" alias="GetColorTable">
+        <param name="target" type="GLenum"/>
+        <param name="format" type="GLenum"/>
+        <param name="type" type="GLenum"/>
+        <param name="table" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
+        <glx vendorpriv="4098" dimensions_in_reply="true"/>
+    </function>
+
+    <function name="GetColorTableParameterivEXT" alias="GetColorTableParameteriv">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx vendorpriv="4100"/>
+    </function>
+
+    <function name="GetColorTableParameterfvEXT" alias="GetColorTableParameterfv">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx vendorpriv="4099"/>
+    </function>
+</category>
+
+<category name="GL_EXT_clip_volume_hint" number="79">
+    <enum name="CLIP_VOLUME_CLIPPING_HINT_EXT" count="1"  value="0x80F0">
+        <size name="Get" mode="get"/>
+    </enum>
+</category>
+
+<category name="GL_SGIX_list_priority" number="80">
+    <function name="GetListParameterfvSGIX">
+        <param name="list" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetListParameterivSGIX">
+        <param name="list" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="ListParameterfSGIX">
+        <param name="list" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="ListParameterfvSGIX">
+        <param name="list" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="ListParameteriSGIX">
+        <param name="list" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="ListParameterivSGIX">
+        <param name="list" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+</category>
+
+<!-- Extension number 82 is not listed in the extension registry. -->
+<!-- Extension number 83 is a GLX extension. -->
+
+<category name="GL_SGIX_texture_lod_bias" number="84">
+    <enum name="TEXTURE_LOD_BIAS_S_SGIX"       count="1"  value="0x818E">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_LOD_BIAS_T_SGIX"       count="1"  value="0x818F">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_LOD_BIAS_R_SGIX"       count="1"  value="0x8190">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+</category>
+
+<!-- Extension number 85 is a GLU extension. -->
+<!-- Extension number 86 is a GLX extension. -->
+<!-- Extension number 87 is not listed in the extension registry. -->
+<!-- Extension number 88 is not listed in the extension registry. -->
+<!-- Extension number 89 is not listed in the extension registry. -->
+
+
+<category name="GL_SGIX_shadow_ambient" number="90">
+    <enum name="SHADOW_AMBIENT_SGIX"           count="1"  value="0x80BF">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+</category>
+
+<!-- Extension number 91 is a GLX extension. -->
+<!-- Extension number 92 is a GLX extension. -->
+
+<category name="GL_EXT_index_material" number="94">
+    <function name="IndexMaterialEXT">
+        <param name="face" type="GLenum"/>
+        <param name="mode" type="GLenum"/>
+        <glx ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_EXT_index_func" number="95">
+    <function name="IndexFuncEXT">
+        <param name="func" type="GLenum"/>
+        <param name="ref" type="GLclampf"/>
+        <glx ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_EXT_compiled_vertex_array" number="97">
+    <function name="LockArraysEXT" offset="assign">
+        <param name="first" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <glx handcode="true" ignore="true"/>
+    </function>
+
+    <function name="UnlockArraysEXT" offset="assign">
+        <glx handcode="true" ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_EXT_cull_vertex" number="98">
+    <enum name="CULL_VERTEX_EXT"                          value="0x81AA"/>
+    <enum name="CULL_VERTEX_OBJECT_POSITION_EXT" count="4" value="0x81AB">
+        <size name="CullParameterfv"/>
+        <size name="CullParameterdv"/>
+    </enum>
+    <enum name="CULL_VERTEX_EYE_POSITION_EXT"  count="4"  value="0x81AC">
+        <size name="CullParameterfv"/>
+        <size name="CullParameterdv"/>
+    </enum>
+
+    <function name="CullParameterdvEXT" offset="assign" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLdouble *"/> <!-- Spec bug. Should be const. -->
+        <glx ignore="true"/>
+    </function>
+
+    <function name="CullParameterfvEXT" offset="assign" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *"/> <!-- Spec bug. Should be const. -->
+        <glx ignore="true"/>
+    </function>
+</category>
+
+<!-- Extension number 99 is not listed in the extension registry. -->
+<!-- Extension number 100 is a GLU extension. -->
+
+<!-- Shouldn't this be EXT_fragment_lighting? -->
+<category name="GL_SGIX_fragment_lighting" number="102">
+    <function name="FragmentColorMaterialSGIX">
+        <param name="face" type="GLenum"/>
+        <param name="mode" type="GLenum"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="FragmentLightfSGIX">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="FragmentLightfvSGIX">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="FragmentLightiSGIX">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="FragmentLightivSGIX">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="FragmentLightModelfSGIX">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="FragmentLightModelfvSGIX">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="FragmentLightModeliSGIX">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="FragmentLightModelivSGIX">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="FragmentMaterialfSGIX">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="FragmentMaterialfvSGIX">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="FragmentMaterialiSGIX">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="FragmentMaterialivSGIX">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetFragmentLightfvSGIX">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetFragmentLightivSGIX">
+        <param name="light" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetFragmentMaterialfvSGIX">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetFragmentMaterialivSGIX">
+        <param name="face" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="LightEnviSGIX">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+</category>
+
+<!-- Extension number 103 is not listed in the extension registry. -->
+<!-- Extension number 104 is not listed in the extension registry. -->
+<!-- Extension number 105 is not listed in the extension registry. -->
+<!-- Extension number 106 is not listed in the extension registry. -->
+<!-- Extension number 107 is not listed in the extension registry. -->
+<!-- Extension number 108 is not listed in the extension registry. -->
+<!-- Extension number 109 is not listed in the extension registry. -->
+
+<category name="GL_IBM_rasterpos_clip" number="110">
+    <enum name="RASTER_POSITION_UNCLIPPED_IBM"  count="1" value="0x19262">
+        <size name="Get" mode="get"/>
+    </enum>
+</category>
+
+<category name="GL_EXT_draw_range_elements" number="112">
+    <function name="DrawRangeElementsEXT" alias="DrawRangeElements">
+        <param name="mode" type="GLenum"/>
+        <param name="start" type="GLuint"/>
+        <param name="end" type="GLuint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="type" type="GLenum"/>
+        <param name="indices" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+</category>
+
+<!-- Extension number 115 is a GLX extension. -->
+<!-- Extension number 116 is not listed in the extension registry. -->
+
+<category name="GL_EXT_light_texture" number="117">
+    <function name="ApplyTextureEXT">
+        <param name="mode" type="GLenum"/>
+    </function>
+
+    <function name="TextureLightEXT">
+        <param name="pname" type="GLenum"/>
+    </function>
+
+    <function name="TextureMaterialEXT">
+        <param name="face" type="GLenum"/>
+        <param name="mode" type="GLenum"/>
+    </function>
+</category>
+
+<!-- Extension number 118 is not listed in the extension registry. -->
+<!-- Extension number 121 is not listed in the extension registry. -->
+<!-- Extension number 122 is not listed in the extension registry. -->
+<!-- Extension number 123 is not listed in the extension registry. -->
+<!-- Extension number 124 is not listed in the extension registry. -->
+<!-- Extension number 125 is not listed in the extension registry. -->
+<!-- Extension number 126 is not listed in the extension registry. -->
+<!-- Extension number 128 is not listed in the extension registry. -->
+<!-- Extension number 130 is not listed in the extension registry. -->
+<!-- Extension number 131 is not listed in the extension registry. -->
+
+<category name="GL_SGIX_async" number="132">
+    <function name="AsyncMarkerSGIX">
+        <param name="marker" type="GLuint"/>
+    </function>
+
+    <function name="FinishAsyncSGIX">
+        <param name="markerp" type="GLuint *"/> <!-- Spec bug. Should be const. -->
+        <return type="GLint"/>
+    </function>
+
+    <function name="PollAsyncSGIX">
+        <param name="markerp" type="GLuint *"/> <!-- Spec bug. Should be const. -->
+        <return type="GLint"/>
+    </function>
+
+    <function name="GenAsyncMarkersSGIX">
+        <param name="range" type="GLsizei"/>
+        <return type="GLuint"/>
+    </function>
+
+    <function name="DeleteAsyncMarkersSGIX">
+        <param name="marker" type="GLuint"/>
+        <param name="range" type="GLsizei"/>
+    </function>
+
+    <function name="IsAsyncMarkerSGIX">
+        <param name="marker" type="GLuint"/>
+        <return type="GLboolean"/>
+    </function>
+</category>
+
+<category name="GL_INTEL_parallel_arrays" number="136">
+    <function name="VertexPointervINTEL">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="pointer" type="const GLvoid **"/>
+    </function>
+
+    <function name="NormalPointervINTEL">
+        <param name="type" type="GLenum"/>
+        <param name="pointer" type="const GLvoid **"/>
+    </function>
+
+    <function name="ColorPointervINTEL">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="pointer" type="const GLvoid **"/>
+    </function>
+
+    <function name="TexCoordPointervINTEL">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="pointer" type="const GLvoid **"/>
+    </function>
+</category>
+
+<category name="GL_HP_occlusion_test" number="137">
+    <enum name="OCCLUSION_TEST_HP"             count="1"  value="0x8165">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="OCCLUSION_TEST_RESULT_HP"      count="1"  value="0x8166">
+        <size name="Get" mode="get"/>
+    </enum>
+</category>
+
+<category name="GL_EXT_pixel_transform" number="138">
+    <function name="PixelTransformParameteriEXT">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+    </function>
+
+    <function name="PixelTransformParameterfEXT">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+    </function>
+
+    <function name="PixelTransformParameterivEXT">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *"/>
+    </function>
+
+    <function name="PixelTransformParameterfvEXT">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *"/>
+    </function>
+</category>
+
+<!-- Extension number 140 is not listed in the extension registry. -->
+
+<category name="GL_EXT_shared_texture_palette" number="141">
+    <enum name="SHARED_TEXTURE_PALETTE_EXT"    count="1"  value="0x81FB"/>
+</category>
+
+<!-- Extension number 142 is a GLX extension. -->
+<!-- Extension number 143 is not listed in the extension registry. -->
+
+<category name="GL_EXT_separate_specular_color" number="144">
+    <enum name="LIGHT_MODEL_COLOR_CONTROL_EXT" count="1"  value="0x81F8">
+        <size name="LightModelfv"/>
+        <size name="LightModeliv"/>
+    </enum>
+    <enum name="SINGLE_COLOR_EXT"                         value="0x81F9"/>
+    <enum name="SEPARATE_SPECULAR_COLOR_EXT"              value="0x81FA"/>
+</category>
+
+<category name="GL_EXT_secondary_color" number="145">
+    <function name="SecondaryColor3bEXT" offset="assign" vectorequiv="SecondaryColor3bvEXT">
+        <param name="red" type="GLbyte"/>
+        <param name="green" type="GLbyte"/>
+        <param name="blue" type="GLbyte"/>
+    </function>
+
+    <function name="SecondaryColor3bvEXT" offset="assign">
+        <param name="v" type="const GLbyte *" count="3"/>
+        <glx rop="4126"/>
+    </function>
+
+    <function name="SecondaryColor3dEXT" offset="assign" vectorequiv="SecondaryColor3dvEXT">
+        <param name="red" type="GLdouble"/>
+        <param name="green" type="GLdouble"/>
+        <param name="blue" type="GLdouble"/>
+    </function>
+
+    <function name="SecondaryColor3dvEXT" offset="assign">
+        <param name="v" type="const GLdouble *" count="3"/>
+        <glx rop="4130"/>
+    </function>
+
+    <function name="SecondaryColor3fEXT" offset="assign" vectorequiv="SecondaryColor3fvEXT">
+        <param name="red" type="GLfloat"/>
+        <param name="green" type="GLfloat"/>
+        <param name="blue" type="GLfloat"/>
+    </function>
+
+    <function name="SecondaryColor3fvEXT" offset="assign">
+        <param name="v" type="const GLfloat *" count="3"/>
+        <glx rop="4129"/>
+    </function>
+
+    <function name="SecondaryColor3iEXT" offset="assign" vectorequiv="SecondaryColor3ivEXT">
+        <param name="red" type="GLint"/>
+        <param name="green" type="GLint"/>
+        <param name="blue" type="GLint"/>
+    </function>
+
+    <function name="SecondaryColor3ivEXT" offset="assign">
+        <param name="v" type="const GLint *" count="3"/>
+        <glx rop="4128"/>
+    </function>
+
+    <function name="SecondaryColor3sEXT" offset="assign" vectorequiv="SecondaryColor3svEXT">
+        <param name="red" type="GLshort"/>
+        <param name="green" type="GLshort"/>
+        <param name="blue" type="GLshort"/>
+    </function>
+
+    <function name="SecondaryColor3svEXT" offset="assign">
+        <param name="v" type="const GLshort *" count="3"/>
+        <glx rop="4127"/>
+    </function>
+
+    <function name="SecondaryColor3ubEXT" offset="assign" vectorequiv="SecondaryColor3ubvEXT">
+        <param name="red" type="GLubyte"/>
+        <param name="green" type="GLubyte"/>
+        <param name="blue" type="GLubyte"/>
+    </function>
+
+    <function name="SecondaryColor3ubvEXT" offset="assign">
+        <param name="v" type="const GLubyte *" count="3"/>
+        <glx rop="4131"/>
+    </function>
+
+    <function name="SecondaryColor3uiEXT" offset="assign" vectorequiv="SecondaryColor3uivEXT">
+        <param name="red" type="GLuint"/>
+        <param name="green" type="GLuint"/>
+        <param name="blue" type="GLuint"/>
+    </function>
+
+    <function name="SecondaryColor3uivEXT" offset="assign">
+        <param name="v" type="const GLuint *" count="3"/>
+        <glx rop="4133"/>
+    </function>
+
+    <function name="SecondaryColor3usEXT" offset="assign" vectorequiv="SecondaryColor3usvEXT">
+        <param name="red" type="GLushort"/>
+        <param name="green" type="GLushort"/>
+        <param name="blue" type="GLushort"/>
+    </function>
+
+    <function name="SecondaryColor3usvEXT" offset="assign">
+        <param name="v" type="const GLushort *" count="3"/>
+        <glx rop="4132"/>
+    </function>
+
+    <function name="SecondaryColorPointerEXT" offset="assign">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+</category>
+
+<category name="GL_EXT_texture_perturb_normal" number="147">
+    <function name="TextureNormalEXT">
+        <param name="mode" type="GLenum"/>
+    </function>
+</category>
+
+<category name="GL_EXT_multi_draw_arrays" number="148">
+    <function name="MultiDrawArraysEXT" offset="assign">
+        <param name="mode" type="GLenum"/>
+        <param name="first" type="GLint *"/> <!-- Spec bug. Should be const. -->
+        <param name="count" type="GLsizei *"/> <!-- Spec bug. Should be const. -->
+        <param name="primcount" type="GLsizei"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="MultiDrawElementsEXT" offset="assign">
+        <param name="mode" type="GLenum"/>
+        <param name="count" type="const GLsizei *"/>
+        <param name="type" type="GLenum"/>
+        <param name="indices" type="const GLvoid **"/>
+        <param name="primcount" type="GLsizei"/>
+        <glx handcode="true"/>
+    </function>
+</category>
+
+<category name="GL_EXT_fog_coord" number="149">
+    <function name="FogCoordfEXT" offset="assign" vectorequiv="FogCoordfvEXT">
+        <param name="coord" type="GLfloat"/>
+    </function>
+
+    <function name="FogCoordfvEXT" offset="assign">
+        <param name="coord" type="const GLfloat *" count="1"/>
+        <glx rop="4124"/>
+    </function>
+
+    <function name="FogCoorddEXT" offset="assign" vectorequiv="FogCoorddvEXT">
+        <param name="coord" type="GLdouble"/>
+    </function>
+
+    <function name="FogCoorddvEXT" offset="assign">
+        <param name="coord" type="const GLdouble *" count="1"/>
+        <glx rop="4125"/>
+    </function>
+
+    <function name="FogCoordPointerEXT" offset="assign">
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+</category>
+
+<!-- Extension number 150 is not listed in the extension registry. -->
+<!-- Extension number 151 is not listed in the extension registry. -->
+<!-- Extension number 152 is not listed in the extension registry. -->
+<!-- Extension number 153 is not listed in the extension registry. -->
+<!-- Extension number 154 is not listed in the extension registry. -->
+
+<category name="GL_EXT_coordinate_frame" number="156">
+    <function name="Tangent3bEXT">
+        <param name="tx" type="GLbyte"/>
+        <param name="ty" type="GLbyte"/>
+        <param name="tz" type="GLbyte"/>
+    </function>
+
+    <function name="Tangent3bvEXT">
+        <param name="v" type="const GLbyte *"/>
+    </function>
+
+    <function name="Tangent3dEXT">
+        <param name="tx" type="GLdouble"/>
+        <param name="ty" type="GLdouble"/>
+        <param name="tz" type="GLdouble"/>
+    </function>
+
+    <function name="Tangent3dvEXT">
+        <param name="v" type="const GLdouble *"/>
+    </function>
+
+    <function name="Tangent3fEXT">
+        <param name="tx" type="GLfloat"/>
+        <param name="ty" type="GLfloat"/>
+        <param name="tz" type="GLfloat"/>
+    </function>
+
+    <function name="Tangent3fvEXT">
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="Tangent3iEXT">
+        <param name="tx" type="GLint"/>
+        <param name="ty" type="GLint"/>
+        <param name="tz" type="GLint"/>
+    </function>
+
+    <function name="Tangent3ivEXT">
+        <param name="v" type="const GLint *"/>
+    </function>
+
+    <function name="Tangent3sEXT">
+        <param name="tx" type="GLshort"/>
+        <param name="ty" type="GLshort"/>
+        <param name="tz" type="GLshort"/>
+    </function>
+
+    <function name="Tangent3svEXT">
+        <param name="v" type="const GLshort *"/>
+    </function>
+
+    <function name="Binormal3bEXT">
+        <param name="bx" type="GLbyte"/>
+        <param name="by" type="GLbyte"/>
+        <param name="bz" type="GLbyte"/>
+    </function>
+
+    <function name="Binormal3bvEXT">
+        <param name="v" type="const GLbyte *"/>
+    </function>
+
+    <function name="Binormal3dEXT">
+        <param name="bx" type="GLdouble"/>
+        <param name="by" type="GLdouble"/>
+        <param name="bz" type="GLdouble"/>
+    </function>
+
+    <function name="Binormal3dvEXT">
+        <param name="v" type="const GLdouble *"/>
+    </function>
+
+    <function name="Binormal3fEXT">
+        <param name="bx" type="GLfloat"/>
+        <param name="by" type="GLfloat"/>
+        <param name="bz" type="GLfloat"/>
+    </function>
+
+    <function name="Binormal3fvEXT">
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="Binormal3iEXT">
+        <param name="bx" type="GLint"/>
+        <param name="by" type="GLint"/>
+        <param name="bz" type="GLint"/>
+    </function>
+
+    <function name="Binormal3ivEXT">
+        <param name="v" type="const GLint *"/>
+    </function>
+
+    <function name="Binormal3sEXT">
+        <param name="bx" type="GLshort"/>
+        <param name="by" type="GLshort"/>
+        <param name="bz" type="GLshort"/>
+    </function>
+
+    <function name="Binormal3svEXT">
+        <param name="v" type="const GLshort *"/>
+    </function>
+
+    <function name="TangentPointerEXT">
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+    </function>
+
+    <function name="BinormalPointerEXT">
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+    </function>
+</category>
+
+<!-- Extension number 157 is not listed in the extension registry. -->
+
+<category name="GL_EXT_texture_env_combine" number="158">
+    <enum name="COMBINE_EXT"                              value="0x8570"/>
+    <enum name="COMBINE_RGB_EXT"               count="1"  value="0x8571"/>
+    <enum name="COMBINE_ALPHA_EXT"             count="1"  value="0x8572"/>
+    <enum name="RGB_SCALE_EXT"                 count="1"  value="0x8573"/>
+    <enum name="ADD_SIGNED_EXT"                           value="0x8574"/>
+    <enum name="INTERPOLATE_EXT"                          value="0x8575"/>
+    <enum name="CONSTANT_EXT"                             value="0x8576"/>
+    <enum name="PRIMARY_COLOR_EXT"                        value="0x8577"/>
+    <enum name="PREVIOUS_EXT"                             value="0x8578"/>
+    <enum name="SOURCE0_RGB_EXT"               count="1"  value="0x8580"/>
+    <enum name="SOURCE1_RGB_EXT"               count="1"  value="0x8581"/>
+    <enum name="SOURCE2_RGB_EXT"               count="1"  value="0x8582"/>
+    <enum name="SOURCE0_ALPHA_EXT"             count="1"  value="0x8588"/>
+    <enum name="SOURCE1_ALPHA_EXT"             count="1"  value="0x8589"/>
+    <enum name="SOURCE2_ALPHA_EXT"             count="1"  value="0x858A"/>
+    <enum name="OPERAND0_RGB_EXT"              count="1"  value="0x8590"/>
+    <enum name="OPERAND1_RGB_EXT"              count="1"  value="0x8591"/>
+    <enum name="OPERAND2_RGB_EXT"              count="1"  value="0x8592"/>
+    <enum name="OPERAND0_ALPHA_EXT"            count="1"  value="0x8598"/>
+    <enum name="OPERAND1_ALPHA_EXT"            count="1"  value="0x8599"/>
+    <enum name="OPERAND2_ALPHA_EXT"            count="1"  value="0x859A"/>
+</category>
+
+<category name="GL_SGIX_pixel_texture" number="160">
+    <function name="PixelTexGenSGIX" offset="assign" static_dispatch="false">
+        <param name="mode" type="GLenum"/>
+        <glx rop="2059" ignore="true"/>
+    </function>
+</category>
+
+<!-- Extension number 161 is not listed in the extension registry. -->
+<!-- Extension number 162 is not listed in the extension registry. -->
+
+<category name="GL_SUNX_constant_data" number="163">
+    <function name="FinishTextureSUNX">
+    </function>
+</category>
+
+<category name="GL_SUN_global_alpha" number="164">
+    <function name="GlobalAlphaFactorbSUN">
+        <param name="factor" type="GLbyte"/>
+    </function>
+
+    <function name="GlobalAlphaFactorsSUN">
+        <param name="factor" type="GLshort"/>
+    </function>
+
+    <function name="GlobalAlphaFactoriSUN">
+        <param name="factor" type="GLint"/>
+    </function>
+
+    <function name="GlobalAlphaFactorfSUN">
+        <param name="factor" type="GLfloat"/>
+    </function>
+
+    <function name="GlobalAlphaFactordSUN">
+        <param name="factor" type="GLdouble"/>
+    </function>
+
+    <function name="GlobalAlphaFactorubSUN">
+        <param name="factor" type="GLubyte"/>
+    </function>
+
+    <function name="GlobalAlphaFactorusSUN">
+        <param name="factor" type="GLushort"/>
+    </function>
+
+    <function name="GlobalAlphaFactoruiSUN">
+        <param name="factor" type="GLuint"/>
+    </function>
+</category>
+
+<category name="GL_SUN_triangle_list" number="165">
+    <function name="ReplacementCodeuiSUN">
+        <param name="code" type="GLuint"/>
+    </function>
+
+    <function name="ReplacementCodeusSUN">
+        <param name="code" type="GLushort"/>
+    </function>
+
+    <function name="ReplacementCodeubSUN">
+        <param name="code" type="GLubyte"/>
+    </function>
+
+    <function name="ReplacementCodeuivSUN">
+        <param name="code" type="const GLuint *"/>
+    </function>
+
+    <function name="ReplacementCodeusvSUN">
+        <param name="code" type="const GLushort *"/>
+    </function>
+
+    <function name="ReplacementCodeubvSUN">
+        <param name="code" type="const GLubyte *"/>
+    </function>
+
+    <function name="ReplacementCodePointerSUN">
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+    </function>
+</category>
+
+<category name="GL_SUN_vertex" number="166">
+    <function name="Color4ubVertex2fSUN">
+        <param name="r" type="GLubyte"/>
+        <param name="g" type="GLubyte"/>
+        <param name="b" type="GLubyte"/>
+        <param name="a" type="GLubyte"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+    </function>
+
+    <function name="Color4ubVertex2fvSUN">
+        <param name="c" type="const GLubyte *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="Color4ubVertex3fSUN">
+        <param name="r" type="GLubyte"/>
+        <param name="g" type="GLubyte"/>
+        <param name="b" type="GLubyte"/>
+        <param name="a" type="GLubyte"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="Color4ubVertex3fvSUN">
+        <param name="c" type="const GLubyte *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="Color3fVertex3fSUN">
+        <param name="r" type="GLfloat"/>
+        <param name="g" type="GLfloat"/>
+        <param name="b" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="Color3fVertex3fvSUN">
+        <param name="c" type="const GLfloat *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="Normal3fVertex3fSUN">
+        <param name="nx" type="GLfloat"/>
+        <param name="ny" type="GLfloat"/>
+        <param name="nz" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="Normal3fVertex3fvSUN">
+        <param name="n" type="const GLfloat *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="Color4fNormal3fVertex3fSUN">
+        <param name="r" type="GLfloat"/>
+        <param name="g" type="GLfloat"/>
+        <param name="b" type="GLfloat"/>
+        <param name="a" type="GLfloat"/>
+        <param name="nx" type="GLfloat"/>
+        <param name="ny" type="GLfloat"/>
+        <param name="nz" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="Color4fNormal3fVertex3fvSUN">
+        <param name="c" type="const GLfloat *"/>
+        <param name="n" type="const GLfloat *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="TexCoord2fVertex3fSUN">
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="TexCoord2fVertex3fvSUN">
+        <param name="tc" type="const GLfloat *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="TexCoord4fVertex4fSUN">
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="p" type="GLfloat"/>
+        <param name="q" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <param name="w" type="GLfloat"/>
+    </function>
+
+    <function name="TexCoord4fVertex4fvSUN">
+        <param name="tc" type="const GLfloat *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="TexCoord2fColor4ubVertex3fSUN">
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="r" type="GLubyte"/>
+        <param name="g" type="GLubyte"/>
+        <param name="b" type="GLubyte"/>
+        <param name="a" type="GLubyte"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="TexCoord2fColor4ubVertex3fvSUN">
+        <param name="tc" type="const GLfloat *"/>
+        <param name="c" type="const GLubyte *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="TexCoord2fColor3fVertex3fSUN">
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="r" type="GLfloat"/>
+        <param name="g" type="GLfloat"/>
+        <param name="b" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="TexCoord2fColor3fVertex3fvSUN">
+        <param name="tc" type="const GLfloat *"/>
+        <param name="c" type="const GLfloat *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="TexCoord2fNormal3fVertex3fSUN">
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="nx" type="GLfloat"/>
+        <param name="ny" type="GLfloat"/>
+        <param name="nz" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="TexCoord2fNormal3fVertex3fvSUN">
+        <param name="tc" type="const GLfloat *"/>
+        <param name="n" type="const GLfloat *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="TexCoord2fColor4fNormal3fVertex3fSUN">
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="r" type="GLfloat"/>
+        <param name="g" type="GLfloat"/>
+        <param name="b" type="GLfloat"/>
+        <param name="a" type="GLfloat"/>
+        <param name="nx" type="GLfloat"/>
+        <param name="ny" type="GLfloat"/>
+        <param name="nz" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="TexCoord2fColor4fNormal3fVertex3fvSUN">
+        <param name="tc" type="const GLfloat *"/>
+        <param name="c" type="const GLfloat *"/>
+        <param name="n" type="const GLfloat *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="TexCoord4fColor4fNormal3fVertex4fSUN">
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="p" type="GLfloat"/>
+        <param name="q" type="GLfloat"/>
+        <param name="r" type="GLfloat"/>
+        <param name="g" type="GLfloat"/>
+        <param name="b" type="GLfloat"/>
+        <param name="a" type="GLfloat"/>
+        <param name="nx" type="GLfloat"/>
+        <param name="ny" type="GLfloat"/>
+        <param name="nz" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <param name="w" type="GLfloat"/>
+    </function>
+
+    <function name="TexCoord4fColor4fNormal3fVertex4fvSUN">
+        <param name="tc" type="const GLfloat *"/>
+        <param name="c" type="const GLfloat *"/>
+        <param name="n" type="const GLfloat *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="ReplacementCodeuiVertex3fSUN">
+        <param name="rc" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="ReplacementCodeuiVertex3fvSUN">
+        <param name="rc" type="const GLuint *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="ReplacementCodeuiColor4ubVertex3fSUN">
+        <param name="rc" type="GLuint"/>
+        <param name="r" type="GLubyte"/>
+        <param name="g" type="GLubyte"/>
+        <param name="b" type="GLubyte"/>
+        <param name="a" type="GLubyte"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="ReplacementCodeuiColor4ubVertex3fvSUN">
+        <param name="rc" type="const GLuint *"/>
+        <param name="c" type="const GLubyte *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="ReplacementCodeuiColor3fVertex3fSUN">
+        <param name="rc" type="GLuint"/>
+        <param name="r" type="GLfloat"/>
+        <param name="g" type="GLfloat"/>
+        <param name="b" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="ReplacementCodeuiColor3fVertex3fvSUN">
+        <param name="rc" type="const GLuint *"/>
+        <param name="c" type="const GLfloat *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="ReplacementCodeuiNormal3fVertex3fSUN">
+        <param name="rc" type="GLuint"/>
+        <param name="nx" type="GLfloat"/>
+        <param name="ny" type="GLfloat"/>
+        <param name="nz" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="ReplacementCodeuiNormal3fVertex3fvSUN">
+        <param name="rc" type="const GLuint *"/>
+        <param name="n" type="const GLfloat *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="ReplacementCodeuiColor4fNormal3fVertex3fSUN">
+        <param name="rc" type="GLuint"/>
+        <param name="r" type="GLfloat"/>
+        <param name="g" type="GLfloat"/>
+        <param name="b" type="GLfloat"/>
+        <param name="a" type="GLfloat"/>
+        <param name="nx" type="GLfloat"/>
+        <param name="ny" type="GLfloat"/>
+        <param name="nz" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="ReplacementCodeuiColor4fNormal3fVertex3fvSUN">
+        <param name="rc" type="const GLuint *"/>
+        <param name="c" type="const GLfloat *"/>
+        <param name="n" type="const GLfloat *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="ReplacementCodeuiTexCoord2fVertex3fSUN">
+        <param name="rc" type="GLuint"/>
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="ReplacementCodeuiTexCoord2fVertex3fvSUN">
+        <param name="rc" type="const GLuint *"/>
+        <param name="tc" type="const GLfloat *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN">
+        <param name="rc" type="GLuint"/>
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="nx" type="GLfloat"/>
+        <param name="ny" type="GLfloat"/>
+        <param name="nz" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN">
+        <param name="rc" type="const GLuint *"/>
+        <param name="tc" type="const GLfloat *"/>
+        <param name="n" type="const GLfloat *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+
+    <function name="ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN">
+        <param name="rc" type="GLuint"/>
+        <param name="s" type="GLfloat"/>
+        <param name="t" type="GLfloat"/>
+        <param name="r" type="GLfloat"/>
+        <param name="g" type="GLfloat"/>
+        <param name="b" type="GLfloat"/>
+        <param name="a" type="GLfloat"/>
+        <param name="nx" type="GLfloat"/>
+        <param name="ny" type="GLfloat"/>
+        <param name="nz" type="GLfloat"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN">
+        <param name="rc" type="const GLuint *"/>
+        <param name="tc" type="const GLfloat *"/>
+        <param name="c" type="const GLfloat *"/>
+        <param name="n" type="const GLfloat *"/>
+        <param name="v" type="const GLfloat *"/>
+    </function>
+</category>
+
+<!-- Extension number 167 is a WGL extension. -->
+<!-- Extension number 168 is a WGL extension. -->
+<!-- Extension number 169 is a WGL extension. -->
+<!-- Extension number 170 is a WGL extension. -->
+<!-- Extension number 171 is a WGL extension. -->
+<!-- Extension number 172 is a WGL extension. -->
+
+<category name="GL_EXT_blend_func_separate" number="173">
+    <function name="BlendFuncSeparateEXT" offset="assign">
+        <param name="sfactorRGB" type="GLenum"/>
+        <param name="dfactorRGB" type="GLenum"/>
+        <param name="sfactorAlpha" type="GLenum"/>
+        <param name="dfactorAlpha" type="GLenum"/>
+        <glx rop="4134"/>
+    </function>
+</category>
+
+<category name="GL_EXT_stencil_wrap" number="176">
+    <enum name="INCR_WRAP_EXT"                            value="0x8507"/>
+    <enum name="DECR_WRAP_EXT"                            value="0x8508"/>
+</category>
+
+<!-- Extension number 177 is a WGL extension. -->
+
+<category name="GL_NV_texgen_reflection" number="179">
+    <enum name="NORMAL_MAP_NV"                            value="0x8511"/>
+    <enum name="REFLECTION_MAP_NV"                        value="0x8512"/>
+</category>
+
+<!-- Extension number 180 is not listed in the extension registry. -->
+
+<category name="GL_SUN_convolution_border_modes" number="182">
+    <enum name="WRAP_BORDER_SUN"                          value="0x81D4"/>
+</category>
+
+<!-- Extension number 183 is a GLX extension. -->
+<!-- Extension number 184 is not listed in the extension registry. -->
+
+<category name="GL_EXT_texture_env_add" number="185">
+    <!-- No new functions, types, enums. -->
+</category>
+
+<category name="GL_EXT_texture_lod_bias" number="186">
+    <enum name="TEXTURE_LOD_BIAS_EXT"          count="1"  value="0x8501">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+</category>
+
+<category name="GL_EXT_texture_filter_anisotropic" number="187">
+    <enum name="TEXTURE_MAX_ANISOTROPY_EXT"    count="1"  value="0x84FE">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="MAX_TEXTURE_MAX_ANISOTROPY_EXT" count="1" value="0x84FF">
+        <size name="Get" mode="get"/>
+    </enum>
+</category>
+
+<category name="GL_EXT_vertex_weighting" number="188">
+    <function name="VertexWeightfEXT" vectorequiv="VertexWeightfvEXT">
+        <param name="weight" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="VertexWeightfvEXT">
+        <param name="weight" type="const GLfloat *" count="1"/>
+        <glx rop="4135" ignore="true"/>
+    </function>
+
+    <function name="VertexWeightPointerEXT">
+        <param name="size" type="GLsizei"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true" ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_NV_light_max_exponent" number="189">
+    <enum name="MAX_SHININESS_NV"              count="1"  value="0x8504">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="MAX_SPOT_EXPONENT_NV"          count="1"  value="0x8505">
+        <size name="Get" mode="get"/>
+    </enum>
+</category>
+
+<category name="GL_NV_vertex_array_range" number="190">
+    <function name="FlushVertexArrayRangeNV" offset="assign">
+        <glx ignore="true"/>
+    </function>
+
+    <function name="VertexArrayRangeNV" offset="assign">
+        <param name="length" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_NV_register_combiners" number="191">
+    <function name="CombinerParameterfvNV" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *" variable_param="pname"/>
+        <glx rop="4137" ignore="true"/>
+    </function>
+
+    <function name="CombinerParameterfNV" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+        <glx rop="4136" ignore="true"/>
+    </function>
+
+    <function name="CombinerParameterivNV" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="4139" ignore="true"/>
+    </function>
+
+    <function name="CombinerParameteriNV" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="4138" ignore="true"/>
+    </function>
+
+    <function name="CombinerInputNV" offset="assign">
+        <param name="stage" type="GLenum"/>
+        <param name="portion" type="GLenum"/>
+        <param name="variable" type="GLenum"/>
+        <param name="input" type="GLenum"/>
+        <param name="mapping" type="GLenum"/>
+        <param name="componentUsage" type="GLenum"/>
+        <glx rop="4140" ignore="true"/>
+    </function>
+
+    <function name="CombinerOutputNV" offset="assign">
+        <param name="stage" type="GLenum"/>
+        <param name="portion" type="GLenum"/>
+        <param name="abOutput" type="GLenum"/>
+        <param name="cdOutput" type="GLenum"/>
+        <param name="sumOutput" type="GLenum"/>
+        <param name="scale" type="GLenum"/>
+        <param name="bias" type="GLenum"/>
+        <param name="abDotProduct" type="GLboolean"/>
+        <param name="cdDotProduct" type="GLboolean"/>
+        <param name="muxSum" type="GLboolean"/>
+        <glx rop="4141" ignore="true"/>
+    </function>
+
+    <function name="FinalCombinerInputNV" offset="assign">
+        <param name="variable" type="GLenum"/>
+        <param name="input" type="GLenum"/>
+        <param name="mapping" type="GLenum"/>
+        <param name="componentUsage" type="GLenum"/>
+        <glx rop="4142" ignore="true"/>
+    </function>
+
+    <function name="GetCombinerInputParameterfvNV" offset="assign">
+        <param name="stage" type="GLenum"/>
+        <param name="portion" type="GLenum"/>
+        <param name="variable" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true"/>
+        <glx vendorpriv="1270" ignore="true"/>
+    </function>
+
+    <function name="GetCombinerInputParameterivNV" offset="assign">
+        <param name="stage" type="GLenum"/>
+        <param name="portion" type="GLenum"/>
+        <param name="variable" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true"/>
+        <glx vendorpriv="1271" ignore="true"/>
+    </function>
+
+    <function name="GetCombinerOutputParameterfvNV" offset="assign">
+        <param name="stage" type="GLenum"/>
+        <param name="portion" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true"/>
+        <glx vendorpriv="1272" ignore="true"/>
+    </function>
+
+    <function name="GetCombinerOutputParameterivNV" offset="assign">
+        <param name="stage" type="GLenum"/>
+        <param name="portion" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true"/>
+        <glx vendorpriv="1273" ignore="true"/>
+    </function>
+
+    <function name="GetFinalCombinerInputParameterfvNV" offset="assign">
+        <param name="variable" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true"/>
+        <glx vendorpriv="1274" ignore="true"/>
+    </function>
+
+    <function name="GetFinalCombinerInputParameterivNV" offset="assign">
+        <param name="variable" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true"/>
+        <glx vendorpriv="1275" ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_NV_fog_distance" number="192">
+    <enum name="FOG_DISTANCE_MODE_NV"          count="1"  value="0x855A">
+        <size name="Fogfv"/>
+        <size name="Fogiv"/>
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="EYE_RADIAL_NV"                            value="0x855B"/>
+    <enum name="EYE_PLANE_ABSOLUTE_NV"                    value="0x855C"/>
+</category>
+
+<category name="GL_NV_blend_square" number="194">
+    <!-- No new functions, types, enums. -->
+</category>
+
+<category name="GL_NV_texture_env_combine4" number="195">
+    <enum name="COMBINE4"                                 value="0x8503"/>
+    <enum name="SOURCE3_RGB_NV"                count="1"  value="0x8583">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="SOURCE3_ALPHA_NV"              count="1"  value="0x858B">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="OPERAND3_RGB_NV"               count="1"  value="0x8593">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="OPERAND3_ALPHA_NV"             count="1"  value="0x859B">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+</category>
+
+<category name="GL_MESA_resize_buffers" number="196">
+    <function name="ResizeBuffersMESA" offset="assign">
+        <glx ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_MESA_window_pos" number="197">
+    <function name="WindowPos2dMESA" offset="assign">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="WindowPos2dvMESA" offset="assign">
+        <param name="v" type="const GLdouble *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="WindowPos2fMESA" offset="assign">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="WindowPos2fvMESA" offset="assign">
+        <param name="v" type="const GLfloat *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="WindowPos2iMESA" offset="assign">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="WindowPos2ivMESA" offset="assign">
+        <param name="v" type="const GLint *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="WindowPos2sMESA" offset="assign">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="WindowPos2svMESA" offset="assign">
+        <param name="v" type="const GLshort *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="WindowPos3dMESA" offset="assign">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="WindowPos3dvMESA" offset="assign">
+        <param name="v" type="const GLdouble *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="WindowPos3fMESA" offset="assign" vectorequiv="WindowPos3fvMESA">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="WindowPos3fvMESA" offset="assign">
+        <param name="v" type="const GLfloat *" count="3"/>
+        <glx rop="230"/>
+    </function>
+
+    <function name="WindowPos3iMESA" offset="assign">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="z" type="GLint"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="WindowPos3ivMESA" offset="assign">
+        <param name="v" type="const GLint *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="WindowPos3sMESA" offset="assign">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="WindowPos3svMESA" offset="assign">
+        <param name="v" type="const GLshort *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="WindowPos4dMESA" offset="assign">
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <param name="w" type="GLdouble"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="WindowPos4dvMESA" offset="assign">
+        <param name="v" type="const GLdouble *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="WindowPos4fMESA" offset="assign">
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <param name="w" type="GLfloat"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="WindowPos4fvMESA" offset="assign">
+        <param name="v" type="const GLfloat *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="WindowPos4iMESA" offset="assign">
+        <param name="x" type="GLint"/>
+        <param name="y" type="GLint"/>
+        <param name="z" type="GLint"/>
+        <param name="w" type="GLint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="WindowPos4ivMESA" offset="assign">
+        <param name="v" type="const GLint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="WindowPos4sMESA" offset="assign">
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+        <param name="w" type="GLshort"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="WindowPos4svMESA" offset="assign">
+        <param name="v" type="const GLshort *"/>
+        <glx ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_EXT_texture_compression_s3tc" number="198">
+    <enum name="COMPRESSED_RGB_S3TC_DXT1_EXT"             value="0x83F0"/>
+    <enum name="COMPRESSED_RGBA_S3TC_DXT1_EXT"            value="0x83F1"/>
+    <enum name="COMPRESSED_RGBA_S3TC_DXT3_EXT"            value="0x83F2"/>
+    <enum name="COMPRESSED_RGBA_S3TC_DXT5_EXT"            value="0x83F3"/>
+</category>
+
+<category name="GL_IBM_multimode_draw_arrays" number="200">
+    <function name="MultiModeDrawArraysIBM" offset="assign" static_dispatch="false">
+        <param name="mode" type="const GLenum *"/>
+        <param name="first" type="const GLint *"/>
+        <param name="count" type="const GLsizei *"/>
+        <param name="primcount" type="GLsizei"/>
+        <param name="modestride" type="GLint"/>
+        <glx handcode="true" ignore="true"/>
+    </function>
+
+    <function name="MultiModeDrawElementsIBM" offset="assign" static_dispatch="false">
+        <param name="mode" type="const GLenum *"/>
+        <param name="count" type="const GLsizei *"/>
+        <param name="type" type="GLenum"/>
+        <param name="indices" type="const GLvoid * const *"/>
+        <param name="primcount" type="GLsizei"/>
+        <param name="modestride" type="GLint"/>
+        <glx handcode="true" ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_IBM_vertex_array_lists" number="201">
+    <function name="ColorPointerListIBM">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLint"/>
+        <param name="pointer" type="const GLvoid **"/>
+        <param name="ptrstride" type="GLint"/>
+    </function>
+
+    <function name="SecondaryColorPointerListIBM">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLint"/>
+        <param name="pointer" type="const GLvoid **"/>
+        <param name="ptrstride" type="GLint"/>
+    </function>
+
+    <function name="EdgeFlagPointerListIBM">
+        <param name="stride" type="GLint"/>
+        <param name="pointer" type="const GLboolean **"/>
+        <param name="ptrstride" type="GLint"/>
+    </function>
+
+    <function name="FogCoordPointerListIBM">
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLint"/>
+        <param name="pointer" type="const GLvoid **"/>
+        <param name="ptrstride" type="GLint"/>
+    </function>
+
+    <function name="IndexPointerListIBM">
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLint"/>
+        <param name="pointer" type="const GLvoid **"/>
+        <param name="ptrstride" type="GLint"/>
+    </function>
+
+    <function name="NormalPointerListIBM">
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLint"/>
+        <param name="pointer" type="const GLvoid **"/>
+        <param name="ptrstride" type="GLint"/>
+    </function>
+
+    <function name="TexCoordPointerListIBM">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLint"/>
+        <param name="pointer" type="const GLvoid **"/>
+        <param name="ptrstride" type="GLint"/>
+    </function>
+
+    <function name="VertexPointerListIBM">
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLint"/>
+        <param name="pointer" type="const GLvoid **"/>
+        <param name="ptrstride" type="GLint"/>
+    </function>
+</category>
+
+<!-- Extension number 202 is not listed in the extension registry. -->
+<!-- Extension number 203 is not listed in the extension registry. -->
+<!-- Extension number 204 is not listed in the extension registry. -->
+<!-- Extension number 205 is not listed in the extension registry. -->
+
+<category name="GL_3DFX_texture_compression_FXT1" number="206">
+    <enum name="COMPRESSED_RGB_FXT1_3DFX"                 value="0x86B0"/>
+    <enum name="COMPRESSED_RGBA_FXT1_3DFX"                value="0x86B1"/>
+</category>
+
+<category name="GL_3DFX_multisample" number="207">
+    <enum name="MULTISAMPLE_3DFX"                         value="0x86B2"/>
+    <enum name="SAMPLE_BUFFERS_3DFX"                      value="0x86B3"/>
+    <enum name="SAMPLES_3DFX"                             value="0x86B4"/>
+    <enum name="MULTISAMPLE_BIT_3DFX"                     value="0x20000000"/>
+</category>
+
+<category name="GL_3DFX_tbuffer" number="208">
+    <function name="TbufferMask3DFX">
+        <param name="mask" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_EXT_multisample" number="209">
+    <function name="SampleMaskEXT" alias="SampleMaskSGIS" static_dispatch="false">
+        <param name="value" type="GLclampf"/>
+        <param name="invert" type="GLboolean"/>
+    </function>
+
+    <function name="SamplePatternEXT" alias="SamplePatternSGIS" static_dispatch="false">
+        <param name="pattern" type="GLenum"/>
+    </function>
+</category>
+
+<!-- Extension number 211 is not listed in the extension registry. -->
+<!-- Extension number 213 is not listed in the extension registry. -->
+
+<category name="GL_SGIS_texture_color_mask" number="214">
+    <enum name="TEXTURE_COLOR_WRITEMASK_SGIS"             value="0x81EF"/>
+
+    <function name="TextureColorMaskSGIS">
+        <param name="red" type="GLboolean"/>
+        <param name="green" type="GLboolean"/>
+        <param name="blue" type="GLboolean"/>
+        <param name="alpha" type="GLboolean"/>
+        <glx rop="2082" ignore="true"/>
+    </function>
+</category>
+
+<!-- Extension number 215 is a GLX extension. -->
+<!-- Extension number 216 is a GLX extension. -->
+<!-- Extension number 217 is a GLX extension. -->
+<!-- Extension number 218 is a GLX extension. -->
+<!-- Extension number 219 is not listed in the extension registry. -->
+
+<category name="GL_EXT_texture_env_dot3" number="220">
+    <enum name="DOT3_RGB_EXT"                             value="0x8740"/>
+    <enum name="DOT3_RGBA_EXT"                            value="0x8741"/>
+</category>
+
+<category name="GL_ATI_texture_mirror_once" number="221">
+    <enum name="MIRROR_CLAMP_ATI"                         value="0x8742"/>
+    <enum name="MIRROR_CLAMP_TO_EDGE_ATI"                 value="0x8743"/>
+</category>
+
+<category name="GL_NV_fence" number="222">
+    <function name="DeleteFencesNV" offset="assign" static_dispatch="false">
+        <param name="n" type="GLsizei"/>
+        <param name="fences" type="const GLuint *"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GenFencesNV" offset="assign" static_dispatch="false">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="fences" type="GLuint *" output="true" count="n"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="IsFenceNV" offset="assign" static_dispatch="false">
+        <param name="fence" type="GLuint"/>
+        <return type="GLboolean"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="TestFenceNV" offset="assign" static_dispatch="false">
+        <param name="fence" type="GLuint"/>
+        <return type="GLboolean"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="GetFenceivNV" offset="assign" static_dispatch="false">
+        <param name="fence" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="FinishFenceNV" offset="assign" static_dispatch="false">
+        <param name="fence" type="GLuint"/>
+        <glx ignore="true"/>
+    </function>
+
+    <function name="SetFenceNV" offset="assign" static_dispatch="false">
+        <param name="fence" type="GLuint"/>
+        <param name="condition" type="GLenum"/>
+        <glx ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_IBM_texture_mirrored_repeat" number="224">
+    <enum name="MIRRORED_REPEAT_IBM"                      value="0x8370"/>
+</category>
+
+<category name="GL_NV_evaluators" number="225">
+    <function name="MapControlPointsNV">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="type" type="GLenum"/>
+        <param name="ustride" type="GLsizei"/>
+        <param name="vstride" type="GLsizei"/>
+        <param name="uorder" type="GLint"/>
+        <param name="vorder" type="GLint"/>
+        <param name="packed" type="GLboolean"/>
+        <param name="points" type="const GLvoid *"/>
+    </function>
+
+    <function name="MapParameterivNV">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *"/>
+    </function>
+
+    <function name="MapParameterfvNV">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *"/>
+    </function>
+
+    <function name="GetMapControlPointsNV">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="type" type="GLenum"/>
+        <param name="ustride" type="GLsizei"/>
+        <param name="vstride" type="GLsizei"/>
+        <param name="packed" type="GLboolean"/>
+        <param name="points" type="GLvoid *" output="true"/>
+    </function>
+
+    <function name="GetMapParameterivNV">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true"/>
+    </function>
+
+    <function name="GetMapParameterfvNV">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true"/>
+    </function>
+
+    <function name="GetMapAttribParameterivNV">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true"/>
+    </function>
+
+    <function name="GetMapAttribParameterfvNV">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true"/>
+    </function>
+
+    <function name="EvalMapsNV">
+        <param name="target" type="GLenum"/>
+        <param name="mode" type="GLenum"/>
+    </function>
+</category>
+
+<category name="GL_NV_packed_depth_stencil" number="226">
+    <enum name="DEPTH_STENCIL_NV"                         value="0x84F9"/>
+    <enum name="UNSIGNED_INT_24_8_NV"                     value="0x84FA"/>
+</category>
+
+<category name="GL_NV_register_combiners2" number="227">
+    <function name="CombinerStageParameterfvNV">
+        <param name="stage" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *"/>
+    </function>
+
+    <function name="GetCombinerStageParameterfvNV">
+        <param name="stage" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true"/>
+    </function>
+</category>
+
+<category name="GL_NV_texture_compression_vtc" number="228">
+    <enum name="COMPRESSED_RGB_S3TC_DXT1_EXT"             value="0x83F0"/>
+    <enum name="COMPRESSED_RGBA_S3TC_DXT1_EXT"            value="0x83F1"/>
+    <enum name="COMPRESSED_RGBA_S3TC_DXT3_EXT"            value="0x83F2"/>
+    <enum name="COMPRESSED_RGBA_S3TC_DXT5_EXT"            value="0x83F3"/>
+</category>
+
+<category name="GL_NV_texture_rectangle" number="229">
+    <enum name="TEXTURE_RECTANGLE_NV"          count="1"  value="0x84F5">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_BINDING_RECTANGLE_NV"  count="1"  value="0x84F6">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="PROXY_TEXTURE_RECTANGLE_NV"               value="0x84F7"/>
+    <enum name="MAX_RECTANGLE_TEXTURE_SIZE_NV" count="1"  value="0x84F8">
+        <size name="Get" mode="get"/>
+    </enum>
+</category>
+
+<category name="GL_NV_vertex_program" number="233">
+    <enum name="VERTEX_PROGRAM_NV"                        value="0x8620"/>
+    <enum name="VERTEX_STATE_PROGRAM_NV"                  value="0x8621"/>
+    <enum name="ATTRIB_ARRAY_SIZE_NV"          count="1"  value="0x8623">
+        <size name="GetVertexAttribdvNV" mode="get"/>
+        <size name="GetVertexAttribfvNV" mode="get"/>
+        <size name="GetVertexAttribivNV" mode="get"/>
+    </enum>
+    <enum name="ATTRIB_ARRAY_STRIDE_NV"        count="1"  value="0x8624">
+        <size name="GetVertexAttribdvNV" mode="get"/>
+        <size name="GetVertexAttribfvNV" mode="get"/>
+        <size name="GetVertexAttribivNV" mode="get"/>
+    </enum>
+    <enum name="ATTRIB_ARRAY_TYPE_NV"          count="1"  value="0x8625">
+        <size name="GetVertexAttribdvNV" mode="get"/>
+        <size name="GetVertexAttribfvNV" mode="get"/>
+        <size name="GetVertexAttribivNV" mode="get"/>
+    </enum>
+    <enum name="CURRENT_ATTRIB_NV"             count="1"  value="0x8626">
+        <size name="GetVertexAttribdvNV" mode="get"/>
+        <size name="GetVertexAttribfvNV" mode="get"/>
+        <size name="GetVertexAttribivNV" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_LENGTH_NV"             count="1"  value="0x8627">
+        <size name="GetProgramivNV" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_STRING_NV"                        value="0x8628"/>
+    <enum name="MODELVIEW_PROJECTION_NV"                  value="0x8629"/>
+    <enum name="IDENTITY_NV"                              value="0x862A"/>
+    <enum name="INVERSE_NV"                               value="0x862B"/>
+    <enum name="TRANSPOSE_NV"                             value="0x862C"/>
+    <enum name="INVERSE_TRANSPOSE_NV"                     value="0x862D"/>
+    <enum name="MAX_TRACK_MATRIX_STACK_DEPTH_NV"          value="0x862E"/>
+    <enum name="MAX_TRACK_MATRICES_NV"                    value="0x862F"/>
+    <enum name="MATRIX0_NV"                               value="0x8630"/>
+    <enum name="MATRIX1_NV"                               value="0x8631"/>
+    <enum name="MATRIX2_NV"                               value="0x8632"/>
+    <enum name="MATRIX3_NV"                               value="0x8633"/>
+    <enum name="MATRIX4_NV"                               value="0x8634"/>
+    <enum name="MATRIX5_NV"                               value="0x8635"/>
+    <enum name="MATRIX6_NV"                               value="0x8636"/>
+    <enum name="MATRIX7_NV"                               value="0x8637"/>
+    <enum name="CURRENT_MATRIX_STACK_DEPTH_NV"            value="0x8640"/>
+    <enum name="CURRENT_MATRIX_NV"                        value="0x8641"/>
+    <enum name="VERTEX_PROGRAM_POINT_SIZE_NV"             value="0x8642"/>
+    <enum name="VERTEX_PROGRAM_TWO_SIDE_NV"               value="0x8643"/>
+    <enum name="PROGRAM_PARAMETER_NV"                     value="0x8644"/>
+    <enum name="ATTRIB_ARRAY_POINTER_NV"                  value="0x8645"/>
+    <enum name="PROGRAM_TARGET_NV"             count="1"  value="0x8646">
+        <size name="GetProgramivNV" mode="get"/>
+    </enum>
+    <enum name="PROGRAM_RESIDENT_NV"           count="1"  value="0x8647">
+        <size name="GetProgramivNV" mode="get"/>
+    </enum>
+    <enum name="TRACK_MATRIX_NV"                          value="0x8648"/>
+    <enum name="TRACK_MATRIX_TRANSFORM_NV"                value="0x8649"/>
+    <enum name="VERTEX_PROGRAM_BINDING_NV"                value="0x864A"/>
+    <enum name="PROGRAM_ERROR_POSITION_NV"                value="0x864B"/>
+    <enum name="VERTEX_ATTRIB_ARRAY0_NV"                  value="0x8650"/>
+    <enum name="VERTEX_ATTRIB_ARRAY1_NV"                  value="0x8651"/>
+    <enum name="VERTEX_ATTRIB_ARRAY2_NV"                  value="0x8652"/>
+    <enum name="VERTEX_ATTRIB_ARRAY3_NV"                  value="0x8653"/>
+    <enum name="VERTEX_ATTRIB_ARRAY4_NV"                  value="0x8654"/>
+    <enum name="VERTEX_ATTRIB_ARRAY5_NV"                  value="0x8655"/>
+    <enum name="VERTEX_ATTRIB_ARRAY6_NV"                  value="0x8656"/>
+    <enum name="VERTEX_ATTRIB_ARRAY7_NV"                  value="0x8657"/>
+    <enum name="VERTEX_ATTRIB_ARRAY8_NV"                  value="0x8658"/>
+    <enum name="VERTEX_ATTRIB_ARRAY9_NV"                  value="0x8659"/>
+    <enum name="VERTEX_ATTRIB_ARRAY10_NV"                 value="0x865A"/>
+    <enum name="VERTEX_ATTRIB_ARRAY11_NV"                 value="0x865B"/>
+    <enum name="VERTEX_ATTRIB_ARRAY12_NV"                 value="0x865C"/>
+    <enum name="VERTEX_ATTRIB_ARRAY13_NV"                 value="0x865D"/>
+    <enum name="VERTEX_ATTRIB_ARRAY14_NV"                 value="0x865E"/>
+    <enum name="VERTEX_ATTRIB_ARRAY15_NV"                 value="0x865F"/>
+    <enum name="MAP1_VERTEX_ATTRIB0_4_NV"                 value="0x8660"/>
+    <enum name="MAP1_VERTEX_ATTRIB1_4_NV"                 value="0x8661"/>
+    <enum name="MAP1_VERTEX_ATTRIB2_4_NV"                 value="0x8662"/>
+    <enum name="MAP1_VERTEX_ATTRIB3_4_NV"                 value="0x8663"/>
+    <enum name="MAP1_VERTEX_ATTRIB4_4_NV"                 value="0x8664"/>
+    <enum name="MAP1_VERTEX_ATTRIB5_4_NV"                 value="0x8665"/>
+    <enum name="MAP1_VERTEX_ATTRIB6_4_NV"                 value="0x8666"/>
+    <enum name="MAP1_VERTEX_ATTRIB7_4_NV"                 value="0x8667"/>
+    <enum name="MAP1_VERTEX_ATTRIB8_4_NV"                 value="0x8668"/>
+    <enum name="MAP1_VERTEX_ATTRIB9_4_NV"                 value="0x8669"/>
+    <enum name="MAP1_VERTEX_ATTRIB10_4_NV"                value="0x866A"/>
+    <enum name="MAP1_VERTEX_ATTRIB11_4_NV"                value="0x866B"/>
+    <enum name="MAP1_VERTEX_ATTRIB12_4_NV"                value="0x866C"/>
+    <enum name="MAP1_VERTEX_ATTRIB13_4_NV"                value="0x866D"/>
+    <enum name="MAP1_VERTEX_ATTRIB14_4_NV"                value="0x866E"/>
+    <enum name="MAP1_VERTEX_ATTRIB15_4_NV"                value="0x866F"/>
+    <enum name="MAP2_VERTEX_ATTRIB0_4_NV"                 value="0x8670"/>
+    <enum name="MAP2_VERTEX_ATTRIB1_4_NV"                 value="0x8671"/>
+    <enum name="MAP2_VERTEX_ATTRIB2_4_NV"                 value="0x8672"/>
+    <enum name="MAP2_VERTEX_ATTRIB3_4_NV"                 value="0x8673"/>
+    <enum name="MAP2_VERTEX_ATTRIB4_4_NV"                 value="0x8674"/>
+    <enum name="MAP2_VERTEX_ATTRIB5_4_NV"                 value="0x8675"/>
+    <enum name="MAP2_VERTEX_ATTRIB6_4_NV"                 value="0x8676"/>
+    <enum name="MAP2_VERTEX_ATTRIB7_4_NV"                 value="0x8677"/>
+    <enum name="MAP2_VERTEX_ATTRIB8_4_NV"                 value="0x8678"/>
+    <enum name="MAP2_VERTEX_ATTRIB9_4_NV"                 value="0x8679"/>
+    <enum name="MAP2_VERTEX_ATTRIB10_4_NV"                value="0x867A"/>
+    <enum name="MAP2_VERTEX_ATTRIB11_4_NV"                value="0x867B"/>
+    <enum name="MAP2_VERTEX_ATTRIB12_4_NV"                value="0x867C"/>
+    <enum name="MAP2_VERTEX_ATTRIB13_4_NV"                value="0x867D"/>
+    <enum name="MAP2_VERTEX_ATTRIB14_4_NV"                value="0x867E"/>
+    <enum name="MAP2_VERTEX_ATTRIB15_4_NV"                value="0x867F"/>
+
+    <function name="AreProgramsResidentNV" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="ids" type="const GLuint *" count="n"/>
+        <param name="residences" type="GLboolean *" output="true" count="n"/>
+        <return type="GLboolean"/>
+        <glx vendorpriv="1293"/>
+    </function>
+
+    <function name="BindProgramNV" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="program" type="GLuint"/>
+        <glx rop="4180"/>
+    </function>
+
+    <function name="DeleteProgramsNV" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="programs" type="const GLuint *" count="n"/>
+        <glx vendorpriv="1294"/>
+    </function>
+
+    <function name="ExecuteProgramNV" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="id" type="GLuint"/>
+        <param name="params" type="const GLfloat *" count="4"/>
+        <glx rop="4181"/>
+    </function>
+
+    <function name="GenProgramsNV" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="programs" type="GLuint *" output="true" count="n"/>
+        <glx vendorpriv="1295" always_array="true"/>
+     </function>
+
+    <!-- This isn't 100% correct.  Currently, the only valid value of pname
+         is GL_PROGRAM_PARAMETER_NV, and the count for that pname is always
+         4.  This is why the pname parameter was removed in the ARB version
+         of these functions.
+      -->
+
+    <function name="GetProgramParameterdvNV" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLdouble *" output="true" count="4"/>
+        <glx vendorpriv="1297"/>
+    </function>
+
+    <function name="GetProgramParameterfvNV" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" count="4"/>
+        <glx vendorpriv="1296"/>
+    </function>
+
+    <function name="GetProgramivNV" offset="assign">
+        <param name="id" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx vendorpriv="1298"/>
+    </function>
+
+    <function name="GetProgramStringNV" offset="assign">
+        <param name="id" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="program" type="GLubyte *" output="true"/>
+        <glx vendorpriv="1299" handcode="server" always_array="true"/>
+    </function>
+
+    <function name="GetTrackMatrixivNV" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="address" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" count="1"/>
+        <glx vendorpriv="1300"/>
+    </function>
+
+    <function name="GetVertexAttribdvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
+        <glx vendorpriv="1301"/>
+    </function>
+
+    <function name="GetVertexAttribfvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
+        <glx vendorpriv="1302"/>
+    </function>
+
+    <function name="GetVertexAttribivNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint *" output="true" variable_param="pname"/>
+        <glx vendorpriv="1303"/>
+    </function>
+
+    <function name="GetVertexAttribPointervNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="pointer" type="GLvoid **" output="true"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="IsProgramNV" offset="assign">
+        <param name="program" type="GLuint"/>
+        <return type="GLboolean"/>
+        <glx vendorpriv="1304"/>
+    </function>
+
+    <function name="LoadProgramNV" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="id" type="GLuint"/>
+        <param name="len" type="GLsizei" counter="true"/>
+        <param name="program" type="const GLubyte *" count="len"/>
+        <glx rop="4183"/>
+    </function>
+
+    <function name="ProgramParameter4dNV" alias="ProgramEnvParameter4dARB">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <param name="w" type="GLdouble"/>
+    </function>
+
+    <function name="ProgramParameter4dvNV" alias="ProgramEnvParameter4dvARB">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="params" type="const GLdouble *"/>
+    </function>
+
+    <function name="ProgramParameter4fNV" alias="ProgramEnvParameter4fARB">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <param name="w" type="GLfloat"/>
+    </function>
+
+    <function name="ProgramParameter4fvNV" alias="ProgramEnvParameter4fvARB">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="params" type="const GLfloat *"/>
+    </function>
+
+    <function name="ProgramParameters4dvNV" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="num" type="GLuint" counter="true"/>
+        <param name="params" type="const GLdouble *" count="num" count_scale="4"/>
+        <glx rop="4187"/>
+    </function>
+
+    <function name="ProgramParameters4fvNV" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="num" type="GLuint" counter="true"/>
+        <param name="params" type="const GLfloat *" count="num" count_scale="4"/>
+        <glx rop="4186"/>
+    </function>
+
+    <function name="RequestResidentProgramsNV" offset="assign">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="ids" type="const GLuint *" count="n"/>
+        <glx rop="4182"/>
+    </function>
+
+    <function name="TrackMatrixNV" offset="assign">
+        <param name="target" type="GLenum"/>
+        <param name="address" type="GLuint"/>
+        <param name="matrix" type="GLenum"/>
+        <param name="transform" type="GLenum"/>
+        <glx rop="4188"/>
+    </function>
+
+    <function name="VertexAttribPointerNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="size" type="GLint"/>
+        <param name="type" type="GLenum"/>
+        <param name="stride" type="GLsizei"/>
+        <param name="pointer" type="const GLvoid *"/>
+        <glx handcode="true"/>
+    </function>
+
+    <function name="VertexAttrib1sNV" offset="assign" vectorequiv="VertexAttrib1svNV">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLshort"/>
+    </function>
+
+    <function name="VertexAttrib1svNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLshort *" count="1"/>
+        <glx rop="4265"/>
+    </function>
+
+    <function name="VertexAttrib2sNV" offset="assign" vectorequiv="VertexAttrib2svNV">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+    </function>
+
+    <function name="VertexAttrib2svNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLshort *" count="2"/>
+        <glx rop="4266"/>
+    </function>
+
+    <function name="VertexAttrib3sNV" offset="assign" vectorequiv="VertexAttrib3svNV">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+    </function>
+
+    <function name="VertexAttrib3svNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLshort *" count="3"/>
+        <glx rop="4267"/>
+    </function>
+
+    <function name="VertexAttrib4sNV" offset="assign" vectorequiv="VertexAttrib4svNV">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLshort"/>
+        <param name="y" type="GLshort"/>
+        <param name="z" type="GLshort"/>
+        <param name="w" type="GLshort"/>
+    </function>
+
+    <function name="VertexAttrib4svNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLshort *" count="4"/>
+        <glx rop="4268"/>
+    </function>
+
+    <function name="VertexAttrib1fNV" offset="assign" vectorequiv="VertexAttrib1fvNV">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+    </function>
+
+    <function name="VertexAttrib1fvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLfloat *" count="1"/>
+        <glx rop="4269"/>
+    </function>
+
+    <function name="VertexAttrib2fNV" offset="assign" vectorequiv="VertexAttrib2fvNV">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+    </function>
+
+    <function name="VertexAttrib2fvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLfloat *" count="2"/>
+        <glx rop="4270"/>
+    </function>
+
+    <function name="VertexAttrib3fNV" offset="assign" vectorequiv="VertexAttrib3fvNV">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+    </function>
+
+    <function name="VertexAttrib3fvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLfloat *" count="3"/>
+        <glx rop="4271"/>
+    </function>
+
+    <function name="VertexAttrib4fNV" offset="assign" vectorequiv="VertexAttrib4fvNV">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <param name="w" type="GLfloat"/>
+    </function>
+
+    <function name="VertexAttrib4fvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLfloat *" count="4"/>
+        <glx rop="4272"/>
+    </function>
+
+    <function name="VertexAttrib1dNV" offset="assign" vectorequiv="VertexAttrib1dvNV">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLdouble"/>
+    </function>
+
+    <function name="VertexAttrib1dvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLdouble *" count="1"/>
+        <glx rop="4273" doubles_in_order="true"/>
+    </function>
+
+    <function name="VertexAttrib2dNV" offset="assign" vectorequiv="VertexAttrib2dvNV">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+    </function>
+
+    <function name="VertexAttrib2dvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLdouble *" count="2"/>
+        <glx rop="4274" doubles_in_order="true"/>
+    </function>
+
+    <function name="VertexAttrib3dNV" offset="assign" vectorequiv="VertexAttrib3dvNV">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+    </function>
+
+    <function name="VertexAttrib3dvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLdouble *" count="3"/>
+        <glx rop="4275" doubles_in_order="true"/>
+    </function>
+
+    <function name="VertexAttrib4dNV" offset="assign" vectorequiv="VertexAttrib4dvNV">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <param name="w" type="GLdouble"/>
+    </function>
+
+    <function name="VertexAttrib4dvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLdouble *" count="4"/>
+        <glx rop="4276" doubles_in_order="true"/>
+    </function>
+
+    <function name="VertexAttrib4ubNV" offset="assign" vectorequiv="VertexAttrib4ubvNV">
+        <param name="index" type="GLuint"/>
+        <param name="x" type="GLubyte"/>
+        <param name="y" type="GLubyte"/>
+        <param name="z" type="GLubyte"/>
+        <param name="w" type="GLubyte"/>
+    </function>
+
+    <function name="VertexAttrib4ubvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="v" type="const GLubyte *" count="4"/>
+        <glx rop="4277"/>
+    </function>
+
+    <function name="VertexAttribs1svNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="v" type="const GLshort *" count="n"/>
+        <glx rop="4202"/>
+    </function>
+
+    <function name="VertexAttribs2svNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="v" type="const GLshort *" count="n" count_scale="2"/>
+        <glx rop="4203"/>
+    </function>
+
+    <function name="VertexAttribs3svNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="v" type="const GLshort *" count="n" count_scale="3"/>
+        <glx rop="4204"/>
+    </function>
+
+    <function name="VertexAttribs4svNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="v" type="const GLshort *" count="n" count_scale="4"/>
+        <glx rop="4205"/>
+    </function>
+
+    <function name="VertexAttribs1fvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="v" type="const GLfloat *" count="n"/>
+        <glx rop="4206"/>
+    </function>
+
+    <function name="VertexAttribs2fvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="v" type="const GLfloat *" count="n" count_scale="2"/>
+        <glx rop="4207"/>
+    </function>
+
+    <function name="VertexAttribs3fvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="v" type="const GLfloat *" count="n" count_scale="3"/>
+        <glx rop="4208"/>
+    </function>
+
+    <function name="VertexAttribs4fvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="v" type="const GLfloat *" count="n" count_scale="4"/>
+        <glx rop="4209"/>
+    </function>
+
+    <function name="VertexAttribs1dvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="v" type="const GLdouble *" count="n"/>
+        <glx rop="4210" doubles_in_order="true"/>
+    </function>
+
+    <function name="VertexAttribs2dvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="v" type="const GLdouble *" count="n" count_scale="2"/>
+        <glx rop="4211" doubles_in_order="true"/>
+    </function>
+
+    <function name="VertexAttribs3dvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="v" type="const GLdouble *" count="n" count_scale="3"/>
+        <glx rop="4212" doubles_in_order="true"/>
+    </function>
+
+    <function name="VertexAttribs4dvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="v" type="const GLdouble *" count="n" count_scale="4"/>
+        <glx rop="4213" doubles_in_order="true"/>
+    </function>
+
+    <function name="VertexAttribs4ubvNV" offset="assign">
+        <param name="index" type="GLuint"/>
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="v" type="const GLubyte *" count="n" count_scale="4"/>
+        <glx rop="4214"/>
+    </function>
+</category>
+
+<!-- Extension number 234 is a GLX extension. -->
+
+<category name="GL_SGIX_texture_coordinate_clamp" number="235">
+    <enum name="TEXTURE_MAX_CLAMP_S_SGIX"      count="1"  value="0x8369">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_MAX_CLAMP_T_SGIX"      count="1"  value="0x836A">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_MAX_CLAMP_R_SGIX"      count="1"  value="0x836B">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+</category>
+
+<!-- Extension number 236 is not listed in the extension registry. -->
+<!-- Extension number 237 is a GLX extension. -->
+<!-- Extension number 238 is a GLX extension. -->
+<!-- Extension number 242 is a WGL extension. -->
+
+<category name="GL_NV_copy_depth_to_color" number="243">
+    <enum name="DEPTH_STENCIL_TO_RGBA_NV"                 value="0x886E"/>
+    <enum name="DEPTH_STENCIL_TO_BGRA_NV"                 value="0x886F"/>
+</category>
+
+<category name="GL_ATI_envmap_bumpmap" number="244">
+    <enum name="BUMP_ROT_MATRIX_ATI"          count="4"   value="0x8775">
+        <size name="TexBumpParameterfv"/>
+        <size name="TexBumpParameteriv"/>
+        <size name="GetTexBumpParameterfv" mode="get"/>
+        <size name="GetTexBumpParameteriv" mode="get"/>
+    </enum>
+    <enum name="BUMP_ROT_MATRIX_SIZE_ATI"     count="1"   value="0x8776">
+        <size name="GetTexBumpParameterfv" mode="get"/>
+        <size name="GetTexBumpParameteriv" mode="get"/>
+    </enum>
+    <enum name="BUMP_NUM_TEX_UNITS_ATI"       count="1"   value="0x8777">
+        <size name="GetTexBumpParameterfv" mode="get"/>
+        <size name="GetTexBumpParameteriv" mode="get"/>
+    </enum>
+    <enum name="BUMP_TEX_UNITS_ATI"           count="-1"  value="0x8778">
+        <size name="GetTexBumpParameterfv" mode="get"/>
+        <size name="GetTexBumpParameteriv" mode="get"/>
+    </enum>
+    <enum name="DUDV_ATI"                                 value="0x8779"/>
+    <enum name="DU8DV8_ATI"                               value="0x877A"/>
+    <enum name="BUMP_ENVMAP_ATI"                          value="0x877B"/>
+    <enum name="BUMP_TARGET_ATI"              count="1"   value="0x877C">
+        <size name="TexEnviv"/>
+        <size name="TexEnvfv"/>
+        <size name="GetTexEnviv" mode="get"/>
+        <size name="GetTexEnvfv" mode="get"/>
+    </enum>
+    <function name="TexBumpParameterfvATI" offset="assign">
+      <param name="pname" type="GLenum"/>
+      <param name="param" type="const GLfloat *" variable_param="pname"/>
+      <glx ignore="true"/>
+    </function>
+    <function name="TexBumpParameterivATI" offset="assign">
+      <param name="pname" type="GLenum"/>
+      <param name="param" type="const GLint *" variable_param="pname"/>
+      <glx ignore="true"/>
+    </function>
+    <function name="GetTexBumpParameterfvATI" offset="assign">
+      <param name="pname" type="GLenum"/>
+      <param name="param" type="GLfloat *" variable_param="pname"/>
+      <glx ignore="true"/>
+    </function>
+    <function name="GetTexBumpParameterivATI" offset="assign">
+      <param name="pname" type="GLenum"/>
+      <param name="param" type="GLint *" variable_param="pname"/>
+      <glx ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_ATI_fragment_shader" number="245">
+    <function name="GenFragmentShadersATI" offset="assign">
+      <return type="GLuint"/>
+      <param name="range" type="GLuint"/>
+      <glx ignore="true"/>
+    </function>
+    
+    <function name="BindFragmentShaderATI" offset="assign">
+      <param name="id" type="GLuint"/>
+      <glx ignore="true"/>
+    </function>
+
+    <function name="DeleteFragmentShaderATI" offset="assign">
+      <param name="id" type="GLuint"/>
+      <glx ignore="true"/>
+    </function>
+
+    <function name="BeginFragmentShaderATI" offset="assign">
+      <glx ignore="true"/>
+    </function>
+
+    <function name="EndFragmentShaderATI" offset="assign">
+      <glx ignore="true"/>
+    </function>
+    
+    <function name="PassTexCoordATI" offset="assign">
+      <param name="dst" type="GLuint"/>
+      <param name="coord" type="GLuint"/>
+      <param name="swizzle" type="GLenum"/>
+      <glx ignore="true"/>
+    </function>
+
+    <function name="SampleMapATI" offset="assign">
+      <param name="dst" type="GLuint"/>
+      <param name="interp" type="GLuint"/>
+      <param name="swizzle" type="GLenum"/>
+      <glx ignore="true"/>
+    </function>
+
+    <function name="ColorFragmentOp1ATI" offset="assign">
+      <param name="op" type="GLenum"/>
+      <param name="dst" type="GLuint"/>
+      <param name="dstMask" type="GLuint"/>
+      <param name="dstMod" type="GLuint"/>
+      <param name="arg1" type="GLuint"/>
+      <param name="arg1Rep" type="GLuint"/>
+      <param name="arg1Mod" type="GLuint"/>
+      <glx ignore="true"/>
+    </function>
+
+    <function name="ColorFragmentOp2ATI" offset="assign">
+      <param name="op" type="GLenum"/>
+      <param name="dst" type="GLuint"/>
+      <param name="dstMask" type="GLuint"/>
+      <param name="dstMod" type="GLuint"/>
+      <param name="arg1" type="GLuint"/>
+      <param name="arg1Rep" type="GLuint"/>
+      <param name="arg1Mod" type="GLuint"/>
+      <param name="arg2" type="GLuint"/>
+      <param name="arg2Rep" type="GLuint"/>
+      <param name="arg2Mod" type="GLuint"/>
+      <glx ignore="true"/>
+    </function>
+
+    <function name="ColorFragmentOp3ATI" offset="assign">
+      <param name="op" type="GLenum"/>
+      <param name="dst" type="GLuint"/>
+      <param name="dstMask" type="GLuint"/>
+      <param name="dstMod" type="GLuint"/>
+      <param name="arg1" type="GLuint"/>
+      <param name="arg1Rep" type="GLuint"/>
+      <param name="arg1Mod" type="GLuint"/>
+      <param name="arg2" type="GLuint"/>
+      <param name="arg2Rep" type="GLuint"/>
+      <param name="arg2Mod" type="GLuint"/>
+      <param name="arg3" type="GLuint"/>
+      <param name="arg3Rep" type="GLuint"/>
+      <param name="arg3Mod" type="GLuint"/>
+      <glx ignore="true"/>
+    </function>
+
+    <function name="AlphaFragmentOp1ATI" offset="assign">
+      <param name="op" type="GLenum"/>
+      <param name="dst" type="GLuint"/>
+      <param name="dstMod" type="GLuint"/>
+      <param name="arg1" type="GLuint"/>
+      <param name="arg1Rep" type="GLuint"/>
+      <param name="arg1Mod" type="GLuint"/>
+      <glx ignore="true"/>
+    </function>
+
+    <function name="AlphaFragmentOp2ATI" offset="assign">
+      <param name="op" type="GLenum"/>
+      <param name="dst" type="GLuint"/>
+      <param name="dstMod" type="GLuint"/>
+      <param name="arg1" type="GLuint"/>
+      <param name="arg1Rep" type="GLuint"/>
+      <param name="arg1Mod" type="GLuint"/>
+      <param name="arg2" type="GLuint"/>
+      <param name="arg2Rep" type="GLuint"/>
+      <param name="arg2Mod" type="GLuint"/>
+      <glx ignore="true"/>
+    </function>
+
+    <function name="AlphaFragmentOp3ATI" offset="assign">
+      <param name="op" type="GLenum"/>
+      <param name="dst" type="GLuint"/>
+      <param name="dstMod" type="GLuint"/>
+      <param name="arg1" type="GLuint"/>
+      <param name="arg1Rep" type="GLuint"/>
+      <param name="arg1Mod" type="GLuint"/>
+      <param name="arg2" type="GLuint"/>
+      <param name="arg2Rep" type="GLuint"/>
+      <param name="arg2Mod" type="GLuint"/>
+      <param name="arg3" type="GLuint"/>
+      <param name="arg3Rep" type="GLuint"/>
+      <param name="arg3Mod" type="GLuint"/>
+      <glx ignore="true"/>
+    </function>
+
+    <function name="SetFragmentShaderConstantATI" offset="assign">
+      <param name="dst" type="GLuint"/>
+      <param name="value" type="const GLfloat *"/>
+      <glx ignore="true"/>
+    </function>
+</category>
+
+<!-- Extension number 250 is a WGL extension. -->
+<!-- Extension number 251 is a WGL extension. -->
+<!-- Extension number 252 is a WGL extension. -->
+<!-- Extension number 253 is a WGL extension. -->
+<!-- Extension number 254 is a WGL extension. -->
+<!-- Extension number 255 is a WGL extension. -->
+
+<category name="GL_SUN_mesh_array" number="257">
+    <enum name="QUAD_MESH_SUN"                            value="0x8614"/>
+    <enum name="TRIANGLE_MESH_SUN"                        value="0x8615"/>
+
+    <function name="DrawMeshArraysSUN">
+        <param name="mode" type="GLenum"/>
+        <param name="first" type="GLint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="width" type="GLsizei"/>
+    </function>
+</category>
+
+<category name="GL_SUN_slice_accum" number="258">
+    <enum name="SLICE_ACCUM_SUN"                          value="0x85CC"/>
+</category>
+
+<category name="GL_NV_multisample_filter_hint" number="259">
+    <enum name="MULTISAMPLE_FILTER_HINT_NV"    count="1"  value="0x8534">
+        <size name="Get" mode="get"/>
+    </enum>
+</category>
+
+<category name="GL_NV_depth_clamp" number="260">
+    <enum name="DEPTH_CLAMP_NV"                count="1"  value="0x864F">
+        <size name="Get" mode="get"/>
+    </enum>
+</category>
+
+<category name="GL_NV_point_sprite" number="262">
+    <!-- These existing enums can be passed as a parameter to the function
+         added for this extension. -->
+
+    <enum name="POINT_SIZE_MIN_EXT"            count="1"  value="0x8126">
+        <size name="PointParameterivNV"/>
+    </enum>
+    <enum name="POINT_SIZE_MAX_EXT"            count="1"  value="0x8127">
+        <size name="PointParameterivNV"/>
+    </enum>
+    <enum name="POINT_FADE_THRESHOLD_SIZE_EXT" count="1"  value="0x8128">
+        <size name="PointParameterivNV"/>
+    </enum>
+    <enum name="POINT_DISTANCE_ATTENUATION_EXT" count="3" value="0x8129">
+        <size name="PointParameterivNV"/>
+    </enum>
+
+    <enum name="POINT_SPRITE_NV"               count="1"  value="0x8861">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="COORD_REPLACE_NV"              count="1"  value="0x8862">
+        <size name="TexEnvfv"/>
+        <size name="TexEnviv"/>
+        <size name="GetTexEnvfv" mode="get"/>
+        <size name="GetTexEnviv" mode="get"/>
+    </enum>
+    <enum name="POINT_SPRITE_R_MODE_NV"        count="1"  value="0x8863">
+        <size name="PointParameterfvEXT"/>
+        <size name="PointParameterivNV"/>
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="PointParameteriNV" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+        <glx rop="4221"/>
+    </function>
+
+    <function name="PointParameterivNV" offset="assign">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLint *" variable_param="pname"/>
+        <glx rop="4222"/>
+    </function>
+</category>
+
+<!-- Extension number 263 is a WGL extension. -->
+<!-- Extension number 264 is a WGL extension. -->
+
+<category name="GL_EXT_shadow_funcs" number="267">
+    <!-- No new functions, types, enums. -->
+</category>
+
+<category name="GL_EXT_stencil_two_side" number="268">
+    <enum name="STENCIL_TEST_TWO_SIDE_EXT"     count="1"  value="0x8910">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="ACTIVE_STENCIL_FACE_EXT"       count="1"  value="0x8911">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="ActiveStencilFaceEXT" offset="assign" static_dispatch="false">
+        <param name="face" type="GLenum"/>
+        <glx rop="4220"/>
+    </function>
+</category>
+
+<xi:include href="APPLE_object_purgeable.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+<xi:include href="APPLE_vertex_array_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<category name="GL_APPLE_ycbcr_422" number="275">
+    <enum name="YCBCR_422_APPLE"                          value="0x85B9"/>
+    <enum name="UNSIGNED_SHORT_8_8_APPLE"                 value="0x85BA"/>
+    <enum name="UNSIGNED_SHORT_8_8_REV_APPLE"             value="0x85BB"/>
+</category>
+
+<category name="GL_S3_s3tc" number="276">
+    <enum name="RGB_S3TC"                                 value="0x83A0"/>
+    <enum name="RGB4_S3TC"                                value="0x83A1"/>
+    <enum name="RGBA_S3TC"                                value="0x83A2"/>
+    <enum name="RGBA4_S3TC"                               value="0x83A3"/>
+    <enum name="RGBA_DXT5_S3TC"                           value="0x83A4"/>
+    <enum name="RGBA4_DXT5_S3TC"                          value="0x83A5"/>
+</category>
+
+<category name="GL_ATI_draw_buffers" number="277">
+    <enum name="MAX_DRAW_BUFFERS_ATI"          count="1"  value="0x8824">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER0_ATI"              count="1"  value="0x8825">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER1_ATI"              count="1"  value="0x8826">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER2_ATI"              count="1"  value="0x8827">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER3_ATI"              count="1"  value="0x8828">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER4_ATI"              count="1"  value="0x8829">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER5_ATI"              count="1"  value="0x882A">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER6_ATI"              count="1"  value="0x882B">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER7_ATI"              count="1"  value="0x882C">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER8_ATI"              count="1"  value="0x882D">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER9_ATI"              count="1"  value="0x882E">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER10_ATI"             count="1"  value="0x882F">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER11_ATI"             count="1"  value="0x8830">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER12_ATI"             count="1"  value="0x8831">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER13_ATI"             count="1"  value="0x8832">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER14_ATI"             count="1"  value="0x8833">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DRAW_BUFFER15_ATI"             count="1"  value="0x8834">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="DrawBuffersATI" alias="DrawBuffersARB">
+        <param name="n" type="GLsizei" counter="true"/>
+        <param name="bufs" type="const GLenum *" count="n"/>
+    </function>
+</category>
+
+<!-- Extension number 278 is a WGL extension. -->
+
+<category name="GL_ATI_texture_env_combine3" number="279">
+    <enum name="MODULATE_ADD_ATI"                         value="0x8744"/>
+    <enum name="MODULATE_SIGNED_ADD_ATI"                  value="0x8745"/>
+    <enum name="MODULATE_SUBTRACT_ATI"                    value="0x8746"/>
+</category>
+
+<category name="GL_NV_fragment_program" number="282">
+    <function name="ProgramNamedParameter4fNV" offset="assign" vectorequiv="ProgramNamedParameter4fvNV">
+        <param name="id" type="GLuint"/>
+        <param name="len" type="GLsizei" counter="true"/>
+        <param name="name" type="const GLubyte *" count="len"/>
+        <param name="x" type="GLfloat"/>
+        <param name="y" type="GLfloat"/>
+        <param name="z" type="GLfloat"/>
+        <param name="w" type="GLfloat"/>
+    </function>
+
+    <function name="ProgramNamedParameter4dNV" offset="assign" vectorequiv="ProgramNamedParameter4dvNV">
+        <param name="id" type="GLuint"/>
+        <param name="len" type="GLsizei" counter="true"/>
+        <param name="name" type="const GLubyte *" count="len"/>
+        <param name="x" type="GLdouble"/>
+        <param name="y" type="GLdouble"/>
+        <param name="z" type="GLdouble"/>
+        <param name="w" type="GLdouble"/>
+    </function>
+
+    <function name="ProgramNamedParameter4fvNV" offset="assign">
+        <param name="id" type="GLuint"/>
+        <param name="len" type="GLsizei" counter="true"/>
+        <param name="name" type="const GLubyte *" count="len"/>
+        <param name="v" type="const GLfloat *" count="4"/>
+        <glx rop="4218"/>
+    </function>
+
+    <function name="ProgramNamedParameter4dvNV" offset="assign">
+        <param name="id" type="GLuint"/>
+        <param name="len" type="GLsizei" counter="true"/>
+        <param name="name" type="const GLubyte *" count="len"/>
+        <param name="v" type="const GLdouble *" count="4"/>
+        <glx rop="4219"/>
+    </function>
+
+    <function name="GetProgramNamedParameterfvNV" offset="assign">
+        <param name="id" type="GLuint"/>
+        <param name="len" type="GLsizei" counter="true"/>
+        <param name="name" type="const GLubyte *" count="len"/>
+        <param name="params" type="GLfloat *" output="true" count="4"/>
+        <glx vendorpriv="1310" always_array="true"/>
+    </function>
+
+    <function name="GetProgramNamedParameterdvNV" offset="assign">
+        <param name="id" type="GLuint"/>
+        <param name="len" type="GLsizei" counter="true"/>
+        <param name="name" type="const GLubyte *" count="len"/>
+        <param name="params" type="GLdouble *" output="true" count="4"/>
+        <glx vendorpriv="1311" always_array="true"/>
+    </function>
+</category>
+
+<category name="GL_NV_texture_expand_normal" number="286">
+    <enum name="TEXTURE_UNSIGNED_REMAP_MODE_NV" count="1" value="0x888F">
+        <size name="TexParameterfv"/>
+        <size name="TexParameteriv"/>
+        <size name="GetTexParameterfv" mode="get"/>
+        <size name="GetTexParameteriv" mode="get"/>
+    </enum>
+</category>
+
+<category name="GL_OES_compressed_paletted_texture" number="294">
+    <enum name="PALETTE4_RGB8_OES"                        value="0x8B90"/>
+    <enum name="PALETTE4_RGBA8_OES"                       value="0x8B91"/>
+    <enum name="PALETTE4_R5_G6_B5_OES"                    value="0x8B92"/>
+    <enum name="PALETTE4_RGBA4_OES"                       value="0x8B93"/>
+    <enum name="PALETTE4_RGB5_A1_OES"                     value="0x8B94"/>
+    <enum name="PALETTE8_RGB8_OES"                        value="0x8B95"/>
+    <enum name="PALETTE8_RGBA8_OES"                       value="0x8B96"/>
+    <enum name="PALETTE8_R5_G6_B5_OES"                    value="0x8B97"/>
+    <enum name="PALETTE8_RGBA4_OES"                       value="0x8B98"/>
+    <enum name="PALETTE8_RGB5_A1_OES"                     value="0x8B99"/>
+</category>
+
+<category name="GL_OES_read_format" number="295">
+    <enum name="IMPLEMENTATION_COLOR_READ_TYPE_OES"       value="0x8B9A"/>
+    <enum name="IMPLEMENTATION_COLOR_READ_FORMAT_OES"     value="0x8B9B"/>
+</category>
+
+<category name="GL_EXT_depth_bounds_test" number="297">
+    <enum name="DEPTH_BOUNDS_TEST_EXT"         count="1"  value="0x8890">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="DEPTH_BOUNDS_EXT"              count="2"  value="0x8891">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="DepthBoundsEXT" offset="assign" static_dispatch="false">
+        <param name="zmin" type="GLclampd"/>
+        <param name="zmax" type="GLclampd"/>
+        <glx rop="4229" ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_EXT_texture_mirror_clamp" number="298">
+    <enum name="MIRROR_CLAMP_EXT"                         value="0x8742"/>
+    <enum name="MIRROR_CLAMP_TO_EDGE_EXT"                 value="0x8743"/>
+    <enum name="MIRROR_CLAMP_TO_BORDER_EXT"               value="0x8912"/>
+</category>
+
+<category name="GL_EXT_blend_equation_separate" number="299">
+    <enum name="BLEND_EQUATION_RGB_EXT"        count="1"  value="0x8009">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="BLEND_EQUATION_ALPHA_EXT"      count="1"  value="0x883D">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="BlendEquationSeparateEXT" offset="assign" static_dispatch="false">
+        <param name="modeRGB" type="GLenum"/>
+        <param name="modeA" type="GLenum"/>
+        <glx rop="4228"/>
+    </function>
+</category>
+
+<category name="GL_MESA_pack_invert" number="300">
+    <enum name="PACK_INVERT_MESA"              count="1"  value="0x8758">
+        <size name="Get" mode="get"/>
+    </enum>
+</category>
+
+<category name="GL_MESA_ycbcr_texture" number="301">
+    <enum name="YCBCR_MESA"                               value="0x8757"/>
+    <enum name="UNSIGNED_SHORT_8_8_MESA"                  value="0x85BA"/>
+    <enum name="UNSIGNED_SHORT_8_8_REV_MESA"              value="0x85BB"/>
+</category>
+
+<category name="GL_EXT_pixel_buffer_object" number="302">
+    <enum name="PIXEL_PACK_BUFFER_EXT"                    value="0x88EB"/>
+    <enum name="PIXEL_UNPACK_BUFFER_EXT"                  value="0x88EC"/>
+    <enum name="PIXEL_PACK_BUFFER_BINDING_EXT"            value="0x88ED"/>
+    <enum name="PIXEL_UNPACK_BUFFER_BINDING_EXT"          value="0x88EF"/>
+</category>
+
+<category name="GL_NV_fragment_program_option" number="303">
+    <!-- No new functions, types, enums. -->
+</category>
+
+<category name="GL_NV_fragment_program2" number="304">
+    <enum name="MAX_PROGRAM_EXEC_INSTRUCTIONS_NV" count="1" value="0x88F4">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_CALL_DEPTH_NV"      count="1"  value="0x88F5">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_IF_DEPTH_NV"        count="1"  value="0x88F6">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_LOOP_DEPTH_NV"      count="1"  value="0x88F7">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_LOOP_COUNT_NV"      count="1"  value="0x88F8">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+</category>
+
+<category name="GL_NV_vertex_program2_option" number="305">
+    <enum name="MAX_PROGRAM_EXEC_INSTRUCTIONS_NV" count="1" value="0x88F4">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+    <enum name="MAX_PROGRAM_CALL_DEPTH_NV"      count="1"  value="0x88F5">
+        <size name="GetProgramivARB" mode="get"/>
+    </enum>
+</category>
+
+<category name="GL_NV_vertex_program3" number="306">
+    <enum name="MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB" count="1" value="0x8B4C"/>
+</category>
+
+<!-- Extension number 307 is a GLX extension. -->
+<!-- Extension number 308 is a GLX extension. -->
+
+<category name="GL_EXT_texture_compression_dxt1" number="309">
+    <enum name="COMPRESSED_RGB_S3TC_DXT1_EXT"             value="0x83F0"/>
+    <enum name="COMPRESSED_RGBA_S3TC_DXT1_EXT"            value="0x83F1"/>
+</category>
+
+<xi:include href="EXT_framebuffer_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<xi:include href="EXT_packed_depth_stencil.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<xi:include href="EXT_provoking_vertex.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<xi:include href="EXT_draw_buffers2.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+
+<category name="GL_APPLE_flush_buffer_range" number="321">
+    <enum name="BUFFER_SERIALIZED_MODIFY_APPLE" count="1" value="0x8A12">
+        <size name="GetBufferParameteriv" mode="get"/>
+    </enum>
+    <enum name="BUFFER_FLUSHING_UNMAP_APPLE" count="1" value="0x8A13">
+        <size name="GetBufferParameteriv" mode="get"/>
+    </enum>
+    <function name="BufferParameteriAPPLE" offset="assign" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLint"/>
+    </function>
+    <function name="FlushMappedBufferRangeAPPLE" offset="assign" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="offset" type="GLintptr"/>
+        <param name="size" type="GLsizeiptr"/>
+    </function>
+</category>
+
+<xi:include href="EXT_texture_array.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+<category name="GL_APPLE_texture_range" number="367">
+    <enum name="TEXTURE_STORAGE_HINT_APPLE" count="1" value="0x85BC">
+        <size name="TexParameteriv"/>
+        <size name="TexParameterfv"/>
+        <size name="GetTexParameteriv" mode="get"/>
+        <size name="GetTexParameterfv" mode="get"/>
+    </enum>
+    <enum name="STORAGE_PRIVATE_APPLE" count="1" value="0x85BD">
+        <size name="TexParameteriv"/>
+        <size name="TexParameterfv"/>
+    </enum>
+    <enum name="STORAGE_CACHED_APPLE" count="1" value="0x85BE">
+        <size name="TexParameteriv"/>
+        <size name="TexParameterfv"/>
+    </enum>
+    <enum name="STORAGE_SHARED_APPLE" count="1" value="0x85BF">
+        <size name="TexParameteriv"/>
+        <size name="TexParameterfv"/>
+    </enum>
+    <enum name="TEXTURE_RANGE_LENGTH_APPLE" count="1" value="0x85B7">
+        <size name="GetTexParameteriv" mode="get"/>
+        <size name="GetTexParameterfv" mode="get"/>
+    </enum>
+    <enum name="TEXTURE_RANGE_POINTER_APPLE" count="1" value="0x85B8">
+        <size name="GetTexParameterPointervAPPLE" mode="get"/>
+    </enum>
+    <function name="TextureRangeAPPLE" offset="assign" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="length" type="GLsizei"/>
+        <param name="pointer" type="GLvoid *"/>
+    </function>
+    <function name="GetTexParameterPointervAPPLE" offset="assign" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLvoid **"/>
+    </function>
+</category>
+
+<!-- Unnumbered extensions sorted by name. -->
+
+<category name="GL_ATI_blend_equation_separate">
+    <function name="BlendEquationSeparateATI" alias="BlendEquationSeparateEXT" static_dispatch="false">
+        <param name="modeRGB" type="GLenum"/>
+        <param name="modeA" type="GLenum"/>
+    </function>
+</category>
+
+<category name="GL_ATI_separate_stencil">
+    <enum name="STENCIL_BACK_FUNC_ATI"     count="1"  value="0x8800">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_BACK_FAIL_ATI"     count="1"  value="0x8801">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_BACK_PASS_DEPTH_FAIL_ATI" count="1"  value="0x8802">
+        <size name="Get" mode="get"/>
+    </enum>
+    <enum name="STENCIL_BACK_PASS_DEPTH_PASS_ATI" count="1"  value="0x8803">
+        <size name="Get" mode="get"/>
+    </enum>
+
+    <function name="StencilOpSeparateATI" alias="StencilOpSeparate" static_dispatch="false">
+        <param name="face" type="GLenum"/>
+        <param name="sfail" type="GLenum"/>
+        <param name="zfail" type="GLenum"/>
+        <param name="zpass" type="GLenum"/>
+    </function>
+    <function name="StencilFuncSeparateATI" offset="assign" static_dispatch="false">
+        <param name="frontfunc" type="GLenum"/>
+        <param name="backfunc" type="GLenum"/>
+        <param name="ref" type="GLint"/>
+        <param name="mask" type="GLuint"/>
+    </function>
+
+</category>
+
+<category name="GL_EXT_gpu_program_parameters">
+    <function name="ProgramEnvParameters4fvEXT" offset="assign" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="params" type="const GLfloat *"/>
+    </function>
+
+    <function name="ProgramLocalParameters4fvEXT" offset="assign" static_dispatch="false">
+        <param name="target" type="GLenum"/>
+        <param name="index" type="GLuint"/>
+        <param name="count" type="GLsizei"/>
+        <param name="params" type="const GLfloat *"/>
+    </function>
+</category>
+
+<category name="GL_EXT_timer_query">
+    <enum name="TIME_ELAPSED_EXT" value="0x88BF"/>
+    <type name="int64EXT"                  size="8"/>
+    <type name="uint64EXT" unsigned="true" size="8"/>
+    <function name="GetQueryObjecti64vEXT" offset="assign" static_dispatch="false">
+        <param name="id" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLint64EXT *"/>
+    </function>
+    <function name="GetQueryObjectui64vEXT" offset="assign" static_dispatch="false">
+        <param name="id" type="GLuint"/>
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="GLuint64EXT *"/>
+    </function>
+</category>
+
+<category name="GL_INGR_blend_func_separate">
+    <function name="BlendFuncSeparateINGR" alias="BlendFuncSeparateEXT" static_dispatch="false">
+        <param name="sfactorRGB" type="GLenum"/>
+        <param name="dfactorRGB" type="GLenum"/>
+        <param name="sfactorAlpha" type="GLenum"/>
+        <param name="dfactorAlpha" type="GLenum"/>
+    </function>
+</category>
+
+<category name="GL_MESA_texture_signed_rgba">
+    <enum name="SIGNED_NORMALIZED"                        value="0x8F9C"/>
+    <enum name="RGBA_SNORM"                               value="0x8F93"/>
+    <enum name="RGBA8_SNORM"                              value="0x8F97"/>
+</category>
+
+<category name="GL_MESA_shader_debug">
+    <enum name="DEBUG_OBJECT_MESA"                        value="0x8759"/>
+    <enum name="DEBUG_PRINT_MESA"                         value="0x875A"/>
+    <enum name="DEBUG_ASSERT_MESA"                        value="0x875B"/>
+    <function name="CreateDebugObjectMESA">
+        <return type="GLhandleARB"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="ClearDebugLogMESA">
+        <param name="obj" type="GLhandleARB"/>
+        <param name="logType" type="GLenum"/>
+        <param name="shaderType" type="GLenum"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="GetDebugLogMESA">
+        <param name="obj" type="GLhandleARB"/>
+        <param name="logType" type="GLenum"/>
+        <param name="shaderType" type="GLenum"/>
+        <param name="maxLength" type="GLsizei"/>
+        <param name="length" type="GLsizei *" output="true"/>
+        <param name="debugLog" type="GLcharARB *" output="true"/>
+        <glx ignore="true"/>
+    </function>
+    <function name="GetDebugLogLengthMESA">
+        <return type="GLsizei"/>
+        <param name="obj" type="GLhandleARB"/>
+        <param name="logType" type="GLenum"/>
+        <param name="shaderType" type="GLenum"/>
+        <glx ignore="true"/>
+    </function>
+</category>
+
+<category name="GL_SGIS_point_parameters">
+    <enum name="POINT_SIZE_MIN_SGIS"           count="1"  value="0x8126">
+        <size name="PointParameterfvEXT"/>
+    </enum>
+    <enum name="POINT_SIZE_MAX_SGIS"           count="1"  value="0x8127">
+        <size name="PointParameterfvEXT"/>
+    </enum>
+    <enum name="POINT_FADE_THRESHOLD_SIZE_SGIS" count="1" value="0x8128">
+        <size name="PointParameterfvEXT"/>
+    </enum>
+    <enum name="POINT_DISTANCE_ATTENUATION_SGIS" count="3" value="0x8129">
+        <size name="PointParameterfvEXT"/>
+    </enum>
+
+    <function name="PointParameterfSGIS" alias="PointParameterfEXT" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="param" type="GLfloat"/>
+    </function>
+
+    <function name="PointParameterfvSGIS" alias="PointParameterfvEXT" static_dispatch="false">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLfloat *"/>
+    </function>
+</category>
+
+<category name="GL_SGIX_igloo_interface">
+    <function name="IglooInterfaceSGIX">
+        <param name="pname" type="GLenum"/>
+        <param name="params" type="const GLvoid *"/>
+    </function>
+</category>
+
+<category name="GL_SGIX_polynomial_ffd">
+    <function name="DeformationMap3dSGIX">
+        <param name="target" type="GLenum"/>
+        <param name="u1" type="GLdouble"/>
+        <param name="u2" type="GLdouble"/>
+        <param name="ustride" type="GLint"/>
+        <param name="uorder" type="GLint"/>
+        <param name="v1" type="GLdouble"/>
+        <param name="v2" type="GLdouble"/>
+        <param name="vstride" type="GLint"/>
+        <param name="vorder" type="GLint"/>
+        <param name="w1" type="GLdouble"/>
+        <param name="w2" type="GLdouble"/>
+        <param name="wstride" type="GLint"/>
+        <param name="worder" type="GLint"/>
+        <param name="points" type="const GLdouble *"/>
+    </function>
+
+    <function name="DeformationMap3fSGIX">
+        <param name="target" type="GLenum"/>
+        <param name="u1" type="GLfloat"/>
+        <param name="u2" type="GLfloat"/>
+        <param name="ustride" type="GLint"/>
+        <param name="uorder" type="GLint"/>
+        <param name="v1" type="GLfloat"/>
+        <param name="v2" type="GLfloat"/>
+        <param name="vstride" type="GLint"/>
+        <param name="vorder" type="GLint"/>
+        <param name="w1" type="GLfloat"/>
+        <param name="w2" type="GLfloat"/>
+        <param name="wstride" type="GLint"/>
+        <param name="worder" type="GLint"/>
+        <param name="points" type="const GLfloat *"/>
+    </function>
+
+    <function name="DeformSGIX">
+        <param name="mask" type="GLenum"/>
+    </function>
+
+    <function name="LoadIdentityDeformationMapSGIX">
+        <param name="mask" type="GLenum"/>
+    </function>
+</category>
+
+<xi:include href="OES_EGL_image.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+
+</OpenGLAPI>
diff --git a/src/mapi/glapi/gen/gl_SPARC_asm.py b/src/mapi/glapi/gen/gl_SPARC_asm.py
new file mode 100644 (file)
index 0000000..33e752d
--- /dev/null
@@ -0,0 +1,275 @@
+#!/usr/bin/env python
+
+# (C) Copyright IBM Corporation 2004
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+
+import license
+import gl_XML, glX_XML
+import sys, getopt
+
+class PrintGenericStubs(gl_XML.gl_print_base):
+       def __init__(self):
+               gl_XML.gl_print_base.__init__(self)
+               self.name = "gl_SPARC_asm.py (from Mesa)"
+               self.license = license.bsd_license_template % ( \
+"""Copyright (C) 1999-2003  Brian Paul   All Rights Reserved.
+(C) Copyright IBM Corporation 2004""", "BRIAN PAUL, IBM")
+
+
+       def printRealHeader(self):
+               print '#include "glapi/glapioffsets.h"'
+               print ''
+               print '#ifdef __arch64__'
+               print '#define GL_OFF(N)\t((N) * 8)'
+               print '#define GL_LL\t\tldx'
+               print '#define GL_TIE_LD(SYM)\t%tie_ldx(SYM)'
+               print '#define GL_STACK_SIZE\t128'
+               print '#else'
+               print '#define GL_OFF(N)\t((N) * 4)'
+               print '#define GL_LL\t\tld'
+               print '#define GL_TIE_LD(SYM)\t%tie_ld(SYM)'
+               print '#define GL_STACK_SIZE\t64'
+               print '#endif'
+               print ''
+               print '#define GLOBL_FN(x) .globl x ; .type x, @function'
+               print '#define HIDDEN(x) .hidden x'
+               print ''
+               print '\t.register %g2, #scratch'
+               print '\t.register %g3, #scratch'
+               print ''
+               print '\t.text'
+               print ''
+               print '\tGLOBL_FN(__glapi_sparc_icache_flush)'
+               print '\tHIDDEN(__glapi_sparc_icache_flush)'
+               print '\t.type\t__glapi_sparc_icache_flush, @function'
+               print '__glapi_sparc_icache_flush: /* %o0 = insn_addr */'
+               print '\tflush\t%o0'
+               print '\tretl'
+               print '\t nop'
+               print ''
+               print '\t.align\t32'
+               print ''
+               print '\t.type\t__glapi_sparc_get_pc, @function'
+               print '__glapi_sparc_get_pc:'
+               print '\tretl'
+               print '\t add\t%o7, %g2, %g2'
+               print '\t.size\t__glapi_sparc_get_pc, .-__glapi_sparc_get_pc'
+               print ''
+               print '#ifdef GLX_USE_TLS'
+               print ''
+               print '\tGLOBL_FN(__glapi_sparc_get_dispatch)'
+               print '\tHIDDEN(__glapi_sparc_get_dispatch)'
+               print '__glapi_sparc_get_dispatch:'
+               print '\tmov\t%o7, %g1'
+               print '\tsethi\t%hi(_GLOBAL_OFFSET_TABLE_-4), %g2'
+               print '\tcall\t__glapi_sparc_get_pc'
+               print '\tadd\t%g2, %lo(_GLOBAL_OFFSET_TABLE_+4), %g2'
+               print '\tmov\t%g1, %o7'
+               print '\tsethi\t%tie_hi22(_glapi_tls_Dispatch), %g1'
+               print '\tadd\t%g1, %tie_lo10(_glapi_tls_Dispatch), %g1'
+               print '\tGL_LL\t[%g2 + %g1], %g2, GL_TIE_LD(_glapi_tls_Dispatch)'
+               print '\tretl'
+               print '\t mov\t%g2, %o0'
+               print ''
+               print '\t.data'
+               print '\t.align\t32'
+               print ''
+               print '\t/* --> sethi %hi(_glapi_tls_Dispatch), %g1 */'
+               print '\t/* --> or %g1, %lo(_glapi_tls_Dispatch), %g1 */'
+               print '\tGLOBL_FN(__glapi_sparc_tls_stub)'
+               print '\tHIDDEN(__glapi_sparc_tls_stub)'
+               print '__glapi_sparc_tls_stub: /* Call offset in %g3 */'
+               print '\tmov\t%o7, %g1'
+               print '\tsethi\t%hi(_GLOBAL_OFFSET_TABLE_-4), %g2'
+               print '\tcall\t__glapi_sparc_get_pc'
+               print '\tadd\t%g2, %lo(_GLOBAL_OFFSET_TABLE_+4), %g2'
+               print '\tmov\t%g1, %o7'
+               print '\tsrl\t%g3, 10, %g3'
+               print '\tsethi\t%tie_hi22(_glapi_tls_Dispatch), %g1'
+               print '\tadd\t%g1, %tie_lo10(_glapi_tls_Dispatch), %g1'
+               print '\tGL_LL\t[%g2 + %g1], %g2, GL_TIE_LD(_glapi_tls_Dispatch)'
+               print '\tGL_LL\t[%g7+%g2], %g1'
+               print '\tGL_LL\t[%g1 + %g3], %g1'
+               print '\tjmp\t%g1'
+               print '\t nop'
+               print '\t.size\t__glapi_sparc_tls_stub, .-__glapi_sparc_tls_stub'
+               print ''
+               print '#define GL_STUB(fn, off)\t\t\t\t\\'
+               print '\tGLOBL_FN(fn);\t\t\t\t\t\\'
+               print 'fn:\tba\t__glapi_sparc_tls_stub;\t\t\t\\'
+               print '\t sethi\tGL_OFF(off), %g3;\t\t\t\\'
+               print '\t.size\tfn,.-fn;'
+               print ''
+               print '#elif defined(PTHREADS)'
+               print ''
+               print '\t/* 64-bit 0x00 --> sethi %hh(_glapi_Dispatch), %g1 */'
+               print '\t/* 64-bit 0x04 --> sethi %lm(_glapi_Dispatch), %g2 */'
+               print '\t/* 64-bit 0x08 --> or %g1, %hm(_glapi_Dispatch), %g1 */'
+               print '\t/* 64-bit 0x0c --> sllx %g1, 32, %g1 */'
+               print '\t/* 64-bit 0x10 --> add %g1, %g2, %g1 */'
+               print '\t/* 64-bit 0x14 --> ldx [%g1 + %lo(_glapi_Dispatch)], %g1 */'
+               print ''
+               print '\t/* 32-bit 0x00 --> sethi %hi(_glapi_Dispatch), %g1 */'
+               print '\t/* 32-bit 0x04 --> ld [%g1 + %lo(_glapi_Dispatch)], %g1 */'
+               print ''
+               print '\t.data'
+               print '\t.align\t32'
+               print ''
+               print '\tGLOBL_FN(__glapi_sparc_pthread_stub)'
+               print '\tHIDDEN(__glapi_sparc_pthread_stub)'
+               print '__glapi_sparc_pthread_stub: /* Call offset in %g3 */'
+               print '\tmov\t%o7, %g1'
+               print '\tsethi\t%hi(_GLOBAL_OFFSET_TABLE_-4), %g2'
+               print '\tcall\t__glapi_sparc_get_pc'
+               print '\t add\t%g2, %lo(_GLOBAL_OFFSET_TABLE_+4), %g2'
+               print '\tmov\t%g1, %o7'
+               print '\tsethi\t%hi(_glapi_Dispatch), %g1'
+               print '\tor\t%g1, %lo(_glapi_Dispatch), %g1'
+               print '\tsrl\t%g3, 10, %g3'
+               print '\tGL_LL\t[%g2+%g1], %g2'
+               print '\tGL_LL\t[%g2], %g1'
+               print '\tcmp\t%g1, 0'
+               print '\tbe\t2f'
+               print '\t nop'
+               print '1:\tGL_LL\t[%g1 + %g3], %g1'
+               print '\tjmp\t%g1'
+               print '\t nop'
+               print '2:\tsave\t%sp, GL_STACK_SIZE, %sp'
+               print '\tmov\t%g3, %l0'
+               print '\tcall\t_glapi_get_dispatch'
+               print '\t nop'
+               print '\tmov\t%o0, %g1'
+               print '\tmov\t%l0, %g3'
+               print '\tba\t1b'
+               print '\t restore %g0, %g0, %g0'
+               print '\t.size\t__glapi_sparc_pthread_stub, .-__glapi_sparc_pthread_stub'
+               print ''
+               print '#define GL_STUB(fn, off)\t\t\t\\'
+               print '\tGLOBL_FN(fn);\t\t\t\t\\'
+               print 'fn:\tba\t__glapi_sparc_pthread_stub;\t\\'
+               print '\t sethi\tGL_OFF(off), %g3;\t\t\\'
+               print '\t.size\tfn,.-fn;'
+               print ''
+               print '#else /* Non-threaded version. */'
+               print ''
+               print '\t.type  __glapi_sparc_nothread_stub, @function'
+               print '__glapi_sparc_nothread_stub: /* Call offset in %g3 */'
+               print '\tmov\t%o7, %g1'
+               print '\tsethi\t%hi(_GLOBAL_OFFSET_TABLE_-4), %g2'
+               print '\tcall\t__glapi_sparc_get_pc'
+               print '\t add\t%g2, %lo(_GLOBAL_OFFSET_TABLE_+4), %g2'
+               print '\tmov\t%g1, %o7'
+               print '\tsrl\t%g3, 10, %g3'
+               print '\tsethi\t%hi(_glapi_Dispatch), %g1'
+               print '\tor\t%g1, %lo(_glapi_Dispatch), %g1'
+               print '\tGL_LL\t[%g2+%g1], %g2'
+               print '\tGL_LL\t[%g2], %g1'
+               print '\tGL_LL\t[%g1 + %g3], %g1'
+               print '\tjmp\t%g1'
+               print '\t nop'
+               print '\t.size\t__glapi_sparc_nothread_stub, .-__glapi_sparc_nothread_stub'
+               print ''
+               print '#define GL_STUB(fn, off)\t\t\t\\'
+               print '\tGLOBL_FN(fn);\t\t\t\t\\'
+               print 'fn:\tba\t__glapi_sparc_nothread_stub;\t\\'
+               print '\t sethi\tGL_OFF(off), %g3;\t\t\\'
+               print '\t.size\tfn,.-fn;'
+               print ''
+               print '#endif'
+               print ''
+               print '#define GL_STUB_ALIAS(fn, alias)         \\'
+               print ' .globl  fn;                             \\'
+               print ' .set    fn, alias'
+               print ''
+               print '\t.text'
+               print '\t.align\t32'
+               print ''
+               print '\t.globl\tgl_dispatch_functions_start'
+               print '\tHIDDEN(gl_dispatch_functions_start)'
+               print 'gl_dispatch_functions_start:'
+               print ''
+               return
+
+       def printRealFooter(self):
+               print ''
+               print '\t.globl\tgl_dispatch_functions_end'
+               print '\tHIDDEN(gl_dispatch_functions_end)'
+               print 'gl_dispatch_functions_end:'
+               return
+
+       def printBody(self, api):
+               for f in api.functionIterateByOffset():
+                       name = f.dispatch_name()
+
+                       print '\tGL_STUB(gl%s, _gloffset_%s)' % (name, f.name)
+
+                       if not f.is_static_entry_point(f.name):
+                               print '\tHIDDEN(gl%s)' % (name)
+
+               for f in api.functionIterateByOffset():
+                       name = f.dispatch_name()
+
+                       if f.is_static_entry_point(f.name):
+                               for n in f.entry_points:
+                                       if n != f.name:
+                                               text = '\tGL_STUB_ALIAS(gl%s, gl%s)' % (n, f.name)
+
+                                               if f.has_different_protocol(n):
+                                                       print '#ifndef GLX_INDIRECT_RENDERING'
+                                                       print text
+                                                       print '#endif'
+                                               else:
+                                                       print text
+
+               return
+
+
+def show_usage():
+       print "Usage: %s [-f input_file_name] [-m output_mode]" % sys.argv[0]
+       sys.exit(1)
+
+if __name__ == '__main__':
+       file_name = "gl_API.xml"
+       mode = "generic"
+
+       try:
+               (args, trail) = getopt.getopt(sys.argv[1:], "m:f:")
+       except Exception,e:
+               show_usage()
+
+       for (arg,val) in args:
+               if arg == '-m':
+                       mode = val
+               elif arg == "-f":
+                       file_name = val
+
+       if mode == "generic":
+               printer = PrintGenericStubs()
+       else:
+               print "ERROR: Invalid mode \"%s\" specified." % mode
+               show_usage()
+
+       api = gl_XML.parse_GL_API(file_name, glX_XML.glx_item_factory())
+       printer.Print(api)
diff --git a/src/mapi/glapi/gen/gl_XML.py b/src/mapi/glapi/gen/gl_XML.py
new file mode 100644 (file)
index 0000000..660c8cf
--- /dev/null
@@ -0,0 +1,967 @@
+#!/usr/bin/env python
+
+# (C) Copyright IBM Corporation 2004, 2005
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+
+import libxml2
+import re, sys, string
+import typeexpr
+
+
+def parse_GL_API( file_name, factory = None ):
+       doc = libxml2.readFile( file_name, None, libxml2.XML_PARSE_XINCLUDE + libxml2.XML_PARSE_NOBLANKS + libxml2.XML_PARSE_DTDVALID + libxml2.XML_PARSE_DTDATTR + libxml2.XML_PARSE_DTDLOAD + libxml2.XML_PARSE_NOENT )
+       ret = doc.xincludeProcess()
+
+       if not factory:
+               factory = gl_item_factory()
+
+       api = factory.create_item( "api", None, None )
+       api.process_element( doc )
+
+       # After the XML has been processed, we need to go back and assign
+       # dispatch offsets to the functions that request that their offsets
+       # be assigned by the scripts.  Typically this means all functions
+       # that are not part of the ABI.
+
+       for func in api.functionIterateByCategory():
+               if func.assign_offset:
+                       func.offset = api.next_offset;
+                       api.next_offset += 1
+
+       doc.freeDoc()
+
+       return api
+
+
+def is_attr_true( element, name ):
+       """Read a name value from an element's attributes.
+       
+       The value read from the attribute list must be either 'true' or
+       'false'.  If the value is 'false', zero will be returned.  If the
+       value is 'true', non-zero will be returned.  An exception will be
+       raised for any other value."""
+
+       value = element.nsProp( name, None )
+       if value == "true":
+               return 1
+       elif value == "false":
+               return 0
+       else:
+               raise RuntimeError('Invalid value "%s" for boolean "%s".' % (value, name))
+
+
+class gl_print_base:
+       """Base class of all API pretty-printers.
+
+       In the model-view-controller pattern, this is the view.  Any derived
+       class will want to over-ride the printBody, printRealHader, and
+       printRealFooter methods.  Some derived classes may want to over-ride
+       printHeader and printFooter, or even Print (though this is unlikely).
+       """
+
+       def __init__(self):
+               # Name of the script that is generating the output file.
+               # Every derived class should set this to the name of its
+               # source file.
+
+               self.name = "a"
+
+
+               # License on the *generated* source file.  This may differ
+               # from the license on the script that is generating the file.
+               # Every derived class should set this to some reasonable
+               # value.
+               #
+               # See license.py for an example of a reasonable value.
+
+               self.license = "The license for this file is unspecified."
+
+               
+               # The header_tag is the name of the C preprocessor define
+               # used to prevent multiple inclusion.  Typically only
+               # generated C header files need this to be set.  Setting it
+               # causes code to be generated automatically in printHeader
+               # and printFooter.
+
+               self.header_tag = None
+
+               
+               # List of file-private defines that must be undefined at the
+               # end of the file.  This can be used in header files to define
+               # names for use in the file, then undefine them at the end of
+               # the header file.
+
+               self.undef_list = []
+               return
+
+
+       def Print(self, api):
+               self.printHeader()
+               self.printBody(api)
+               self.printFooter()
+               return
+
+
+       def printHeader(self):
+               """Print the header associated with all files and call the printRealHeader method."""
+
+               print '/* DO NOT EDIT - This file generated automatically by %s script */' \
+                       % (self.name)
+               print ''
+               print '/*'
+               print ' * ' + self.license.replace('\n', '\n * ')
+               print ' */'
+               print ''
+               if self.header_tag:
+                   print '#if !defined( %s )' % (self.header_tag)
+                   print '#  define %s' % (self.header_tag)
+                   print ''
+               self.printRealHeader();
+               return
+
+
+       def printFooter(self):
+               """Print the header associated with all files and call the printRealFooter method."""
+
+               self.printRealFooter()
+
+               if self.undef_list:
+                       print ''
+                       for u in self.undef_list:
+                               print "#  undef %s" % (u)
+
+               if self.header_tag:
+                       print ''
+                       print '#endif /* !defined( %s ) */' % (self.header_tag)
+
+
+       def printRealHeader(self):
+               """Print the "real" header for the created file.
+
+               In the base class, this function is empty.  All derived
+               classes should over-ride this function."""
+               return
+
+
+       def printRealFooter(self):
+               """Print the "real" footer for the created file.
+
+               In the base class, this function is empty.  All derived
+               classes should over-ride this function."""
+               return
+
+
+       def printPure(self):
+               """Conditionally define `PURE' function attribute.
+
+               Conditionally defines a preprocessor macro `PURE' that wraps
+               GCC's `pure' function attribute.  The conditional code can be
+               easilly adapted to other compilers that support a similar
+               feature.
+
+               The name is also added to the file's undef_list.
+               """
+               self.undef_list.append("PURE")
+               print """#  if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590))
+#    define PURE __attribute__((pure))
+#  else
+#    define PURE
+#  endif"""
+               return
+
+
+       def printFastcall(self):
+               """Conditionally define `FASTCALL' function attribute.
+
+               Conditionally defines a preprocessor macro `FASTCALL' that
+               wraps GCC's `fastcall' function attribute.  The conditional
+               code can be easilly adapted to other compilers that support a
+               similar feature.
+
+               The name is also added to the file's undef_list.
+               """
+
+               self.undef_list.append("FASTCALL")
+               print """#  if defined(__i386__) && defined(__GNUC__) && !defined(__CYGWIN__) && !defined(__MINGW32__)
+#    define FASTCALL __attribute__((fastcall))
+#  else
+#    define FASTCALL
+#  endif"""
+               return
+
+
+       def printVisibility(self, S, s):
+               """Conditionally define visibility function attribute.
+
+               Conditionally defines a preprocessor macro name S that wraps
+               GCC's visibility function attribute.  The visibility used is
+               the parameter s.  The conditional code can be easilly adapted
+               to other compilers that support a similar feature.
+
+               The name is also added to the file's undef_list.
+               """
+
+               self.undef_list.append(S)
+               print """#  if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) && defined(__ELF__)
+#    define %s  __attribute__((visibility("%s")))
+#  else
+#    define %s
+#  endif""" % (S, s, S)
+               return
+
+
+       def printNoinline(self):
+               """Conditionally define `NOINLINE' function attribute.
+
+               Conditionally defines a preprocessor macro `NOINLINE' that
+               wraps GCC's `noinline' function attribute.  The conditional
+               code can be easilly adapted to other compilers that support a
+               similar feature.
+
+               The name is also added to the file's undef_list.
+               """
+
+               self.undef_list.append("NOINLINE")
+               print """#  if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590))
+#    define NOINLINE __attribute__((noinline))
+#  else
+#    define NOINLINE
+#  endif"""
+               return
+
+
+def real_function_name(element):
+       name = element.nsProp( "name", None )
+       alias = element.nsProp( "alias", None )
+       
+       if alias:
+               return alias
+       else:
+               return name
+
+
+def real_category_name(c):
+       if re.compile("[1-9][0-9]*[.][0-9]+").match(c):
+               return "GL_VERSION_" + c.replace(".", "_")
+       else:
+               return c
+
+
+def classify_category(name, number):
+       """Based on the category name and number, select a numerical class for it.
+       
+       Categories are divided into four classes numbered 0 through 3.  The
+       classes are:
+
+               0. Core GL versions, sorted by version number.
+               1. ARB extensions, sorted by extension number.
+               2. Non-ARB extensions, sorted by extension number.
+               3. Un-numbered extensions, sorted by extension name.
+       """
+
+       try:
+               core_version = float(name)
+       except Exception,e:
+               core_version = 0.0
+
+       if core_version > 0.0:
+               cat_type = 0
+               key = name
+       elif name.startswith("GL_ARB_") or name.startswith("GLX_ARB_") or name.startswith("WGL_ARB_"):
+               cat_type = 1
+               key = int(number)
+       else:
+               if number != None:
+                       cat_type = 2
+                       key = int(number)
+               else:
+                       cat_type = 3
+                       key = name
+
+
+       return [cat_type, key]
+
+
+def create_parameter_string(parameters, include_names):
+       """Create a parameter string from a list of gl_parameters."""
+
+       list = []
+       for p in parameters:
+               if p.is_padding:
+                       continue
+
+               if include_names:
+                       list.append( p.string() )
+               else:
+                       list.append( p.type_string() )
+
+       if len(list) == 0: list = ["void"]
+
+       return string.join(list, ", ")
+
+
+class gl_item:
+       def __init__(self, element, context):
+               self.context = context
+               self.name = element.nsProp( "name", None )
+               self.category = real_category_name( element.parent.nsProp( "name", None ) )
+               return
+
+
+class gl_type( gl_item ):
+       def __init__(self, element, context):
+               gl_item.__init__(self, element, context)
+               self.size = int( element.nsProp( "size", None ), 0 )
+
+               te = typeexpr.type_expression( None )
+               tn = typeexpr.type_node()
+               tn.size = int( element.nsProp( "size", None ), 0 )
+               tn.integer = not is_attr_true( element, "float" )
+               tn.unsigned = is_attr_true( element, "unsigned" )
+               tn.name = "GL" + self.name
+               te.set_base_type_node( tn )
+
+               self.type_expr = te
+               return
+       
+
+       def get_type_expression(self):
+               return self.type_expr
+
+
+class gl_enum( gl_item ):
+       def __init__(self, element, context):
+               gl_item.__init__(self, element, context)
+               self.value = int( element.nsProp( "value", None ), 0 )
+
+               temp = element.nsProp( "count", None )
+               if not temp or temp == "?":
+                       self.default_count = -1
+               else:
+                       try:
+                               c = int(temp)
+                       except Exception,e:
+                               raise RuntimeError('Invalid count value "%s" for enum "%s" in function "%s" when an integer was expected.' % (temp, self.name, n))
+
+                       self.default_count = c
+
+               return
+
+
+       def priority(self):
+               """Calculate a 'priority' for this enum name.
+               
+               When an enum is looked up by number, there may be many
+               possible names, but only one is the 'prefered' name.  The
+               priority is used to select which name is the 'best'.
+
+               Highest precedence is given to core GL name.  ARB extension
+               names have the next highest, followed by EXT extension names.
+               Vendor extension names are the lowest.
+               """
+
+               if self.name.endswith( "_BIT" ):
+                       bias = 1
+               else:
+                       bias = 0
+
+               if self.category.startswith( "GL_VERSION_" ):
+                       priority = 0
+               elif self.category.startswith( "GL_ARB_" ):
+                       priority = 2
+               elif self.category.startswith( "GL_EXT_" ):
+                       priority = 4
+               else:
+                       priority = 6
+
+               return priority + bias
+
+
+
+class gl_parameter:
+       def __init__(self, element, context):
+               self.name = element.nsProp( "name", None )
+
+               ts = element.nsProp( "type", None )
+               self.type_expr = typeexpr.type_expression( ts, context )
+
+               temp = element.nsProp( "variable_param", None )
+               if temp:
+                       self.count_parameter_list = temp.split( ' ' )
+               else:
+                       self.count_parameter_list = []
+
+               # The count tag can be either a numeric string or the name of
+               # a variable.  If it is the name of a variable, the int(c)
+               # statement will throw an exception, and the except block will
+               # take over.
+
+               c = element.nsProp( "count", None )
+               try: 
+                       count = int(c)
+                       self.count = count
+                       self.counter = None
+               except Exception,e:
+                       count = 1
+                       self.count = 0
+                       self.counter = c
+               
+               self.count_scale = int(element.nsProp( "count_scale", None ))
+
+               elements = (count * self.count_scale)
+               if elements == 1:
+                       elements = 0
+
+               #if ts == "GLdouble":
+               #       print '/* stack size -> %s = %u (before)*/' % (self.name, self.type_expr.get_stack_size())
+               #       print '/* # elements = %u */' % (elements)
+               self.type_expr.set_elements( elements )
+               #if ts == "GLdouble":
+               #       print '/* stack size -> %s = %u (after) */' % (self.name, self.type_expr.get_stack_size())
+
+               self.is_client_only = is_attr_true( element, 'client_only' )
+               self.is_counter     = is_attr_true( element, 'counter' )
+               self.is_output      = is_attr_true( element, 'output' )
+
+
+               # Pixel data has special parameters.
+
+               self.width      = element.nsProp('img_width',  None)
+               self.height     = element.nsProp('img_height', None)
+               self.depth      = element.nsProp('img_depth',  None)
+               self.extent     = element.nsProp('img_extent', None)
+
+               self.img_xoff   = element.nsProp('img_xoff',   None)
+               self.img_yoff   = element.nsProp('img_yoff',   None)
+               self.img_zoff   = element.nsProp('img_zoff',   None)
+               self.img_woff   = element.nsProp('img_woff',   None)
+
+               self.img_format = element.nsProp('img_format', None)
+               self.img_type   = element.nsProp('img_type',   None)
+               self.img_target = element.nsProp('img_target', None)
+
+               self.img_pad_dimensions = is_attr_true( element, 'img_pad_dimensions' )
+               self.img_null_flag      = is_attr_true( element, 'img_null_flag' )
+               self.img_send_null      = is_attr_true( element, 'img_send_null' )
+
+               self.is_padding = is_attr_true( element, 'padding' )
+               return
+
+
+       def compatible(self, other):
+               return 1
+
+
+       def is_array(self):
+               return self.is_pointer()
+
+
+       def is_pointer(self):
+               return self.type_expr.is_pointer()
+
+
+       def is_image(self):
+               if self.width:
+                       return 1
+               else:
+                       return 0
+
+
+       def is_variable_length(self):
+               return len(self.count_parameter_list) or self.counter
+
+
+       def is_64_bit(self):
+               count = self.type_expr.get_element_count()
+               if count:
+                       if (self.size() / count) == 8:
+                               return 1
+               else:
+                       if self.size() == 8:
+                               return 1
+
+               return 0
+
+
+       def string(self):
+               return self.type_expr.original_string + " " + self.name
+
+
+       def type_string(self):
+               return self.type_expr.original_string
+
+
+       def get_base_type_string(self):
+               return self.type_expr.get_base_name()
+
+
+       def get_dimensions(self):
+               if not self.width:
+                       return [ 0, "0", "0", "0", "0" ]
+
+               dim = 1
+               w = self.width
+               h = "1"
+               d = "1"
+               e = "1"
+
+               if self.height:
+                       dim = 2
+                       h = self.height
+
+               if self.depth:
+                       dim = 3
+                       d = self.depth
+
+               if self.extent:
+                       dim = 4
+                       e = self.extent
+
+               return [ dim, w, h, d, e ]
+
+
+       def get_stack_size(self):
+               return self.type_expr.get_stack_size()
+
+
+       def size(self):
+               if self.is_image():
+                       return 0
+               else:
+                       return self.type_expr.get_element_size()
+
+
+       def get_element_count(self):
+               c = self.type_expr.get_element_count()
+               if c == 0:
+                       return 1
+
+               return c
+
+
+       def size_string(self, use_parens = 1):
+               s = self.size()
+               if self.counter or self.count_parameter_list:
+                       list = [ "compsize" ]
+
+                       if self.counter and self.count_parameter_list:
+                               list.append( self.counter )
+                       elif self.counter:
+                               list = [ self.counter ]
+
+                       if s > 1:
+                               list.append( str(s) )
+
+                       if len(list) > 1 and use_parens :
+                               return "(%s)" % (string.join(list, " * "))
+                       else:
+                               return string.join(list, " * ")
+
+               elif self.is_image():
+                       return "compsize"
+               else:
+                       return str(s)
+
+
+       def format_string(self):
+               if self.type_expr.original_string == "GLenum":
+                       return "0x%x"
+               else:
+                       return self.type_expr.format_string()
+
+
+
+class gl_function( gl_item ):
+       def __init__(self, element, context):
+               self.context = context
+               self.name = None
+
+               self.entry_points = []
+               self.return_type = "void"
+               self.parameters = []
+               self.offset = -1
+               self.initialized = 0
+               self.images = []
+
+               self.assign_offset = 0
+
+               self.static_entry_points = []
+
+               # Track the parameter string (for the function prototype)
+               # for each entry-point.  This is done because some functions
+               # change their prototype slightly when promoted from extension
+               # to ARB extension to core.  glTexImage3DEXT and glTexImage3D
+               # are good examples of this.  Scripts that need to generate
+               # code for these differing aliases need to real prototype
+               # for each entry-point.  Otherwise, they may generate code
+               # that won't compile.
+
+               self.parameter_strings = {}
+
+               self.process_element( element )
+
+               return
+
+       
+       def process_element(self, element):
+               name = element.nsProp( "name", None )
+               alias = element.nsProp( "alias", None )
+
+               if is_attr_true(element, "static_dispatch"):
+                       self.static_entry_points.append(name)
+
+               self.entry_points.append( name )
+               if alias:
+                       true_name = alias
+               else:
+                       true_name = name
+
+                       # Only try to set the offset when a non-alias
+                       # entry-point is being processes.
+
+                       offset = element.nsProp( "offset", None )
+                       if offset:
+                               try:
+                                       o = int( offset )
+                                       self.offset = o
+                               except Exception, e:
+                                       self.offset = -1
+                                       if offset == "assign":
+                                               self.assign_offset = 1
+
+
+               if not self.name:
+                       self.name = true_name
+               elif self.name != true_name:
+                       raise RuntimeError("Function true name redefined.  Was %s, now %s." % (self.name, true_name))
+
+
+               # There are two possible cases.  The first time an entry-point
+               # with data is seen, self.initialized will be 0.  On that
+               # pass, we just fill in the data.  The next time an
+               # entry-point with data is seen, self.initialized will be 1.
+               # On that pass we have to make that the new values match the
+               # valuse from the previous entry-point.
+
+               parameters = []
+               return_type = "void"
+               child = element.children
+               while child:
+                       if child.type == "element":
+                               if child.name == "return":
+                                       return_type = child.nsProp( "type", None )
+                               elif child.name == "param":
+                                       param = self.context.factory.create_item( "parameter", child, self.context)
+                                       parameters.append( param )
+
+                       child = child.next
+
+
+               if self.initialized:
+                       if self.return_type != return_type:
+                               raise RuntimeError( "Return type changed in %s.  Was %s, now %s." % (name, self.return_type, return_type))
+
+                       if len(parameters) != len(self.parameters):
+                               raise RuntimeError( "Parameter count mismatch in %s.  Was %d, now %d." % (name, len(self.parameters), len(parameters)))
+
+                       for j in range(0, len(parameters)):
+                               p1 = parameters[j]
+                               p2 = self.parameters[j]
+                               if not p1.compatible( p2 ):
+                                       raise RuntimeError( 'Parameter type mismatch in %s.  "%s" was "%s", now "%s".' % (name, p2.name, p2.type_expr.original_string, p1.type_expr.original_string))
+
+
+               if true_name == name or not self.initialized:
+                       self.return_type = return_type
+                       self.parameters = parameters
+
+                       for param in self.parameters:
+                               if param.is_image():
+                                       self.images.append( param )
+
+               if element.children:
+                       self.initialized = 1
+                       self.parameter_strings[name] = create_parameter_string(parameters, 1)
+               else:
+                       self.parameter_strings[name] = None
+
+               return
+
+
+       def get_images(self):
+               """Return potentially empty list of input images."""
+               return self.images
+
+
+       def parameterIterator(self):
+               return self.parameters.__iter__();
+
+
+       def get_parameter_string(self, entrypoint = None):
+               if entrypoint:
+                       s = self.parameter_strings[ entrypoint ]
+                       if s:
+                               return s
+               
+               return create_parameter_string( self.parameters, 1 )
+
+       def get_called_parameter_string(self):
+               p_string = ""
+               comma = ""
+
+               for p in self.parameterIterator():
+                       p_string = p_string + comma + p.name
+                       comma = ", "
+
+               return p_string
+
+
+       def is_abi(self):
+               return (self.offset >= 0 and not self.assign_offset)
+
+       def is_static_entry_point(self, name):
+               return name in self.static_entry_points
+
+       def dispatch_name(self):
+               if self.name in self.static_entry_points:
+                       return self.name
+               else:
+                       return "_dispatch_stub_%u" % (self.offset)
+
+       def static_name(self, name):
+               if name in self.static_entry_points:
+                       return name
+               else:
+                       return "_dispatch_stub_%u" % (self.offset)
+
+
+class gl_item_factory:
+       """Factory to create objects derived from gl_item."""
+
+       def create_item(self, item_name, element, context):
+               if item_name == "function":
+                       return gl_function(element, context)
+               if item_name == "type":
+                       return gl_type(element, context)
+               elif item_name == "enum":
+                       return gl_enum(element, context)
+               elif item_name == "parameter":
+                       return gl_parameter(element, context)
+               elif item_name == "api":
+                       return gl_api(self)
+               else:
+                       return None
+
+
+class gl_api:
+       def __init__(self, factory):
+               self.functions_by_name = {}
+               self.enums_by_name = {}
+               self.types_by_name = {}
+
+               self.category_dict = {}
+               self.categories = [{}, {}, {}, {}]
+
+               self.factory = factory
+
+               self.next_offset = 0
+
+               typeexpr.create_initial_types()
+               return
+
+
+       def process_element(self, doc):
+               element = doc.children
+               while element.type != "element" or element.name != "OpenGLAPI":
+                       element = element.next
+
+               if element:
+                       self.process_OpenGLAPI(element)
+               return
+
+
+       def process_OpenGLAPI(self, element):
+               child = element.children
+               while child:
+                       if child.type == "element":
+                               if child.name == "category":
+                                       self.process_category( child )
+                               elif child.name == "OpenGLAPI":
+                                       self.process_OpenGLAPI( child )
+
+                       child = child.next
+
+               return
+
+
+       def process_category(self, cat):
+               cat_name = cat.nsProp( "name", None )
+               cat_number = cat.nsProp( "number", None )
+
+               [cat_type, key] = classify_category(cat_name, cat_number)
+               self.categories[cat_type][key] = [cat_name, cat_number]
+
+               child = cat.children
+               while child:
+                       if child.type == "element":
+                               if child.name == "function":
+                                       func_name = real_function_name( child )
+
+                                       temp_name = child.nsProp( "name", None )
+                                       self.category_dict[ temp_name ] = [cat_name, cat_number]
+
+                                       if self.functions_by_name.has_key( func_name ):
+                                               func = self.functions_by_name[ func_name ]
+                                               func.process_element( child )
+                                       else:
+                                               func = self.factory.create_item( "function", child, self )
+                                               self.functions_by_name[ func_name ] = func
+
+                                       if func.offset >= self.next_offset:
+                                               self.next_offset = func.offset + 1
+
+
+                               elif child.name == "enum":
+                                       enum = self.factory.create_item( "enum", child, self )
+                                       self.enums_by_name[ enum.name ] = enum
+                               elif child.name == "type":
+                                       t = self.factory.create_item( "type", child, self )
+                                       self.types_by_name[ "GL" + t.name ] = t
+
+
+                       child = child.next
+
+               return
+
+
+       def functionIterateByCategory(self, cat = None):
+               """Iterate over functions by category.
+               
+               If cat is None, all known functions are iterated in category
+               order.  See classify_category for details of the ordering.
+               Within a category, functions are sorted by name.  If cat is
+               not None, then only functions in that category are iterated.
+               """
+               lists = [{}, {}, {}, {}]
+
+               for func in self.functionIterateAll():
+                       [cat_name, cat_number] = self.category_dict[func.name]
+
+                       if (cat == None) or (cat == cat_name):
+                               [func_cat_type, key] = classify_category(cat_name, cat_number)
+
+                               if not lists[func_cat_type].has_key(key):
+                                       lists[func_cat_type][key] = {}
+
+                               lists[func_cat_type][key][func.name] = func
+
+
+               functions = []
+               for func_cat_type in range(0,4):
+                       keys = lists[func_cat_type].keys()
+                       keys.sort()
+
+                       for key in keys:
+                               names = lists[func_cat_type][key].keys()
+                               names.sort()
+
+                               for name in names:
+                                       functions.append(lists[func_cat_type][key][name])
+
+               return functions.__iter__()
+
+
+       def functionIterateByOffset(self):
+               max_offset = -1
+               for func in self.functions_by_name.itervalues():
+                       if func.offset > max_offset:
+                               max_offset = func.offset
+
+
+               temp = [None for i in range(0, max_offset + 1)]
+               for func in self.functions_by_name.itervalues():
+                       if func.offset != -1:
+                               temp[ func.offset ] = func
+
+
+               list = []
+               for i in range(0, max_offset + 1):
+                       if temp[i]:
+                               list.append(temp[i])
+
+               return list.__iter__();
+
+
+       def functionIterateAll(self):
+               return self.functions_by_name.itervalues()
+
+
+       def enumIterateByName(self):
+               keys = self.enums_by_name.keys()
+               keys.sort()
+               
+               list = []
+               for enum in keys:
+                       list.append( self.enums_by_name[ enum ] )
+
+               return list.__iter__()
+
+
+       def categoryIterate(self):
+               """Iterate over categories.
+               
+               Iterate over all known categories in the order specified by
+               classify_category.  Each iterated value is a tuple of the
+               name and number (which may be None) of the category.
+               """
+
+               list = []
+               for cat_type in range(0,4):
+                       keys = self.categories[cat_type].keys()
+                       keys.sort()
+                       
+                       for key in keys:
+                               list.append(self.categories[cat_type][key])
+                               
+               return list.__iter__()
+
+
+       def get_category_for_name( self, name ):
+               if self.category_dict.has_key(name):
+                       return self.category_dict[name]
+               else:
+                       return ["<unknown category>", None]
+
+
+       def typeIterate(self):
+               return self.types_by_name.itervalues()
+
+
+       def find_type( self, type_name ):
+               if type_name in self.types_by_name:
+                       return self.types_by_name[ type_name ].type_expr
+               else:
+                       print "Unable to find base type matching \"%s\"." % (type_name)
+                       return None
diff --git a/src/mapi/glapi/gen/gl_and_glX_API.xml b/src/mapi/glapi/gen/gl_and_glX_API.xml
new file mode 100644 (file)
index 0000000..34c977e
--- /dev/null
@@ -0,0 +1,7 @@
+<?xml version="1.0"?>
+<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
+
+<OpenGLAPI>
+<xi:include href="glX_API.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+<xi:include href="gl_API.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+</OpenGLAPI>
\ No newline at end of file
diff --git a/src/mapi/glapi/gen/gl_apitemp.py b/src/mapi/glapi/gen/gl_apitemp.py
new file mode 100644 (file)
index 0000000..41a40fb
--- /dev/null
@@ -0,0 +1,320 @@
+#!/usr/bin/env python
+
+# (C) Copyright IBM Corporation 2004, 2005
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+
+import gl_XML, glX_XML
+import license
+import sys, getopt
+
+class PrintGlOffsets(gl_XML.gl_print_base):
+       def __init__(self, es=False):
+               gl_XML.gl_print_base.__init__(self)
+
+               self.name = "gl_apitemp.py (from Mesa)"
+               self.license = license.bsd_license_template % ( \
+"""Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
+(C) Copyright IBM Corporation 2004""", "BRIAN PAUL, IBM")
+
+               self.es = es
+
+               self.undef_list.append( "KEYWORD1" )
+               self.undef_list.append( "KEYWORD1_ALT" )
+               self.undef_list.append( "KEYWORD2" )
+               self.undef_list.append( "NAME" )
+               self.undef_list.append( "DISPATCH" )
+               self.undef_list.append( "RETURN_DISPATCH" )
+               self.undef_list.append( "DISPATCH_TABLE_NAME" )
+               self.undef_list.append( "UNUSED_TABLE_NAME" )
+               self.undef_list.append( "TABLE_ENTRY" )
+
+
+       def printFunction(self, f, name):
+               p_string = ""
+               o_string = ""
+               t_string = ""
+               comma = ""
+
+               if f.is_static_entry_point(name):
+                       keyword = "KEYWORD1"
+               else:
+                       keyword = "KEYWORD1_ALT"
+
+               n = f.static_name(name)
+
+               for p in f.parameterIterator():
+                       if p.is_padding:
+                               continue
+
+                       if p.is_pointer():
+                               cast = "(const void *) "
+                       else:
+                               cast = ""
+
+                       t_string = t_string + comma + p.format_string()
+                       p_string = p_string + comma + p.name
+                       o_string = o_string + comma + cast + p.name
+                       comma = ", "
+
+
+               if f.return_type != 'void':
+                       dispatch = "RETURN_DISPATCH"
+               else:
+                       dispatch = "DISPATCH"
+
+               need_proto = False
+               if not f.is_static_entry_point(name):
+                       need_proto = True
+               elif self.es:
+                       cat, num = api.get_category_for_name(name)
+                       if (cat.startswith("es") or cat.startswith("GL_OES")):
+                               need_proto = True
+               if need_proto:
+                       print '%s %s KEYWORD2 NAME(%s)(%s);' % (keyword, f.return_type, n, f.get_parameter_string(name))
+                       print ''
+
+               print '%s %s KEYWORD2 NAME(%s)(%s)' % (keyword, f.return_type, n, f.get_parameter_string(name))
+               print '{'
+               if p_string == "":
+                       print '   %s(%s, (), (F, "gl%s();\\n"));' \
+                               % (dispatch, f.name, name)
+               else:
+                       print '   %s(%s, (%s), (F, "gl%s(%s);\\n", %s));' \
+                               % (dispatch, f.name, p_string, name, t_string, o_string)
+               print '}'
+               print ''
+               return
+
+       def printRealHeader(self):
+               print ''
+               self.printVisibility( "HIDDEN", "hidden" )
+               print """
+/*
+ * This file is a template which generates the OpenGL API entry point
+ * functions.  It should be included by a .c file which first defines
+ * the following macros:
+ *   KEYWORD1 - usually nothing, but might be __declspec(dllexport) on Win32
+ *   KEYWORD2 - usually nothing, but might be __stdcall on Win32
+ *   NAME(n)  - builds the final function name (usually add "gl" prefix)
+ *   DISPATCH(func, args, msg) - code to do dispatch of named function.
+ *                               msg is a printf-style debug message.
+ *   RETURN_DISPATCH(func, args, msg) - code to do dispatch with a return value
+ *
+ * Here is an example which generates the usual OpenGL functions:
+ *   #define KEYWORD1
+ *   #define KEYWORD2
+ *   #define NAME(func)  gl##func
+ *   #define DISPATCH(func, args, msg)                           \\
+ *          struct _glapi_table *dispatch = CurrentDispatch;     \\
+ *          (*dispatch->func) args
+ *   #define RETURN DISPATCH(func, args, msg)                    \\
+ *          struct _glapi_table *dispatch = CurrentDispatch;     \\
+ *          return (*dispatch->func) args
+ *
+ */
+
+
+#if defined( NAME )
+#ifndef KEYWORD1
+#define KEYWORD1
+#endif
+
+#ifndef KEYWORD1_ALT
+#define KEYWORD1_ALT HIDDEN
+#endif
+
+#ifndef KEYWORD2
+#define KEYWORD2
+#endif
+
+#ifndef DISPATCH
+#error DISPATCH must be defined
+#endif
+
+#ifndef RETURN_DISPATCH
+#error RETURN_DISPATCH must be defined
+#endif
+
+"""
+               return
+
+    
+
+       def printInitDispatch(self, api):
+               print """
+#endif /* defined( NAME ) */
+
+/*
+ * This is how a dispatch table can be initialized with all the functions
+ * we generated above.
+ */
+#ifdef DISPATCH_TABLE_NAME
+
+#ifndef TABLE_ENTRY
+#error TABLE_ENTRY must be defined
+#endif
+
+#ifdef _GLAPI_SKIP_NORMAL_ENTRY_POINTS
+#error _GLAPI_SKIP_NORMAL_ENTRY_POINTS must not be defined
+#endif
+
+_glapi_proc DISPATCH_TABLE_NAME[] = {"""
+               for f in api.functionIterateByOffset():
+                       print '   TABLE_ENTRY(%s),' % (f.dispatch_name())
+
+               print '   /* A whole bunch of no-op functions.  These might be called'
+               print '    * when someone tries to call a dynamically-registered'
+               print '    * extension function without a current rendering context.'
+               print '    */'
+               for i in range(1, 100):
+                       print '   TABLE_ENTRY(Unused),'
+
+               print '};'
+               print '#endif /* DISPATCH_TABLE_NAME */'
+               print ''
+               return
+
+
+       def printAliasedTable(self, api):
+               print """
+/*
+ * This is just used to silence compiler warnings.
+ * We list the functions which are not otherwise used.
+ */
+#ifdef UNUSED_TABLE_NAME
+_glapi_proc UNUSED_TABLE_NAME[] = {"""
+
+               normal_entries = []
+               proto_entries = []
+               for f in api.functionIterateByOffset():
+                       normal_ents, proto_ents = self.classifyEntryPoints(f)
+
+                       # exclude f.name
+                       if f.name in normal_ents:
+                               normal_ents.remove(f.name)
+                       elif f.name in proto_ents:
+                               proto_ents.remove(f.name)
+
+                       normal_ents = [f.static_name(ent) for ent in normal_ents]
+                       proto_ents = [f.static_name(ent) for ent in proto_ents]
+
+                       normal_entries.extend(normal_ents)
+                       proto_entries.extend(proto_ents)
+
+               print '#ifndef _GLAPI_SKIP_NORMAL_ENTRY_POINTS'
+               for ent in normal_entries:
+                       print '   TABLE_ENTRY(%s),' % (ent)
+               print '#endif /* _GLAPI_SKIP_NORMAL_ENTRY_POINTS */'
+               print '#ifndef _GLAPI_SKIP_PROTO_ENTRY_POINTS'
+               for ent in proto_entries:
+                       print '   TABLE_ENTRY(%s),' % (ent)
+               print '#endif /* _GLAPI_SKIP_PROTO_ENTRY_POINTS */'
+
+               print '};'
+               print '#endif /*UNUSED_TABLE_NAME*/'
+               print ''
+               return
+
+
+       def classifyEntryPoints(self, func):
+               normal_names = []
+               normal_stubs = []
+               proto_names = []
+               proto_stubs = []
+               # classify the entry points
+               for name in func.entry_points:
+                       if func.has_different_protocol(name):
+                               if func.is_static_entry_point(name):
+                                       proto_names.append(name)
+                               else:
+                                       proto_stubs.append(name)
+                       else:
+                               if func.is_static_entry_point(name):
+                                       normal_names.append(name)
+                               else:
+                                       normal_stubs.append(name)
+               # there can be at most one stub for a function
+               if normal_stubs:
+                       normal_names.append(normal_stubs[0])
+               elif proto_stubs:
+                       proto_names.append(proto_stubs[0])
+
+               return (normal_names, proto_names)
+
+       def printBody(self, api):
+               normal_entry_points = []
+               proto_entry_points = []
+               for func in api.functionIterateByOffset():
+                       normal_ents, proto_ents = self.classifyEntryPoints(func)
+                       normal_entry_points.append((func, normal_ents))
+                       proto_entry_points.append((func, proto_ents))
+
+               print '#ifndef _GLAPI_SKIP_NORMAL_ENTRY_POINTS'
+               print ''
+               for func, ents in normal_entry_points:
+                       for ent in ents:
+                               self.printFunction(func, ent)
+               print ''
+               print '#endif /* _GLAPI_SKIP_NORMAL_ENTRY_POINTS */'
+               print ''
+               print '/* these entry points might require different protocols */'
+               print '#ifndef _GLAPI_SKIP_PROTO_ENTRY_POINTS'
+               print ''
+               for func, ents in proto_entry_points:
+                       for ent in ents:
+                               self.printFunction(func, ent)
+               print ''
+               print '#endif /* _GLAPI_SKIP_PROTO_ENTRY_POINTS */'
+               print ''
+
+               self.printInitDispatch(api)
+               self.printAliasedTable(api)
+               return
+
+
+def show_usage():
+       print "Usage: %s [-f input_file_name] [-c]" % sys.argv[0]
+       print "-c          Enable compatibility with OpenGL ES."
+       sys.exit(1)
+
+if __name__ == '__main__':
+       file_name = "gl_API.xml"
+    
+       try:
+               (args, trail) = getopt.getopt(sys.argv[1:], "f:c")
+       except Exception,e:
+               show_usage()
+
+       es = False
+       for (arg,val) in args:
+               if arg == "-f":
+                       file_name = val
+               elif arg == "-c":
+                       es = True
+
+       api = gl_XML.parse_GL_API(file_name, glX_XML.glx_item_factory())
+
+       printer = PrintGlOffsets(es)
+       printer.Print(api)
diff --git a/src/mapi/glapi/gen/gl_enums.py b/src/mapi/glapi/gen/gl_enums.py
new file mode 100644 (file)
index 0000000..644e085
--- /dev/null
@@ -0,0 +1,247 @@
+#!/usr/bin/python2
+# -*- Mode: Python; py-indent-offset: 8 -*-
+
+# (C) Copyright Zack Rusin 2005
+# All Rights Reserved.
+# 
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Zack Rusin <zack@kde.org>
+
+import license
+import gl_XML
+import sys, getopt
+
+class PrintGlEnums(gl_XML.gl_print_base):
+
+       def __init__(self):
+               gl_XML.gl_print_base.__init__(self)
+
+               self.name = "gl_enums.py (from Mesa)"
+               self.license = license.bsd_license_template % ( \
+"""Copyright (C) 1999-2005 Brian Paul All Rights Reserved.""", "BRIAN PAUL")
+               self.enum_table = {}
+
+
+       def printRealHeader(self):
+               print '#include "main/glheader.h"'
+               print '#include "main/mfeatures.h"'
+               print '#include "main/enums.h"'
+               print '#include "main/imports.h"'
+               print ''
+               print 'typedef struct {'
+               print '   size_t offset;'
+               print '   int n;'
+               print '} enum_elt;'
+               print ''
+               return
+
+       def print_code(self):
+               print """
+typedef int (*cfunc)(const void *, const void *);
+
+/**
+ * Compare a key name to an element in the \c all_enums array.
+ *
+ * \c bsearch always passes the key as the first parameter and the pointer
+ * to the array element as the second parameter.  We can elimiate some
+ * extra work by taking advantage of that fact.
+ *
+ * \param a  Pointer to the desired enum name.
+ * \param b  Pointer to an element of the \c all_enums array.
+ */
+static int compar_name( const char *a, const enum_elt *b )
+{
+   return strcmp( a, & enum_string_table[ b->offset ] );
+}
+
+/**
+ * Compare a key enum value to an element in the \c all_enums array.
+ *
+ * \c bsearch always passes the key as the first parameter and the pointer
+ * to the array element as the second parameter.  We can elimiate some
+ * extra work by taking advantage of that fact.
+ *
+ * \param a  Pointer to the desired enum name.
+ * \param b  Pointer to an index into the \c all_enums array.
+ */
+static int compar_nr( const int *a, const unsigned *b )
+{
+   return a[0] - all_enums[*b].n;
+}
+
+
+static char token_tmp[20];
+
+const char *_mesa_lookup_enum_by_nr( int nr )
+{
+   unsigned * i;
+
+   i = (unsigned *) _mesa_bsearch(& nr, reduced_enums,
+                                  Elements(reduced_enums),
+                                  sizeof(reduced_enums[0]),
+                                  (cfunc) compar_nr);
+
+   if ( i != NULL ) {
+      return & enum_string_table[ all_enums[ *i ].offset ];
+   }
+   else {
+      /* this is not re-entrant safe, no big deal here */
+      sprintf(token_tmp, "0x%x", nr);
+      return token_tmp;
+   }
+}
+
+/* Get the name of an enum given that it is a primitive type.  Avoids
+ * GL_FALSE/GL_POINTS ambiguity and others.
+ */
+const char *_mesa_lookup_prim_by_nr( int nr )
+{
+   switch (nr) {
+   case GL_POINTS: return "GL_POINTS";
+   case GL_LINES: return "GL_LINES";
+   case GL_LINE_STRIP: return "GL_LINE_STRIP";
+   case GL_LINE_LOOP: return "GL_LINE_LOOP";
+   case GL_TRIANGLES: return "GL_TRIANGLES";
+   case GL_TRIANGLE_STRIP: return "GL_TRIANGLE_STRIP";
+   case GL_TRIANGLE_FAN: return "GL_TRIANGLE_FAN";
+   case GL_QUADS: return "GL_QUADS";
+   case GL_QUAD_STRIP: return "GL_QUAD_STRIP";
+   case GL_POLYGON: return "GL_POLYGON";
+   case GL_POLYGON+1: return "OUTSIDE_BEGIN_END";
+   default: return "<invalid>";
+   }
+}
+
+
+
+int _mesa_lookup_enum_by_name( const char *symbol )
+{
+   enum_elt * f = NULL;
+
+   if ( symbol != NULL ) {
+      f = (enum_elt *) _mesa_bsearch(symbol, all_enums,
+                                     Elements(all_enums),
+                                     sizeof( enum_elt ),
+                                     (cfunc) compar_name);
+   }
+
+   return (f != NULL) ? f->n : -1;
+}
+
+"""
+               return
+
+
+       def printBody(self, api_list):
+               self.enum_table = {}
+               for api in api_list:
+                       self.process_enums( api )
+
+               keys = self.enum_table.keys()
+               keys.sort()
+
+               name_table = []
+               enum_table = {}
+
+               for enum in keys:
+                       low_pri = 9
+                       for [name, pri] in self.enum_table[ enum ]:
+                               name_table.append( [name, enum] )
+
+                               if pri < low_pri:
+                                       low_pri = pri
+                                       enum_table[enum] = name
+                                               
+
+               name_table.sort()
+
+               string_offsets = {}
+               i = 0;
+               print 'LONGSTRING static const char enum_string_table[] = '
+               for [name, enum] in name_table:
+                       print '   "%s\\0"' % (name)
+                       string_offsets[ name ] = i
+                       i += len(name) + 1
+
+               print '   ;'
+               print ''
+
+
+               print 'static const enum_elt all_enums[%u] =' % (len(name_table))
+               print '{'
+               for [name, enum] in name_table:
+                       print '   { %5u, 0x%08X }, /* %s */' % (string_offsets[name], enum, name)
+               print '};'
+               print ''
+
+               print 'static const unsigned reduced_enums[%u] =' % (len(keys))
+               print '{'
+               for enum in keys:
+                       name = enum_table[ enum ]
+                       if [name, enum] not in name_table:
+                               print '      /* Error! %s, 0x%04x */ 0,' % (name, enum)
+                       else:
+                               i = name_table.index( [name, enum] )
+
+                               print '      %4u, /* %s */' % (i, name)
+               print '};'
+
+
+               self.print_code()
+               return
+
+
+       def process_enums(self, api):
+               for obj in api.enumIterateByName():
+                       if obj.value not in self.enum_table:
+                               self.enum_table[ obj.value ] = []
+
+
+                       enum = self.enum_table[ obj.value ]
+                       name = "GL_" + obj.name
+                       priority = obj.priority()
+                       already_in = False;
+                       for n, p in enum:
+                               if n == name:
+                                       already_in = True
+                       if not already_in:
+                               enum.append( [name, priority] )
+
+
+def show_usage():
+       print "Usage: %s [-f input_file_name]" % sys.argv[0]
+       sys.exit(1)
+
+if __name__ == '__main__':
+       try:
+               (args, trail) = getopt.getopt(sys.argv[1:], "f:")
+       except Exception,e:
+               show_usage()
+
+       api_list = []
+       for (arg,val) in args:
+               if arg == "-f":
+                       api = gl_XML.parse_GL_API( val )
+                       api_list.append(api);
+
+       printer = PrintGlEnums()
+       printer.Print( api_list )
diff --git a/src/mapi/glapi/gen/gl_offsets.py b/src/mapi/glapi/gen/gl_offsets.py
new file mode 100644 (file)
index 0000000..54867b3
--- /dev/null
@@ -0,0 +1,120 @@
+#!/usr/bin/env python
+
+# (C) Copyright IBM Corporation 2004, 2005
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+
+import gl_XML
+import license
+import sys, getopt
+
+class PrintGlOffsets(gl_XML.gl_print_base):
+       def __init__(self, es=False):
+               gl_XML.gl_print_base.__init__(self)
+
+               self.es = es
+               self.name = "gl_offsets.py (from Mesa)"
+               self.header_tag = '_GLAPI_OFFSETS_H_'
+               self.license = license.bsd_license_template % ( \
+"""Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
+(C) Copyright IBM Corporation 2004""", "BRIAN PAUL, IBM")
+               return
+
+       def printBody(self, api):
+               print '/* this file should not be included directly in mesa */'
+               print ''
+
+               functions = []
+               abi_functions = []
+               alias_functions = []
+               count = 0
+               for f in api.functionIterateByOffset():
+                       if not f.is_abi():
+                               functions.append( [f, count] )
+                               count += 1
+                       else:
+                               abi_functions.append( f )
+
+                       if self.es:
+                               # remember functions with aliases
+                               if len(f.entry_points) > 1:
+                                       alias_functions.append(f)
+
+               for f in abi_functions:
+                       print '#define _gloffset_%s %d' % (f.name, f.offset)
+                       last_static = f.offset
+
+               print ''
+               print '#if !defined(_GLAPI_USE_REMAP_TABLE)'
+               print ''
+
+               for [f, index] in functions:
+                       print '#define _gloffset_%s %d' % (f.name, f.offset)
+
+               print '#define _gloffset_FIRST_DYNAMIC %d' % (api.next_offset)
+
+               print ''
+               print '#else'
+               print ''
+
+               for [f, index] in functions:
+                       print '#define _gloffset_%s driDispatchRemapTable[%s_remap_index]' % (f.name, f.name)
+
+               print ''
+               print '#endif /* !defined(_GLAPI_USE_REMAP_TABLE) */'
+
+               if alias_functions:
+                       print ''
+                       print '/* define aliases for compatibility */'
+                       for f in alias_functions:
+                               for name in f.entry_points:
+                                       if name != f.name:
+                                               print '#define _gloffset_%s _gloffset_%s' % (name, f.name)
+               return
+
+
+def show_usage():
+       print "Usage: %s [-f input_file_name] [-c]" % sys.argv[0]
+       print "    -c        Enable compatibility with OpenGL ES."
+       sys.exit(1)
+
+if __name__ == '__main__':
+       file_name = "gl_API.xml"
+    
+       try:
+               (args, trail) = getopt.getopt(sys.argv[1:], "f:c")
+       except Exception,e:
+               show_usage()
+
+       es = False
+       for (arg,val) in args:
+               if arg == "-f":
+                       file_name = val
+               elif arg == "-c":
+                       es = True
+
+       api = gl_XML.parse_GL_API( file_name )
+
+       printer = PrintGlOffsets(es)
+       printer.Print( api )
diff --git a/src/mapi/glapi/gen/gl_procs.py b/src/mapi/glapi/gen/gl_procs.py
new file mode 100644 (file)
index 0000000..5de61fb
--- /dev/null
@@ -0,0 +1,215 @@
+#!/usr/bin/env python
+
+# (C) Copyright IBM Corporation 2004, 2005
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+
+import license
+import gl_XML, glX_XML
+import sys, getopt
+
+class PrintGlProcs(gl_XML.gl_print_base):
+       def __init__(self, long_strings, es=False):
+               gl_XML.gl_print_base.__init__(self)
+
+               self.es = es
+               self.long_strings = long_strings
+               self.name = "gl_procs.py (from Mesa)"
+               self.license = license.bsd_license_template % ( \
+"""Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
+(C) Copyright IBM Corporation 2004, 2006""", "BRIAN PAUL, IBM")
+
+
+       def printRealHeader(self):
+               print """
+/* This file is only included by glapi.c and is used for
+ * the GetProcAddress() function
+ */
+
+typedef struct {
+    GLint Name_offset;
+#if defined(NEED_FUNCTION_POINTER) || defined(GLX_INDIRECT_RENDERING)
+    _glapi_proc Address;
+#endif
+    GLuint Offset;
+} glprocs_table_t;
+
+#if   !defined(NEED_FUNCTION_POINTER) && !defined(GLX_INDIRECT_RENDERING)
+#  define NAME_FUNC_OFFSET(n,f1,f2,f3,o) { n , o }
+#elif  defined(NEED_FUNCTION_POINTER) && !defined(GLX_INDIRECT_RENDERING)
+#  define NAME_FUNC_OFFSET(n,f1,f2,f3,o) { n , (_glapi_proc) f1 , o }
+#elif  defined(NEED_FUNCTION_POINTER) &&  defined(GLX_INDIRECT_RENDERING)
+#  define NAME_FUNC_OFFSET(n,f1,f2,f3,o) { n , (_glapi_proc) f2 , o }
+#elif !defined(NEED_FUNCTION_POINTER) &&  defined(GLX_INDIRECT_RENDERING)
+#  define NAME_FUNC_OFFSET(n,f1,f2,f3,o) { n , (_glapi_proc) f3 , o }
+#endif
+
+"""
+               return
+
+       def printRealFooter(self):
+               print ''
+               print '#undef NAME_FUNC_OFFSET'
+               return
+
+       def printFunctionString(self, name):
+               if self.long_strings:
+                       print '    "gl%s\\0"' % (name)
+               else:
+                       print "    'g','l',",
+                       for c in name:
+                               print "'%s'," % (c),
+                       
+                       print "'\\0',"
+
+
+       def printBody(self, api):
+               print ''
+               if self.long_strings:
+                       print 'static const char gl_string_table[] ='
+               else:
+                       print 'static const char gl_string_table[] = {'
+
+               base_offset = 0
+               table = []
+               for func in api.functionIterateByOffset():
+                       name = func.dispatch_name()
+                       self.printFunctionString(func.name)
+                       table.append((base_offset, "gl" + name, "gl" + name, "NULL", func.name))
+
+                       # The length of the function's name, plus 2 for "gl",
+                       # plus 1 for the NUL.
+
+                       base_offset += len(func.name) + 3
+
+
+               for func in api.functionIterateByOffset():
+                       for n in func.entry_points:
+                               if n != func.name:
+                                       name = func.dispatch_name()
+                                       self.printFunctionString( n )
+                                       
+                                       if func.has_different_protocol(n):
+                                               alt_name = "gl" + func.static_glx_name(n)
+                                               table.append((base_offset, "gl" + name, alt_name, alt_name, func.name))
+                                       else:
+                                               table.append((base_offset, "gl" + name, "gl" + name, "NULL", func.name))
+
+                                       base_offset += len(n) + 3
+
+
+               if self.long_strings:
+                       print '    ;'
+               else:
+                       print '};'
+
+               print ''
+               print ''
+               print "#ifdef USE_MGL_NAMESPACE"
+               for func in api.functionIterateByOffset():
+                       for n in func.entry_points:
+                               if (not func.is_static_entry_point(func.name)) or (func.has_different_protocol(n) and not func.is_static_entry_point(n)):
+                                       print '#define gl_dispatch_stub_%u mgl_dispatch_stub_%u' % (func.offset, func.offset)
+                                       break
+               print "#endif /* USE_MGL_NAMESPACE */"
+               print ''
+               print ''
+               print '#if defined(NEED_FUNCTION_POINTER) || defined(GLX_INDIRECT_RENDERING)'
+               for func in api.functionIterateByOffset():
+                       for n in func.entry_points:
+                               if (not func.is_static_entry_point(func.name)) or (func.has_different_protocol(n) and not func.is_static_entry_point(n)):
+                                       print '%s GLAPIENTRY gl_dispatch_stub_%u(%s);' % (func.return_type, func.offset, func.get_parameter_string())
+                                       break
+
+               if self.es:
+                       categories = {}
+                       for func in api.functionIterateByOffset():
+                               for n in func.entry_points:
+                                       cat, num = api.get_category_for_name(n)
+                                       if (cat.startswith("es") or cat.startswith("GL_OES")):
+                                               if not categories.has_key(cat):
+                                                       categories[cat] = []
+                                               proto = 'GLAPI %s GLAPIENTRY %s(%s);' \
+                                                               % (func.return_type, "gl" + n, func.get_parameter_string(n))
+                                               categories[cat].append(proto)
+                       if categories:
+                               print ''
+                               print '/* OpenGL ES specific prototypes */'
+                               print ''
+                               keys = categories.keys()
+                               keys.sort()
+                               for key in keys:
+                                       print '/* category %s */' % key
+                                       print "\n".join(categories[key])
+                               print ''
+
+               print '#endif /* defined(NEED_FUNCTION_POINTER) || defined(GLX_INDIRECT_RENDERING) */'
+
+               print ''
+               print 'static const glprocs_table_t static_functions[] = {'
+
+               for info in table:
+                       print '    NAME_FUNC_OFFSET(%5u, %s, %s, %s, _gloffset_%s),' % info
+
+               print '    NAME_FUNC_OFFSET(-1, NULL, NULL, NULL, 0)'
+               print '};'
+               return
+
+
+def show_usage():
+       print "Usage: %s [-f input_file_name] [-m mode] [-c]" % sys.argv[0]
+       print "-c          Enable compatibility with OpenGL ES."
+       print "-m mode     mode can be one of:"
+       print "    long  - Create code for compilers that can handle very"
+       print "            long string constants. (default)"
+       print "    short - Create code for compilers that can only handle"
+       print "            ANSI C89 string constants."
+       sys.exit(1)
+
+if __name__ == '__main__':
+       file_name = "gl_API.xml"
+
+       try:
+               (args, trail) = getopt.getopt(sys.argv[1:], "f:m:c")
+       except Exception,e:
+               show_usage()
+
+       long_string = 1
+       es = False
+       for (arg,val) in args:
+               if arg == "-f":
+                       file_name = val
+               elif arg == "-m":
+                       if val == "short":
+                               long_string = 0
+                       elif val == "long":
+                               long_string = 1
+                       else:
+                               show_usage()
+               elif arg == "-c":
+                   es = True
+
+       api = gl_XML.parse_GL_API(file_name, glX_XML.glx_item_factory())
+       printer = PrintGlProcs(long_string, es)
+       printer.Print(api)
diff --git a/src/mapi/glapi/gen/gl_table.py b/src/mapi/glapi/gen/gl_table.py
new file mode 100644 (file)
index 0000000..3bd7569
--- /dev/null
@@ -0,0 +1,229 @@
+#!/usr/bin/python2
+
+# (C) Copyright IBM Corporation 2004
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+
+import gl_XML
+import license
+import sys, getopt
+
+class PrintGlTable(gl_XML.gl_print_base):
+       def __init__(self, es=False):
+               gl_XML.gl_print_base.__init__(self)
+
+               self.es = es
+               self.header_tag = '_GLAPI_TABLE_H_'
+               self.name = "gl_table.py (from Mesa)"
+               self.license = license.bsd_license_template % ( \
+"""Copyright (C) 1999-2003  Brian Paul   All Rights Reserved.
+(C) Copyright IBM Corporation 2004""", "BRIAN PAUL, IBM")
+               return
+
+
+       def printBody(self, api):
+               for f in api.functionIterateByOffset():
+                       arg_string = f.get_parameter_string()
+                       print '   %s (GLAPIENTRYP %s)(%s); /* %d */' % (f.return_type, f.name, arg_string, f.offset)
+
+
+       def printRealHeader(self):
+               print '#ifndef GLAPIENTRYP'
+               print '# ifndef GLAPIENTRY'
+               print '#  define GLAPIENTRY'
+               print '# endif'
+               print ''
+               print '# define GLAPIENTRYP GLAPIENTRY *'
+               print '#endif'
+               print ''
+               print ''
+               print 'struct _glapi_table'
+               print '{'
+               return
+
+
+       def printRealFooter(self):
+               print '};'
+               return
+
+
+class PrintRemapTable(gl_XML.gl_print_base):
+       def __init__(self, es=False):
+               gl_XML.gl_print_base.__init__(self)
+
+               self.es = es
+               self.header_tag = '_GLAPI_DISPATCH_H_'
+               self.name = "gl_table.py (from Mesa)"
+               self.license = license.bsd_license_template % ("(C) Copyright IBM Corporation 2005", "IBM")
+               return
+
+
+       def printRealHeader(self):
+               print """
+/* this file should not be included directly in mesa */
+
+/**
+ * \\file glapidispatch.h
+ * Macros for handling GL dispatch tables.
+ *
+ * For each known GL function, there are 3 macros in this file.  The first
+ * macro is named CALL_FuncName and is used to call that GL function using
+ * the specified dispatch table.  The other 2 macros, called GET_FuncName
+ * can SET_FuncName, are used to get and set the dispatch pointer for the
+ * named function in the specified dispatch table.
+ */
+"""
+               
+               return
+
+       def printBody(self, api):
+               print '#define CALL_by_offset(disp, cast, offset, parameters) \\'
+               print '    (*(cast (GET_by_offset(disp, offset)))) parameters'
+               print '#define GET_by_offset(disp, offset) \\'
+               print '    (offset >= 0) ? (((_glapi_proc *)(disp))[offset]) : NULL'
+               print '#define SET_by_offset(disp, offset, fn) \\'
+               print '    do { \\'
+               print '        if ( (offset) < 0 ) { \\'
+               print '            /* fprintf( stderr, "[%s:%u] SET_by_offset(%p, %d, %s)!\\n", */ \\'
+               print '            /*         __func__, __LINE__, disp, offset, # fn); */ \\'
+               print '            /* abort(); */ \\'
+               print '        } \\'
+               print '        else { \\'
+               print '            ( (_glapi_proc *) (disp) )[offset] = (_glapi_proc) fn; \\'
+               print '        } \\'
+               print '    } while(0)'
+               print ''
+
+               functions = []
+               abi_functions = []
+               alias_functions = []
+               count = 0
+               for f in api.functionIterateByOffset():
+                       if not f.is_abi():
+                               functions.append( [f, count] )
+                               count += 1
+                       else:
+                               abi_functions.append( f )
+
+                       if self.es:
+                               # remember functions with aliases
+                               if len(f.entry_points) > 1:
+                                       alias_functions.append(f)
+
+
+               for f in abi_functions:
+                       print '#define CALL_%s(disp, parameters) (*((disp)->%s)) parameters' % (f.name, f.name)
+                       print '#define GET_%s(disp) ((disp)->%s)' % (f.name, f.name)
+                       print '#define SET_%s(disp, fn) ((disp)->%s = fn)' % (f.name, f.name)
+
+
+               print ''
+               print '#if !defined(_GLAPI_USE_REMAP_TABLE)'
+               print ''
+
+               for [f, index] in functions:
+                       print '#define CALL_%s(disp, parameters) (*((disp)->%s)) parameters' % (f.name, f.name)
+                       print '#define GET_%s(disp) ((disp)->%s)' % (f.name, f.name)
+                       print '#define SET_%s(disp, fn) ((disp)->%s = fn)' % (f.name, f.name)
+
+               print ''
+               print '#else'
+               print ''
+               print '#define driDispatchRemapTable_size %u' % (count)
+               print 'extern int driDispatchRemapTable[ driDispatchRemapTable_size ];'
+               print ''
+
+               for [f, index] in functions:
+                       print '#define %s_remap_index %u' % (f.name, index)
+
+               print ''
+
+               for [f, index] in functions:
+                       arg_string = gl_XML.create_parameter_string( f.parameters, 0 )
+                       cast = '%s (GLAPIENTRYP)(%s)' % (f.return_type, arg_string)
+
+                       print '#define CALL_%s(disp, parameters) CALL_by_offset(disp, (%s), driDispatchRemapTable[%s_remap_index], parameters)' % (f.name, cast, f.name)
+                       print '#define GET_%s(disp) GET_by_offset(disp, driDispatchRemapTable[%s_remap_index])' % (f.name, f.name)
+                       print '#define SET_%s(disp, fn) SET_by_offset(disp, driDispatchRemapTable[%s_remap_index], fn)' % (f.name, f.name)
+
+
+               print ''
+               print '#endif /* !defined(_GLAPI_USE_REMAP_TABLE) */'
+
+               if alias_functions:
+                       print ''
+                       print '/* define aliases for compatibility */'
+                       for f in alias_functions:
+                               for name in f.entry_points:
+                                       if name != f.name:
+                                               print '#define CALL_%s(disp, parameters) CALL_%s(disp, parameters)' % (name, f.name)
+                                               print '#define GET_%s(disp) GET_%s(disp)' % (name, f.name)
+                                               print '#define SET_%s(disp, fn) SET_%s(disp, fn)' % (name, f.name)
+                       print ''
+
+                       print '#if defined(_GLAPI_USE_REMAP_TABLE)'
+                       for f in alias_functions:
+                               for name in f.entry_points:
+                                       if name != f.name:
+                                               print '#define %s_remap_index %s_remap_index' % (name, f.name)
+                       print '#endif /* defined(_GLAPI_USE_REMAP_TABLE) */'
+                       print ''
+
+               return
+
+
+def show_usage():
+       print "Usage: %s [-f input_file_name] [-m mode] [-c]" % sys.argv[0]
+       print "    -m mode   Mode can be 'table' or 'remap_table'."
+       print "    -c        Enable compatibility with OpenGL ES."
+       sys.exit(1)
+
+if __name__ == '__main__':
+       file_name = "gl_API.xml"
+    
+       try:
+               (args, trail) = getopt.getopt(sys.argv[1:], "f:m:c")
+       except Exception,e:
+               show_usage()
+
+       mode = "table"
+       es = False
+       for (arg,val) in args:
+               if arg == "-f":
+                       file_name = val
+               elif arg == "-m":
+                       mode = val
+               elif arg == "-c":
+                       es = True
+
+       if mode == "table":
+               printer = PrintGlTable(es)
+       elif mode == "remap_table":
+               printer = PrintRemapTable(es)
+       else:
+               show_usage()
+
+       api = gl_XML.parse_GL_API( file_name )
+
+       printer.Print( api )
diff --git a/src/mapi/glapi/gen/gl_x86-64_asm.py b/src/mapi/glapi/gen/gl_x86-64_asm.py
new file mode 100644 (file)
index 0000000..e6e78c4
--- /dev/null
@@ -0,0 +1,334 @@
+#!/usr/bin/env python
+
+# (C) Copyright IBM Corporation 2005
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+
+import license
+import gl_XML, glX_XML
+import sys, getopt, copy
+
+def should_use_push(registers):
+       for [reg, offset] in registers:
+               if reg[1:4] == "xmm":
+                       return 0
+
+       N = len(registers)
+       return (N & 1) != 0
+
+
+def local_size(registers):
+       # The x86-64 ABI says "the value (%rsp - 8) is always a multiple of
+       # 16 when control is transfered to the function entry point."  This
+       # means that the local stack usage must be (16*N)+8 for some value
+       # of N.  (16*N)+8 = (8*(2N))+8 = 8*(2N+1).  As long as N is odd, we
+       # meet this requirement.
+
+       N = (len(registers) | 1)
+       return 8*N
+
+
+def save_all_regs(registers):
+       adjust_stack = 0
+       if not should_use_push(registers):
+               adjust_stack = local_size(registers)
+               print '\tsubq\t$%u, %%rsp' % (adjust_stack)
+
+       for [reg, stack_offset] in registers:
+               save_reg( reg, stack_offset, adjust_stack )
+       return
+
+
+def restore_all_regs(registers):
+       adjust_stack = 0
+       if not should_use_push(registers):
+               adjust_stack = local_size(registers)
+
+       temp = copy.deepcopy(registers)
+       while len(temp):
+               [reg, stack_offset] = temp.pop()
+               restore_reg(reg, stack_offset, adjust_stack)
+
+       if adjust_stack:
+               print '\taddq\t$%u, %%rsp' % (adjust_stack)
+       return
+
+
+def save_reg(reg, offset, use_move):
+       if use_move:
+               if offset == 0:
+                       print '\tmovq\t%s, (%%rsp)' % (reg)
+               else:
+                       print '\tmovq\t%s, %u(%%rsp)' % (reg, offset)
+       else:
+               print '\tpushq\t%s' % (reg)
+
+       return
+
+
+def restore_reg(reg, offset, use_move):
+       if use_move:
+               if offset == 0:
+                       print '\tmovq\t(%%rsp), %s' % (reg)
+               else:
+                       print '\tmovq\t%u(%%rsp), %s' % (offset, reg)
+       else:
+               print '\tpopq\t%s' % (reg)
+
+       return
+
+
+class PrintGenericStubs(gl_XML.gl_print_base):
+
+       def __init__(self):
+               gl_XML.gl_print_base.__init__(self)
+
+               self.name = "gl_x86-64_asm.py (from Mesa)"
+               self.license = license.bsd_license_template % ("(C) Copyright IBM Corporation 2005", "IBM")
+               return
+
+
+       def get_stack_size(self, f):
+               size = 0
+               for p in f.parameterIterator():
+                       size += p.get_stack_size()
+
+               return size
+
+
+       def printRealHeader(self):
+               print "/* If we build with gcc's -fvisibility=hidden flag, we'll need to change"
+               print " * the symbol visibility mode to 'default'."
+               print ' */'
+               print ''
+               print '#include "x86/assyntax.h"'
+               print ''
+               print '#ifdef __GNUC__'
+               print '#  pragma GCC visibility push(default)'
+               print '#  define HIDDEN(x) .hidden x'
+               print '#else'
+               print '#  define HIDDEN(x)'
+               print '#endif'
+               print ''
+               print '# if defined(USE_MGL_NAMESPACE)'
+               print '#  define GL_PREFIX(n) GLNAME(CONCAT(mgl,n))'
+               print '#  define _glapi_Dispatch _mglapi_Dispatch'
+               print '# else'
+               print '#  define GL_PREFIX(n) GLNAME(CONCAT(gl,n))'
+               print '# endif'
+               print ''
+               print '#if defined(PTHREADS) || defined(WIN32_THREADS) || defined(BEOS_THREADS)'
+               print '#  define THREADS'
+               print '#endif'
+               print ''
+               print '\t.text'
+               print ''
+               print '#ifdef GLX_USE_TLS'
+               print ''
+               print '\t.globl _x86_64_get_get_dispatch; HIDDEN(_x86_64_get_get_dispatch)'
+               print '_x86_64_get_get_dispatch:'
+               print '\tlea\t_x86_64_get_dispatch(%rip), %rax'
+               print '\tret'
+               print ''
+               print '\t.p2align\t4,,15'
+               print '_x86_64_get_dispatch:'
+               print '\tmovq\t_glapi_tls_Dispatch@GOTTPOFF(%rip), %rax'
+               print '\tmovq\t%fs:(%rax), %rax'
+               print '\tret'
+               print '\t.size\t_x86_64_get_dispatch, .-_x86_64_get_dispatch'
+               print ''
+               print '#elif defined(PTHREADS)'
+               print ''
+               print '\t.extern\t_glapi_Dispatch'
+               print '\t.extern\t_gl_DispatchTSD'
+               print '\t.extern\tpthread_getspecific'
+               print ''
+               print '\t.p2align\t4,,15'
+               print '_x86_64_get_dispatch:'
+               print '\tmovq\t_gl_DispatchTSD(%rip), %rdi'
+               print '\tjmp\tpthread_getspecific@PLT'
+               print ''
+               print '#elif defined(THREADS)'
+               print ''
+               print '\t.extern\t_glapi_get_dispatch'
+               print ''
+               print '#endif'
+               print ''
+               return
+
+
+       def printRealFooter(self):
+               print ''
+               print '#if defined(GLX_USE_TLS) && defined(__linux__)'
+               print ' .section ".note.ABI-tag", "a"'
+               print ' .p2align 2'
+               print ' .long   1f - 0f   /* name length */'
+               print ' .long   3f - 2f   /* data length */'
+               print ' .long   1         /* note length */'
+               print '0:       .asciz "GNU"      /* vendor name */'
+               print '1:       .p2align 2'
+               print '2:       .long   0         /* note data: the ABI tag */'
+               print ' .long   2,4,20    /* Minimum kernel version w/TLS */'
+               print '3:       .p2align 2        /* pad out section */'
+               print '#endif /* GLX_USE_TLS */'
+               print ''
+               print '#if defined (__ELF__) && defined (__linux__)'
+               print ' .section .note.GNU-stack,"",%progbits'
+               print '#endif'
+               return
+
+
+       def printFunction(self, f):
+               
+               # The x86-64 ABI divides function parameters into a couple
+               # classes.  For the OpenGL interface, the only ones that are
+               # relevent are INTEGER and SSE.  Basically, the first 8
+               # GLfloat or GLdouble parameters are placed in %xmm0 - %xmm7,
+               # the first 6 non-GLfloat / non-GLdouble parameters are placed
+               # in registers listed in int_parameters.
+               #
+               # If more parameters than that are required, they are passed
+               # on the stack.  Therefore, we just have to make sure that
+               # %esp hasn't changed when we jump to the actual function.
+               # Since we're jumping to the function (and not calling it), we
+               # have to make sure of that anyway!
+
+               int_parameters = ["%rdi", "%rsi", "%rdx", "%rcx", "%r8", "%r9"]
+
+               int_class = 0
+               sse_class = 0
+               stack_offset = 0
+               registers = []
+               for p in f.parameterIterator():
+                       type_name = p.get_base_type_string()
+
+                       if p.is_pointer() or (type_name != "GLfloat" and type_name != "GLdouble"):
+                               if int_class < 6:
+                                       registers.append( [int_parameters[int_class], stack_offset] )
+                                       int_class += 1
+                                       stack_offset += 8
+                       else:
+                               if sse_class < 8:
+                                       registers.append( ["%%xmm%u" % (sse_class), stack_offset] )
+                                       sse_class += 1
+                                       stack_offset += 8
+
+               if ((int_class & 1) == 0) and (sse_class == 0):
+                       registers.append( ["%rbp", 0] )
+
+
+               name = f.dispatch_name()
+
+               print '\t.p2align\t4,,15'
+               print '\t.globl\tGL_PREFIX(%s)' % (name)
+               print '\t.type\tGL_PREFIX(%s), @function' % (name)
+               if not f.is_static_entry_point(f.name):
+                       print '\tHIDDEN(GL_PREFIX(%s))' % (name)
+               print 'GL_PREFIX(%s):' % (name)
+               print '#if defined(GLX_USE_TLS)'
+               print '\tcall\t_x86_64_get_dispatch@PLT'
+               print '\tmovq\t%u(%%rax), %%r11' % (f.offset * 8)
+               print '\tjmp\t*%r11'
+               print '#elif defined(PTHREADS)'
+               
+               save_all_regs(registers)
+               print '\tcall\t_x86_64_get_dispatch@PLT'
+               restore_all_regs(registers)
+
+               if f.offset == 0:
+                       print '\tmovq\t(%rax), %r11'
+               else:
+                       print '\tmovq\t%u(%%rax), %%r11' % (f.offset * 8)
+
+               print '\tjmp\t*%r11'
+
+               print '#else'
+               print '\tmovq\t_glapi_Dispatch(%rip), %rax'
+               print '\ttestq\t%rax, %rax'
+               print '\tje\t1f'
+               print '\tmovq\t%u(%%rax), %%r11' % (f.offset * 8)
+               print '\tjmp\t*%r11'
+               print '1:'
+
+               save_all_regs(registers)
+               print '\tcall\t_glapi_get_dispatch'
+               restore_all_regs(registers)
+
+               print '\tmovq\t%u(%%rax), %%r11' % (f.offset * 8)
+               print '\tjmp\t*%r11'
+               print '#endif /* defined(GLX_USE_TLS) */'
+
+               print '\t.size\tGL_PREFIX(%s), .-GL_PREFIX(%s)' % (name, name)
+               print ''
+               return
+
+
+       def printBody(self, api):
+               for f in api.functionIterateByOffset():
+                       self.printFunction(f)
+
+
+               for f in api.functionIterateByOffset():
+                       dispatch = f.dispatch_name()
+                       for n in f.entry_points:
+                               if n != f.name:
+                                       if f.is_static_entry_point(n):
+                                               text = '\t.globl GL_PREFIX(%s) ; .set GL_PREFIX(%s), GL_PREFIX(%s)' % (n, n, dispatch)
+
+                                               if f.has_different_protocol(n):
+                                                       print '#ifndef GLX_INDIRECT_RENDERING'
+                                                       print text
+                                                       print '#endif'
+                                               else:
+                                                       print text
+
+               return
+
+def show_usage():
+       print "Usage: %s [-f input_file_name] [-m output_mode]" % sys.argv[0]
+       sys.exit(1)
+
+if __name__ == '__main__':
+       file_name = "gl_API.xml"
+       mode = "generic"
+
+       try:
+               (args, trail) = getopt.getopt(sys.argv[1:], "m:f:")
+       except Exception,e:
+               show_usage()
+
+       for (arg,val) in args:
+               if arg == '-m':
+                       mode = val
+               elif arg == "-f":
+                       file_name = val
+
+       if mode == "generic":
+               printer = PrintGenericStubs()
+       else:
+               print "ERROR: Invalid mode \"%s\" specified." % mode
+               show_usage()
+
+       api = gl_XML.parse_GL_API(file_name, glX_XML.glx_item_factory())
+       printer.Print(api)
diff --git a/src/mapi/glapi/gen/gl_x86_asm.py b/src/mapi/glapi/gen/gl_x86_asm.py
new file mode 100644 (file)
index 0000000..10dfa1d
--- /dev/null
@@ -0,0 +1,270 @@
+#!/usr/bin/env python
+
+# (C) Copyright IBM Corporation 2004, 2005
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+
+import license
+import gl_XML, glX_XML
+import sys, getopt
+
+class PrintGenericStubs(gl_XML.gl_print_base):
+
+       def __init__(self):
+               gl_XML.gl_print_base.__init__(self)
+
+               self.name = "gl_x86_asm.py (from Mesa)"
+               self.license = license.bsd_license_template % ( \
+"""Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
+(C) Copyright IBM Corporation 2004, 2005""", "BRIAN PAUL, IBM")
+               return
+
+
+       def get_stack_size(self, f):
+               size = 0
+               for p in f.parameterIterator():
+                       if p.is_padding:
+                               continue
+
+                       size += p.get_stack_size()
+
+               return size
+
+
+       def printRealHeader(self):
+               print '#include "x86/assyntax.h"'
+               print '#include "glapi/glapioffsets.h"'
+               print ''
+               print '#if defined(STDCALL_API)'
+               print '# if defined(USE_MGL_NAMESPACE)'
+               print '#  define GL_PREFIX(n,n2) GLNAME(CONCAT(mgl,n2))'
+               print '# else'
+               print '#  define GL_PREFIX(n,n2) GLNAME(CONCAT(gl,n2))'
+               print '# endif'
+               print '#else'
+               print '# if defined(USE_MGL_NAMESPACE)'
+               print '#  define GL_PREFIX(n,n2) GLNAME(CONCAT(mgl,n))'
+               print '#  define _glapi_Dispatch _mglapi_Dispatch'
+               print '# else'
+               print '#  define GL_PREFIX(n,n2) GLNAME(CONCAT(gl,n))'
+               print '# endif'
+               print '#endif'
+               print ''
+               print '#define GL_OFFSET(x) CODEPTR(REGOFF(4 * x, EAX))'
+               print ''
+               print '#if defined(GNU_ASSEMBLER) && !defined(__DJGPP__) && !defined(__MINGW32__) && !defined(__APPLE__)'
+               print '#define GLOBL_FN(x) GLOBL x ; .type x, function'
+               print '#else'
+               print '#define GLOBL_FN(x) GLOBL x'
+               print '#endif'
+               print ''
+               print '#if defined(PTHREADS) || defined(WIN32_THREADS) || defined(BEOS_THREADS)'
+               print '#  define THREADS'
+               print '#endif'
+               print ''
+               print '#ifdef GLX_USE_TLS'
+               print ''
+               print '#ifdef GLX_X86_READONLY_TEXT'
+               print '# define CTX_INSNS MOV_L(GS:(EAX), EAX)'
+               print '#else'
+               print '# define CTX_INSNS NOP /* Pad for init_glapi_relocs() */'
+               print '#endif'
+               print ''
+               print '#  define GL_STUB(fn,off,fn_alt)\t\t\t\\'
+               print 'ALIGNTEXT16;\t\t\t\t\t\t\\'
+               print 'GLOBL_FN(GL_PREFIX(fn, fn_alt));\t\t\t\\'
+               print 'GL_PREFIX(fn, fn_alt):\t\t\t\t\t\\'
+               print '\tCALL(_x86_get_dispatch) ;\t\t\t\\'
+               print '\tCTX_INSNS ;                                    \\'
+               print '\tJMP(GL_OFFSET(off))'
+               print ''
+               print '#elif defined(PTHREADS)'
+               print '#  define GL_STUB(fn,off,fn_alt)\t\t\t\\'
+               print 'ALIGNTEXT16;\t\t\t\t\t\t\\'
+               print 'GLOBL_FN(GL_PREFIX(fn, fn_alt));\t\t\t\\'
+               print 'GL_PREFIX(fn, fn_alt):\t\t\t\t\t\\'
+               print '\tMOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX) ;\t\\'
+               print '\tTEST_L(EAX, EAX) ;\t\t\t\t\\'
+               print '\tJE(1f) ;\t\t\t\t\t\\'
+               print '\tJMP(GL_OFFSET(off)) ;\t\t\t\t\\'
+               print '1:\tCALL(_x86_get_dispatch) ;\t\t\t\\'
+               print '\tJMP(GL_OFFSET(off))'
+               print '#elif defined(THREADS)'
+               print '#  define GL_STUB(fn,off,fn_alt)\t\t\t\\'
+               print 'ALIGNTEXT16;\t\t\t\t\t\t\\'
+               print 'GLOBL_FN(GL_PREFIX(fn, fn_alt));\t\t\t\\'
+               print 'GL_PREFIX(fn, fn_alt):\t\t\t\t\t\\'
+               print '\tMOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX) ;\t\\'
+               print '\tTEST_L(EAX, EAX) ;\t\t\t\t\\'
+               print '\tJE(1f) ;\t\t\t\t\t\\'
+               print '\tJMP(GL_OFFSET(off)) ;\t\t\t\t\\'
+               print '1:\tCALL(_glapi_get_dispatch) ;\t\t\t\\'
+               print '\tJMP(GL_OFFSET(off))'
+               print '#else /* Non-threaded version. */'
+               print '#  define GL_STUB(fn,off,fn_alt)\t\t\t\\'
+               print 'ALIGNTEXT16;\t\t\t\t\t\t\\'
+               print 'GLOBL_FN(GL_PREFIX(fn, fn_alt));\t\t\t\\'
+               print 'GL_PREFIX(fn, fn_alt):\t\t\t\t\t\\'
+               print '\tMOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX) ;\t\\'
+               print '\tJMP(GL_OFFSET(off))'
+               print '#endif'
+               print ''
+               print '#ifdef HAVE_ALIAS'
+               print '#  define GL_STUB_ALIAS(fn,off,fn_alt,alias,alias_alt)\t\\'
+               print '\t.globl\tGL_PREFIX(fn, fn_alt) ;\t\t\t\\'
+               print '\t.set\tGL_PREFIX(fn, fn_alt), GL_PREFIX(alias, alias_alt)'
+               print '#else'
+               print '#  define GL_STUB_ALIAS(fn,off,fn_alt,alias,alias_alt)\t\\'
+               print '    GL_STUB(fn, off, fn_alt)'
+               print '#endif'
+               print ''
+               print 'SEG_TEXT'
+               print ''
+               print '#ifdef GLX_USE_TLS'
+               print ''
+               print '\tGLOBL\tGLNAME(_x86_get_dispatch)'
+               print '\tHIDDEN(GLNAME(_x86_get_dispatch))'
+               print 'ALIGNTEXT16'
+               print 'GLNAME(_x86_get_dispatch):'
+               print '\tcall   1f'
+               print '1:\tpopl %eax'
+               print '\taddl   $_GLOBAL_OFFSET_TABLE_+[.-1b], %eax'
+               print '\tmovl   _glapi_tls_Dispatch@GOTNTPOFF(%eax), %eax'
+               print '\tret'
+               print ''
+               print '#elif defined(PTHREADS)'
+               print 'EXTERN GLNAME(_glapi_Dispatch)'
+               print 'EXTERN GLNAME(_gl_DispatchTSD)'
+               print 'EXTERN GLNAME(pthread_getspecific)'
+               print ''
+               print 'ALIGNTEXT16'
+               print 'GLNAME(_x86_get_dispatch):'
+               print '\tSUB_L(CONST(24), ESP)'
+               print '\tPUSH_L(GLNAME(_gl_DispatchTSD))'
+               print '\tCALL(GLNAME(pthread_getspecific))'
+               print '\tADD_L(CONST(28), ESP)'
+               print '\tRET'
+               print '#elif defined(THREADS)'
+               print 'EXTERN GLNAME(_glapi_get_dispatch)'
+               print '#endif'
+               print ''
+
+               print '#if defined( GLX_USE_TLS ) && !defined( GLX_X86_READONLY_TEXT )'
+               print '\t\t.section\twtext, "awx", @progbits'
+               print '#endif /* defined( GLX_USE_TLS ) */'
+
+               print ''
+               print '\t\tALIGNTEXT16'
+               print '\t\tGLOBL GLNAME(gl_dispatch_functions_start)'
+               print '\t\tHIDDEN(GLNAME(gl_dispatch_functions_start))'
+               print 'GLNAME(gl_dispatch_functions_start):'
+               print ''
+               return
+
+
+       def printRealFooter(self):
+               print ''
+               print '\t\tGLOBL\tGLNAME(gl_dispatch_functions_end)'
+               print '\t\tHIDDEN(GLNAME(gl_dispatch_functions_end))'
+               print '\t\tALIGNTEXT16'
+               print 'GLNAME(gl_dispatch_functions_end):'
+               print ''
+               print '#if defined(GLX_USE_TLS) && defined(__linux__)'
+               print ' .section ".note.ABI-tag", "a"'
+               print ' .p2align 2'
+               print ' .long   1f - 0f   /* name length */'
+               print ' .long   3f - 2f   /* data length */'
+               print ' .long   1         /* note length */'
+               print '0:       .asciz "GNU"      /* vendor name */'
+               print '1:       .p2align 2'
+               print '2:       .long   0         /* note data: the ABI tag */'
+               print ' .long   2,4,20    /* Minimum kernel version w/TLS */'
+               print '3:       .p2align 2        /* pad out section */'
+               print '#endif /* GLX_USE_TLS */'
+               print ''
+               print '#if defined (__ELF__) && defined (__linux__)'
+               print ' .section .note.GNU-stack,"",%progbits'
+               print '#endif'
+               return
+
+
+       def printBody(self, api):
+               for f in api.functionIterateByOffset():
+                       name = f.dispatch_name()
+                       stack = self.get_stack_size(f)
+                       alt = "%s@%u" % (name, stack)
+
+                       print '\tGL_STUB(%s, _gloffset_%s, %s)' % (name, f.name, alt)
+
+                       if not f.is_static_entry_point(f.name):
+                               print '\tHIDDEN(GL_PREFIX(%s, %s))' % (name, alt)
+
+
+               for f in api.functionIterateByOffset():
+                       name = f.dispatch_name()
+                       stack = self.get_stack_size(f)
+                       alt = "%s@%u" % (name, stack)
+
+                       for n in f.entry_points:
+                               if f.is_static_entry_point(n):
+                                       if n != f.name:
+                                               alt2 = "%s@%u" % (n, stack)
+                                               text = '\tGL_STUB_ALIAS(%s, _gloffset_%s, %s, %s, %s)' % (n, f.name, alt2, name, alt)
+
+                                               if f.has_different_protocol(n):
+                                                       print '#ifndef GLX_INDIRECT_RENDERING'
+                                                       print text
+                                                       print '#endif'
+                                               else:
+                                                       print text
+
+               return
+
+def show_usage():
+       print "Usage: %s [-f input_file_name] [-m output_mode]" % sys.argv[0]
+       sys.exit(1)
+
+if __name__ == '__main__':
+       file_name = "gl_API.xml"
+       mode = "generic"
+
+       try:
+               (args, trail) = getopt.getopt(sys.argv[1:], "m:f:")
+       except Exception,e:
+               show_usage()
+
+       for (arg,val) in args:
+               if arg == '-m':
+                       mode = val
+               elif arg == "-f":
+                       file_name = val
+
+       if mode == "generic":
+               printer = PrintGenericStubs()
+       else:
+               print "ERROR: Invalid mode \"%s\" specified." % mode
+               show_usage()
+
+       api = gl_XML.parse_GL_API(file_name, glX_XML.glx_item_factory())
+       printer.Print(api)
diff --git a/src/mapi/glapi/gen/license.py b/src/mapi/glapi/gen/license.py
new file mode 100644 (file)
index 0000000..0218164
--- /dev/null
@@ -0,0 +1,47 @@
+# (C) Copyright IBM Corporation 2004
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+
+bsd_license_template = """%s
+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
+%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.""" 
diff --git a/src/mapi/glapi/gen/mesadef.py b/src/mapi/glapi/gen/mesadef.py
new file mode 100644 (file)
index 0000000..38b0246
--- /dev/null
@@ -0,0 +1,216 @@
+#!/usr/bin/env python
+
+
+# Mesa 3-D graphics library
+# Version:  4.1
+# 
+# Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
+# 
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# the rights to use, copy, modify, merge, publish, distribute, sublicense,
+# and/or sell copies of the Software, and to permit persons to whom the
+# Software is furnished to do so, subject to the following conditions:
+# 
+# The above copyright notice and this permission notice shall be included
+# in all copies or substantial portions of the Software.
+# 
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+# BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+
+# Generate the mesa.def file for Windows.
+#
+# Usage:
+#    mesadef.py >mesa.def
+#    Then copy to src/mesa/drivers/windows/gdi
+#
+# Dependencies:
+#    The apispec file must be in the current directory.
+
+
+
+import apiparser
+import string
+
+
+def PrintHead():
+       print '; DO NOT EDIT - This file generated automatically by mesadef.py script'
+       print 'DESCRIPTION \'Mesa (OpenGL work-alike) for Win32\''
+       print 'VERSION 6.0'
+       print ';'
+       print '; Module definition file for Mesa (OPENGL32.DLL)'
+       print ';'
+       print '; Note: The OpenGL functions use the STDCALL'
+       print '; function calling convention.  Microsoft\'s'
+       print '; OPENGL32 uses this convention and so must the'
+       print '; Mesa OPENGL32 so that the Mesa DLL can be used'
+       print '; as a drop-in replacement.'
+       print ';'
+       print '; The linker exports STDCALL entry points with'
+       print '; \'decorated\' names; e.g., _glBegin@0, where the'
+       print '; trailing number is the number of bytes of '
+       print '; parameter data pushed onto the stack.  The'
+       print '; callee is responsible for popping this data'
+       print '; off the stack, usually via a RETF n instruction.'
+       print ';'
+       print '; However, the Microsoft OPENGL32.DLL does not export'
+       print '; the decorated names, even though the calling convention'
+       print '; is STDCALL.  So, this module definition file is'
+       print '; needed to force the Mesa OPENGL32.DLL to export the'
+       print '; symbols in the same manner as the Microsoft DLL.'
+       print '; Were it not for this problem, this file would not'
+       print '; be needed (for the gl* functions) since the entry'
+       print '; points are compiled with dllexport declspec.'
+       print ';'
+       print '; However, this file is still needed to export "internal"'
+       print '; Mesa symbols for the benefit of the OSMESA32.DLL.'
+       print ';'
+       print 'EXPORTS'
+       return
+#enddef
+
+
+def PrintTail():
+       print ';'
+       print '; WGL API'
+       print '\twglChoosePixelFormat'
+       print '\twglCopyContext'
+       print '\twglCreateContext'
+       print '\twglCreateLayerContext'
+       print '\twglDeleteContext'
+       print '\twglDescribeLayerPlane'
+       print '\twglDescribePixelFormat'
+       print '\twglGetCurrentContext'
+       print '\twglGetCurrentDC'
+       print '\twglGetExtensionsStringARB'
+       print '\twglGetLayerPaletteEntries'
+       print '\twglGetPixelFormat'
+       print '\twglGetProcAddress'
+       print '\twglMakeCurrent'
+       print '\twglRealizeLayerPalette'
+       print '\twglSetLayerPaletteEntries'
+       print '\twglSetPixelFormat'
+       print '\twglShareLists'
+       print '\twglSwapBuffers'
+       print '\twglSwapLayerBuffers'
+       print '\twglUseFontBitmapsA'
+       print '\twglUseFontBitmapsW'
+       print '\twglUseFontOutlinesA'
+       print '\twglUseFontOutlinesW'
+       print ';'
+       print '; Mesa internals - mostly for OSMESA'
+       print '\t_ac_CreateContext'
+       print '\t_ac_DestroyContext'
+       print '\t_ac_InvalidateState'
+       print '\t_glapi_get_context'
+       print '\t_glapi_get_proc_address'
+       print '\t_mesa_buffer_data'
+       print '\t_mesa_buffer_map'
+       print '\t_mesa_buffer_subdata'
+       print '\t_mesa_choose_tex_format'
+       print '\t_mesa_compressed_texture_size'
+       print '\t_mesa_create_framebuffer'
+       print '\t_mesa_create_visual'
+       print '\t_mesa_delete_buffer_object'
+       print '\t_mesa_delete_texture_object'
+       print '\t_mesa_destroy_framebuffer'
+       print '\t_mesa_destroy_visual'
+       print '\t_mesa_enable_1_3_extensions'
+       print '\t_mesa_enable_1_4_extensions'
+       print '\t_mesa_enable_1_5_extensions'
+       print '\t_mesa_enable_sw_extensions'
+       print '\t_mesa_error'
+       print '\t_mesa_free_context_data'
+       print '\t_mesa_get_current_context'
+       print '\t_mesa_init_default_imports'
+       print '\t_mesa_initialize_context'
+       print '\t_mesa_make_current'
+       print '\t_mesa_new_buffer_object'
+       print '\t_mesa_new_texture_object'
+       print '\t_mesa_problem'
+       print '\t_mesa_ResizeBuffersMESA'
+       print '\t_mesa_store_compressed_teximage1d'
+       print '\t_mesa_store_compressed_teximage2d'
+       print '\t_mesa_store_compressed_teximage3d'
+       print '\t_mesa_store_compressed_texsubimage1d'
+       print '\t_mesa_store_compressed_texsubimage2d'
+       print '\t_mesa_store_compressed_texsubimage3d'
+       print '\t_mesa_store_teximage1d'
+       print '\t_mesa_store_teximage2d'
+       print '\t_mesa_store_teximage3d'
+       print '\t_mesa_store_texsubimage1d'
+       print '\t_mesa_store_texsubimage2d'
+       print '\t_mesa_store_texsubimage3d'
+       print '\t_mesa_test_proxy_teximage'
+       print '\t_mesa_Viewport'
+       print '\t_mesa_meta_CopyColorSubTable'
+       print '\t_mesa_meta_CopyColorTable'
+       print '\t_mesa_meta_CopyConvolutionFilter1D'
+       print '\t_mesa_meta_CopyConvolutionFilter2D'
+       print '\t_mesa_meta_CopyTexImage1D'
+       print '\t_mesa_meta_CopyTexImage2D'
+       print '\t_mesa_meta_CopyTexSubImage1D'
+       print '\t_mesa_meta_CopyTexSubImage2D'
+       print '\t_mesa_meta_CopyTexSubImage3D'
+       print '\t_swrast_Accum'
+       print '\t_swrast_alloc_buffers'
+       print '\t_swrast_Bitmap'
+       print '\t_swrast_CopyPixels'
+       print '\t_swrast_DrawPixels'
+       print '\t_swrast_GetDeviceDriverReference'
+       print '\t_swrast_Clear'
+       print '\t_swrast_choose_line'
+       print '\t_swrast_choose_triangle'
+       print '\t_swrast_CreateContext'
+       print '\t_swrast_DestroyContext'
+       print '\t_swrast_InvalidateState'
+       print '\t_swrast_ReadPixels'
+       print '\t_swrast_zbuffer_address'
+       print '\t_swsetup_Wakeup'
+       print '\t_swsetup_CreateContext'
+       print '\t_swsetup_DestroyContext'
+       print '\t_swsetup_InvalidateState'
+       print '\t_tnl_CreateContext'
+       print '\t_tnl_DestroyContext'
+       print '\t_tnl_InvalidateState'
+       print '\t_tnl_MakeCurrent'
+       print '\t_tnl_run_pipeline'
+#enddef
+
+
+records = []
+
+def FindOffset(funcName):
+       for (name, alias, offset) in records:
+               if name == funcName:
+                       return offset
+               #endif
+       #endfor
+       return -1
+#enddef
+
+
+def EmitEntry(name, returnType, argTypeList, argNameList, alias, offset):
+       if alias == '':
+               dispatchName = name
+       else:
+               dispatchName = alias
+       if offset < 0:
+               offset = FindOffset(dispatchName)
+       if offset >= 0 and string.find(name, "unused") == -1:
+               print '\tgl%s' % (name)
+               # save this info in case we need to look up an alias later
+               records.append((name, dispatchName, offset))
+
+#enddef
+
+
+PrintHead()
+apiparser.ProcessSpecFile("APIspec", EmitEntry)
+PrintTail()
diff --git a/src/mapi/glapi/gen/next_available_offset.sh b/src/mapi/glapi/gen/next_available_offset.sh
new file mode 100755 (executable)
index 0000000..e7d6c2f
--- /dev/null
@@ -0,0 +1,39 @@
+#!/usr/bin/env bash
+#
+# (C) Copyright IBM Corporation 2004
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+
+# Trivial shell script to search the API definition file and print out the
+# next numerically available API entry-point offset.  This could probably
+# be made smarter, but it would be better to use the existin Python
+# framework to do that.  This is just a quick-and-dirty hack.
+
+num=$(grep 'offset="' gl_API.xml |\
+    sed 's/.\+ offset="//g;s/".*$//g' |\
+    grep -v '?' |\
+    sort -rn |\
+    head -1)
+    
+echo $((num + 1))
diff --git a/src/mapi/glapi/gen/remap_helper.py b/src/mapi/glapi/gen/remap_helper.py
new file mode 100644 (file)
index 0000000..69b8e5e
--- /dev/null
@@ -0,0 +1,218 @@
+#!/usr/bin/env python
+
+# Copyright (C) 2009 Chia-I Wu <olv@0xlab.org>
+# All Rights Reserved.
+#
+# This is based on extension_helper.py by Ian Romanick.
+#
+# 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
+# IBM 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 gl_XML
+import license
+import sys, getopt, string
+
+def get_function_spec(func):
+       sig = ""
+       # derive parameter signature
+       for p in func.parameterIterator():
+               if p.is_padding:
+                       continue
+               # FIXME: This is a *really* ugly hack. :(
+               tn = p.type_expr.get_base_type_node()
+               if p.is_pointer():
+                       sig += 'p'
+               elif tn.integer:
+                       sig += 'i'
+               elif tn.size == 4:
+                       sig += 'f'
+               else:
+                       sig += 'd'
+
+       spec = [sig]
+       for ent in func.entry_points:
+               spec.append("gl" + ent)
+
+       # spec is terminated by an empty string
+       spec.append('')
+
+       return spec
+
+class PrintGlRemap(gl_XML.gl_print_base):
+       def __init__(self):
+               gl_XML.gl_print_base.__init__(self)
+
+               self.name = "remap_helper.py (from Mesa)"
+               self.license = license.bsd_license_template % ("Copyright (C) 2009 Chia-I Wu <olv@0xlab.org>", "Chia-I Wu")
+               return
+
+
+       def printRealHeader(self):
+               print '#include "main/dispatch.h"'
+               print '#include "main/remap.h"'
+               print ''
+               return
+
+
+       def printBody(self, api):
+               pool_indices = {}
+
+               print '/* this is internal to remap.c */'
+               print '#ifdef need_MESA_remap_table'
+               print ''
+               print 'static const char _mesa_function_pool[] ='
+
+               # output string pool
+               index = 0;
+               for f in api.functionIterateAll():
+                       pool_indices[f] = index
+
+                       spec = get_function_spec(f)
+
+                       # a function has either assigned offset, fixed offset,
+                       # or no offset
+                       if f.assign_offset:
+                               comments = "will be remapped"
+                       elif f.offset > 0:
+                               comments = "offset %d" % f.offset
+                       else:
+                               comments = "dynamic"
+
+                       print '   /* _mesa_function_pool[%d]: %s (%s) */' \
+                                       % (index, f.name, comments)
+                       for line in spec:
+                               print '   "%s\\0"' % line
+                               index += len(line) + 1
+               print '   ;'
+               print ''
+
+               print '/* these functions need to be remapped */'
+               print 'static const struct gl_function_pool_remap MESA_remap_table_functions[] = {'
+               # output all functions that need to be remapped
+               # iterate by offsets so that they are sorted by remap indices
+               for f in api.functionIterateByOffset():
+                       if not f.assign_offset:
+                               continue
+                       print '   { %5d, %s_remap_index },' \
+                                       % (pool_indices[f], f.name)
+               print '   {    -1, -1 }'
+               print '};'
+               print ''
+
+               # collect functions by versions/extensions
+               extension_functions = {}
+               abi_extensions = []
+               for f in api.functionIterateAll():
+                       for n in f.entry_points:
+                               category, num = api.get_category_for_name(n)
+                               # consider only GL_VERSION_X_Y or extensions
+                               c = gl_XML.real_category_name(category)
+                               if c.startswith("GL_"):
+                                       if not extension_functions.has_key(c):
+                                               extension_functions[c] = []
+                                       extension_functions[c].append(f)
+                                       # remember the ext names of the ABI
+                                       if (f.is_abi() and n == f.name and
+                                               c not in abi_extensions):
+                                               abi_extensions.append(c)
+               # ignore the ABI itself
+               for ext in abi_extensions:
+                       extension_functions.pop(ext)
+
+               extensions = extension_functions.keys()
+               extensions.sort()
+
+               # output ABI functions that have alternative names (with ext suffix)
+               print '/* these functions are in the ABI, but have alternative names */'
+               print 'static const struct gl_function_remap MESA_alt_functions[] = {'
+               for ext in extensions:
+                       funcs = []
+                       for f in extension_functions[ext]:
+                               # test if the function is in the ABI and has alt names
+                               if f.is_abi() and len(f.entry_points) > 1:
+                                       funcs.append(f)
+                       if not funcs:
+                               continue
+                       print '   /* from %s */' % ext
+                       for f in funcs:
+                               print '   { %5d, _gloffset_%s },' \
+                                               % (pool_indices[f], f.name)
+               print '   {    -1, -1 }'
+               print '};'
+               print ''
+
+               print '#endif /* need_MESA_remap_table */'
+               print ''
+
+               # output remap helpers for DRI drivers
+
+               for ext in extensions:
+                       funcs = []
+                       remapped = []
+                       for f in extension_functions[ext]:
+                               if f.assign_offset:
+                                       # these are handled above
+                                       remapped.append(f)
+                               else:
+                                       # these functions are either in the
+                                       # abi, or have offset -1
+                                       funcs.append(f)
+
+                       print '#if defined(need_%s)' % (ext)
+                       if remapped:
+                               print '/* functions defined in MESA_remap_table_functions are excluded */'
+
+                       # output extension functions that need to be mapped
+                       print 'static const struct gl_function_remap %s_functions[] = {' % (ext)
+                       for f in funcs:
+                               if f.offset >= 0:
+                                       print '   { %5d, _gloffset_%s },' \
+                                                       % (pool_indices[f], f.name)
+                               else:
+                                       print '   { %5d, -1 }, /* %s */' % \
+                                                       (pool_indices[f], f.name)
+                       print '   {    -1, -1 }'
+                       print '};'
+
+                       print '#endif'
+                       print ''
+
+               return
+
+
+def show_usage():
+       print "Usage: %s [-f input_file_name]" % sys.argv[0]
+       sys.exit(1)
+
+if __name__ == '__main__':
+       file_name = "gl_API.xml"
+
+       try:
+               (args, trail) = getopt.getopt(sys.argv[1:], "f:")
+       except Exception,e:
+               show_usage()
+
+       for (arg,val) in args:
+               if arg == "-f":
+                       file_name = val
+
+       api = gl_XML.parse_GL_API( file_name )
+
+       printer = PrintGlRemap()
+       printer.Print( api )
diff --git a/src/mapi/glapi/gen/typeexpr.py b/src/mapi/glapi/gen/typeexpr.py
new file mode 100644 (file)
index 0000000..8ba7de4
--- /dev/null
@@ -0,0 +1,292 @@
+#!/usr/bin/env python
+
+# (C) Copyright IBM Corporation 2005
+# All Rights Reserved.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# on the rights to use, copy, modify, merge, publish, distribute, sub
+# license, and/or sell copies of the Software, and to permit persons to whom
+# the Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
+# IBM 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.
+#
+# Authors:
+#    Ian Romanick <idr@us.ibm.com>
+
+import string, copy
+
+class type_node:
+       def __init__(self):
+               self.pointer = 0  # bool
+               self.const = 0    # bool
+               self.signed = 1   # bool
+               self.integer = 1  # bool
+
+               # If elements is set to non-zero, then field is an array.
+               self.elements = 0
+
+               self.name = None
+               self.size = 0     # type's size in bytes
+               return
+
+
+       def string(self):
+               """Return string representation of this type_node."""
+               s = ""
+               
+               if self.pointer:
+                       s = "* "
+
+               if self.const:
+                       s += "const "
+
+               if not self.pointer:
+                       if self.integer:
+                               if self.signed:
+                                       s += "signed "
+                               else:
+                                       s += "unsigned "
+
+                       if self.name:
+                               s += "%s " % (self.name)
+
+               return s
+
+
+class type_table:
+       def __init__(self):
+               self.types_by_name = {}
+               return
+
+
+       def add_type(self, type_expr):
+               self.types_by_name[ type_expr.get_base_name() ] = type_expr
+               return
+
+
+       def find_type(self, name):
+               if name in self.types_by_name:
+                       return self.types_by_name[ name ]
+               else:
+                       return None
+
+
+def create_initial_types():
+       tt = type_table()
+
+       basic_types = [
+               ("char",   1, 1),
+               ("short",  2, 1),
+               ("int",    4, 1),
+               ("long",   4, 1),
+               ("float",  4, 0),
+               ("double", 8, 0),
+               ("enum",   4, 1)
+       ]
+
+       for (type_name, type_size, integer) in basic_types:
+               te = type_expression(None)
+               tn = type_node()
+               tn.name = type_name
+               tn.size = type_size
+               tn.integer = integer
+               te.expr.append(tn)
+               tt.add_type( te )
+
+       type_expression.built_in_types = tt
+       return
+
+
+class type_expression:
+       built_in_types = None
+
+       def __init__(self, type_string, extra_types = None):
+               self.expr = []
+
+               if not type_string:
+                       return
+
+               self.original_string = type_string
+
+               if not type_expression.built_in_types:
+                       raise RuntimeError("create_initial_types must be called before creating type_expression objects.")
+
+               # Replace '*' with ' * ' in type_string.  Then, split the string
+               # into tokens, separated by spaces.
+               tokens = string.split( string.replace( type_string, "*", " * " ) )
+
+               const = 0
+               t = None
+               signed = 0
+               unsigned = 0
+
+               for i in tokens:
+                       if i == "const":
+                               if t and t.pointer:
+                                       t.const = 1
+                               else:
+                                       const = 1
+                       elif i == "signed":
+                               signed = 1
+                       elif i == "unsigned":
+                               unsigned = 1
+                       elif i == "*":
+                               # This is a quirky special-case because of the
+                               # way the C works for types.  If 'unsigned' is
+                               # specified all by itself, it is treated the
+                               # same as "unsigned int".
+
+                               if unsigned:
+                                       self.set_base_type( "int", signed, unsigned, const, extra_types )
+                                       const = 0
+                                       signed = 0
+                                       unsigned = 0
+
+                               if not self.expr:
+                                       raise RuntimeError("Invalid type expression (dangling pointer)")
+
+                               if signed:
+                                       raise RuntimeError("Invalid type expression (signed / unsigned applied to pointer)")
+
+                               t = type_node()
+                               t.pointer = 1
+                               self.expr.append( t )
+                       else:
+                               if self.expr:
+                                       raise RuntimeError('Invalid type expression (garbage after pointer qualifier -> "%s")' % (self.original_string))
+
+                               self.set_base_type( i, signed, unsigned, const, extra_types )
+                               const = 0
+                               signed = 0
+                               unsigned = 0
+
+                       if signed and unsigned:
+                               raise RuntimeError("Invalid type expression (both signed and unsigned specified)")
+                               
+
+               if const:
+                       raise RuntimeError("Invalid type expression (dangling const)")
+
+               if unsigned:
+                       raise RuntimeError("Invalid type expression (dangling signed)")
+
+               if signed:
+                       raise RuntimeError("Invalid type expression (dangling unsigned)")
+
+               return
+
+
+       def set_base_type(self, type_name, signed, unsigned, const, extra_types):
+               te = type_expression.built_in_types.find_type( type_name )
+               if not te:
+                       te = extra_types.find_type( type_name )
+
+               if not te:
+                       raise RuntimeError('Unknown base type "%s".' % (type_name))
+
+               self.expr = copy.deepcopy(te.expr)
+
+               t = self.expr[ len(self.expr) - 1 ]
+               t.const = const
+               if signed:
+                       t.signed = 1
+               elif unsigned:
+                       t.signed = 0
+
+
+       def set_base_type_node(self, tn):
+               self.expr = [tn]
+               return
+
+
+       def set_elements(self, count):
+               tn = self.expr[0]
+
+               tn.elements = count
+               return
+
+
+       def string(self):
+               s = ""
+               for t in self.expr:
+                       s += t.string()
+
+               return s
+
+
+       def get_base_type_node(self):
+               return self.expr[0]
+
+
+       def get_base_name(self):
+               if len(self.expr):
+                       return self.expr[0].name
+               else:
+                       return None
+
+
+       def get_element_size(self):
+               tn = self.expr[0]
+
+               if tn.elements:
+                       return tn.elements * tn.size
+               else:
+                       return tn.size
+
+
+       def get_element_count(self):
+               tn = self.expr[0]
+               return tn.elements
+
+
+       def get_stack_size(self):
+               tn = self.expr[ len(self.expr) - 1 ]
+
+               if tn.elements or tn.pointer:
+                       return 4
+               elif not tn.integer:
+                       return tn.size
+               else:
+                       return 4
+
+
+       def is_pointer(self):
+               tn = self.expr[ len(self.expr) - 1 ]
+               return tn.pointer
+
+
+       def format_string(self):
+               tn = self.expr[ len(self.expr) - 1 ]
+               if tn.pointer:
+                       return "%p"
+               elif not tn.integer:
+                       return "%f"
+               else:
+                       return "%d"
+
+
+
+if __name__ == '__main__':
+       
+       types_to_try = [ "int", "int *", "const int *", "int * const", "const int * const", \
+                        "unsigned * const *", \
+                        "float", "const double", "double * const"]
+
+       create_initial_types()
+
+       for t in types_to_try:
+               print 'Trying "%s"...' % (t)
+               te = type_expression( t )
+               print 'Got "%s" (%u, %u).' % (te.string(), te.get_stack_size(), te.get_element_size())
diff --git a/src/mapi/glapi/glapi.c b/src/mapi/glapi/glapi.c
new file mode 100644 (file)
index 0000000..ce85cf6
--- /dev/null
@@ -0,0 +1,293 @@
+/*
+ * Mesa 3-D graphics library
+ * Version:  7.1
+ *
+ * Copyright (C) 1999-2008  Brian Paul   All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+
+/*
+ * This file manages the OpenGL API dispatch layer.
+ * The dispatch table (struct _glapi_table) is basically just a list
+ * of function pointers.
+ * There are functions to set/get the current dispatch table for the
+ * current thread and to manage registration/dispatch of dynamically
+ * added extension functions.
+ *
+ * It's intended that this file and the other glapi*.[ch] files are
+ * flexible enough to be reused in several places:  XFree86, DRI-
+ * based libGL.so, and perhaps the SGI SI.
+ *
+ * NOTE: There are no dependencies on Mesa in this code.
+ *
+ * Versions (API changes):
+ *   2000/02/23  - original version for Mesa 3.3 and XFree86 4.0
+ *   2001/01/16  - added dispatch override feature for Mesa 3.5
+ *   2002/06/28  - added _glapi_set_warning_func(), Mesa 4.1.
+ *   2002/10/01  - _glapi_get_proc_address() will now generate new entrypoints
+ *                 itself (using offset ~0).  _glapi_add_entrypoint() can be
+ *                 called afterward and it'll fill in the correct dispatch
+ *                 offset.  This allows DRI libGL to avoid probing for DRI
+ *                 drivers!  No changes to the public glapi interface.
+ */
+
+
+
+#ifdef HAVE_DIX_CONFIG_H
+#include <dix-config.h>
+#include "glapi/mesa.h"
+#else
+#include "main/glheader.h"
+#include "main/compiler.h"
+#endif
+
+#include "glapi/glapi.h"
+#include "glapi/glapi_priv.h"
+
+extern _glapi_proc __glapi_noop_table[];
+
+
+/**
+ * \name Current dispatch and current context control variables
+ *
+ * Depending on whether or not multithreading is support, and the type of
+ * support available, several variables are used to store the current context
+ * pointer and the current dispatch table pointer.  In the non-threaded case,
+ * the variables \c _glapi_Dispatch and \c _glapi_Context are used for this
+ * purpose.
+ *
+ * In the "normal" threaded case, the variables \c _glapi_Dispatch and
+ * \c _glapi_Context will be \c NULL if an application is detected as being
+ * multithreaded.  Single-threaded applications will use \c _glapi_Dispatch
+ * and \c _glapi_Context just like the case without any threading support.
+ * When \c _glapi_Dispatch and \c _glapi_Context are \c NULL, the thread state
+ * data \c _gl_DispatchTSD and \c ContextTSD are used.  Drivers and the
+ * static dispatch functions access these variables via \c _glapi_get_dispatch
+ * and \c _glapi_get_context.
+ *
+ * There is a race condition in setting \c _glapi_Dispatch to \c NULL.  It is
+ * possible for the original thread to be setting it at the same instant a new
+ * thread, perhaps running on a different processor, is clearing it.  Because
+ * of that, \c ThreadSafe, which can only ever be changed to \c GL_TRUE, is
+ * used to determine whether or not the application is multithreaded.
+ * 
+ * In the TLS case, the variables \c _glapi_Dispatch and \c _glapi_Context are
+ * hardcoded to \c NULL.  Instead the TLS variables \c _glapi_tls_Dispatch and
+ * \c _glapi_tls_Context are used.  Having \c _glapi_Dispatch and
+ * \c _glapi_Context be hardcoded to \c NULL maintains binary compatability
+ * between TLS enabled loaders and non-TLS DRI drivers.
+ */
+/*@{*/
+#if defined(GLX_USE_TLS)
+
+PUBLIC __thread struct _glapi_table * _glapi_tls_Dispatch
+    __attribute__((tls_model("initial-exec")))
+    = (struct _glapi_table *) __glapi_noop_table;
+
+PUBLIC __thread void * _glapi_tls_Context
+    __attribute__((tls_model("initial-exec")));
+
+PUBLIC const struct _glapi_table *_glapi_Dispatch = NULL;
+
+PUBLIC const void *_glapi_Context = NULL;
+
+#else
+
+#if defined(THREADS)
+
+static GLboolean ThreadSafe = GL_FALSE;  /**< In thread-safe mode? */
+
+_glthread_TSD _gl_DispatchTSD;           /**< Per-thread dispatch pointer */
+
+static _glthread_TSD ContextTSD;         /**< Per-thread context pointer */
+
+#endif /* defined(THREADS) */
+
+PUBLIC struct _glapi_table *_glapi_Dispatch = (struct _glapi_table *) __glapi_noop_table;
+
+PUBLIC void *_glapi_Context = NULL;
+
+#endif /* defined(GLX_USE_TLS) */
+/*@}*/
+
+
+
+#if defined(THREADS) && !defined(GLX_USE_TLS)
+
+void
+_glapi_init_multithread(void)
+{
+   _glthread_InitTSD(&_gl_DispatchTSD);
+   _glthread_InitTSD(&ContextTSD);
+}
+
+void
+_glapi_destroy_multithread(void)
+{
+#ifdef WIN32_THREADS
+   _glthread_DestroyTSD(&_gl_DispatchTSD);
+   _glthread_DestroyTSD(&ContextTSD);
+#endif
+}
+
+/**
+ * Mutex for multithread check.
+ */
+#ifdef WIN32_THREADS
+/* _glthread_DECLARE_STATIC_MUTEX is broken on windows.  There will be race! */
+#define CHECK_MULTITHREAD_LOCK()
+#define CHECK_MULTITHREAD_UNLOCK()
+#else
+_glthread_DECLARE_STATIC_MUTEX(ThreadCheckMutex);
+#define CHECK_MULTITHREAD_LOCK() _glthread_LOCK_MUTEX(ThreadCheckMutex)
+#define CHECK_MULTITHREAD_UNLOCK() _glthread_UNLOCK_MUTEX(ThreadCheckMutex)
+#endif
+
+/**
+ * We should call this periodically from a function such as glXMakeCurrent
+ * in order to test if multiple threads are being used.
+ */
+PUBLIC void
+_glapi_check_multithread(void)
+{
+   static unsigned long knownID;
+   static GLboolean firstCall = GL_TRUE;
+
+   if (ThreadSafe)
+      return;
+
+   CHECK_MULTITHREAD_LOCK();
+   if (firstCall) {
+      _glapi_init_multithread();
+
+      knownID = _glthread_GetID();
+      firstCall = GL_FALSE;
+   }
+   else if (knownID != _glthread_GetID()) {
+      ThreadSafe = GL_TRUE;
+      _glapi_set_dispatch(NULL);
+      _glapi_set_context(NULL);
+   }
+   CHECK_MULTITHREAD_UNLOCK();
+}
+
+#else
+
+void
+_glapi_init_multithread(void) { }
+
+void
+_glapi_destroy_multithread(void) { }
+
+PUBLIC void
+_glapi_check_multithread(void) { }
+
+#endif
+
+
+
+/**
+ * Set the current context pointer for this thread.
+ * The context pointer is an opaque type which should be cast to
+ * void from the real context pointer type.
+ */
+PUBLIC void
+_glapi_set_context(void *context)
+{
+#if defined(GLX_USE_TLS)
+   _glapi_tls_Context = context;
+#elif defined(THREADS)
+   _glthread_SetTSD(&ContextTSD, context);
+   _glapi_Context = (ThreadSafe) ? NULL : context;
+#else
+   _glapi_Context = context;
+#endif
+}
+
+
+
+/**
+ * Get the current context pointer for this thread.
+ * The context pointer is an opaque type which should be cast from
+ * void to the real context pointer type.
+ */
+PUBLIC void *
+_glapi_get_context(void)
+{
+#if defined(GLX_USE_TLS)
+   return _glapi_tls_Context;
+#elif defined(THREADS)
+   return (ThreadSafe) ? _glthread_GetTSD(&ContextTSD) : _glapi_Context;
+#else
+   return _glapi_Context;
+#endif
+}
+
+
+
+/**
+ * Set the global or per-thread dispatch table pointer.
+ * If the dispatch parameter is NULL we'll plug in the no-op dispatch
+ * table (__glapi_noop_table).
+ */
+PUBLIC void
+_glapi_set_dispatch(struct _glapi_table *dispatch)
+{
+   init_glapi_relocs_once();
+
+   if (dispatch == NULL) {
+      /* use the no-op functions */
+      dispatch = (struct _glapi_table *) __glapi_noop_table;
+   }
+#ifdef DEBUG
+   else {
+      _glapi_check_table_not_null(dispatch);
+      _glapi_check_table(dispatch);
+   }
+#endif
+
+#if defined(GLX_USE_TLS)
+   _glapi_tls_Dispatch = dispatch;
+#elif defined(THREADS)
+   _glthread_SetTSD(&_gl_DispatchTSD, (void *) dispatch);
+   _glapi_Dispatch = (ThreadSafe) ? NULL : dispatch;
+#else
+   _glapi_Dispatch = dispatch;
+#endif
+}
+
+
+
+/**
+ * Return pointer to current dispatch table for calling thread.
+ */
+PUBLIC struct _glapi_table *
+_glapi_get_dispatch(void)
+{
+#if defined(GLX_USE_TLS)
+   return _glapi_tls_Dispatch;
+#elif defined(THREADS)
+   return (ThreadSafe)
+     ? (struct _glapi_table *) _glthread_GetTSD(&_gl_DispatchTSD)
+     : _glapi_Dispatch;
+#else
+   return _glapi_Dispatch;
+#endif
+}
diff --git a/src/mapi/glapi/glapi.h b/src/mapi/glapi/glapi.h
new file mode 100644 (file)
index 0000000..7dcf2e8
--- /dev/null
@@ -0,0 +1,172 @@
+/*
+ * Mesa 3-D graphics library
+ * Version:  7.1
+ *
+ * Copyright (C) 1999-2008  Brian Paul   All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+
+/**
+ * \mainpage Mesa GL API Module
+ *
+ * \section GLAPIIntroduction Introduction
+ *
+ * The Mesa GL API module is responsible for dispatching all the
+ * gl*() functions.  All GL functions are dispatched by jumping through
+ * the current dispatch table (basically a struct full of function
+ * pointers.)
+ *
+ * A per-thread current dispatch table and per-thread current context
+ * pointer are managed by this module too.
+ *
+ * This module is intended to be non-Mesa-specific so it can be used
+ * with the X/DRI libGL also.
+ */
+
+
+#ifndef _GLAPI_H
+#define _GLAPI_H
+
+#include "glthread.h"
+
+
+struct _glapi_table;
+
+typedef void (*_glapi_proc)(void); /* generic function pointer */
+
+
+#if defined(USE_MGL_NAMESPACE)
+#define _glapi_set_dispatch _mglapi_set_dispatch
+#define _glapi_get_dispatch _mglapi_get_dispatch
+#define _glapi_set_context _mglapi_set_context
+#define _glapi_get_context _mglapi_get_context
+#define _glapi_Dispatch _mglapi_Dispatch
+#define _glapi_Context _mglapi_Context
+#endif
+
+
+#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
+
+
+/**
+ ** Define the GET_DISPATCH() and GET_CURRENT_CONTEXT() macros.
+ **
+ ** \param C local variable which will hold the current context.
+ **/
+#if defined (GLX_USE_TLS)
+
+extern const struct _glapi_table *_glapi_Dispatch;
+
+extern const void *_glapi_Context;
+
+extern __thread struct _glapi_table * _glapi_tls_Dispatch
+    __attribute__((tls_model("initial-exec")));
+
+extern __thread void * _glapi_tls_Context
+    __attribute__((tls_model("initial-exec")));
+
+# define GET_DISPATCH() _glapi_tls_Dispatch
+
+# define GET_CURRENT_CONTEXT(C)  GLcontext *C = (GLcontext *) _glapi_tls_Context
+
+#else
+
+extern struct _glapi_table *_glapi_Dispatch;
+
+extern void *_glapi_Context;
+
+# ifdef THREADS
+
+#  define GET_DISPATCH() \
+     (likely(_glapi_Dispatch) ? _glapi_Dispatch : _glapi_get_dispatch())
+
+#  define GET_CURRENT_CONTEXT(C)  GLcontext *C = (GLcontext *) \
+     (likely(_glapi_Context) ? _glapi_Context : _glapi_get_context())
+
+# else
+
+#  define GET_DISPATCH() _glapi_Dispatch
+
+#  define GET_CURRENT_CONTEXT(C)  GLcontext *C = (GLcontext *) _glapi_Context
+
+# endif
+
+#endif /* defined (GLX_USE_TLS) */
+
+
+/**
+ ** GL API public functions
+ **/
+
+extern void
+_glapi_init_multithread(void);
+
+
+extern void
+_glapi_destroy_multithread(void);
+
+
+extern void
+_glapi_check_multithread(void);
+
+
+extern void
+_glapi_set_context(void *context);
+
+
+extern void *
+_glapi_get_context(void);
+
+
+extern void
+_glapi_set_dispatch(struct _glapi_table *dispatch);
+
+
+extern struct _glapi_table *
+_glapi_get_dispatch(void);
+
+
+extern unsigned int
+_glapi_get_dispatch_table_size(void);
+
+
+extern int
+_glapi_add_dispatch( const char * const * function_names,
+                    const char * parameter_signature );
+
+extern int
+_glapi_get_proc_offset(const char *funcName);
+
+
+extern _glapi_proc
+_glapi_get_proc_address(const char *funcName);
+
+
+extern const char *
+_glapi_get_proc_name(unsigned int offset);
+
+
+#endif
diff --git a/src/mapi/glapi/glapi_dispatch.c b/src/mapi/glapi/glapi_dispatch.c
new file mode 100644 (file)
index 0000000..ae59140
--- /dev/null
@@ -0,0 +1,102 @@
+/*
+ * Mesa 3-D graphics library
+ * Version:  6.3
+ *
+ * Copyright (C) 1999-2004  Brian Paul   All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+
+/**
+ * \file glapi_dispatch.c
+ *
+ * This file generates all the gl* function entrypoints.  This code is not
+ * used if optimized assembly stubs are available (e.g., using
+ * glapi/glapi_x86.S on IA32 or glapi/glapi_sparc.S on SPARC).
+ *
+ * \note
+ * This file is also used to build the client-side libGL that loads DRI-based
+ * device drivers.  At build-time it is symlinked to src/glx.
+ *
+ * \author Brian Paul <brian@precisioninsight.com>
+ */
+
+#ifdef HAVE_DIX_CONFIG_H
+#include <dix-config.h>
+#include "glapi/mesa.h"
+#else
+#include "main/glheader.h"
+#include "main/compiler.h"
+#endif
+
+#include "glapi/glapi.h"
+#include "glapi/glapitable.h"
+#include "glapi/glapidispatch.h"
+#include "glapi/glthread.h"
+
+
+#if !(defined(USE_X86_ASM) || defined(USE_X86_64_ASM) || defined(USE_SPARC_ASM))
+
+#if defined(WIN32)
+#define KEYWORD1 GLAPI
+#else
+#define KEYWORD1 PUBLIC
+#endif
+
+#define KEYWORD2 GLAPIENTRY
+
+#if defined(USE_MGL_NAMESPACE)
+#define NAME(func)  mgl##func
+#else
+#define NAME(func)  gl##func
+#endif
+
+#if 0  /* Use this to log GL calls to stdout (for DEBUG only!) */
+
+#define F stdout
+#define DISPATCH(FUNC, ARGS, MESSAGE)          \
+   fprintf MESSAGE;                            \
+   CALL_ ## FUNC(GET_DISPATCH(), ARGS);
+
+#define RETURN_DISPATCH(FUNC, ARGS, MESSAGE)   \
+   fprintf MESSAGE;                            \
+   return CALL_ ## FUNC(GET_DISPATCH(), ARGS);
+
+#else
+
+#define DISPATCH(FUNC, ARGS, MESSAGE)          \
+   CALL_ ## FUNC(GET_DISPATCH(), ARGS);
+
+#define RETURN_DISPATCH(FUNC, ARGS, MESSAGE)   \
+   return CALL_ ## FUNC(GET_DISPATCH(), ARGS);
+
+#endif /* logging */
+
+
+#ifndef GLAPIENTRY
+#define GLAPIENTRY
+#endif
+
+#ifdef GLX_INDIRECT_RENDERING
+/* those link to libglapi.a should provide the entry points */
+#define _GLAPI_SKIP_PROTO_ENTRY_POINTS
+#endif
+#include "glapi/glapitemp.h"
+
+#endif /* USE_X86_ASM */
diff --git a/src/mapi/glapi/glapi_entrypoint.c b/src/mapi/glapi/glapi_entrypoint.c
new file mode 100644 (file)
index 0000000..239780e
--- /dev/null
@@ -0,0 +1,352 @@
+/*
+ * Mesa 3-D graphics library
+ * Version:  7.1
+ *
+ * Copyright (C) 1999-2008  Brian Paul   All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+/**
+ * \file glapi_entrypoint.c
+ *
+ * Arch-specific code for manipulating GL API entrypoints (dispatch stubs).
+ */
+
+
+#ifdef HAVE_DIX_CONFIG_H
+#include <dix-config.h>
+#include "glapi/mesa.h"
+#else
+#include "main/glheader.h"
+#include "main/compiler.h"
+#endif
+
+#include "glapi/glapi.h"
+#include "glapi/glapi_priv.h"
+
+
+#ifdef USE_X86_ASM
+
+#if defined( GLX_USE_TLS )
+extern       GLubyte gl_dispatch_functions_start[];
+extern       GLubyte gl_dispatch_functions_end[];
+#else
+extern const GLubyte gl_dispatch_functions_start[];
+#endif
+
+#endif /* USE_X86_ASM */
+
+
+#if defined(DISPATCH_FUNCTION_SIZE)
+
+_glapi_proc
+get_entrypoint_address(unsigned int functionOffset)
+{
+   return (_glapi_proc) (gl_dispatch_functions_start
+                         + (DISPATCH_FUNCTION_SIZE * functionOffset));
+}
+
+#endif
+
+
+#if defined(USE_X86_ASM)
+
+/**
+ * Perform platform-specific GL API entry-point fixups.
+ */
+static void
+init_glapi_relocs( void )
+{
+#if defined(GLX_USE_TLS) && !defined(GLX_X86_READONLY_TEXT)
+    extern unsigned long _x86_get_dispatch(void);
+    char run_time_patch[] = {
+       0x65, 0xa1, 0, 0, 0, 0 /* movl %gs:0,%eax */
+    };
+    GLuint *offset = (GLuint *) &run_time_patch[2]; /* 32-bits for x86/32 */
+    const GLubyte * const get_disp = (const GLubyte *) run_time_patch;
+    GLubyte * curr_func = (GLubyte *) gl_dispatch_functions_start;
+
+    *offset = _x86_get_dispatch();
+    while ( curr_func != (GLubyte *) gl_dispatch_functions_end ) {
+       (void) memcpy( curr_func, get_disp, sizeof(run_time_patch));
+       curr_func += DISPATCH_FUNCTION_SIZE;
+    }
+#endif
+}
+
+
+/**
+ * Generate a dispatch function (entrypoint) which jumps through
+ * the given slot number (offset) in the current dispatch table.
+ * We need assembly language in order to accomplish this.
+ */
+_glapi_proc
+generate_entrypoint(unsigned int functionOffset)
+{
+   /* 32 is chosen as something of a magic offset.  For x86, the dispatch
+    * at offset 32 is the first one where the offset in the
+    * "jmp OFFSET*4(%eax)" can't be encoded in a single byte.
+    */
+   const GLubyte * const template_func = gl_dispatch_functions_start 
+     + (DISPATCH_FUNCTION_SIZE * 32);
+   GLubyte * const code = (GLubyte *) _glapi_exec_malloc(DISPATCH_FUNCTION_SIZE);
+
+
+   if ( code != NULL ) {
+      (void) memcpy(code, template_func, DISPATCH_FUNCTION_SIZE);
+      fill_in_entrypoint_offset( (_glapi_proc) code, functionOffset );
+   }
+
+   return (_glapi_proc) code;
+}
+
+
+/**
+ * This function inserts a new dispatch offset into the assembly language
+ * stub that was generated with the preceeding function.
+ */
+void
+fill_in_entrypoint_offset(_glapi_proc entrypoint, unsigned int offset)
+{
+   GLubyte * const code = (GLubyte *) entrypoint;
+
+#if defined(GLX_USE_TLS)
+   *((unsigned int *)(code +  8)) = 4 * offset;
+#elif defined(THREADS)
+   *((unsigned int *)(code + 11)) = 4 * offset;
+   *((unsigned int *)(code + 22)) = 4 * offset;
+#else
+   *((unsigned int *)(code +  7)) = 4 * offset;
+#endif
+}
+
+
+#elif defined(USE_SPARC_ASM)
+
+extern void __glapi_sparc_icache_flush(unsigned int *);
+
+static void
+init_glapi_relocs( void )
+{
+#if defined(PTHREADS) || defined(GLX_USE_TLS)
+    static const unsigned int template[] = {
+#ifdef GLX_USE_TLS
+       0x05000000, /* sethi %hi(_glapi_tls_Dispatch), %g2 */
+       0x8730e00a, /* srl %g3, 10, %g3 */
+       0x8410a000, /* or %g2, %lo(_glapi_tls_Dispatch), %g2 */
+#ifdef __arch64__
+       0xc259c002, /* ldx [%g7 + %g2], %g1 */
+       0xc2584003, /* ldx [%g1 + %g3], %g1 */
+#else
+       0xc201c002, /* ld [%g7 + %g2], %g1 */
+       0xc2004003, /* ld [%g1 + %g3], %g1 */
+#endif
+       0x81c04000, /* jmp %g1 */
+       0x01000000, /* nop  */
+#else
+#ifdef __arch64__
+       0x03000000, /* 64-bit 0x00 --> sethi %hh(_glapi_Dispatch), %g1 */
+       0x05000000, /* 64-bit 0x04 --> sethi %lm(_glapi_Dispatch), %g2 */
+       0x82106000, /* 64-bit 0x08 --> or %g1, %hm(_glapi_Dispatch), %g1 */
+       0x8730e00a, /* 64-bit 0x0c --> srl %g3, 10, %g3 */
+       0x83287020, /* 64-bit 0x10 --> sllx %g1, 32, %g1 */
+       0x82004002, /* 64-bit 0x14 --> add %g1, %g2, %g1 */
+       0xc2586000, /* 64-bit 0x18 --> ldx [%g1 + %lo(_glapi_Dispatch)], %g1 */
+#else
+       0x03000000, /* 32-bit 0x00 --> sethi %hi(_glapi_Dispatch), %g1 */
+       0x8730e00a, /* 32-bit 0x04 --> srl %g3, 10, %g3 */
+       0xc2006000, /* 32-bit 0x08 --> ld [%g1 + %lo(_glapi_Dispatch)], %g1 */
+#endif
+       0x80a06000, /*             --> cmp %g1, 0 */
+       0x02800005, /*             --> be +4*5 */
+       0x01000000, /*             -->  nop  */
+#ifdef __arch64__
+       0xc2584003, /* 64-bit      --> ldx [%g1 + %g3], %g1 */
+#else
+       0xc2004003, /* 32-bit      --> ld [%g1 + %g3], %g1 */
+#endif
+       0x81c04000, /*             --> jmp %g1 */
+       0x01000000, /*             --> nop  */
+#ifdef __arch64__
+       0x9de3bf80, /* 64-bit      --> save  %sp, -128, %sp */
+#else
+       0x9de3bfc0, /* 32-bit      --> save  %sp, -64, %sp */
+#endif
+       0xa0100003, /*             --> mov  %g3, %l0 */
+       0x40000000, /*             --> call _glapi_get_dispatch */
+       0x01000000, /*             -->  nop */
+       0x82100008, /*             --> mov %o0, %g1 */
+       0x86100010, /*             --> mov %l0, %g3 */
+       0x10bffff7, /*             --> ba -4*9 */
+       0x81e80000, /*             -->  restore  */
+#endif
+    };
+#ifdef GLX_USE_TLS
+    extern unsigned int __glapi_sparc_tls_stub;
+    extern unsigned long __glapi_sparc_get_dispatch(void);
+    unsigned int *code = &__glapi_sparc_tls_stub;
+    unsigned long dispatch = __glapi_sparc_get_dispatch();
+#else
+    extern unsigned int __glapi_sparc_pthread_stub;
+    unsigned int *code = &__glapi_sparc_pthread_stub;
+    unsigned long dispatch = (unsigned long) &_glapi_Dispatch;
+    unsigned long call_dest = (unsigned long ) &_glapi_get_dispatch;
+    int idx;
+#endif
+
+#ifdef GLX_USE_TLS
+    code[0] = template[0] | (dispatch >> 10);
+    code[1] = template[1];
+    __glapi_sparc_icache_flush(&code[0]);
+    code[2] = template[2] | (dispatch & 0x3ff);
+    code[3] = template[3];
+    __glapi_sparc_icache_flush(&code[2]);
+    code[4] = template[4];
+    code[5] = template[5];
+    __glapi_sparc_icache_flush(&code[4]);
+    code[6] = template[6];
+    __glapi_sparc_icache_flush(&code[6]);
+#else
+#if defined(__arch64__)
+    code[0] = template[0] | (dispatch >> (32 + 10));
+    code[1] = template[1] | ((dispatch & 0xffffffff) >> 10);
+    __glapi_sparc_icache_flush(&code[0]);
+    code[2] = template[2] | ((dispatch >> 32) & 0x3ff);
+    code[3] = template[3];
+    __glapi_sparc_icache_flush(&code[2]);
+    code[4] = template[4];
+    code[5] = template[5];
+    __glapi_sparc_icache_flush(&code[4]);
+    code[6] = template[6] | (dispatch & 0x3ff);
+    idx = 7;
+#else
+    code[0] = template[0] | (dispatch >> 10);
+    code[1] = template[1];
+    __glapi_sparc_icache_flush(&code[0]);
+    code[2] = template[2] | (dispatch & 0x3ff);
+    idx = 3;
+#endif
+    code[idx + 0] = template[idx + 0];
+    __glapi_sparc_icache_flush(&code[idx - 1]);
+    code[idx + 1] = template[idx + 1];
+    code[idx + 2] = template[idx + 2];
+    __glapi_sparc_icache_flush(&code[idx + 1]);
+    code[idx + 3] = template[idx + 3];
+    code[idx + 4] = template[idx + 4];
+    __glapi_sparc_icache_flush(&code[idx + 3]);
+    code[idx + 5] = template[idx + 5];
+    code[idx + 6] = template[idx + 6];
+    __glapi_sparc_icache_flush(&code[idx + 5]);
+    code[idx + 7] = template[idx + 7];
+    code[idx + 8] = template[idx + 8] |
+           (((call_dest - ((unsigned long) &code[idx + 8]))
+             >> 2) & 0x3fffffff);
+    __glapi_sparc_icache_flush(&code[idx + 7]);
+    code[idx + 9] = template[idx + 9];
+    code[idx + 10] = template[idx + 10];
+    __glapi_sparc_icache_flush(&code[idx + 9]);
+    code[idx + 11] = template[idx + 11];
+    code[idx + 12] = template[idx + 12];
+    __glapi_sparc_icache_flush(&code[idx + 11]);
+    code[idx + 13] = template[idx + 13];
+    __glapi_sparc_icache_flush(&code[idx + 13]);
+#endif
+#endif
+}
+
+
+_glapi_proc
+generate_entrypoint(GLuint functionOffset)
+{
+#if defined(PTHREADS) || defined(GLX_USE_TLS)
+   static const unsigned int template[] = {
+      0x07000000, /* sethi %hi(0), %g3 */
+      0x8210000f, /* mov  %o7, %g1 */
+      0x40000000, /* call */
+      0x9e100001, /* mov  %g1, %o7 */
+   };
+#ifdef GLX_USE_TLS
+   extern unsigned int __glapi_sparc_tls_stub;
+   unsigned long call_dest = (unsigned long ) &__glapi_sparc_tls_stub;
+#else
+   extern unsigned int __glapi_sparc_pthread_stub;
+   unsigned long call_dest = (unsigned long ) &__glapi_sparc_pthread_stub;
+#endif
+   unsigned int *code = (unsigned int *) _glapi_exec_malloc(sizeof(template));
+   if (code) {
+      code[0] = template[0] | (functionOffset & 0x3fffff);
+      code[1] = template[1];
+      __glapi_sparc_icache_flush(&code[0]);
+      code[2] = template[2] |
+         (((call_dest - ((unsigned long) &code[2]))
+          >> 2) & 0x3fffffff);
+      code[3] = template[3];
+      __glapi_sparc_icache_flush(&code[2]);
+   }
+   return (_glapi_proc) code;
+#endif
+}
+
+
+void
+fill_in_entrypoint_offset(_glapi_proc entrypoint, GLuint offset)
+{
+   unsigned int *code = (unsigned int *) entrypoint;
+
+   code[0] &= ~0x3fffff;
+   code[0] |= (offset * sizeof(void *)) & 0x3fffff;
+   __glapi_sparc_icache_flush(&code[0]);
+}
+
+
+#else /* USE_*_ASM */
+
+static void
+init_glapi_relocs( void )
+{
+}
+
+
+_glapi_proc
+generate_entrypoint(GLuint functionOffset)
+{
+   (void) functionOffset;
+   return NULL;
+}
+
+
+void
+fill_in_entrypoint_offset(_glapi_proc entrypoint, GLuint offset)
+{
+   /* an unimplemented architecture */
+   (void) entrypoint;
+   (void) offset;
+}
+
+#endif /* USE_*_ASM */
+
+
+void
+init_glapi_relocs_once( void )
+{
+#if defined(PTHREADS) || defined(GLX_USE_TLS)
+   static pthread_once_t once_control = PTHREAD_ONCE_INIT;
+   pthread_once( & once_control, init_glapi_relocs );
+#endif
+}
diff --git a/src/mapi/glapi/glapi_execmem.c b/src/mapi/glapi/glapi_execmem.c
new file mode 100644 (file)
index 0000000..57f00be
--- /dev/null
@@ -0,0 +1,128 @@
+/*
+ * Mesa 3-D graphics library
+ * Version:  6.5
+ *
+ * Copyright (C) 1999-2005  Brian Paul   All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+
+/**
+ * \file glapi_execmem.c
+ *
+ * Function for allocating executable memory for dispatch stubs.
+ *
+ * Copied from main/execmem.c and simplified for dispatch stubs.
+ */
+
+
+#ifdef HAVE_DIX_CONFIG_H
+#include <dix-config.h>
+#include "glapi/mesa.h"
+#else
+#include "main/compiler.h"
+#endif
+
+#include "glapi/glthread.h"
+#include "glapi/glapi_priv.h"
+
+
+#if defined(__linux__) || defined(__OpenBSD__) || defined(_NetBSD__) || defined(__sun)
+
+#include <unistd.h>
+#include <sys/mman.h>
+
+#ifdef MESA_SELINUX
+#include <selinux/selinux.h>
+#endif
+
+
+#ifndef MAP_ANONYMOUS
+#define MAP_ANONYMOUS MAP_ANON
+#endif
+
+
+#define EXEC_MAP_SIZE (4*1024)
+
+_glthread_DECLARE_STATIC_MUTEX(exec_mutex);
+
+static unsigned int head = 0;
+
+static unsigned char *exec_mem = NULL;
+
+
+/*
+ * Dispatch stubs are of fixed size and never freed. Thus, we do not need to
+ * overlay a heap, we just mmap a page and manage through an index.
+ */
+
+static int
+init_map(void)
+{
+#ifdef MESA_SELINUX
+   if (is_selinux_enabled()) {
+      if (!security_get_boolean_active("allow_execmem") ||
+         !security_get_boolean_pending("allow_execmem"))
+         return 0;
+   }
+#endif
+
+   if (!exec_mem)
+      exec_mem = mmap(NULL, EXEC_MAP_SIZE, PROT_EXEC | PROT_READ | PROT_WRITE,
+                     MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
+
+   return (exec_mem != MAP_FAILED);
+}
+
+
+void *
+_glapi_exec_malloc(unsigned int size)
+{
+   void *addr = NULL;
+
+   _glthread_LOCK_MUTEX(exec_mutex);
+
+   if (!init_map())
+      goto bail;
+
+   /* free space check, assumes no integer overflow */
+   if (head + size > EXEC_MAP_SIZE)
+      goto bail;
+
+   /* allocation, assumes proper addr and size alignement */
+   addr = exec_mem + head;
+   head += size;
+
+bail:
+   _glthread_UNLOCK_MUTEX(exec_mutex);
+
+   return addr;
+}
+
+
+#else
+
+void *
+_glapi_exec_malloc(unsigned int size)
+{
+   return malloc(size);
+}
+
+
+#endif
diff --git a/src/mapi/glapi/glapi_getproc.c b/src/mapi/glapi/glapi_getproc.c
new file mode 100644 (file)
index 0000000..c73e8dd
--- /dev/null
@@ -0,0 +1,695 @@
+/*
+ * Mesa 3-D graphics library
+ * Version:  7.1
+ *
+ * Copyright (C) 1999-2008  Brian Paul   All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+/**
+ * \file glapi_getproc.c
+ *
+ * Code for implementing glXGetProcAddress(), etc.
+ * This was originally in glapi.c but refactored out.
+ */
+
+
+#ifdef HAVE_DIX_CONFIG_H
+#include <dix-config.h>
+#include "glapi/mesa.h"
+#else
+#include "main/glheader.h"
+#include "main/compiler.h"
+#endif
+
+#include "glapi/glapi.h"
+#include "glapi/glapi_priv.h"
+#include "glapi/glapitable.h"
+#include "glapi/glapioffsets.h"
+
+
+/**********************************************************************
+ * Static function management.
+ */
+
+
+#if !defined(DISPATCH_FUNCTION_SIZE) && !defined(XFree86Server)
+# define NEED_FUNCTION_POINTER
+#endif
+#include "glapi/glprocs.h"
+
+
+/**
+ * Search the table of static entrypoint functions for the named function
+ * and return the corresponding glprocs_table_t entry.
+ */
+static const glprocs_table_t *
+get_static_proc( const char * n )
+{
+   GLuint i;
+   for (i = 0; static_functions[i].Name_offset >= 0; i++) {
+      const char *testName = gl_string_table + static_functions[i].Name_offset;
+#ifdef MANGLE
+      /* skip the prefix on the name */
+      if (strcmp(testName, n + 1) == 0)
+#else
+      if (strcmp(testName, n) == 0)
+#endif
+      {
+        return &static_functions[i];
+      }
+   }
+   return NULL;
+}
+
+
+/**
+ * Return dispatch table offset of the named static (built-in) function.
+ * Return -1 if function not found.
+ */
+static GLint
+get_static_proc_offset(const char *funcName)
+{
+   const glprocs_table_t * const f = get_static_proc( funcName );
+   if (f == NULL) {
+      return -1;
+   }
+
+   return f->Offset;
+}
+
+
+#if !defined(XFree86Server)
+
+/**
+ * Return dispatch function address for the named static (built-in) function.
+ * Return NULL if function not found.
+ */
+static _glapi_proc
+get_static_proc_address(const char *funcName)
+{
+   const glprocs_table_t * const f = get_static_proc( funcName );
+   if (f == NULL) {
+      return NULL;
+   }
+
+#if defined(DISPATCH_FUNCTION_SIZE) && defined(GLX_INDIRECT_RENDERING)
+   return (f->Address == NULL)
+      ? get_entrypoint_address(f->Offset)
+      : f->Address;
+#elif defined(DISPATCH_FUNCTION_SIZE)
+   return get_entrypoint_address(f->Offset);
+#else
+   return f->Address;
+#endif
+}
+
+#else
+
+static _glapi_proc
+get_static_proc_address(const char *funcName)
+{
+   (void) funcName;
+   return NULL;
+}
+
+#endif /* !defined(XFree86Server) */
+
+
+/**
+ * Return the name of the function at the given offset in the dispatch
+ * table.  For debugging only.
+ */
+static const char *
+get_static_proc_name( GLuint offset )
+{
+   GLuint i;
+   for (i = 0; static_functions[i].Name_offset >= 0; i++) {
+      if (static_functions[i].Offset == offset) {
+        return gl_string_table + static_functions[i].Name_offset;
+      }
+   }
+   return NULL;
+}
+
+
+
+/**********************************************************************
+ * Extension function management.
+ */
+
+
+/**
+ * Track information about a function added to the GL API.
+ */
+struct _glapi_function {
+   /**
+    * Name of the function.
+    */
+   const char * name;
+
+
+   /**
+    * Text string that describes the types of the parameters passed to the
+    * named function.   Parameter types are converted to characters using the
+    * following rules:
+    *   - 'i' for \c GLint, \c GLuint, and \c GLenum
+    *   - 'p' for any pointer type
+    *   - 'f' for \c GLfloat and \c GLclampf
+    *   - 'd' for \c GLdouble and \c GLclampd
+    */
+   const char * parameter_signature;
+
+
+   /**
+    * Offset in the dispatch table where the pointer to the real function is
+    * located.  If the driver has not requested that the named function be
+    * added to the dispatch table, this will have the value ~0.
+    */
+   unsigned dispatch_offset;
+
+
+   /**
+    * Pointer to the dispatch stub for the named function.
+    * 
+    * \todo
+    * The semantic of this field should be changed slightly.  Currently, it
+    * is always expected to be non-\c NULL.  However, it would be better to
+    * only allocate the entry-point stub when the application requests the
+    * function via \c glXGetProcAddress.  This would save memory for all the
+    * functions that the driver exports but that the application never wants
+    * to call.
+    */
+   _glapi_proc dispatch_stub;
+};
+
+
+static struct _glapi_function ExtEntryTable[MAX_EXTENSION_FUNCS];
+static GLuint NumExtEntryPoints = 0;
+
+
+static struct _glapi_function *
+get_extension_proc(const char *funcName)
+{
+   GLuint i;
+   for (i = 0; i < NumExtEntryPoints; i++) {
+      if (strcmp(ExtEntryTable[i].name, funcName) == 0) {
+         return & ExtEntryTable[i];
+      }
+   }
+   return NULL;
+}
+
+
+static GLint
+get_extension_proc_offset(const char *funcName)
+{
+   const struct _glapi_function * const f = get_extension_proc( funcName );
+   if (f == NULL) {
+      return -1;
+   }
+
+   return f->dispatch_offset;
+}
+
+
+static _glapi_proc
+get_extension_proc_address(const char *funcName)
+{
+   const struct _glapi_function * const f = get_extension_proc( funcName );
+   if (f == NULL) {
+      return NULL;
+   }
+
+   return f->dispatch_stub;
+}
+
+
+static const char *
+get_extension_proc_name(GLuint offset)
+{
+   GLuint i;
+   for (i = 0; i < NumExtEntryPoints; i++) {
+      if (ExtEntryTable[i].dispatch_offset == offset) {
+         return ExtEntryTable[i].name;
+      }
+   }
+   return NULL;
+}
+
+
+/**
+ * strdup() is actually not a standard ANSI C or POSIX routine.
+ * Irix will not define it if ANSI mode is in effect.
+ */
+static char *
+str_dup(const char *str)
+{
+   char *copy;
+   copy = (char*) malloc(strlen(str) + 1);
+   if (!copy)
+      return NULL;
+   strcpy(copy, str);
+   return copy;
+}
+
+
+/**
+ * Generate new entrypoint
+ *
+ * Use a temporary dispatch offset of ~0 (i.e. -1).  Later, when the driver
+ * calls \c _glapi_add_dispatch we'll put in the proper offset.  If that
+ * never happens, and the user calls this function, he'll segfault.  That's
+ * what you get when you try calling a GL function that doesn't really exist.
+ * 
+ * \param funcName  Name of the function to create an entry-point for.
+ * 
+ * \sa _glapi_add_entrypoint
+ */
+
+static struct _glapi_function *
+add_function_name( const char * funcName )
+{
+   struct _glapi_function * entry = NULL;
+   _glapi_proc entrypoint = NULL;
+   char * name_dup = NULL;
+
+   if (NumExtEntryPoints >= MAX_EXTENSION_FUNCS)
+      return NULL;
+
+   if (funcName == NULL)
+      return NULL;
+
+   name_dup = str_dup(funcName);
+   if (name_dup == NULL)
+      return NULL;
+
+   entrypoint = generate_entrypoint(~0);
+
+   if (entrypoint == NULL) {
+      free(name_dup);
+      return NULL;
+   }
+
+   entry = & ExtEntryTable[NumExtEntryPoints];
+   NumExtEntryPoints++;
+
+   entry->name = name_dup;
+   entry->parameter_signature = NULL;
+   entry->dispatch_offset = ~0;
+   entry->dispatch_stub = entrypoint;
+
+   return entry;
+}
+
+
+static struct _glapi_function *
+set_entry_info( struct _glapi_function * entry, const char * signature, unsigned offset )
+{
+   char * sig_dup = NULL;
+
+   if (signature == NULL)
+      return NULL;
+
+   sig_dup = str_dup(signature);
+   if (sig_dup == NULL)
+      return NULL;
+
+   fill_in_entrypoint_offset(entry->dispatch_stub, offset);
+
+   entry->parameter_signature = sig_dup;
+   entry->dispatch_offset = offset;
+
+   return entry;
+}
+
+
+/**
+ * Fill-in the dispatch stub for the named function.
+ * 
+ * This function is intended to be called by a hardware driver.  When called,
+ * a dispatch stub may be created created for the function.  A pointer to this
+ * dispatch function will be returned by glXGetProcAddress.
+ *
+ * \param function_names       Array of pointers to function names that should
+ *                             share a common dispatch offset.
+ * \param parameter_signature  String representing the types of the parameters
+ *                             passed to the named function.  Parameter types
+ *                             are converted to characters using the following
+ *                             rules:
+ *                               - 'i' for \c GLint, \c GLuint, and \c GLenum
+ *                               - 'p' for any pointer type
+ *                               - 'f' for \c GLfloat and \c GLclampf
+ *                               - 'd' for \c GLdouble and \c GLclampd
+ *
+ * \returns
+ * The offset in the dispatch table of the named function.  A pointer to the
+ * driver's implementation of the named function should be stored at
+ * \c dispatch_table[\c offset].  Return -1 if error/problem.
+ *
+ * \sa glXGetProcAddress
+ *
+ * \warning
+ * This function can only handle up to 8 names at a time.  As far as I know,
+ * the maximum number of names ever associated with an existing GL function is
+ * 4 (\c glPointParameterfSGIS, \c glPointParameterfEXT,
+ * \c glPointParameterfARB, and \c glPointParameterf), so this should not be
+ * too painful of a limitation.
+ *
+ * \todo
+ * Determine whether or not \c parameter_signature should be allowed to be
+ * \c NULL.  It doesn't seem like much of a hardship for drivers to have to
+ * pass in an empty string.
+ *
+ * \todo
+ * Determine if code should be added to reject function names that start with
+ * 'glX'.
+ * 
+ * \bug
+ * Add code to compare \c parameter_signature with the parameter signature of
+ * a static function.  In order to do that, we need to find a way to \b get
+ * the parameter signature of a static function.
+ */
+
+PUBLIC int
+_glapi_add_dispatch( const char * const * function_names,
+                    const char * parameter_signature )
+{
+   static int next_dynamic_offset = _gloffset_FIRST_DYNAMIC;
+   const char * const real_sig = (parameter_signature != NULL)
+     ? parameter_signature : "";
+   struct _glapi_function * entry[8];
+   GLboolean is_static[8];
+   unsigned i;
+   int offset = ~0;
+
+   init_glapi_relocs_once();
+
+   (void) memset( is_static, 0, sizeof( is_static ) );
+   (void) memset( entry, 0, sizeof( entry ) );
+
+   /* Find the _single_ dispatch offset for all function names that already
+    * exist (and have a dispatch offset).
+    */
+
+   for ( i = 0 ; function_names[i] != NULL ; i++ ) {
+      const char * funcName = function_names[i];
+      int static_offset;
+      int extension_offset;
+
+      if (funcName[0] != 'g' || funcName[1] != 'l')
+         return -1;
+
+      /* search built-in functions */
+      static_offset = get_static_proc_offset(funcName);
+
+      if (static_offset >= 0) {
+
+        is_static[i] = GL_TRUE;
+
+        /* FIXME: Make sure the parameter signatures match!  How do we get
+         * FIXME: the parameter signature for static functions?
+         */
+
+        if ( (offset != ~0) && (static_offset != offset) ) {
+           return -1;
+        }
+
+        offset = static_offset;
+
+        continue;
+      }
+
+      /* search added extension functions */
+      entry[i] = get_extension_proc(funcName);
+
+      if (entry[i] != NULL) {
+        extension_offset = entry[i]->dispatch_offset;
+
+        /* The offset may be ~0 if the function name was added by
+         * glXGetProcAddress but never filled in by the driver.
+         */
+
+        if (extension_offset == ~0) {
+           continue;
+        }
+
+        if (strcmp(real_sig, entry[i]->parameter_signature) != 0) {
+           return -1;
+        }
+
+        if ( (offset != ~0) && (extension_offset != offset) ) {
+           return -1;
+        }
+
+        offset = extension_offset;
+      }
+   }
+
+   /* If all function names are either new (or with no dispatch offset),
+    * allocate a new dispatch offset.
+    */
+
+   if (offset == ~0) {
+      offset = next_dynamic_offset;
+      next_dynamic_offset++;
+   }
+
+   /* Fill in the dispatch offset for the new function names (and those with
+    * no dispatch offset).
+    */
+
+   for ( i = 0 ; function_names[i] != NULL ; i++ ) {
+      if (is_static[i]) {
+        continue;
+      }
+
+      /* generate entrypoints for new function names */
+      if (entry[i] == NULL) {
+        entry[i] = add_function_name( function_names[i] );
+        if (entry[i] == NULL) {
+           /* FIXME: Possible memory leak here. */
+           return -1;
+        }
+      }
+
+      if (entry[i]->dispatch_offset == ~0) {
+        set_entry_info( entry[i], real_sig, offset );
+      }
+   }
+
+   return offset;
+}
+
+
+/**
+ * Return offset of entrypoint for named function within dispatch table.
+ */
+PUBLIC GLint
+_glapi_get_proc_offset(const char *funcName)
+{
+   GLint offset;
+
+   /* search extension functions first */
+   offset = get_extension_proc_offset(funcName);
+   if (offset >= 0)
+      return offset;
+
+   /* search static functions */
+   return get_static_proc_offset(funcName);
+}
+
+
+
+/**
+ * Return pointer to the named function.  If the function name isn't found
+ * in the name of static functions, try generating a new API entrypoint on
+ * the fly with assembly language.
+ */
+PUBLIC _glapi_proc
+_glapi_get_proc_address(const char *funcName)
+{
+   _glapi_proc func;
+   struct _glapi_function * entry;
+
+   init_glapi_relocs_once();
+
+#ifdef MANGLE
+   /* skip the prefix on the name */
+   if (funcName[1] != 'g' || funcName[2] != 'l')
+      return NULL;
+#else
+   if (funcName[0] != 'g' || funcName[1] != 'l')
+      return NULL;
+#endif
+
+   /* search extension functions first */
+   func = get_extension_proc_address(funcName);
+   if (func)
+      return func;
+
+   /* search static functions */
+   func = get_static_proc_address(funcName);
+   if (func)
+      return func;
+
+   /* generate entrypoint, dispatch offset must be filled in by the driver */
+   entry = add_function_name(funcName);
+   if (entry == NULL)
+      return NULL;
+
+   return entry->dispatch_stub;
+}
+
+
+
+/**
+ * Return the name of the function at the given dispatch offset.
+ * This is only intended for debugging.
+ */
+const char *
+_glapi_get_proc_name(GLuint offset)
+{
+   const char * n;
+
+   /* search built-in functions */
+   n = get_static_proc_name(offset);
+   if ( n != NULL ) {
+      return n;
+   }
+
+   /* search added extension functions */
+   return get_extension_proc_name(offset);
+}
+
+
+
+/**********************************************************************
+ * GL API table functions.
+ */
+
+
+/*
+ * The dispatch table size (number of entries) is the size of the
+ * _glapi_table struct plus the number of dynamic entries we can add.
+ * The extra slots can be filled in by DRI drivers that register new extension
+ * functions.
+ */
+#define DISPATCH_TABLE_SIZE (sizeof(struct _glapi_table) / sizeof(void *) + MAX_EXTENSION_FUNCS)
+
+
+/**
+ * Return size of dispatch table struct as number of functions (or
+ * slots).
+ */
+PUBLIC GLuint
+_glapi_get_dispatch_table_size(void)
+{
+   return DISPATCH_TABLE_SIZE;
+}
+
+
+/**
+ * Make sure there are no NULL pointers in the given dispatch table.
+ * Intended for debugging purposes.
+ */
+void
+_glapi_check_table_not_null(const struct _glapi_table *table)
+{
+#ifdef EXTRA_DEBUG /* set to DEBUG for extra DEBUG */
+   const GLuint entries = _glapi_get_dispatch_table_size();
+   const void **tab = (const void **) table;
+   GLuint i;
+   for (i = 1; i < entries; i++) {
+      assert(tab[i]);
+   }
+#else
+   (void) table;
+#endif
+}
+
+
+/**
+ * Do some spot checks to be sure that the dispatch table
+ * slots are assigned correctly. For debugging only.
+ */
+void
+_glapi_check_table(const struct _glapi_table *table)
+{
+#ifdef EXTRA_DEBUG /* set to DEBUG for extra DEBUG */
+   {
+      GLuint BeginOffset = _glapi_get_proc_offset("glBegin");
+      char *BeginFunc = (char*) &table->Begin;
+      GLuint offset = (BeginFunc - (char *) table) / sizeof(void *);
+      assert(BeginOffset == _gloffset_Begin);
+      assert(BeginOffset == offset);
+   }
+   {
+      GLuint viewportOffset = _glapi_get_proc_offset("glViewport");
+      char *viewportFunc = (char*) &table->Viewport;
+      GLuint offset = (viewportFunc - (char *) table) / sizeof(void *);
+      assert(viewportOffset == _gloffset_Viewport);
+      assert(viewportOffset == offset);
+   }
+   {
+      GLuint VertexPointerOffset = _glapi_get_proc_offset("glVertexPointer");
+      char *VertexPointerFunc = (char*) &table->VertexPointer;
+      GLuint offset = (VertexPointerFunc - (char *) table) / sizeof(void *);
+      assert(VertexPointerOffset == _gloffset_VertexPointer);
+      assert(VertexPointerOffset == offset);
+   }
+   {
+      GLuint ResetMinMaxOffset = _glapi_get_proc_offset("glResetMinmax");
+      char *ResetMinMaxFunc = (char*) &table->ResetMinmax;
+      GLuint offset = (ResetMinMaxFunc - (char *) table) / sizeof(void *);
+      assert(ResetMinMaxOffset == _gloffset_ResetMinmax);
+      assert(ResetMinMaxOffset == offset);
+   }
+   {
+      GLuint blendColorOffset = _glapi_get_proc_offset("glBlendColor");
+      char *blendColorFunc = (char*) &table->BlendColor;
+      GLuint offset = (blendColorFunc - (char *) table) / sizeof(void *);
+      assert(blendColorOffset == _gloffset_BlendColor);
+      assert(blendColorOffset == offset);
+   }
+   {
+      GLuint secondaryColor3fOffset = _glapi_get_proc_offset("glSecondaryColor3fEXT");
+      char *secondaryColor3fFunc = (char*) &table->SecondaryColor3fEXT;
+      GLuint offset = (secondaryColor3fFunc - (char *) table) / sizeof(void *);
+      assert(secondaryColor3fOffset == _gloffset_SecondaryColor3fEXT);
+      assert(secondaryColor3fOffset == offset);
+   }
+   {
+      GLuint pointParameterivOffset = _glapi_get_proc_offset("glPointParameterivNV");
+      char *pointParameterivFunc = (char*) &table->PointParameterivNV;
+      GLuint offset = (pointParameterivFunc - (char *) table) / sizeof(void *);
+      assert(pointParameterivOffset == _gloffset_PointParameterivNV);
+      assert(pointParameterivOffset == offset);
+   }
+   {
+      GLuint setFenceOffset = _glapi_get_proc_offset("glSetFenceNV");
+      char *setFenceFunc = (char*) &table->SetFenceNV;
+      GLuint offset = (setFenceFunc - (char *) table) / sizeof(void *);
+      assert(setFenceOffset == _gloffset_SetFenceNV);
+      assert(setFenceOffset == offset);
+   }
+#else
+   (void) table;
+#endif
+}
diff --git a/src/mapi/glapi/glapi_nop.c b/src/mapi/glapi/glapi_nop.c
new file mode 100644 (file)
index 0000000..4257b1f
--- /dev/null
@@ -0,0 +1,134 @@
+/*
+ * Mesa 3-D graphics library
+ * Version:  7.8
+ *
+ * Copyright (C) 1999-2008  Brian Paul   All Rights Reserved.
+ * Copyright (C) 2010  VMWare, Inc.  All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+
+/**
+ * No-op dispatch table.
+ *
+ * This file defines a special dispatch table which is loaded with no-op
+ * functions.
+ *
+ * When there's no current rendering context, calling a GL function like
+ * glBegin() is a no-op.  Apps should never normally do this.  So as a
+ * debugging aid, each of the no-op functions will emit a warning to
+ * stderr if the MESA_DEBUG or LIBGL_DEBUG env var is set.
+ */
+
+
+
+#ifdef HAVE_DIX_CONFIG_H
+#include <dix-config.h>
+#include "glapi/mesa.h"
+#else
+#include "main/compiler.h"
+#include "main/glheader.h"
+#endif
+
+#include "glapi/glapi.h"
+
+
+/*
+ * These stubs are kept so that the old DRI drivers still load.
+ */
+PUBLIC void
+_glapi_noop_enable_warnings(GLboolean enable);
+
+PUBLIC void
+_glapi_set_warning_func(_glapi_proc func);
+
+void
+_glapi_noop_enable_warnings(GLboolean enable)
+{
+}
+
+void
+_glapi_set_warning_func(_glapi_proc func)
+{
+}
+
+#ifdef DEBUG
+
+/**
+ * Called by each of the no-op GL entrypoints.
+ */
+static int
+Warn(const char *func)
+{
+#if !defined(_WIN32_WCE)
+   if (getenv("MESA_DEBUG") || getenv("LIBGL_DEBUG")) {
+      fprintf(stderr, "GL User Error: gl%s called without a rendering context\n",
+              func);
+   }
+#endif
+   return 0;
+}
+
+
+/**
+ * This is called if the user somehow calls an unassigned GL dispatch function.
+ */
+static GLint
+NoOpUnused(void)
+{
+   return Warn(" function");
+}
+
+/*
+ * Defines for the glapitemp.h functions.
+ */
+#define KEYWORD1 static
+#define KEYWORD1_ALT static
+#define KEYWORD2 GLAPIENTRY
+#define NAME(func)  NoOp##func
+#define DISPATCH(func, args, msg)  Warn(#func);
+#define RETURN_DISPATCH(func, args, msg)  Warn(#func); return 0
+
+
+/*
+ * Defines for the table of no-op entry points.
+ */
+#define TABLE_ENTRY(name) (_glapi_proc) NoOp##name
+
+#else
+
+static int
+NoOpGeneric(void)
+{
+#if !defined(_WIN32_WCE)
+   if (getenv("MESA_DEBUG") || getenv("LIBGL_DEBUG")) {
+      fprintf(stderr, "GL User Error: calling GL function without a rendering context\n");
+   }
+#endif
+   return 0;
+}
+
+#define TABLE_ENTRY(name) (_glapi_proc) NoOpGeneric
+
+#endif
+
+#define DISPATCH_TABLE_NAME __glapi_noop_table
+#define UNUSED_TABLE_NAME __unused_noop_functions
+
+#include "glapi/glapitemp.h"
diff --git a/src/mapi/glapi/glapi_priv.h b/src/mapi/glapi/glapi_priv.h
new file mode 100644 (file)
index 0000000..da6fee6
--- /dev/null
@@ -0,0 +1,99 @@
+/*
+ * Mesa 3-D graphics library
+ * Version:  7.1
+ *
+ * Copyright (C) 1999-2008  Brian Paul   All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+
+#ifndef _GLAPI_PRIV_H
+#define _GLAPI_PRIV_H
+
+#include "glthread.h"
+#include "glapi.h"
+
+
+
+/* getproc */
+
+extern void
+_glapi_check_table_not_null(const struct _glapi_table *table);
+
+
+extern void
+_glapi_check_table(const struct _glapi_table *table);
+
+
+/* execmem */
+
+extern void *
+_glapi_exec_malloc(unsigned int size);
+
+
+/* entrypoint */
+
+extern void
+init_glapi_relocs_once(void);
+
+
+extern _glapi_proc
+generate_entrypoint(unsigned int functionOffset);
+
+
+extern void
+fill_in_entrypoint_offset(_glapi_proc entrypoint, unsigned int offset);
+
+
+extern _glapi_proc
+get_entrypoint_address(unsigned int functionOffset);
+
+
+/**
+ * Size (in bytes) of dispatch function (entrypoint).
+ */
+#if defined(USE_X86_ASM)
+# if defined(GLX_USE_TLS)
+#  define DISPATCH_FUNCTION_SIZE  16
+# elif defined(THREADS)
+#  define DISPATCH_FUNCTION_SIZE  32
+# else
+#  define DISPATCH_FUNCTION_SIZE  16
+# endif
+#endif
+
+#if defined(USE_X64_64_ASM)
+# if defined(GLX_USE_TLS)
+#  define DISPATCH_FUNCTION_SIZE  16
+# endif
+#endif
+
+
+/**
+ * Number of extension functions which we can dynamically add at runtime.
+ *
+ * Number of extension functions is also subject to the size of backing exec
+ * mem we allocate. For the common case of dispatch stubs with size 16 bytes,
+ * the two limits will be hit simultaneously. For larger dispatch function
+ * sizes, MAX_EXTENSION_FUNCS is effectively reduced.
+ */
+#define MAX_EXTENSION_FUNCS 256
+
+
+#endif
diff --git a/src/mapi/glapi/glapi_sparc.S b/src/mapi/glapi/glapi_sparc.S
new file mode 100644 (file)
index 0000000..e9f887b
--- /dev/null
@@ -0,0 +1,1402 @@
+/* DO NOT EDIT - This file generated automatically by gl_SPARC_asm.py (from Mesa) script */
+
+/*
+ * Copyright (C) 1999-2003  Brian Paul   All Rights Reserved.
+ * (C) Copyright IBM Corporation 2004
+ * 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
+ * BRIAN PAUL, IBM,
+ * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
+ * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+#include "glapi/glapioffsets.h"
+
+#ifdef __arch64__
+#define GL_OFF(N)      ((N) * 8)
+#define GL_LL          ldx
+#define GL_TIE_LD(SYM) %tie_ldx(SYM)
+#define GL_STACK_SIZE  128
+#else
+#define GL_OFF(N)      ((N) * 4)
+#define GL_LL          ld
+#define GL_TIE_LD(SYM) %tie_ld(SYM)
+#define GL_STACK_SIZE  64
+#endif
+
+#define GLOBL_FN(x) .globl x ; .type x, @function
+#define HIDDEN(x) .hidden x
+
+       .register %g2, #scratch
+       .register %g3, #scratch
+
+       .text
+
+       GLOBL_FN(__glapi_sparc_icache_flush)
+       HIDDEN(__glapi_sparc_icache_flush)
+       .type   __glapi_sparc_icache_flush, @function
+__glapi_sparc_icache_flush: /* %o0 = insn_addr */
+       flush   %o0
+       retl
+        nop
+
+       .align  32
+
+       .type   __glapi_sparc_get_pc, @function
+__glapi_sparc_get_pc:
+       retl
+        add    %o7, %g2, %g2
+       .size   __glapi_sparc_get_pc, .-__glapi_sparc_get_pc
+
+#ifdef GLX_USE_TLS
+
+       GLOBL_FN(__glapi_sparc_get_dispatch)
+       HIDDEN(__glapi_sparc_get_dispatch)
+__glapi_sparc_get_dispatch:
+       mov     %o7, %g1
+       sethi   %hi(_GLOBAL_OFFSET_TABLE_-4), %g2
+       call    __glapi_sparc_get_pc
+       add     %g2, %lo(_GLOBAL_OFFSET_TABLE_+4), %g2
+       mov     %g1, %o7
+       sethi   %tie_hi22(_glapi_tls_Dispatch), %g1
+       add     %g1, %tie_lo10(_glapi_tls_Dispatch), %g1
+       GL_LL   [%g2 + %g1], %g2, GL_TIE_LD(_glapi_tls_Dispatch)
+       retl
+        mov    %g2, %o0
+
+       .data
+       .align  32
+
+       /* --> sethi %hi(_glapi_tls_Dispatch), %g1 */
+       /* --> or %g1, %lo(_glapi_tls_Dispatch), %g1 */
+       GLOBL_FN(__glapi_sparc_tls_stub)
+       HIDDEN(__glapi_sparc_tls_stub)
+__glapi_sparc_tls_stub: /* Call offset in %g3 */
+       mov     %o7, %g1
+       sethi   %hi(_GLOBAL_OFFSET_TABLE_-4), %g2
+       call    __glapi_sparc_get_pc
+       add     %g2, %lo(_GLOBAL_OFFSET_TABLE_+4), %g2
+       mov     %g1, %o7
+       srl     %g3, 10, %g3
+       sethi   %tie_hi22(_glapi_tls_Dispatch), %g1
+       add     %g1, %tie_lo10(_glapi_tls_Dispatch), %g1
+       GL_LL   [%g2 + %g1], %g2, GL_TIE_LD(_glapi_tls_Dispatch)
+       GL_LL   [%g7+%g2], %g1
+       GL_LL   [%g1 + %g3], %g1
+       jmp     %g1
+        nop
+       .size   __glapi_sparc_tls_stub, .-__glapi_sparc_tls_stub
+
+#define GL_STUB(fn, off)                               \
+       GLOBL_FN(fn);                                   \
+fn:    ba      __glapi_sparc_tls_stub;                 \
+        sethi  GL_OFF(off), %g3;                       \
+       .size   fn,.-fn;
+
+#elif defined(PTHREADS)
+
+       /* 64-bit 0x00 --> sethi %hh(_glapi_Dispatch), %g1 */
+       /* 64-bit 0x04 --> sethi %lm(_glapi_Dispatch), %g2 */
+       /* 64-bit 0x08 --> or %g1, %hm(_glapi_Dispatch), %g1 */
+       /* 64-bit 0x0c --> sllx %g1, 32, %g1 */
+       /* 64-bit 0x10 --> add %g1, %g2, %g1 */
+       /* 64-bit 0x14 --> ldx [%g1 + %lo(_glapi_Dispatch)], %g1 */
+
+       /* 32-bit 0x00 --> sethi %hi(_glapi_Dispatch), %g1 */
+       /* 32-bit 0x04 --> ld [%g1 + %lo(_glapi_Dispatch)], %g1 */
+
+       .data
+       .align  32
+
+       GLOBL_FN(__glapi_sparc_pthread_stub)
+       HIDDEN(__glapi_sparc_pthread_stub)
+__glapi_sparc_pthread_stub: /* Call offset in %g3 */
+       mov     %o7, %g1
+       sethi   %hi(_GLOBAL_OFFSET_TABLE_-4), %g2
+       call    __glapi_sparc_get_pc
+        add    %g2, %lo(_GLOBAL_OFFSET_TABLE_+4), %g2
+       mov     %g1, %o7
+       sethi   %hi(_glapi_Dispatch), %g1
+       or      %g1, %lo(_glapi_Dispatch), %g1
+       srl     %g3, 10, %g3
+       GL_LL   [%g2+%g1], %g2
+       GL_LL   [%g2], %g1
+       cmp     %g1, 0
+       be      2f
+        nop
+1:     GL_LL   [%g1 + %g3], %g1
+       jmp     %g1
+        nop
+2:     save    %sp, GL_STACK_SIZE, %sp
+       mov     %g3, %l0
+       call    _glapi_get_dispatch
+        nop
+       mov     %o0, %g1
+       mov     %l0, %g3
+       ba      1b
+        restore %g0, %g0, %g0
+       .size   __glapi_sparc_pthread_stub, .-__glapi_sparc_pthread_stub
+
+#define GL_STUB(fn, off)                       \
+       GLOBL_FN(fn);                           \
+fn:    ba      __glapi_sparc_pthread_stub;     \
+        sethi  GL_OFF(off), %g3;               \
+       .size   fn,.-fn;
+
+#else /* Non-threaded version. */
+
+       .type   __glapi_sparc_nothread_stub, @function
+__glapi_sparc_nothread_stub: /* Call offset in %g3 */
+       mov     %o7, %g1
+       sethi   %hi(_GLOBAL_OFFSET_TABLE_-4), %g2
+       call    __glapi_sparc_get_pc
+        add    %g2, %lo(_GLOBAL_OFFSET_TABLE_+4), %g2
+       mov     %g1, %o7
+       srl     %g3, 10, %g3
+       sethi   %hi(_glapi_Dispatch), %g1
+       or      %g1, %lo(_glapi_Dispatch), %g1
+       GL_LL   [%g2+%g1], %g2
+       GL_LL   [%g2], %g1
+       GL_LL   [%g1 + %g3], %g1
+       jmp     %g1
+        nop
+       .size   __glapi_sparc_nothread_stub, .-__glapi_sparc_nothread_stub
+
+#define GL_STUB(fn, off)                       \
+       GLOBL_FN(fn);                           \
+fn:    ba      __glapi_sparc_nothread_stub;    \
+        sethi  GL_OFF(off), %g3;               \
+       .size   fn,.-fn;
+
+#endif
+
+#define GL_STUB_ALIAS(fn, alias)               \
+       .globl  fn;                             \
+       .set    fn, alias
+
+       .text
+       .align  32
+
+       .globl  gl_dispatch_functions_start
+       HIDDEN(gl_dispatch_functions_start)
+gl_dispatch_functions_start:
+
+       GL_STUB(glNewList, _gloffset_NewList)
+       GL_STUB(glEndList, _gloffset_EndList)
+       GL_STUB(glCallList, _gloffset_CallList)
+       GL_STUB(glCallLists, _gloffset_CallLists)
+       GL_STUB(glDeleteLists, _gloffset_DeleteLists)
+       GL_STUB(glGenLists, _gloffset_GenLists)
+       GL_STUB(glListBase, _gloffset_ListBase)
+       GL_STUB(glBegin, _gloffset_Begin)
+       GL_STUB(glBitmap, _gloffset_Bitmap)
+       GL_STUB(glColor3b, _gloffset_Color3b)
+       GL_STUB(glColor3bv, _gloffset_Color3bv)
+       GL_STUB(glColor3d, _gloffset_Color3d)
+       GL_STUB(glColor3dv, _gloffset_Color3dv)
+       GL_STUB(glColor3f, _gloffset_Color3f)
+       GL_STUB(glColor3fv, _gloffset_Color3fv)
+       GL_STUB(glColor3i, _gloffset_Color3i)
+       GL_STUB(glColor3iv, _gloffset_Color3iv)
+       GL_STUB(glColor3s, _gloffset_Color3s)
+       GL_STUB(glColor3sv, _gloffset_Color3sv)
+       GL_STUB(glColor3ub, _gloffset_Color3ub)
+       GL_STUB(glColor3ubv, _gloffset_Color3ubv)
+       GL_STUB(glColor3ui, _gloffset_Color3ui)
+       GL_STUB(glColor3uiv, _gloffset_Color3uiv)
+       GL_STUB(glColor3us, _gloffset_Color3us)
+       GL_STUB(glColor3usv, _gloffset_Color3usv)
+       GL_STUB(glColor4b, _gloffset_Color4b)
+       GL_STUB(glColor4bv, _gloffset_Color4bv)
+       GL_STUB(glColor4d, _gloffset_Color4d)
+       GL_STUB(glColor4dv, _gloffset_Color4dv)
+       GL_STUB(glColor4f, _gloffset_Color4f)
+       GL_STUB(glColor4fv, _gloffset_Color4fv)
+       GL_STUB(glColor4i, _gloffset_Color4i)
+       GL_STUB(glColor4iv, _gloffset_Color4iv)
+       GL_STUB(glColor4s, _gloffset_Color4s)
+       GL_STUB(glColor4sv, _gloffset_Color4sv)
+       GL_STUB(glColor4ub, _gloffset_Color4ub)
+       GL_STUB(glColor4ubv, _gloffset_Color4ubv)
+       GL_STUB(glColor4ui, _gloffset_Color4ui)
+       GL_STUB(glColor4uiv, _gloffset_Color4uiv)
+       GL_STUB(glColor4us, _gloffset_Color4us)
+       GL_STUB(glColor4usv, _gloffset_Color4usv)
+       GL_STUB(glEdgeFlag, _gloffset_EdgeFlag)
+       GL_STUB(glEdgeFlagv, _gloffset_EdgeFlagv)
+       GL_STUB(glEnd, _gloffset_End)
+       GL_STUB(glIndexd, _gloffset_Indexd)
+       GL_STUB(glIndexdv, _gloffset_Indexdv)
+       GL_STUB(glIndexf, _gloffset_Indexf)
+       GL_STUB(glIndexfv, _gloffset_Indexfv)
+       GL_STUB(glIndexi, _gloffset_Indexi)
+       GL_STUB(glIndexiv, _gloffset_Indexiv)
+       GL_STUB(glIndexs, _gloffset_Indexs)
+       GL_STUB(glIndexsv, _gloffset_Indexsv)
+       GL_STUB(glNormal3b, _gloffset_Normal3b)
+       GL_STUB(glNormal3bv, _gloffset_Normal3bv)
+       GL_STUB(glNormal3d, _gloffset_Normal3d)
+       GL_STUB(glNormal3dv, _gloffset_Normal3dv)
+       GL_STUB(glNormal3f, _gloffset_Normal3f)
+       GL_STUB(glNormal3fv, _gloffset_Normal3fv)
+       GL_STUB(glNormal3i, _gloffset_Normal3i)
+       GL_STUB(glNormal3iv, _gloffset_Normal3iv)
+       GL_STUB(glNormal3s, _gloffset_Normal3s)
+       GL_STUB(glNormal3sv, _gloffset_Normal3sv)
+       GL_STUB(glRasterPos2d, _gloffset_RasterPos2d)
+       GL_STUB(glRasterPos2dv, _gloffset_RasterPos2dv)
+       GL_STUB(glRasterPos2f, _gloffset_RasterPos2f)
+       GL_STUB(glRasterPos2fv, _gloffset_RasterPos2fv)
+       GL_STUB(glRasterPos2i, _gloffset_RasterPos2i)
+       GL_STUB(glRasterPos2iv, _gloffset_RasterPos2iv)
+       GL_STUB(glRasterPos2s, _gloffset_RasterPos2s)
+       GL_STUB(glRasterPos2sv, _gloffset_RasterPos2sv)
+       GL_STUB(glRasterPos3d, _gloffset_RasterPos3d)
+       GL_STUB(glRasterPos3dv, _gloffset_RasterPos3dv)
+       GL_STUB(glRasterPos3f, _gloffset_RasterPos3f)
+       GL_STUB(glRasterPos3fv, _gloffset_RasterPos3fv)
+       GL_STUB(glRasterPos3i, _gloffset_RasterPos3i)
+       GL_STUB(glRasterPos3iv, _gloffset_RasterPos3iv)
+       GL_STUB(glRasterPos3s, _gloffset_RasterPos3s)
+       GL_STUB(glRasterPos3sv, _gloffset_RasterPos3sv)
+       GL_STUB(glRasterPos4d, _gloffset_RasterPos4d)
+       GL_STUB(glRasterPos4dv, _gloffset_RasterPos4dv)
+       GL_STUB(glRasterPos4f, _gloffset_RasterPos4f)
+       GL_STUB(glRasterPos4fv, _gloffset_RasterPos4fv)
+       GL_STUB(glRasterPos4i, _gloffset_RasterPos4i)
+       GL_STUB(glRasterPos4iv, _gloffset_RasterPos4iv)
+       GL_STUB(glRasterPos4s, _gloffset_RasterPos4s)
+       GL_STUB(glRasterPos4sv, _gloffset_RasterPos4sv)
+       GL_STUB(glRectd, _gloffset_Rectd)
+       GL_STUB(glRectdv, _gloffset_Rectdv)
+       GL_STUB(glRectf, _gloffset_Rectf)
+       GL_STUB(glRectfv, _gloffset_Rectfv)
+       GL_STUB(glRecti, _gloffset_Recti)
+       GL_STUB(glRectiv, _gloffset_Rectiv)
+       GL_STUB(glRects, _gloffset_Rects)
+       GL_STUB(glRectsv, _gloffset_Rectsv)
+       GL_STUB(glTexCoord1d, _gloffset_TexCoord1d)
+       GL_STUB(glTexCoord1dv, _gloffset_TexCoord1dv)
+       GL_STUB(glTexCoord1f, _gloffset_TexCoord1f)
+       GL_STUB(glTexCoord1fv, _gloffset_TexCoord1fv)
+       GL_STUB(glTexCoord1i, _gloffset_TexCoord1i)
+       GL_STUB(glTexCoord1iv, _gloffset_TexCoord1iv)
+       GL_STUB(glTexCoord1s, _gloffset_TexCoord1s)
+       GL_STUB(glTexCoord1sv, _gloffset_TexCoord1sv)
+       GL_STUB(glTexCoord2d, _gloffset_TexCoord2d)
+       GL_STUB(glTexCoord2dv, _gloffset_TexCoord2dv)
+       GL_STUB(glTexCoord2f, _gloffset_TexCoord2f)
+       GL_STUB(glTexCoord2fv, _gloffset_TexCoord2fv)
+       GL_STUB(glTexCoord2i, _gloffset_TexCoord2i)
+       GL_STUB(glTexCoord2iv, _gloffset_TexCoord2iv)
+       GL_STUB(glTexCoord2s, _gloffset_TexCoord2s)
+       GL_STUB(glTexCoord2sv, _gloffset_TexCoord2sv)
+       GL_STUB(glTexCoord3d, _gloffset_TexCoord3d)
+       GL_STUB(glTexCoord3dv, _gloffset_TexCoord3dv)
+       GL_STUB(glTexCoord3f, _gloffset_TexCoord3f)
+       GL_STUB(glTexCoord3fv, _gloffset_TexCoord3fv)
+       GL_STUB(glTexCoord3i, _gloffset_TexCoord3i)
+       GL_STUB(glTexCoord3iv, _gloffset_TexCoord3iv)
+       GL_STUB(glTexCoord3s, _gloffset_TexCoord3s)
+       GL_STUB(glTexCoord3sv, _gloffset_TexCoord3sv)
+       GL_STUB(glTexCoord4d, _gloffset_TexCoord4d)
+       GL_STUB(glTexCoord4dv, _gloffset_TexCoord4dv)
+       GL_STUB(glTexCoord4f, _gloffset_TexCoord4f)
+       GL_STUB(glTexCoord4fv, _gloffset_TexCoord4fv)
+       GL_STUB(glTexCoord4i, _gloffset_TexCoord4i)
+       GL_STUB(glTexCoord4iv, _gloffset_TexCoord4iv)
+       GL_STUB(glTexCoord4s, _gloffset_TexCoord4s)
+       GL_STUB(glTexCoord4sv, _gloffset_TexCoord4sv)
+       GL_STUB(glVertex2d, _gloffset_Vertex2d)
+       GL_STUB(glVertex2dv, _gloffset_Vertex2dv)
+       GL_STUB(glVertex2f, _gloffset_Vertex2f)
+       GL_STUB(glVertex2fv, _gloffset_Vertex2fv)
+       GL_STUB(glVertex2i, _gloffset_Vertex2i)
+       GL_STUB(glVertex2iv, _gloffset_Vertex2iv)
+       GL_STUB(glVertex2s, _gloffset_Vertex2s)
+       GL_STUB(glVertex2sv, _gloffset_Vertex2sv)
+       GL_STUB(glVertex3d, _gloffset_Vertex3d)
+       GL_STUB(glVertex3dv, _gloffset_Vertex3dv)
+       GL_STUB(glVertex3f, _gloffset_Vertex3f)
+       GL_STUB(glVertex3fv, _gloffset_Vertex3fv)
+       GL_STUB(glVertex3i, _gloffset_Vertex3i)
+       GL_STUB(glVertex3iv, _gloffset_Vertex3iv)
+       GL_STUB(glVertex3s, _gloffset_Vertex3s)
+       GL_STUB(glVertex3sv, _gloffset_Vertex3sv)
+       GL_STUB(glVertex4d, _gloffset_Vertex4d)
+       GL_STUB(glVertex4dv, _gloffset_Vertex4dv)
+       GL_STUB(glVertex4f, _gloffset_Vertex4f)
+       GL_STUB(glVertex4fv, _gloffset_Vertex4fv)
+       GL_STUB(glVertex4i, _gloffset_Vertex4i)
+       GL_STUB(glVertex4iv, _gloffset_Vertex4iv)
+       GL_STUB(glVertex4s, _gloffset_Vertex4s)
+       GL_STUB(glVertex4sv, _gloffset_Vertex4sv)
+       GL_STUB(glClipPlane, _gloffset_ClipPlane)
+       GL_STUB(glColorMaterial, _gloffset_ColorMaterial)
+       GL_STUB(glCullFace, _gloffset_CullFace)
+       GL_STUB(glFogf, _gloffset_Fogf)
+       GL_STUB(glFogfv, _gloffset_Fogfv)
+       GL_STUB(glFogi, _gloffset_Fogi)
+       GL_STUB(glFogiv, _gloffset_Fogiv)
+       GL_STUB(glFrontFace, _gloffset_FrontFace)
+       GL_STUB(glHint, _gloffset_Hint)
+       GL_STUB(glLightf, _gloffset_Lightf)
+       GL_STUB(glLightfv, _gloffset_Lightfv)
+       GL_STUB(glLighti, _gloffset_Lighti)
+       GL_STUB(glLightiv, _gloffset_Lightiv)
+       GL_STUB(glLightModelf, _gloffset_LightModelf)
+       GL_STUB(glLightModelfv, _gloffset_LightModelfv)
+       GL_STUB(glLightModeli, _gloffset_LightModeli)
+       GL_STUB(glLightModeliv, _gloffset_LightModeliv)
+       GL_STUB(glLineStipple, _gloffset_LineStipple)
+       GL_STUB(glLineWidth, _gloffset_LineWidth)
+       GL_STUB(glMaterialf, _gloffset_Materialf)
+       GL_STUB(glMaterialfv, _gloffset_Materialfv)
+       GL_STUB(glMateriali, _gloffset_Materiali)
+       GL_STUB(glMaterialiv, _gloffset_Materialiv)
+       GL_STUB(glPointSize, _gloffset_PointSize)
+       GL_STUB(glPolygonMode, _gloffset_PolygonMode)
+       GL_STUB(glPolygonStipple, _gloffset_PolygonStipple)
+       GL_STUB(glScissor, _gloffset_Scissor)
+       GL_STUB(glShadeModel, _gloffset_ShadeModel)
+       GL_STUB(glTexParameterf, _gloffset_TexParameterf)
+       GL_STUB(glTexParameterfv, _gloffset_TexParameterfv)
+       GL_STUB(glTexParameteri, _gloffset_TexParameteri)
+       GL_STUB(glTexParameteriv, _gloffset_TexParameteriv)
+       GL_STUB(glTexImage1D, _gloffset_TexImage1D)
+       GL_STUB(glTexImage2D, _gloffset_TexImage2D)
+       GL_STUB(glTexEnvf, _gloffset_TexEnvf)
+       GL_STUB(glTexEnvfv, _gloffset_TexEnvfv)
+       GL_STUB(glTexEnvi, _gloffset_TexEnvi)
+       GL_STUB(glTexEnviv, _gloffset_TexEnviv)
+       GL_STUB(glTexGend, _gloffset_TexGend)
+       GL_STUB(glTexGendv, _gloffset_TexGendv)
+       GL_STUB(glTexGenf, _gloffset_TexGenf)
+       GL_STUB(glTexGenfv, _gloffset_TexGenfv)
+       GL_STUB(glTexGeni, _gloffset_TexGeni)
+       GL_STUB(glTexGeniv, _gloffset_TexGeniv)
+       GL_STUB(glFeedbackBuffer, _gloffset_FeedbackBuffer)
+       GL_STUB(glSelectBuffer, _gloffset_SelectBuffer)
+       GL_STUB(glRenderMode, _gloffset_RenderMode)
+       GL_STUB(glInitNames, _gloffset_InitNames)
+       GL_STUB(glLoadName, _gloffset_LoadName)
+       GL_STUB(glPassThrough, _gloffset_PassThrough)
+       GL_STUB(glPopName, _gloffset_PopName)
+       GL_STUB(glPushName, _gloffset_PushName)
+       GL_STUB(glDrawBuffer, _gloffset_DrawBuffer)
+       GL_STUB(glClear, _gloffset_Clear)
+       GL_STUB(glClearAccum, _gloffset_ClearAccum)
+       GL_STUB(glClearIndex, _gloffset_ClearIndex)
+       GL_STUB(glClearColor, _gloffset_ClearColor)
+       GL_STUB(glClearStencil, _gloffset_ClearStencil)
+       GL_STUB(glClearDepth, _gloffset_ClearDepth)
+       GL_STUB(glStencilMask, _gloffset_StencilMask)
+       GL_STUB(glColorMask, _gloffset_ColorMask)
+       GL_STUB(glDepthMask, _gloffset_DepthMask)
+       GL_STUB(glIndexMask, _gloffset_IndexMask)
+       GL_STUB(glAccum, _gloffset_Accum)
+       GL_STUB(glDisable, _gloffset_Disable)
+       GL_STUB(glEnable, _gloffset_Enable)
+       GL_STUB(glFinish, _gloffset_Finish)
+       GL_STUB(glFlush, _gloffset_Flush)
+       GL_STUB(glPopAttrib, _gloffset_PopAttrib)
+       GL_STUB(glPushAttrib, _gloffset_PushAttrib)
+       GL_STUB(glMap1d, _gloffset_Map1d)
+       GL_STUB(glMap1f, _gloffset_Map1f)
+       GL_STUB(glMap2d, _gloffset_Map2d)
+       GL_STUB(glMap2f, _gloffset_Map2f)
+       GL_STUB(glMapGrid1d, _gloffset_MapGrid1d)
+       GL_STUB(glMapGrid1f, _gloffset_MapGrid1f)
+       GL_STUB(glMapGrid2d, _gloffset_MapGrid2d)
+       GL_STUB(glMapGrid2f, _gloffset_MapGrid2f)
+       GL_STUB(glEvalCoord1d, _gloffset_EvalCoord1d)
+       GL_STUB(glEvalCoord1dv, _gloffset_EvalCoord1dv)
+       GL_STUB(glEvalCoord1f, _gloffset_EvalCoord1f)
+       GL_STUB(glEvalCoord1fv, _gloffset_EvalCoord1fv)
+       GL_STUB(glEvalCoord2d, _gloffset_EvalCoord2d)
+       GL_STUB(glEvalCoord2dv, _gloffset_EvalCoord2dv)
+       GL_STUB(glEvalCoord2f, _gloffset_EvalCoord2f)
+       GL_STUB(glEvalCoord2fv, _gloffset_EvalCoord2fv)
+       GL_STUB(glEvalMesh1, _gloffset_EvalMesh1)
+       GL_STUB(glEvalPoint1, _gloffset_EvalPoint1)
+       GL_STUB(glEvalMesh2, _gloffset_EvalMesh2)
+       GL_STUB(glEvalPoint2, _gloffset_EvalPoint2)
+       GL_STUB(glAlphaFunc, _gloffset_AlphaFunc)
+       GL_STUB(glBlendFunc, _gloffset_BlendFunc)
+       GL_STUB(glLogicOp, _gloffset_LogicOp)
+       GL_STUB(glStencilFunc, _gloffset_StencilFunc)
+       GL_STUB(glStencilOp, _gloffset_StencilOp)
+       GL_STUB(glDepthFunc, _gloffset_DepthFunc)
+       GL_STUB(glPixelZoom, _gloffset_PixelZoom)
+       GL_STUB(glPixelTransferf, _gloffset_PixelTransferf)
+       GL_STUB(glPixelTransferi, _gloffset_PixelTransferi)
+       GL_STUB(glPixelStoref, _gloffset_PixelStoref)
+       GL_STUB(glPixelStorei, _gloffset_PixelStorei)
+       GL_STUB(glPixelMapfv, _gloffset_PixelMapfv)
+       GL_STUB(glPixelMapuiv, _gloffset_PixelMapuiv)
+       GL_STUB(glPixelMapusv, _gloffset_PixelMapusv)
+       GL_STUB(glReadBuffer, _gloffset_ReadBuffer)
+       GL_STUB(glCopyPixels, _gloffset_CopyPixels)
+       GL_STUB(glReadPixels, _gloffset_ReadPixels)
+       GL_STUB(glDrawPixels, _gloffset_DrawPixels)
+       GL_STUB(glGetBooleanv, _gloffset_GetBooleanv)
+       GL_STUB(glGetClipPlane, _gloffset_GetClipPlane)
+       GL_STUB(glGetDoublev, _gloffset_GetDoublev)
+       GL_STUB(glGetError, _gloffset_GetError)
+       GL_STUB(glGetFloatv, _gloffset_GetFloatv)
+       GL_STUB(glGetIntegerv, _gloffset_GetIntegerv)
+       GL_STUB(glGetLightfv, _gloffset_GetLightfv)
+       GL_STUB(glGetLightiv, _gloffset_GetLightiv)
+       GL_STUB(glGetMapdv, _gloffset_GetMapdv)
+       GL_STUB(glGetMapfv, _gloffset_GetMapfv)
+       GL_STUB(glGetMapiv, _gloffset_GetMapiv)
+       GL_STUB(glGetMaterialfv, _gloffset_GetMaterialfv)
+       GL_STUB(glGetMaterialiv, _gloffset_GetMaterialiv)
+       GL_STUB(glGetPixelMapfv, _gloffset_GetPixelMapfv)
+       GL_STUB(glGetPixelMapuiv, _gloffset_GetPixelMapuiv)
+       GL_STUB(glGetPixelMapusv, _gloffset_GetPixelMapusv)
+       GL_STUB(glGetPolygonStipple, _gloffset_GetPolygonStipple)
+       GL_STUB(glGetString, _gloffset_GetString)
+       GL_STUB(glGetTexEnvfv, _gloffset_GetTexEnvfv)
+       GL_STUB(glGetTexEnviv, _gloffset_GetTexEnviv)
+       GL_STUB(glGetTexGendv, _gloffset_GetTexGendv)
+       GL_STUB(glGetTexGenfv, _gloffset_GetTexGenfv)
+       GL_STUB(glGetTexGeniv, _gloffset_GetTexGeniv)
+       GL_STUB(glGetTexImage, _gloffset_GetTexImage)
+       GL_STUB(glGetTexParameterfv, _gloffset_GetTexParameterfv)
+       GL_STUB(glGetTexParameteriv, _gloffset_GetTexParameteriv)
+       GL_STUB(glGetTexLevelParameterfv, _gloffset_GetTexLevelParameterfv)
+       GL_STUB(glGetTexLevelParameteriv, _gloffset_GetTexLevelParameteriv)
+       GL_STUB(glIsEnabled, _gloffset_IsEnabled)
+       GL_STUB(glIsList, _gloffset_IsList)
+       GL_STUB(glDepthRange, _gloffset_DepthRange)
+       GL_STUB(glFrustum, _gloffset_Frustum)
+       GL_STUB(glLoadIdentity, _gloffset_LoadIdentity)
+       GL_STUB(glLoadMatrixf, _gloffset_LoadMatrixf)
+       GL_STUB(glLoadMatrixd, _gloffset_LoadMatrixd)
+       GL_STUB(glMatrixMode, _gloffset_MatrixMode)
+       GL_STUB(glMultMatrixf, _gloffset_MultMatrixf)
+       GL_STUB(glMultMatrixd, _gloffset_MultMatrixd)
+       GL_STUB(glOrtho, _gloffset_Ortho)
+       GL_STUB(glPopMatrix, _gloffset_PopMatrix)
+       GL_STUB(glPushMatrix, _gloffset_PushMatrix)
+       GL_STUB(glRotated, _gloffset_Rotated)
+       GL_STUB(glRotatef, _gloffset_Rotatef)
+       GL_STUB(glScaled, _gloffset_Scaled)
+       GL_STUB(glScalef, _gloffset_Scalef)
+       GL_STUB(glTranslated, _gloffset_Translated)
+       GL_STUB(glTranslatef, _gloffset_Translatef)
+       GL_STUB(glViewport, _gloffset_Viewport)
+       GL_STUB(glArrayElement, _gloffset_ArrayElement)
+       GL_STUB(glBindTexture, _gloffset_BindTexture)
+       GL_STUB(glColorPointer, _gloffset_ColorPointer)
+       GL_STUB(glDisableClientState, _gloffset_DisableClientState)
+       GL_STUB(glDrawArrays, _gloffset_DrawArrays)
+       GL_STUB(glDrawElements, _gloffset_DrawElements)
+       GL_STUB(glEdgeFlagPointer, _gloffset_EdgeFlagPointer)
+       GL_STUB(glEnableClientState, _gloffset_EnableClientState)
+       GL_STUB(glIndexPointer, _gloffset_IndexPointer)
+       GL_STUB(glIndexub, _gloffset_Indexub)
+       GL_STUB(glIndexubv, _gloffset_Indexubv)
+       GL_STUB(glInterleavedArrays, _gloffset_InterleavedArrays)
+       GL_STUB(glNormalPointer, _gloffset_NormalPointer)
+       GL_STUB(glPolygonOffset, _gloffset_PolygonOffset)
+       GL_STUB(glTexCoordPointer, _gloffset_TexCoordPointer)
+       GL_STUB(glVertexPointer, _gloffset_VertexPointer)
+       GL_STUB(glAreTexturesResident, _gloffset_AreTexturesResident)
+       GL_STUB(glCopyTexImage1D, _gloffset_CopyTexImage1D)
+       GL_STUB(glCopyTexImage2D, _gloffset_CopyTexImage2D)
+       GL_STUB(glCopyTexSubImage1D, _gloffset_CopyTexSubImage1D)
+       GL_STUB(glCopyTexSubImage2D, _gloffset_CopyTexSubImage2D)
+       GL_STUB(glDeleteTextures, _gloffset_DeleteTextures)
+       GL_STUB(glGenTextures, _gloffset_GenTextures)
+       GL_STUB(glGetPointerv, _gloffset_GetPointerv)
+       GL_STUB(glIsTexture, _gloffset_IsTexture)
+       GL_STUB(glPrioritizeTextures, _gloffset_PrioritizeTextures)
+       GL_STUB(glTexSubImage1D, _gloffset_TexSubImage1D)
+       GL_STUB(glTexSubImage2D, _gloffset_TexSubImage2D)
+       GL_STUB(glPopClientAttrib, _gloffset_PopClientAttrib)
+       GL_STUB(glPushClientAttrib, _gloffset_PushClientAttrib)
+       GL_STUB(glBlendColor, _gloffset_BlendColor)
+       GL_STUB(glBlendEquation, _gloffset_BlendEquation)
+       GL_STUB(glDrawRangeElements, _gloffset_DrawRangeElements)
+       GL_STUB(glColorTable, _gloffset_ColorTable)
+       GL_STUB(glColorTableParameterfv, _gloffset_ColorTableParameterfv)
+       GL_STUB(glColorTableParameteriv, _gloffset_ColorTableParameteriv)
+       GL_STUB(glCopyColorTable, _gloffset_CopyColorTable)
+       GL_STUB(glGetColorTable, _gloffset_GetColorTable)
+       GL_STUB(glGetColorTableParameterfv, _gloffset_GetColorTableParameterfv)
+       GL_STUB(glGetColorTableParameteriv, _gloffset_GetColorTableParameteriv)
+       GL_STUB(glColorSubTable, _gloffset_ColorSubTable)
+       GL_STUB(glCopyColorSubTable, _gloffset_CopyColorSubTable)
+       GL_STUB(glConvolutionFilter1D, _gloffset_ConvolutionFilter1D)
+       GL_STUB(glConvolutionFilter2D, _gloffset_ConvolutionFilter2D)
+       GL_STUB(glConvolutionParameterf, _gloffset_ConvolutionParameterf)
+       GL_STUB(glConvolutionParameterfv, _gloffset_ConvolutionParameterfv)
+       GL_STUB(glConvolutionParameteri, _gloffset_ConvolutionParameteri)
+       GL_STUB(glConvolutionParameteriv, _gloffset_ConvolutionParameteriv)
+       GL_STUB(glCopyConvolutionFilter1D, _gloffset_CopyConvolutionFilter1D)
+       GL_STUB(glCopyConvolutionFilter2D, _gloffset_CopyConvolutionFilter2D)
+       GL_STUB(glGetConvolutionFilter, _gloffset_GetConvolutionFilter)
+       GL_STUB(glGetConvolutionParameterfv, _gloffset_GetConvolutionParameterfv)
+       GL_STUB(glGetConvolutionParameteriv, _gloffset_GetConvolutionParameteriv)
+       GL_STUB(glGetSeparableFilter, _gloffset_GetSeparableFilter)
+       GL_STUB(glSeparableFilter2D, _gloffset_SeparableFilter2D)
+       GL_STUB(glGetHistogram, _gloffset_GetHistogram)
+       GL_STUB(glGetHistogramParameterfv, _gloffset_GetHistogramParameterfv)
+       GL_STUB(glGetHistogramParameteriv, _gloffset_GetHistogramParameteriv)
+       GL_STUB(glGetMinmax, _gloffset_GetMinmax)
+       GL_STUB(glGetMinmaxParameterfv, _gloffset_GetMinmaxParameterfv)
+       GL_STUB(glGetMinmaxParameteriv, _gloffset_GetMinmaxParameteriv)
+       GL_STUB(glHistogram, _gloffset_Histogram)
+       GL_STUB(glMinmax, _gloffset_Minmax)
+       GL_STUB(glResetHistogram, _gloffset_ResetHistogram)
+       GL_STUB(glResetMinmax, _gloffset_ResetMinmax)
+       GL_STUB(glTexImage3D, _gloffset_TexImage3D)
+       GL_STUB(glTexSubImage3D, _gloffset_TexSubImage3D)
+       GL_STUB(glCopyTexSubImage3D, _gloffset_CopyTexSubImage3D)
+       GL_STUB(glActiveTextureARB, _gloffset_ActiveTextureARB)
+       GL_STUB(glClientActiveTextureARB, _gloffset_ClientActiveTextureARB)
+       GL_STUB(glMultiTexCoord1dARB, _gloffset_MultiTexCoord1dARB)
+       GL_STUB(glMultiTexCoord1dvARB, _gloffset_MultiTexCoord1dvARB)
+       GL_STUB(glMultiTexCoord1fARB, _gloffset_MultiTexCoord1fARB)
+       GL_STUB(glMultiTexCoord1fvARB, _gloffset_MultiTexCoord1fvARB)
+       GL_STUB(glMultiTexCoord1iARB, _gloffset_MultiTexCoord1iARB)
+       GL_STUB(glMultiTexCoord1ivARB, _gloffset_MultiTexCoord1ivARB)
+       GL_STUB(glMultiTexCoord1sARB, _gloffset_MultiTexCoord1sARB)
+       GL_STUB(glMultiTexCoord1svARB, _gloffset_MultiTexCoord1svARB)
+       GL_STUB(glMultiTexCoord2dARB, _gloffset_MultiTexCoord2dARB)
+       GL_STUB(glMultiTexCoord2dvARB, _gloffset_MultiTexCoord2dvARB)
+       GL_STUB(glMultiTexCoord2fARB, _gloffset_MultiTexCoord2fARB)
+       GL_STUB(glMultiTexCoord2fvARB, _gloffset_MultiTexCoord2fvARB)
+       GL_STUB(glMultiTexCoord2iARB, _gloffset_MultiTexCoord2iARB)
+       GL_STUB(glMultiTexCoord2ivARB, _gloffset_MultiTexCoord2ivARB)
+       GL_STUB(glMultiTexCoord2sARB, _gloffset_MultiTexCoord2sARB)
+       GL_STUB(glMultiTexCoord2svARB, _gloffset_MultiTexCoord2svARB)
+       GL_STUB(glMultiTexCoord3dARB, _gloffset_MultiTexCoord3dARB)
+       GL_STUB(glMultiTexCoord3dvARB, _gloffset_MultiTexCoord3dvARB)
+       GL_STUB(glMultiTexCoord3fARB, _gloffset_MultiTexCoord3fARB)
+       GL_STUB(glMultiTexCoord3fvARB, _gloffset_MultiTexCoord3fvARB)
+       GL_STUB(glMultiTexCoord3iARB, _gloffset_MultiTexCoord3iARB)
+       GL_STUB(glMultiTexCoord3ivARB, _gloffset_MultiTexCoord3ivARB)
+       GL_STUB(glMultiTexCoord3sARB, _gloffset_MultiTexCoord3sARB)
+       GL_STUB(glMultiTexCoord3svARB, _gloffset_MultiTexCoord3svARB)
+       GL_STUB(glMultiTexCoord4dARB, _gloffset_MultiTexCoord4dARB)
+       GL_STUB(glMultiTexCoord4dvARB, _gloffset_MultiTexCoord4dvARB)
+       GL_STUB(glMultiTexCoord4fARB, _gloffset_MultiTexCoord4fARB)
+       GL_STUB(glMultiTexCoord4fvARB, _gloffset_MultiTexCoord4fvARB)
+       GL_STUB(glMultiTexCoord4iARB, _gloffset_MultiTexCoord4iARB)
+       GL_STUB(glMultiTexCoord4ivARB, _gloffset_MultiTexCoord4ivARB)
+       GL_STUB(glMultiTexCoord4sARB, _gloffset_MultiTexCoord4sARB)
+       GL_STUB(glMultiTexCoord4svARB, _gloffset_MultiTexCoord4svARB)
+       GL_STUB(glAttachShader, _gloffset_AttachShader)
+       GL_STUB(glCreateProgram, _gloffset_CreateProgram)
+       GL_STUB(glCreateShader, _gloffset_CreateShader)
+       GL_STUB(glDeleteProgram, _gloffset_DeleteProgram)
+       GL_STUB(glDeleteShader, _gloffset_DeleteShader)
+       GL_STUB(glDetachShader, _gloffset_DetachShader)
+       GL_STUB(glGetAttachedShaders, _gloffset_GetAttachedShaders)
+       GL_STUB(glGetProgramInfoLog, _gloffset_GetProgramInfoLog)
+       GL_STUB(glGetProgramiv, _gloffset_GetProgramiv)
+       GL_STUB(glGetShaderInfoLog, _gloffset_GetShaderInfoLog)
+       GL_STUB(glGetShaderiv, _gloffset_GetShaderiv)
+       GL_STUB(glIsProgram, _gloffset_IsProgram)
+       GL_STUB(glIsShader, _gloffset_IsShader)
+       GL_STUB(glStencilFuncSeparate, _gloffset_StencilFuncSeparate)
+       GL_STUB(glStencilMaskSeparate, _gloffset_StencilMaskSeparate)
+       GL_STUB(glStencilOpSeparate, _gloffset_StencilOpSeparate)
+       GL_STUB(glUniformMatrix2x3fv, _gloffset_UniformMatrix2x3fv)
+       GL_STUB(glUniformMatrix2x4fv, _gloffset_UniformMatrix2x4fv)
+       GL_STUB(glUniformMatrix3x2fv, _gloffset_UniformMatrix3x2fv)
+       GL_STUB(glUniformMatrix3x4fv, _gloffset_UniformMatrix3x4fv)
+       GL_STUB(glUniformMatrix4x2fv, _gloffset_UniformMatrix4x2fv)
+       GL_STUB(glUniformMatrix4x3fv, _gloffset_UniformMatrix4x3fv)
+       GL_STUB(glDrawArraysInstanced, _gloffset_DrawArraysInstanced)
+       GL_STUB(glDrawElementsInstanced, _gloffset_DrawElementsInstanced)
+       GL_STUB(glLoadTransposeMatrixdARB, _gloffset_LoadTransposeMatrixdARB)
+       GL_STUB(glLoadTransposeMatrixfARB, _gloffset_LoadTransposeMatrixfARB)
+       GL_STUB(glMultTransposeMatrixdARB, _gloffset_MultTransposeMatrixdARB)
+       GL_STUB(glMultTransposeMatrixfARB, _gloffset_MultTransposeMatrixfARB)
+       GL_STUB(glSampleCoverageARB, _gloffset_SampleCoverageARB)
+       GL_STUB(glCompressedTexImage1DARB, _gloffset_CompressedTexImage1DARB)
+       GL_STUB(glCompressedTexImage2DARB, _gloffset_CompressedTexImage2DARB)
+       GL_STUB(glCompressedTexImage3DARB, _gloffset_CompressedTexImage3DARB)
+       GL_STUB(glCompressedTexSubImage1DARB, _gloffset_CompressedTexSubImage1DARB)
+       GL_STUB(glCompressedTexSubImage2DARB, _gloffset_CompressedTexSubImage2DARB)
+       GL_STUB(glCompressedTexSubImage3DARB, _gloffset_CompressedTexSubImage3DARB)
+       GL_STUB(glGetCompressedTexImageARB, _gloffset_GetCompressedTexImageARB)
+       GL_STUB(glDisableVertexAttribArrayARB, _gloffset_DisableVertexAttribArrayARB)
+       GL_STUB(glEnableVertexAttribArrayARB, _gloffset_EnableVertexAttribArrayARB)
+       GL_STUB(glGetProgramEnvParameterdvARB, _gloffset_GetProgramEnvParameterdvARB)
+       GL_STUB(glGetProgramEnvParameterfvARB, _gloffset_GetProgramEnvParameterfvARB)
+       GL_STUB(glGetProgramLocalParameterdvARB, _gloffset_GetProgramLocalParameterdvARB)
+       GL_STUB(glGetProgramLocalParameterfvARB, _gloffset_GetProgramLocalParameterfvARB)
+       GL_STUB(glGetProgramStringARB, _gloffset_GetProgramStringARB)
+       GL_STUB(glGetProgramivARB, _gloffset_GetProgramivARB)
+       GL_STUB(glGetVertexAttribdvARB, _gloffset_GetVertexAttribdvARB)
+       GL_STUB(glGetVertexAttribfvARB, _gloffset_GetVertexAttribfvARB)
+       GL_STUB(glGetVertexAttribivARB, _gloffset_GetVertexAttribivARB)
+       GL_STUB(glProgramEnvParameter4dARB, _gloffset_ProgramEnvParameter4dARB)
+       GL_STUB(glProgramEnvParameter4dvARB, _gloffset_ProgramEnvParameter4dvARB)
+       GL_STUB(glProgramEnvParameter4fARB, _gloffset_ProgramEnvParameter4fARB)
+       GL_STUB(glProgramEnvParameter4fvARB, _gloffset_ProgramEnvParameter4fvARB)
+       GL_STUB(glProgramLocalParameter4dARB, _gloffset_ProgramLocalParameter4dARB)
+       GL_STUB(glProgramLocalParameter4dvARB, _gloffset_ProgramLocalParameter4dvARB)
+       GL_STUB(glProgramLocalParameter4fARB, _gloffset_ProgramLocalParameter4fARB)
+       GL_STUB(glProgramLocalParameter4fvARB, _gloffset_ProgramLocalParameter4fvARB)
+       GL_STUB(glProgramStringARB, _gloffset_ProgramStringARB)
+       GL_STUB(glVertexAttrib1dARB, _gloffset_VertexAttrib1dARB)
+       GL_STUB(glVertexAttrib1dvARB, _gloffset_VertexAttrib1dvARB)
+       GL_STUB(glVertexAttrib1fARB, _gloffset_VertexAttrib1fARB)
+       GL_STUB(glVertexAttrib1fvARB, _gloffset_VertexAttrib1fvARB)
+       GL_STUB(glVertexAttrib1sARB, _gloffset_VertexAttrib1sARB)
+       GL_STUB(glVertexAttrib1svARB, _gloffset_VertexAttrib1svARB)
+       GL_STUB(glVertexAttrib2dARB, _gloffset_VertexAttrib2dARB)
+       GL_STUB(glVertexAttrib2dvARB, _gloffset_VertexAttrib2dvARB)
+       GL_STUB(glVertexAttrib2fARB, _gloffset_VertexAttrib2fARB)
+       GL_STUB(glVertexAttrib2fvARB, _gloffset_VertexAttrib2fvARB)
+       GL_STUB(glVertexAttrib2sARB, _gloffset_VertexAttrib2sARB)
+       GL_STUB(glVertexAttrib2svARB, _gloffset_VertexAttrib2svARB)
+       GL_STUB(glVertexAttrib3dARB, _gloffset_VertexAttrib3dARB)
+       GL_STUB(glVertexAttrib3dvARB, _gloffset_VertexAttrib3dvARB)
+       GL_STUB(glVertexAttrib3fARB, _gloffset_VertexAttrib3fARB)
+       GL_STUB(glVertexAttrib3fvARB, _gloffset_VertexAttrib3fvARB)
+       GL_STUB(glVertexAttrib3sARB, _gloffset_VertexAttrib3sARB)
+       GL_STUB(glVertexAttrib3svARB, _gloffset_VertexAttrib3svARB)
+       GL_STUB(glVertexAttrib4NbvARB, _gloffset_VertexAttrib4NbvARB)
+       GL_STUB(glVertexAttrib4NivARB, _gloffset_VertexAttrib4NivARB)
+       GL_STUB(glVertexAttrib4NsvARB, _gloffset_VertexAttrib4NsvARB)
+       GL_STUB(glVertexAttrib4NubARB, _gloffset_VertexAttrib4NubARB)
+       GL_STUB(glVertexAttrib4NubvARB, _gloffset_VertexAttrib4NubvARB)
+       GL_STUB(glVertexAttrib4NuivARB, _gloffset_VertexAttrib4NuivARB)
+       GL_STUB(glVertexAttrib4NusvARB, _gloffset_VertexAttrib4NusvARB)
+       GL_STUB(glVertexAttrib4bvARB, _gloffset_VertexAttrib4bvARB)
+       GL_STUB(glVertexAttrib4dARB, _gloffset_VertexAttrib4dARB)
+       GL_STUB(glVertexAttrib4dvARB, _gloffset_VertexAttrib4dvARB)
+       GL_STUB(glVertexAttrib4fARB, _gloffset_VertexAttrib4fARB)
+       GL_STUB(glVertexAttrib4fvARB, _gloffset_VertexAttrib4fvARB)
+       GL_STUB(glVertexAttrib4ivARB, _gloffset_VertexAttrib4ivARB)
+       GL_STUB(glVertexAttrib4sARB, _gloffset_VertexAttrib4sARB)
+       GL_STUB(glVertexAttrib4svARB, _gloffset_VertexAttrib4svARB)
+       GL_STUB(glVertexAttrib4ubvARB, _gloffset_VertexAttrib4ubvARB)
+       GL_STUB(glVertexAttrib4uivARB, _gloffset_VertexAttrib4uivARB)
+       GL_STUB(glVertexAttrib4usvARB, _gloffset_VertexAttrib4usvARB)
+       GL_STUB(glVertexAttribPointerARB, _gloffset_VertexAttribPointerARB)
+       GL_STUB(glBindBufferARB, _gloffset_BindBufferARB)
+       GL_STUB(glBufferDataARB, _gloffset_BufferDataARB)
+       GL_STUB(glBufferSubDataARB, _gloffset_BufferSubDataARB)
+       GL_STUB(glDeleteBuffersARB, _gloffset_DeleteBuffersARB)
+       GL_STUB(glGenBuffersARB, _gloffset_GenBuffersARB)
+       GL_STUB(glGetBufferParameterivARB, _gloffset_GetBufferParameterivARB)
+       GL_STUB(glGetBufferPointervARB, _gloffset_GetBufferPointervARB)
+       GL_STUB(glGetBufferSubDataARB, _gloffset_GetBufferSubDataARB)
+       GL_STUB(glIsBufferARB, _gloffset_IsBufferARB)
+       GL_STUB(glMapBufferARB, _gloffset_MapBufferARB)
+       GL_STUB(glUnmapBufferARB, _gloffset_UnmapBufferARB)
+       GL_STUB(glBeginQueryARB, _gloffset_BeginQueryARB)
+       GL_STUB(glDeleteQueriesARB, _gloffset_DeleteQueriesARB)
+       GL_STUB(glEndQueryARB, _gloffset_EndQueryARB)
+       GL_STUB(glGenQueriesARB, _gloffset_GenQueriesARB)
+       GL_STUB(glGetQueryObjectivARB, _gloffset_GetQueryObjectivARB)
+       GL_STUB(glGetQueryObjectuivARB, _gloffset_GetQueryObjectuivARB)
+       GL_STUB(glGetQueryivARB, _gloffset_GetQueryivARB)
+       GL_STUB(glIsQueryARB, _gloffset_IsQueryARB)
+       GL_STUB(glAttachObjectARB, _gloffset_AttachObjectARB)
+       GL_STUB(glCompileShaderARB, _gloffset_CompileShaderARB)
+       GL_STUB(glCreateProgramObjectARB, _gloffset_CreateProgramObjectARB)
+       GL_STUB(glCreateShaderObjectARB, _gloffset_CreateShaderObjectARB)
+       GL_STUB(glDeleteObjectARB, _gloffset_DeleteObjectARB)
+       GL_STUB(glDetachObjectARB, _gloffset_DetachObjectARB)
+       GL_STUB(glGetActiveUniformARB, _gloffset_GetActiveUniformARB)
+       GL_STUB(glGetAttachedObjectsARB, _gloffset_GetAttachedObjectsARB)
+       GL_STUB(glGetHandleARB, _gloffset_GetHandleARB)
+       GL_STUB(glGetInfoLogARB, _gloffset_GetInfoLogARB)
+       GL_STUB(glGetObjectParameterfvARB, _gloffset_GetObjectParameterfvARB)
+       GL_STUB(glGetObjectParameterivARB, _gloffset_GetObjectParameterivARB)
+       GL_STUB(glGetShaderSourceARB, _gloffset_GetShaderSourceARB)
+       GL_STUB(glGetUniformLocationARB, _gloffset_GetUniformLocationARB)
+       GL_STUB(glGetUniformfvARB, _gloffset_GetUniformfvARB)
+       GL_STUB(glGetUniformivARB, _gloffset_GetUniformivARB)
+       GL_STUB(glLinkProgramARB, _gloffset_LinkProgramARB)
+       GL_STUB(glShaderSourceARB, _gloffset_ShaderSourceARB)
+       GL_STUB(glUniform1fARB, _gloffset_Uniform1fARB)
+       GL_STUB(glUniform1fvARB, _gloffset_Uniform1fvARB)
+       GL_STUB(glUniform1iARB, _gloffset_Uniform1iARB)
+       GL_STUB(glUniform1ivARB, _gloffset_Uniform1ivARB)
+       GL_STUB(glUniform2fARB, _gloffset_Uniform2fARB)
+       GL_STUB(glUniform2fvARB, _gloffset_Uniform2fvARB)
+       GL_STUB(glUniform2iARB, _gloffset_Uniform2iARB)
+       GL_STUB(glUniform2ivARB, _gloffset_Uniform2ivARB)
+       GL_STUB(glUniform3fARB, _gloffset_Uniform3fARB)
+       GL_STUB(glUniform3fvARB, _gloffset_Uniform3fvARB)
+       GL_STUB(glUniform3iARB, _gloffset_Uniform3iARB)
+       GL_STUB(glUniform3ivARB, _gloffset_Uniform3ivARB)
+       GL_STUB(glUniform4fARB, _gloffset_Uniform4fARB)
+       GL_STUB(glUniform4fvARB, _gloffset_Uniform4fvARB)
+       GL_STUB(glUniform4iARB, _gloffset_Uniform4iARB)
+       GL_STUB(glUniform4ivARB, _gloffset_Uniform4ivARB)
+       GL_STUB(glUniformMatrix2fvARB, _gloffset_UniformMatrix2fvARB)
+       GL_STUB(glUniformMatrix3fvARB, _gloffset_UniformMatrix3fvARB)
+       GL_STUB(glUniformMatrix4fvARB, _gloffset_UniformMatrix4fvARB)
+       GL_STUB(glUseProgramObjectARB, _gloffset_UseProgramObjectARB)
+       GL_STUB(glValidateProgramARB, _gloffset_ValidateProgramARB)
+       GL_STUB(glBindAttribLocationARB, _gloffset_BindAttribLocationARB)
+       GL_STUB(glGetActiveAttribARB, _gloffset_GetActiveAttribARB)
+       GL_STUB(glGetAttribLocationARB, _gloffset_GetAttribLocationARB)
+       GL_STUB(glDrawBuffersARB, _gloffset_DrawBuffersARB)
+       GL_STUB(glRenderbufferStorageMultisample, _gloffset_RenderbufferStorageMultisample)
+       GL_STUB(glFlushMappedBufferRange, _gloffset_FlushMappedBufferRange)
+       GL_STUB(glMapBufferRange, _gloffset_MapBufferRange)
+       GL_STUB(glBindVertexArray, _gloffset_BindVertexArray)
+       GL_STUB(glGenVertexArrays, _gloffset_GenVertexArrays)
+       GL_STUB(glCopyBufferSubData, _gloffset_CopyBufferSubData)
+       GL_STUB(glClientWaitSync, _gloffset_ClientWaitSync)
+       GL_STUB(glDeleteSync, _gloffset_DeleteSync)
+       GL_STUB(glFenceSync, _gloffset_FenceSync)
+       GL_STUB(glGetInteger64v, _gloffset_GetInteger64v)
+       GL_STUB(glGetSynciv, _gloffset_GetSynciv)
+       GL_STUB(glIsSync, _gloffset_IsSync)
+       GL_STUB(glWaitSync, _gloffset_WaitSync)
+       GL_STUB(glDrawElementsBaseVertex, _gloffset_DrawElementsBaseVertex)
+       GL_STUB(glDrawRangeElementsBaseVertex, _gloffset_DrawRangeElementsBaseVertex)
+       GL_STUB(glMultiDrawElementsBaseVertex, _gloffset_MultiDrawElementsBaseVertex)
+       GL_STUB(glPolygonOffsetEXT, _gloffset_PolygonOffsetEXT)
+       GL_STUB(gl_dispatch_stub_580, _gloffset_GetPixelTexGenParameterfvSGIS)
+       HIDDEN(gl_dispatch_stub_580)
+       GL_STUB(gl_dispatch_stub_581, _gloffset_GetPixelTexGenParameterivSGIS)
+       HIDDEN(gl_dispatch_stub_581)
+       GL_STUB(gl_dispatch_stub_582, _gloffset_PixelTexGenParameterfSGIS)
+       HIDDEN(gl_dispatch_stub_582)
+       GL_STUB(gl_dispatch_stub_583, _gloffset_PixelTexGenParameterfvSGIS)
+       HIDDEN(gl_dispatch_stub_583)
+       GL_STUB(gl_dispatch_stub_584, _gloffset_PixelTexGenParameteriSGIS)
+       HIDDEN(gl_dispatch_stub_584)
+       GL_STUB(gl_dispatch_stub_585, _gloffset_PixelTexGenParameterivSGIS)
+       HIDDEN(gl_dispatch_stub_585)
+       GL_STUB(gl_dispatch_stub_586, _gloffset_SampleMaskSGIS)
+       HIDDEN(gl_dispatch_stub_586)
+       GL_STUB(gl_dispatch_stub_587, _gloffset_SamplePatternSGIS)
+       HIDDEN(gl_dispatch_stub_587)
+       GL_STUB(glColorPointerEXT, _gloffset_ColorPointerEXT)
+       GL_STUB(glEdgeFlagPointerEXT, _gloffset_EdgeFlagPointerEXT)
+       GL_STUB(glIndexPointerEXT, _gloffset_IndexPointerEXT)
+       GL_STUB(glNormalPointerEXT, _gloffset_NormalPointerEXT)
+       GL_STUB(glTexCoordPointerEXT, _gloffset_TexCoordPointerEXT)
+       GL_STUB(glVertexPointerEXT, _gloffset_VertexPointerEXT)
+       GL_STUB(glPointParameterfEXT, _gloffset_PointParameterfEXT)
+       GL_STUB(glPointParameterfvEXT, _gloffset_PointParameterfvEXT)
+       GL_STUB(glLockArraysEXT, _gloffset_LockArraysEXT)
+       GL_STUB(glUnlockArraysEXT, _gloffset_UnlockArraysEXT)
+       GL_STUB(gl_dispatch_stub_598, _gloffset_CullParameterdvEXT)
+       HIDDEN(gl_dispatch_stub_598)
+       GL_STUB(gl_dispatch_stub_599, _gloffset_CullParameterfvEXT)
+       HIDDEN(gl_dispatch_stub_599)
+       GL_STUB(glSecondaryColor3bEXT, _gloffset_SecondaryColor3bEXT)
+       GL_STUB(glSecondaryColor3bvEXT, _gloffset_SecondaryColor3bvEXT)
+       GL_STUB(glSecondaryColor3dEXT, _gloffset_SecondaryColor3dEXT)
+       GL_STUB(glSecondaryColor3dvEXT, _gloffset_SecondaryColor3dvEXT)
+       GL_STUB(glSecondaryColor3fEXT, _gloffset_SecondaryColor3fEXT)
+       GL_STUB(glSecondaryColor3fvEXT, _gloffset_SecondaryColor3fvEXT)
+       GL_STUB(glSecondaryColor3iEXT, _gloffset_SecondaryColor3iEXT)
+       GL_STUB(glSecondaryColor3ivEXT, _gloffset_SecondaryColor3ivEXT)
+       GL_STUB(glSecondaryColor3sEXT, _gloffset_SecondaryColor3sEXT)
+       GL_STUB(glSecondaryColor3svEXT, _gloffset_SecondaryColor3svEXT)
+       GL_STUB(glSecondaryColor3ubEXT, _gloffset_SecondaryColor3ubEXT)
+       GL_STUB(glSecondaryColor3ubvEXT, _gloffset_SecondaryColor3ubvEXT)
+       GL_STUB(glSecondaryColor3uiEXT, _gloffset_SecondaryColor3uiEXT)
+       GL_STUB(glSecondaryColor3uivEXT, _gloffset_SecondaryColor3uivEXT)
+       GL_STUB(glSecondaryColor3usEXT, _gloffset_SecondaryColor3usEXT)
+       GL_STUB(glSecondaryColor3usvEXT, _gloffset_SecondaryColor3usvEXT)
+       GL_STUB(glSecondaryColorPointerEXT, _gloffset_SecondaryColorPointerEXT)
+       GL_STUB(glMultiDrawArraysEXT, _gloffset_MultiDrawArraysEXT)
+       GL_STUB(glMultiDrawElementsEXT, _gloffset_MultiDrawElementsEXT)
+       GL_STUB(glFogCoordPointerEXT, _gloffset_FogCoordPointerEXT)
+       GL_STUB(glFogCoorddEXT, _gloffset_FogCoorddEXT)
+       GL_STUB(glFogCoorddvEXT, _gloffset_FogCoorddvEXT)
+       GL_STUB(glFogCoordfEXT, _gloffset_FogCoordfEXT)
+       GL_STUB(glFogCoordfvEXT, _gloffset_FogCoordfvEXT)
+       GL_STUB(gl_dispatch_stub_624, _gloffset_PixelTexGenSGIX)
+       HIDDEN(gl_dispatch_stub_624)
+       GL_STUB(glBlendFuncSeparateEXT, _gloffset_BlendFuncSeparateEXT)
+       GL_STUB(glFlushVertexArrayRangeNV, _gloffset_FlushVertexArrayRangeNV)
+       GL_STUB(glVertexArrayRangeNV, _gloffset_VertexArrayRangeNV)
+       GL_STUB(glCombinerInputNV, _gloffset_CombinerInputNV)
+       GL_STUB(glCombinerOutputNV, _gloffset_CombinerOutputNV)
+       GL_STUB(glCombinerParameterfNV, _gloffset_CombinerParameterfNV)
+       GL_STUB(glCombinerParameterfvNV, _gloffset_CombinerParameterfvNV)
+       GL_STUB(glCombinerParameteriNV, _gloffset_CombinerParameteriNV)
+       GL_STUB(glCombinerParameterivNV, _gloffset_CombinerParameterivNV)
+       GL_STUB(glFinalCombinerInputNV, _gloffset_FinalCombinerInputNV)
+       GL_STUB(glGetCombinerInputParameterfvNV, _gloffset_GetCombinerInputParameterfvNV)
+       GL_STUB(glGetCombinerInputParameterivNV, _gloffset_GetCombinerInputParameterivNV)
+       GL_STUB(glGetCombinerOutputParameterfvNV, _gloffset_GetCombinerOutputParameterfvNV)
+       GL_STUB(glGetCombinerOutputParameterivNV, _gloffset_GetCombinerOutputParameterivNV)
+       GL_STUB(glGetFinalCombinerInputParameterfvNV, _gloffset_GetFinalCombinerInputParameterfvNV)
+       GL_STUB(glGetFinalCombinerInputParameterivNV, _gloffset_GetFinalCombinerInputParameterivNV)
+       GL_STUB(glResizeBuffersMESA, _gloffset_ResizeBuffersMESA)
+       GL_STUB(glWindowPos2dMESA, _gloffset_WindowPos2dMESA)
+       GL_STUB(glWindowPos2dvMESA, _gloffset_WindowPos2dvMESA)
+       GL_STUB(glWindowPos2fMESA, _gloffset_WindowPos2fMESA)
+       GL_STUB(glWindowPos2fvMESA, _gloffset_WindowPos2fvMESA)
+       GL_STUB(glWindowPos2iMESA, _gloffset_WindowPos2iMESA)
+       GL_STUB(glWindowPos2ivMESA, _gloffset_WindowPos2ivMESA)
+       GL_STUB(glWindowPos2sMESA, _gloffset_WindowPos2sMESA)
+       GL_STUB(glWindowPos2svMESA, _gloffset_WindowPos2svMESA)
+       GL_STUB(glWindowPos3dMESA, _gloffset_WindowPos3dMESA)
+       GL_STUB(glWindowPos3dvMESA, _gloffset_WindowPos3dvMESA)
+       GL_STUB(glWindowPos3fMESA, _gloffset_WindowPos3fMESA)
+       GL_STUB(glWindowPos3fvMESA, _gloffset_WindowPos3fvMESA)
+       GL_STUB(glWindowPos3iMESA, _gloffset_WindowPos3iMESA)
+       GL_STUB(glWindowPos3ivMESA, _gloffset_WindowPos3ivMESA)
+       GL_STUB(glWindowPos3sMESA, _gloffset_WindowPos3sMESA)
+       GL_STUB(glWindowPos3svMESA, _gloffset_WindowPos3svMESA)
+       GL_STUB(glWindowPos4dMESA, _gloffset_WindowPos4dMESA)
+       GL_STUB(glWindowPos4dvMESA, _gloffset_WindowPos4dvMESA)
+       GL_STUB(glWindowPos4fMESA, _gloffset_WindowPos4fMESA)
+       GL_STUB(glWindowPos4fvMESA, _gloffset_WindowPos4fvMESA)
+       GL_STUB(glWindowPos4iMESA, _gloffset_WindowPos4iMESA)
+       GL_STUB(glWindowPos4ivMESA, _gloffset_WindowPos4ivMESA)
+       GL_STUB(glWindowPos4sMESA, _gloffset_WindowPos4sMESA)
+       GL_STUB(glWindowPos4svMESA, _gloffset_WindowPos4svMESA)
+       GL_STUB(gl_dispatch_stub_666, _gloffset_MultiModeDrawArraysIBM)
+       HIDDEN(gl_dispatch_stub_666)
+       GL_STUB(gl_dispatch_stub_667, _gloffset_MultiModeDrawElementsIBM)
+       HIDDEN(gl_dispatch_stub_667)
+       GL_STUB(gl_dispatch_stub_668, _gloffset_DeleteFencesNV)
+       HIDDEN(gl_dispatch_stub_668)
+       GL_STUB(gl_dispatch_stub_669, _gloffset_FinishFenceNV)
+       HIDDEN(gl_dispatch_stub_669)
+       GL_STUB(gl_dispatch_stub_670, _gloffset_GenFencesNV)
+       HIDDEN(gl_dispatch_stub_670)
+       GL_STUB(gl_dispatch_stub_671, _gloffset_GetFenceivNV)
+       HIDDEN(gl_dispatch_stub_671)
+       GL_STUB(gl_dispatch_stub_672, _gloffset_IsFenceNV)
+       HIDDEN(gl_dispatch_stub_672)
+       GL_STUB(gl_dispatch_stub_673, _gloffset_SetFenceNV)
+       HIDDEN(gl_dispatch_stub_673)
+       GL_STUB(gl_dispatch_stub_674, _gloffset_TestFenceNV)
+       HIDDEN(gl_dispatch_stub_674)
+       GL_STUB(glAreProgramsResidentNV, _gloffset_AreProgramsResidentNV)
+       GL_STUB(glBindProgramNV, _gloffset_BindProgramNV)
+       GL_STUB(glDeleteProgramsNV, _gloffset_DeleteProgramsNV)
+       GL_STUB(glExecuteProgramNV, _gloffset_ExecuteProgramNV)
+       GL_STUB(glGenProgramsNV, _gloffset_GenProgramsNV)
+       GL_STUB(glGetProgramParameterdvNV, _gloffset_GetProgramParameterdvNV)
+       GL_STUB(glGetProgramParameterfvNV, _gloffset_GetProgramParameterfvNV)
+       GL_STUB(glGetProgramStringNV, _gloffset_GetProgramStringNV)
+       GL_STUB(glGetProgramivNV, _gloffset_GetProgramivNV)
+       GL_STUB(glGetTrackMatrixivNV, _gloffset_GetTrackMatrixivNV)
+       GL_STUB(glGetVertexAttribPointervNV, _gloffset_GetVertexAttribPointervNV)
+       GL_STUB(glGetVertexAttribdvNV, _gloffset_GetVertexAttribdvNV)
+       GL_STUB(glGetVertexAttribfvNV, _gloffset_GetVertexAttribfvNV)
+       GL_STUB(glGetVertexAttribivNV, _gloffset_GetVertexAttribivNV)
+       GL_STUB(glIsProgramNV, _gloffset_IsProgramNV)
+       GL_STUB(glLoadProgramNV, _gloffset_LoadProgramNV)
+       GL_STUB(glProgramParameters4dvNV, _gloffset_ProgramParameters4dvNV)
+       GL_STUB(glProgramParameters4fvNV, _gloffset_ProgramParameters4fvNV)
+       GL_STUB(glRequestResidentProgramsNV, _gloffset_RequestResidentProgramsNV)
+       GL_STUB(glTrackMatrixNV, _gloffset_TrackMatrixNV)
+       GL_STUB(glVertexAttrib1dNV, _gloffset_VertexAttrib1dNV)
+       GL_STUB(glVertexAttrib1dvNV, _gloffset_VertexAttrib1dvNV)
+       GL_STUB(glVertexAttrib1fNV, _gloffset_VertexAttrib1fNV)
+       GL_STUB(glVertexAttrib1fvNV, _gloffset_VertexAttrib1fvNV)
+       GL_STUB(glVertexAttrib1sNV, _gloffset_VertexAttrib1sNV)
+       GL_STUB(glVertexAttrib1svNV, _gloffset_VertexAttrib1svNV)
+       GL_STUB(glVertexAttrib2dNV, _gloffset_VertexAttrib2dNV)
+       GL_STUB(glVertexAttrib2dvNV, _gloffset_VertexAttrib2dvNV)
+       GL_STUB(glVertexAttrib2fNV, _gloffset_VertexAttrib2fNV)
+       GL_STUB(glVertexAttrib2fvNV, _gloffset_VertexAttrib2fvNV)
+       GL_STUB(glVertexAttrib2sNV, _gloffset_VertexAttrib2sNV)
+       GL_STUB(glVertexAttrib2svNV, _gloffset_VertexAttrib2svNV)
+       GL_STUB(glVertexAttrib3dNV, _gloffset_VertexAttrib3dNV)
+       GL_STUB(glVertexAttrib3dvNV, _gloffset_VertexAttrib3dvNV)
+       GL_STUB(glVertexAttrib3fNV, _gloffset_VertexAttrib3fNV)
+       GL_STUB(glVertexAttrib3fvNV, _gloffset_VertexAttrib3fvNV)
+       GL_STUB(glVertexAttrib3sNV, _gloffset_VertexAttrib3sNV)
+       GL_STUB(glVertexAttrib3svNV, _gloffset_VertexAttrib3svNV)
+       GL_STUB(glVertexAttrib4dNV, _gloffset_VertexAttrib4dNV)
+       GL_STUB(glVertexAttrib4dvNV, _gloffset_VertexAttrib4dvNV)
+       GL_STUB(glVertexAttrib4fNV, _gloffset_VertexAttrib4fNV)
+       GL_STUB(glVertexAttrib4fvNV, _gloffset_VertexAttrib4fvNV)
+       GL_STUB(glVertexAttrib4sNV, _gloffset_VertexAttrib4sNV)
+       GL_STUB(glVertexAttrib4svNV, _gloffset_VertexAttrib4svNV)
+       GL_STUB(glVertexAttrib4ubNV, _gloffset_VertexAttrib4ubNV)
+       GL_STUB(glVertexAttrib4ubvNV, _gloffset_VertexAttrib4ubvNV)
+       GL_STUB(glVertexAttribPointerNV, _gloffset_VertexAttribPointerNV)
+       GL_STUB(glVertexAttribs1dvNV, _gloffset_VertexAttribs1dvNV)
+       GL_STUB(glVertexAttribs1fvNV, _gloffset_VertexAttribs1fvNV)
+       GL_STUB(glVertexAttribs1svNV, _gloffset_VertexAttribs1svNV)
+       GL_STUB(glVertexAttribs2dvNV, _gloffset_VertexAttribs2dvNV)
+       GL_STUB(glVertexAttribs2fvNV, _gloffset_VertexAttribs2fvNV)
+       GL_STUB(glVertexAttribs2svNV, _gloffset_VertexAttribs2svNV)
+       GL_STUB(glVertexAttribs3dvNV, _gloffset_VertexAttribs3dvNV)
+       GL_STUB(glVertexAttribs3fvNV, _gloffset_VertexAttribs3fvNV)
+       GL_STUB(glVertexAttribs3svNV, _gloffset_VertexAttribs3svNV)
+       GL_STUB(glVertexAttribs4dvNV, _gloffset_VertexAttribs4dvNV)
+       GL_STUB(glVertexAttribs4fvNV, _gloffset_VertexAttribs4fvNV)
+       GL_STUB(glVertexAttribs4svNV, _gloffset_VertexAttribs4svNV)
+       GL_STUB(glVertexAttribs4ubvNV, _gloffset_VertexAttribs4ubvNV)
+       GL_STUB(glGetTexBumpParameterfvATI, _gloffset_GetTexBumpParameterfvATI)
+       GL_STUB(glGetTexBumpParameterivATI, _gloffset_GetTexBumpParameterivATI)
+       GL_STUB(glTexBumpParameterfvATI, _gloffset_TexBumpParameterfvATI)
+       GL_STUB(glTexBumpParameterivATI, _gloffset_TexBumpParameterivATI)
+       GL_STUB(glAlphaFragmentOp1ATI, _gloffset_AlphaFragmentOp1ATI)
+       GL_STUB(glAlphaFragmentOp2ATI, _gloffset_AlphaFragmentOp2ATI)
+       GL_STUB(glAlphaFragmentOp3ATI, _gloffset_AlphaFragmentOp3ATI)
+       GL_STUB(glBeginFragmentShaderATI, _gloffset_BeginFragmentShaderATI)
+       GL_STUB(glBindFragmentShaderATI, _gloffset_BindFragmentShaderATI)
+       GL_STUB(glColorFragmentOp1ATI, _gloffset_ColorFragmentOp1ATI)
+       GL_STUB(glColorFragmentOp2ATI, _gloffset_ColorFragmentOp2ATI)
+       GL_STUB(glColorFragmentOp3ATI, _gloffset_ColorFragmentOp3ATI)
+       GL_STUB(glDeleteFragmentShaderATI, _gloffset_DeleteFragmentShaderATI)
+       GL_STUB(glEndFragmentShaderATI, _gloffset_EndFragmentShaderATI)
+       GL_STUB(glGenFragmentShadersATI, _gloffset_GenFragmentShadersATI)
+       GL_STUB(glPassTexCoordATI, _gloffset_PassTexCoordATI)
+       GL_STUB(glSampleMapATI, _gloffset_SampleMapATI)
+       GL_STUB(glSetFragmentShaderConstantATI, _gloffset_SetFragmentShaderConstantATI)
+       GL_STUB(glPointParameteriNV, _gloffset_PointParameteriNV)
+       GL_STUB(glPointParameterivNV, _gloffset_PointParameterivNV)
+       GL_STUB(gl_dispatch_stub_755, _gloffset_ActiveStencilFaceEXT)
+       HIDDEN(gl_dispatch_stub_755)
+       GL_STUB(gl_dispatch_stub_756, _gloffset_BindVertexArrayAPPLE)
+       HIDDEN(gl_dispatch_stub_756)
+       GL_STUB(gl_dispatch_stub_757, _gloffset_DeleteVertexArraysAPPLE)
+       HIDDEN(gl_dispatch_stub_757)
+       GL_STUB(gl_dispatch_stub_758, _gloffset_GenVertexArraysAPPLE)
+       HIDDEN(gl_dispatch_stub_758)
+       GL_STUB(gl_dispatch_stub_759, _gloffset_IsVertexArrayAPPLE)
+       HIDDEN(gl_dispatch_stub_759)
+       GL_STUB(glGetProgramNamedParameterdvNV, _gloffset_GetProgramNamedParameterdvNV)
+       GL_STUB(glGetProgramNamedParameterfvNV, _gloffset_GetProgramNamedParameterfvNV)
+       GL_STUB(glProgramNamedParameter4dNV, _gloffset_ProgramNamedParameter4dNV)
+       GL_STUB(glProgramNamedParameter4dvNV, _gloffset_ProgramNamedParameter4dvNV)
+       GL_STUB(glProgramNamedParameter4fNV, _gloffset_ProgramNamedParameter4fNV)
+       GL_STUB(glProgramNamedParameter4fvNV, _gloffset_ProgramNamedParameter4fvNV)
+       GL_STUB(gl_dispatch_stub_766, _gloffset_DepthBoundsEXT)
+       HIDDEN(gl_dispatch_stub_766)
+       GL_STUB(gl_dispatch_stub_767, _gloffset_BlendEquationSeparateEXT)
+       HIDDEN(gl_dispatch_stub_767)
+       GL_STUB(glBindFramebufferEXT, _gloffset_BindFramebufferEXT)
+       GL_STUB(glBindRenderbufferEXT, _gloffset_BindRenderbufferEXT)
+       GL_STUB(glCheckFramebufferStatusEXT, _gloffset_CheckFramebufferStatusEXT)
+       GL_STUB(glDeleteFramebuffersEXT, _gloffset_DeleteFramebuffersEXT)
+       GL_STUB(glDeleteRenderbuffersEXT, _gloffset_DeleteRenderbuffersEXT)
+       GL_STUB(glFramebufferRenderbufferEXT, _gloffset_FramebufferRenderbufferEXT)
+       GL_STUB(glFramebufferTexture1DEXT, _gloffset_FramebufferTexture1DEXT)
+       GL_STUB(glFramebufferTexture2DEXT, _gloffset_FramebufferTexture2DEXT)
+       GL_STUB(glFramebufferTexture3DEXT, _gloffset_FramebufferTexture3DEXT)
+       GL_STUB(glGenFramebuffersEXT, _gloffset_GenFramebuffersEXT)
+       GL_STUB(glGenRenderbuffersEXT, _gloffset_GenRenderbuffersEXT)
+       GL_STUB(glGenerateMipmapEXT, _gloffset_GenerateMipmapEXT)
+       GL_STUB(glGetFramebufferAttachmentParameterivEXT, _gloffset_GetFramebufferAttachmentParameterivEXT)
+       GL_STUB(glGetRenderbufferParameterivEXT, _gloffset_GetRenderbufferParameterivEXT)
+       GL_STUB(glIsFramebufferEXT, _gloffset_IsFramebufferEXT)
+       GL_STUB(glIsRenderbufferEXT, _gloffset_IsRenderbufferEXT)
+       GL_STUB(glRenderbufferStorageEXT, _gloffset_RenderbufferStorageEXT)
+       GL_STUB(gl_dispatch_stub_785, _gloffset_BlitFramebufferEXT)
+       HIDDEN(gl_dispatch_stub_785)
+       GL_STUB(gl_dispatch_stub_786, _gloffset_BufferParameteriAPPLE)
+       HIDDEN(gl_dispatch_stub_786)
+       GL_STUB(gl_dispatch_stub_787, _gloffset_FlushMappedBufferRangeAPPLE)
+       HIDDEN(gl_dispatch_stub_787)
+       GL_STUB(glFramebufferTextureLayerEXT, _gloffset_FramebufferTextureLayerEXT)
+       GL_STUB(glColorMaskIndexedEXT, _gloffset_ColorMaskIndexedEXT)
+       GL_STUB(glDisableIndexedEXT, _gloffset_DisableIndexedEXT)
+       GL_STUB(glEnableIndexedEXT, _gloffset_EnableIndexedEXT)
+       GL_STUB(glGetBooleanIndexedvEXT, _gloffset_GetBooleanIndexedvEXT)
+       GL_STUB(glGetIntegerIndexedvEXT, _gloffset_GetIntegerIndexedvEXT)
+       GL_STUB(glIsEnabledIndexedEXT, _gloffset_IsEnabledIndexedEXT)
+       GL_STUB(glBeginConditionalRenderNV, _gloffset_BeginConditionalRenderNV)
+       GL_STUB(glEndConditionalRenderNV, _gloffset_EndConditionalRenderNV)
+       GL_STUB(glBeginTransformFeedbackEXT, _gloffset_BeginTransformFeedbackEXT)
+       GL_STUB(glBindBufferBaseEXT, _gloffset_BindBufferBaseEXT)
+       GL_STUB(glBindBufferOffsetEXT, _gloffset_BindBufferOffsetEXT)
+       GL_STUB(glBindBufferRangeEXT, _gloffset_BindBufferRangeEXT)
+       GL_STUB(glEndTransformFeedbackEXT, _gloffset_EndTransformFeedbackEXT)
+       GL_STUB(glGetTransformFeedbackVaryingEXT, _gloffset_GetTransformFeedbackVaryingEXT)
+       GL_STUB(glTransformFeedbackVaryingsEXT, _gloffset_TransformFeedbackVaryingsEXT)
+       GL_STUB(glProvokingVertexEXT, _gloffset_ProvokingVertexEXT)
+       GL_STUB(gl_dispatch_stub_805, _gloffset_GetTexParameterPointervAPPLE)
+       HIDDEN(gl_dispatch_stub_805)
+       GL_STUB(gl_dispatch_stub_806, _gloffset_TextureRangeAPPLE)
+       HIDDEN(gl_dispatch_stub_806)
+       GL_STUB(glGetObjectParameterivAPPLE, _gloffset_GetObjectParameterivAPPLE)
+       GL_STUB(glObjectPurgeableAPPLE, _gloffset_ObjectPurgeableAPPLE)
+       GL_STUB(glObjectUnpurgeableAPPLE, _gloffset_ObjectUnpurgeableAPPLE)
+       GL_STUB(gl_dispatch_stub_810, _gloffset_StencilFuncSeparateATI)
+       HIDDEN(gl_dispatch_stub_810)
+       GL_STUB(gl_dispatch_stub_811, _gloffset_ProgramEnvParameters4fvEXT)
+       HIDDEN(gl_dispatch_stub_811)
+       GL_STUB(gl_dispatch_stub_812, _gloffset_ProgramLocalParameters4fvEXT)
+       HIDDEN(gl_dispatch_stub_812)
+       GL_STUB(gl_dispatch_stub_813, _gloffset_GetQueryObjecti64vEXT)
+       HIDDEN(gl_dispatch_stub_813)
+       GL_STUB(gl_dispatch_stub_814, _gloffset_GetQueryObjectui64vEXT)
+       HIDDEN(gl_dispatch_stub_814)
+       GL_STUB(glEGLImageTargetRenderbufferStorageOES, _gloffset_EGLImageTargetRenderbufferStorageOES)
+       GL_STUB(glEGLImageTargetTexture2DOES, _gloffset_EGLImageTargetTexture2DOES)
+       GL_STUB_ALIAS(glArrayElementEXT, glArrayElement)
+       GL_STUB_ALIAS(glBindTextureEXT, glBindTexture)
+       GL_STUB_ALIAS(glDrawArraysEXT, glDrawArrays)
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glAreTexturesResidentEXT, glAreTexturesResident)
+#endif
+       GL_STUB_ALIAS(glCopyTexImage1DEXT, glCopyTexImage1D)
+       GL_STUB_ALIAS(glCopyTexImage2DEXT, glCopyTexImage2D)
+       GL_STUB_ALIAS(glCopyTexSubImage1DEXT, glCopyTexSubImage1D)
+       GL_STUB_ALIAS(glCopyTexSubImage2DEXT, glCopyTexSubImage2D)
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glDeleteTexturesEXT, glDeleteTextures)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glGenTexturesEXT, glGenTextures)
+#endif
+       GL_STUB_ALIAS(glGetPointervEXT, glGetPointerv)
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glIsTextureEXT, glIsTexture)
+#endif
+       GL_STUB_ALIAS(glPrioritizeTexturesEXT, glPrioritizeTextures)
+       GL_STUB_ALIAS(glTexSubImage1DEXT, glTexSubImage1D)
+       GL_STUB_ALIAS(glTexSubImage2DEXT, glTexSubImage2D)
+       GL_STUB_ALIAS(glBlendColorEXT, glBlendColor)
+       GL_STUB_ALIAS(glBlendEquationEXT, glBlendEquation)
+       GL_STUB_ALIAS(glDrawRangeElementsEXT, glDrawRangeElements)
+       GL_STUB_ALIAS(glColorTableSGI, glColorTable)
+       GL_STUB_ALIAS(glColorTableEXT, glColorTable)
+       GL_STUB_ALIAS(glColorTableParameterfvSGI, glColorTableParameterfv)
+       GL_STUB_ALIAS(glColorTableParameterivSGI, glColorTableParameteriv)
+       GL_STUB_ALIAS(glCopyColorTableSGI, glCopyColorTable)
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glGetColorTableSGI, glGetColorTable)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glGetColorTableEXT, glGetColorTable)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glGetColorTableParameterfvSGI, glGetColorTableParameterfv)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glGetColorTableParameterfvEXT, glGetColorTableParameterfv)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glGetColorTableParameterivSGI, glGetColorTableParameteriv)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glGetColorTableParameterivEXT, glGetColorTableParameteriv)
+#endif
+       GL_STUB_ALIAS(glColorSubTableEXT, glColorSubTable)
+       GL_STUB_ALIAS(glCopyColorSubTableEXT, glCopyColorSubTable)
+       GL_STUB_ALIAS(glConvolutionFilter1DEXT, glConvolutionFilter1D)
+       GL_STUB_ALIAS(glConvolutionFilter2DEXT, glConvolutionFilter2D)
+       GL_STUB_ALIAS(glConvolutionParameterfEXT, glConvolutionParameterf)
+       GL_STUB_ALIAS(glConvolutionParameterfvEXT, glConvolutionParameterfv)
+       GL_STUB_ALIAS(glConvolutionParameteriEXT, glConvolutionParameteri)
+       GL_STUB_ALIAS(glConvolutionParameterivEXT, glConvolutionParameteriv)
+       GL_STUB_ALIAS(glCopyConvolutionFilter1DEXT, glCopyConvolutionFilter1D)
+       GL_STUB_ALIAS(glCopyConvolutionFilter2DEXT, glCopyConvolutionFilter2D)
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glGetConvolutionFilterEXT, glGetConvolutionFilter)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glGetConvolutionParameterfvEXT, glGetConvolutionParameterfv)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glGetConvolutionParameterivEXT, glGetConvolutionParameteriv)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glGetSeparableFilterEXT, glGetSeparableFilter)
+#endif
+       GL_STUB_ALIAS(glSeparableFilter2DEXT, glSeparableFilter2D)
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glGetHistogramEXT, glGetHistogram)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glGetHistogramParameterfvEXT, glGetHistogramParameterfv)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glGetHistogramParameterivEXT, glGetHistogramParameteriv)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glGetMinmaxEXT, glGetMinmax)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glGetMinmaxParameterfvEXT, glGetMinmaxParameterfv)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(glGetMinmaxParameterivEXT, glGetMinmaxParameteriv)
+#endif
+       GL_STUB_ALIAS(glHistogramEXT, glHistogram)
+       GL_STUB_ALIAS(glMinmaxEXT, glMinmax)
+       GL_STUB_ALIAS(glResetHistogramEXT, glResetHistogram)
+       GL_STUB_ALIAS(glResetMinmaxEXT, glResetMinmax)
+       GL_STUB_ALIAS(glTexImage3DEXT, glTexImage3D)
+       GL_STUB_ALIAS(glTexSubImage3DEXT, glTexSubImage3D)
+       GL_STUB_ALIAS(glCopyTexSubImage3DEXT, glCopyTexSubImage3D)
+       GL_STUB_ALIAS(glActiveTexture, glActiveTextureARB)
+       GL_STUB_ALIAS(glClientActiveTexture, glClientActiveTextureARB)
+       GL_STUB_ALIAS(glMultiTexCoord1d, glMultiTexCoord1dARB)
+       GL_STUB_ALIAS(glMultiTexCoord1dv, glMultiTexCoord1dvARB)
+       GL_STUB_ALIAS(glMultiTexCoord1f, glMultiTexCoord1fARB)
+       GL_STUB_ALIAS(glMultiTexCoord1fv, glMultiTexCoord1fvARB)
+       GL_STUB_ALIAS(glMultiTexCoord1i, glMultiTexCoord1iARB)
+       GL_STUB_ALIAS(glMultiTexCoord1iv, glMultiTexCoord1ivARB)
+       GL_STUB_ALIAS(glMultiTexCoord1s, glMultiTexCoord1sARB)
+       GL_STUB_ALIAS(glMultiTexCoord1sv, glMultiTexCoord1svARB)
+       GL_STUB_ALIAS(glMultiTexCoord2d, glMultiTexCoord2dARB)
+       GL_STUB_ALIAS(glMultiTexCoord2dv, glMultiTexCoord2dvARB)
+       GL_STUB_ALIAS(glMultiTexCoord2f, glMultiTexCoord2fARB)
+       GL_STUB_ALIAS(glMultiTexCoord2fv, glMultiTexCoord2fvARB)
+       GL_STUB_ALIAS(glMultiTexCoord2i, glMultiTexCoord2iARB)
+       GL_STUB_ALIAS(glMultiTexCoord2iv, glMultiTexCoord2ivARB)
+       GL_STUB_ALIAS(glMultiTexCoord2s, glMultiTexCoord2sARB)
+       GL_STUB_ALIAS(glMultiTexCoord2sv, glMultiTexCoord2svARB)
+       GL_STUB_ALIAS(glMultiTexCoord3d, glMultiTexCoord3dARB)
+       GL_STUB_ALIAS(glMultiTexCoord3dv, glMultiTexCoord3dvARB)
+       GL_STUB_ALIAS(glMultiTexCoord3f, glMultiTexCoord3fARB)
+       GL_STUB_ALIAS(glMultiTexCoord3fv, glMultiTexCoord3fvARB)
+       GL_STUB_ALIAS(glMultiTexCoord3i, glMultiTexCoord3iARB)
+       GL_STUB_ALIAS(glMultiTexCoord3iv, glMultiTexCoord3ivARB)
+       GL_STUB_ALIAS(glMultiTexCoord3s, glMultiTexCoord3sARB)
+       GL_STUB_ALIAS(glMultiTexCoord3sv, glMultiTexCoord3svARB)
+       GL_STUB_ALIAS(glMultiTexCoord4d, glMultiTexCoord4dARB)
+       GL_STUB_ALIAS(glMultiTexCoord4dv, glMultiTexCoord4dvARB)
+       GL_STUB_ALIAS(glMultiTexCoord4f, glMultiTexCoord4fARB)
+       GL_STUB_ALIAS(glMultiTexCoord4fv, glMultiTexCoord4fvARB)
+       GL_STUB_ALIAS(glMultiTexCoord4i, glMultiTexCoord4iARB)
+       GL_STUB_ALIAS(glMultiTexCoord4iv, glMultiTexCoord4ivARB)
+       GL_STUB_ALIAS(glMultiTexCoord4s, glMultiTexCoord4sARB)
+       GL_STUB_ALIAS(glMultiTexCoord4sv, glMultiTexCoord4svARB)
+       GL_STUB_ALIAS(glStencilOpSeparateATI, glStencilOpSeparate)
+       GL_STUB_ALIAS(glDrawArraysInstancedARB, glDrawArraysInstanced)
+       GL_STUB_ALIAS(glDrawArraysInstancedEXT, glDrawArraysInstanced)
+       GL_STUB_ALIAS(glDrawElementsInstancedARB, glDrawElementsInstanced)
+       GL_STUB_ALIAS(glDrawElementsInstancedEXT, glDrawElementsInstanced)
+       GL_STUB_ALIAS(glLoadTransposeMatrixd, glLoadTransposeMatrixdARB)
+       GL_STUB_ALIAS(glLoadTransposeMatrixf, glLoadTransposeMatrixfARB)
+       GL_STUB_ALIAS(glMultTransposeMatrixd, glMultTransposeMatrixdARB)
+       GL_STUB_ALIAS(glMultTransposeMatrixf, glMultTransposeMatrixfARB)
+       GL_STUB_ALIAS(glSampleCoverage, glSampleCoverageARB)
+       GL_STUB_ALIAS(glCompressedTexImage1D, glCompressedTexImage1DARB)
+       GL_STUB_ALIAS(glCompressedTexImage2D, glCompressedTexImage2DARB)
+       GL_STUB_ALIAS(glCompressedTexImage3D, glCompressedTexImage3DARB)
+       GL_STUB_ALIAS(glCompressedTexSubImage1D, glCompressedTexSubImage1DARB)
+       GL_STUB_ALIAS(glCompressedTexSubImage2D, glCompressedTexSubImage2DARB)
+       GL_STUB_ALIAS(glCompressedTexSubImage3D, glCompressedTexSubImage3DARB)
+       GL_STUB_ALIAS(glGetCompressedTexImage, glGetCompressedTexImageARB)
+       GL_STUB_ALIAS(glDisableVertexAttribArray, glDisableVertexAttribArrayARB)
+       GL_STUB_ALIAS(glEnableVertexAttribArray, glEnableVertexAttribArrayARB)
+       GL_STUB_ALIAS(glGetVertexAttribdv, glGetVertexAttribdvARB)
+       GL_STUB_ALIAS(glGetVertexAttribfv, glGetVertexAttribfvARB)
+       GL_STUB_ALIAS(glGetVertexAttribiv, glGetVertexAttribivARB)
+       GL_STUB_ALIAS(glProgramParameter4dNV, glProgramEnvParameter4dARB)
+       GL_STUB_ALIAS(glProgramParameter4dvNV, glProgramEnvParameter4dvARB)
+       GL_STUB_ALIAS(glProgramParameter4fNV, glProgramEnvParameter4fARB)
+       GL_STUB_ALIAS(glProgramParameter4fvNV, glProgramEnvParameter4fvARB)
+       GL_STUB_ALIAS(glVertexAttrib1d, glVertexAttrib1dARB)
+       GL_STUB_ALIAS(glVertexAttrib1dv, glVertexAttrib1dvARB)
+       GL_STUB_ALIAS(glVertexAttrib1f, glVertexAttrib1fARB)
+       GL_STUB_ALIAS(glVertexAttrib1fv, glVertexAttrib1fvARB)
+       GL_STUB_ALIAS(glVertexAttrib1s, glVertexAttrib1sARB)
+       GL_STUB_ALIAS(glVertexAttrib1sv, glVertexAttrib1svARB)
+       GL_STUB_ALIAS(glVertexAttrib2d, glVertexAttrib2dARB)
+       GL_STUB_ALIAS(glVertexAttrib2dv, glVertexAttrib2dvARB)
+       GL_STUB_ALIAS(glVertexAttrib2f, glVertexAttrib2fARB)
+       GL_STUB_ALIAS(glVertexAttrib2fv, glVertexAttrib2fvARB)
+       GL_STUB_ALIAS(glVertexAttrib2s, glVertexAttrib2sARB)
+       GL_STUB_ALIAS(glVertexAttrib2sv, glVertexAttrib2svARB)
+       GL_STUB_ALIAS(glVertexAttrib3d, glVertexAttrib3dARB)
+       GL_STUB_ALIAS(glVertexAttrib3dv, glVertexAttrib3dvARB)
+       GL_STUB_ALIAS(glVertexAttrib3f, glVertexAttrib3fARB)
+       GL_STUB_ALIAS(glVertexAttrib3fv, glVertexAttrib3fvARB)
+       GL_STUB_ALIAS(glVertexAttrib3s, glVertexAttrib3sARB)
+       GL_STUB_ALIAS(glVertexAttrib3sv, glVertexAttrib3svARB)
+       GL_STUB_ALIAS(glVertexAttrib4Nbv, glVertexAttrib4NbvARB)
+       GL_STUB_ALIAS(glVertexAttrib4Niv, glVertexAttrib4NivARB)
+       GL_STUB_ALIAS(glVertexAttrib4Nsv, glVertexAttrib4NsvARB)
+       GL_STUB_ALIAS(glVertexAttrib4Nub, glVertexAttrib4NubARB)
+       GL_STUB_ALIAS(glVertexAttrib4Nubv, glVertexAttrib4NubvARB)
+       GL_STUB_ALIAS(glVertexAttrib4Nuiv, glVertexAttrib4NuivARB)
+       GL_STUB_ALIAS(glVertexAttrib4Nusv, glVertexAttrib4NusvARB)
+       GL_STUB_ALIAS(glVertexAttrib4bv, glVertexAttrib4bvARB)
+       GL_STUB_ALIAS(glVertexAttrib4d, glVertexAttrib4dARB)
+       GL_STUB_ALIAS(glVertexAttrib4dv, glVertexAttrib4dvARB)
+       GL_STUB_ALIAS(glVertexAttrib4f, glVertexAttrib4fARB)
+       GL_STUB_ALIAS(glVertexAttrib4fv, glVertexAttrib4fvARB)
+       GL_STUB_ALIAS(glVertexAttrib4iv, glVertexAttrib4ivARB)
+       GL_STUB_ALIAS(glVertexAttrib4s, glVertexAttrib4sARB)
+       GL_STUB_ALIAS(glVertexAttrib4sv, glVertexAttrib4svARB)
+       GL_STUB_ALIAS(glVertexAttrib4ubv, glVertexAttrib4ubvARB)
+       GL_STUB_ALIAS(glVertexAttrib4uiv, glVertexAttrib4uivARB)
+       GL_STUB_ALIAS(glVertexAttrib4usv, glVertexAttrib4usvARB)
+       GL_STUB_ALIAS(glVertexAttribPointer, glVertexAttribPointerARB)
+       GL_STUB_ALIAS(glBindBuffer, glBindBufferARB)
+       GL_STUB_ALIAS(glBufferData, glBufferDataARB)
+       GL_STUB_ALIAS(glBufferSubData, glBufferSubDataARB)
+       GL_STUB_ALIAS(glDeleteBuffers, glDeleteBuffersARB)
+       GL_STUB_ALIAS(glGenBuffers, glGenBuffersARB)
+       GL_STUB_ALIAS(glGetBufferParameteriv, glGetBufferParameterivARB)
+       GL_STUB_ALIAS(glGetBufferPointerv, glGetBufferPointervARB)
+       GL_STUB_ALIAS(glGetBufferSubData, glGetBufferSubDataARB)
+       GL_STUB_ALIAS(glIsBuffer, glIsBufferARB)
+       GL_STUB_ALIAS(glMapBuffer, glMapBufferARB)
+       GL_STUB_ALIAS(glUnmapBuffer, glUnmapBufferARB)
+       GL_STUB_ALIAS(glBeginQuery, glBeginQueryARB)
+       GL_STUB_ALIAS(glDeleteQueries, glDeleteQueriesARB)
+       GL_STUB_ALIAS(glEndQuery, glEndQueryARB)
+       GL_STUB_ALIAS(glGenQueries, glGenQueriesARB)
+       GL_STUB_ALIAS(glGetQueryObjectiv, glGetQueryObjectivARB)
+       GL_STUB_ALIAS(glGetQueryObjectuiv, glGetQueryObjectuivARB)
+       GL_STUB_ALIAS(glGetQueryiv, glGetQueryivARB)
+       GL_STUB_ALIAS(glIsQuery, glIsQueryARB)
+       GL_STUB_ALIAS(glCompileShader, glCompileShaderARB)
+       GL_STUB_ALIAS(glGetActiveUniform, glGetActiveUniformARB)
+       GL_STUB_ALIAS(glGetShaderSource, glGetShaderSourceARB)
+       GL_STUB_ALIAS(glGetUniformLocation, glGetUniformLocationARB)
+       GL_STUB_ALIAS(glGetUniformfv, glGetUniformfvARB)
+       GL_STUB_ALIAS(glGetUniformiv, glGetUniformivARB)
+       GL_STUB_ALIAS(glLinkProgram, glLinkProgramARB)
+       GL_STUB_ALIAS(glShaderSource, glShaderSourceARB)
+       GL_STUB_ALIAS(glUniform1f, glUniform1fARB)
+       GL_STUB_ALIAS(glUniform1fv, glUniform1fvARB)
+       GL_STUB_ALIAS(glUniform1i, glUniform1iARB)
+       GL_STUB_ALIAS(glUniform1iv, glUniform1ivARB)
+       GL_STUB_ALIAS(glUniform2f, glUniform2fARB)
+       GL_STUB_ALIAS(glUniform2fv, glUniform2fvARB)
+       GL_STUB_ALIAS(glUniform2i, glUniform2iARB)
+       GL_STUB_ALIAS(glUniform2iv, glUniform2ivARB)
+       GL_STUB_ALIAS(glUniform3f, glUniform3fARB)
+       GL_STUB_ALIAS(glUniform3fv, glUniform3fvARB)
+       GL_STUB_ALIAS(glUniform3i, glUniform3iARB)
+       GL_STUB_ALIAS(glUniform3iv, glUniform3ivARB)
+       GL_STUB_ALIAS(glUniform4f, glUniform4fARB)
+       GL_STUB_ALIAS(glUniform4fv, glUniform4fvARB)
+       GL_STUB_ALIAS(glUniform4i, glUniform4iARB)
+       GL_STUB_ALIAS(glUniform4iv, glUniform4ivARB)
+       GL_STUB_ALIAS(glUniformMatrix2fv, glUniformMatrix2fvARB)
+       GL_STUB_ALIAS(glUniformMatrix3fv, glUniformMatrix3fvARB)
+       GL_STUB_ALIAS(glUniformMatrix4fv, glUniformMatrix4fvARB)
+       GL_STUB_ALIAS(glUseProgram, glUseProgramObjectARB)
+       GL_STUB_ALIAS(glValidateProgram, glValidateProgramARB)
+       GL_STUB_ALIAS(glBindAttribLocation, glBindAttribLocationARB)
+       GL_STUB_ALIAS(glGetActiveAttrib, glGetActiveAttribARB)
+       GL_STUB_ALIAS(glGetAttribLocation, glGetAttribLocationARB)
+       GL_STUB_ALIAS(glDrawBuffers, glDrawBuffersARB)
+       GL_STUB_ALIAS(glDrawBuffersATI, glDrawBuffersARB)
+       GL_STUB_ALIAS(glRenderbufferStorageMultisampleEXT, glRenderbufferStorageMultisample)
+       GL_STUB_ALIAS(glPointParameterf, glPointParameterfEXT)
+       GL_STUB_ALIAS(glPointParameterfARB, glPointParameterfEXT)
+       GL_STUB_ALIAS(glPointParameterfSGIS, glPointParameterfEXT)
+       GL_STUB_ALIAS(glPointParameterfv, glPointParameterfvEXT)
+       GL_STUB_ALIAS(glPointParameterfvARB, glPointParameterfvEXT)
+       GL_STUB_ALIAS(glPointParameterfvSGIS, glPointParameterfvEXT)
+       GL_STUB_ALIAS(glSecondaryColor3b, glSecondaryColor3bEXT)
+       GL_STUB_ALIAS(glSecondaryColor3bv, glSecondaryColor3bvEXT)
+       GL_STUB_ALIAS(glSecondaryColor3d, glSecondaryColor3dEXT)
+       GL_STUB_ALIAS(glSecondaryColor3dv, glSecondaryColor3dvEXT)
+       GL_STUB_ALIAS(glSecondaryColor3f, glSecondaryColor3fEXT)
+       GL_STUB_ALIAS(glSecondaryColor3fv, glSecondaryColor3fvEXT)
+       GL_STUB_ALIAS(glSecondaryColor3i, glSecondaryColor3iEXT)
+       GL_STUB_ALIAS(glSecondaryColor3iv, glSecondaryColor3ivEXT)
+       GL_STUB_ALIAS(glSecondaryColor3s, glSecondaryColor3sEXT)
+       GL_STUB_ALIAS(glSecondaryColor3sv, glSecondaryColor3svEXT)
+       GL_STUB_ALIAS(glSecondaryColor3ub, glSecondaryColor3ubEXT)
+       GL_STUB_ALIAS(glSecondaryColor3ubv, glSecondaryColor3ubvEXT)
+       GL_STUB_ALIAS(glSecondaryColor3ui, glSecondaryColor3uiEXT)
+       GL_STUB_ALIAS(glSecondaryColor3uiv, glSecondaryColor3uivEXT)
+       GL_STUB_ALIAS(glSecondaryColor3us, glSecondaryColor3usEXT)
+       GL_STUB_ALIAS(glSecondaryColor3usv, glSecondaryColor3usvEXT)
+       GL_STUB_ALIAS(glSecondaryColorPointer, glSecondaryColorPointerEXT)
+       GL_STUB_ALIAS(glMultiDrawArrays, glMultiDrawArraysEXT)
+       GL_STUB_ALIAS(glMultiDrawElements, glMultiDrawElementsEXT)
+       GL_STUB_ALIAS(glFogCoordPointer, glFogCoordPointerEXT)
+       GL_STUB_ALIAS(glFogCoordd, glFogCoorddEXT)
+       GL_STUB_ALIAS(glFogCoorddv, glFogCoorddvEXT)
+       GL_STUB_ALIAS(glFogCoordf, glFogCoordfEXT)
+       GL_STUB_ALIAS(glFogCoordfv, glFogCoordfvEXT)
+       GL_STUB_ALIAS(glBlendFuncSeparate, glBlendFuncSeparateEXT)
+       GL_STUB_ALIAS(glBlendFuncSeparateINGR, glBlendFuncSeparateEXT)
+       GL_STUB_ALIAS(glWindowPos2d, glWindowPos2dMESA)
+       GL_STUB_ALIAS(glWindowPos2dARB, glWindowPos2dMESA)
+       GL_STUB_ALIAS(glWindowPos2dv, glWindowPos2dvMESA)
+       GL_STUB_ALIAS(glWindowPos2dvARB, glWindowPos2dvMESA)
+       GL_STUB_ALIAS(glWindowPos2f, glWindowPos2fMESA)
+       GL_STUB_ALIAS(glWindowPos2fARB, glWindowPos2fMESA)
+       GL_STUB_ALIAS(glWindowPos2fv, glWindowPos2fvMESA)
+       GL_STUB_ALIAS(glWindowPos2fvARB, glWindowPos2fvMESA)
+       GL_STUB_ALIAS(glWindowPos2i, glWindowPos2iMESA)
+       GL_STUB_ALIAS(glWindowPos2iARB, glWindowPos2iMESA)
+       GL_STUB_ALIAS(glWindowPos2iv, glWindowPos2ivMESA)
+       GL_STUB_ALIAS(glWindowPos2ivARB, glWindowPos2ivMESA)
+       GL_STUB_ALIAS(glWindowPos2s, glWindowPos2sMESA)
+       GL_STUB_ALIAS(glWindowPos2sARB, glWindowPos2sMESA)
+       GL_STUB_ALIAS(glWindowPos2sv, glWindowPos2svMESA)
+       GL_STUB_ALIAS(glWindowPos2svARB, glWindowPos2svMESA)
+       GL_STUB_ALIAS(glWindowPos3d, glWindowPos3dMESA)
+       GL_STUB_ALIAS(glWindowPos3dARB, glWindowPos3dMESA)
+       GL_STUB_ALIAS(glWindowPos3dv, glWindowPos3dvMESA)
+       GL_STUB_ALIAS(glWindowPos3dvARB, glWindowPos3dvMESA)
+       GL_STUB_ALIAS(glWindowPos3f, glWindowPos3fMESA)
+       GL_STUB_ALIAS(glWindowPos3fARB, glWindowPos3fMESA)
+       GL_STUB_ALIAS(glWindowPos3fv, glWindowPos3fvMESA)
+       GL_STUB_ALIAS(glWindowPos3fvARB, glWindowPos3fvMESA)
+       GL_STUB_ALIAS(glWindowPos3i, glWindowPos3iMESA)
+       GL_STUB_ALIAS(glWindowPos3iARB, glWindowPos3iMESA)
+       GL_STUB_ALIAS(glWindowPos3iv, glWindowPos3ivMESA)
+       GL_STUB_ALIAS(glWindowPos3ivARB, glWindowPos3ivMESA)
+       GL_STUB_ALIAS(glWindowPos3s, glWindowPos3sMESA)
+       GL_STUB_ALIAS(glWindowPos3sARB, glWindowPos3sMESA)
+       GL_STUB_ALIAS(glWindowPos3sv, glWindowPos3svMESA)
+       GL_STUB_ALIAS(glWindowPos3svARB, glWindowPos3svMESA)
+       GL_STUB_ALIAS(glBindProgramARB, glBindProgramNV)
+       GL_STUB_ALIAS(glDeleteProgramsARB, glDeleteProgramsNV)
+       GL_STUB_ALIAS(glGenProgramsARB, glGenProgramsNV)
+       GL_STUB_ALIAS(glGetVertexAttribPointerv, glGetVertexAttribPointervNV)
+       GL_STUB_ALIAS(glGetVertexAttribPointervARB, glGetVertexAttribPointervNV)
+       GL_STUB_ALIAS(glIsProgramARB, glIsProgramNV)
+       GL_STUB_ALIAS(glPointParameteri, glPointParameteriNV)
+       GL_STUB_ALIAS(glPointParameteriv, glPointParameterivNV)
+       GL_STUB_ALIAS(glBindFramebuffer, glBindFramebufferEXT)
+       GL_STUB_ALIAS(glBindRenderbuffer, glBindRenderbufferEXT)
+       GL_STUB_ALIAS(glCheckFramebufferStatus, glCheckFramebufferStatusEXT)
+       GL_STUB_ALIAS(glDeleteFramebuffers, glDeleteFramebuffersEXT)
+       GL_STUB_ALIAS(glDeleteRenderbuffers, glDeleteRenderbuffersEXT)
+       GL_STUB_ALIAS(glFramebufferRenderbuffer, glFramebufferRenderbufferEXT)
+       GL_STUB_ALIAS(glFramebufferTexture1D, glFramebufferTexture1DEXT)
+       GL_STUB_ALIAS(glFramebufferTexture2D, glFramebufferTexture2DEXT)
+       GL_STUB_ALIAS(glFramebufferTexture3D, glFramebufferTexture3DEXT)
+       GL_STUB_ALIAS(glGenFramebuffers, glGenFramebuffersEXT)
+       GL_STUB_ALIAS(glGenRenderbuffers, glGenRenderbuffersEXT)
+       GL_STUB_ALIAS(glGenerateMipmap, glGenerateMipmapEXT)
+       GL_STUB_ALIAS(glGetFramebufferAttachmentParameteriv, glGetFramebufferAttachmentParameterivEXT)
+       GL_STUB_ALIAS(glGetRenderbufferParameteriv, glGetRenderbufferParameterivEXT)
+       GL_STUB_ALIAS(glIsFramebuffer, glIsFramebufferEXT)
+       GL_STUB_ALIAS(glIsRenderbuffer, glIsRenderbufferEXT)
+       GL_STUB_ALIAS(glRenderbufferStorage, glRenderbufferStorageEXT)
+       GL_STUB_ALIAS(glFramebufferTextureLayer, glFramebufferTextureLayerEXT)
+       GL_STUB_ALIAS(glBeginTransformFeedback, glBeginTransformFeedbackEXT)
+       GL_STUB_ALIAS(glBindBufferBase, glBindBufferBaseEXT)
+       GL_STUB_ALIAS(glBindBufferRange, glBindBufferRangeEXT)
+       GL_STUB_ALIAS(glEndTransformFeedback, glEndTransformFeedbackEXT)
+       GL_STUB_ALIAS(glGetTransformFeedbackVarying, glGetTransformFeedbackVaryingEXT)
+       GL_STUB_ALIAS(glTransformFeedbackVaryings, glTransformFeedbackVaryingsEXT)
+       GL_STUB_ALIAS(glProvokingVertex, glProvokingVertexEXT)
+
+       .globl  gl_dispatch_functions_end
+       HIDDEN(gl_dispatch_functions_end)
+gl_dispatch_functions_end:
diff --git a/src/mapi/glapi/glapi_x86-64.S b/src/mapi/glapi/glapi_x86-64.S
new file mode 100644 (file)
index 0000000..9693016
--- /dev/null
@@ -0,0 +1,31286 @@
+/* DO NOT EDIT - This file generated automatically by gl_x86-64_asm.py (from Mesa) script */
+
+/*
+ * (C) Copyright IBM Corporation 2005
+ * 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
+ * IBM,
+ * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
+ * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+/* If we build with gcc's -fvisibility=hidden flag, we'll need to change
+ * the symbol visibility mode to 'default'.
+ */
+
+#include "x86/assyntax.h"
+
+#ifdef __GNUC__
+#  pragma GCC visibility push(default)
+#  define HIDDEN(x) .hidden x
+#else
+#  define HIDDEN(x)
+#endif
+
+# if defined(USE_MGL_NAMESPACE)
+#  define GL_PREFIX(n) GLNAME(CONCAT(mgl,n))
+#  define _glapi_Dispatch _mglapi_Dispatch
+# else
+#  define GL_PREFIX(n) GLNAME(CONCAT(gl,n))
+# endif
+
+#if defined(PTHREADS) || defined(WIN32_THREADS) || defined(BEOS_THREADS)
+#  define THREADS
+#endif
+
+       .text
+
+#ifdef GLX_USE_TLS
+
+       .globl _x86_64_get_get_dispatch; HIDDEN(_x86_64_get_get_dispatch)
+_x86_64_get_get_dispatch:
+       lea     _x86_64_get_dispatch(%rip), %rax
+       ret
+
+       .p2align        4,,15
+_x86_64_get_dispatch:
+       movq    _glapi_tls_Dispatch@GOTTPOFF(%rip), %rax
+       movq    %fs:(%rax), %rax
+       ret
+       .size   _x86_64_get_dispatch, .-_x86_64_get_dispatch
+
+#elif defined(PTHREADS)
+
+       .extern _glapi_Dispatch
+       .extern _gl_DispatchTSD
+       .extern pthread_getspecific
+
+       .p2align        4,,15
+_x86_64_get_dispatch:
+       movq    _gl_DispatchTSD(%rip), %rdi
+       jmp     pthread_getspecific@PLT
+
+#elif defined(THREADS)
+
+       .extern _glapi_get_dispatch
+
+#endif
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(NewList)
+       .type   GL_PREFIX(NewList), @function
+GL_PREFIX(NewList):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    0(%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    (%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    0(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    0(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(NewList), .-GL_PREFIX(NewList)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EndList)
+       .type   GL_PREFIX(EndList), @function
+GL_PREFIX(EndList):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    8(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    8(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    8(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EndList), .-GL_PREFIX(EndList)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CallList)
+       .type   GL_PREFIX(CallList), @function
+GL_PREFIX(CallList):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    16(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    16(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    16(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CallList), .-GL_PREFIX(CallList)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CallLists)
+       .type   GL_PREFIX(CallLists), @function
+GL_PREFIX(CallLists):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%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    24(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    24(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    24(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CallLists), .-GL_PREFIX(CallLists)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DeleteLists)
+       .type   GL_PREFIX(DeleteLists), @function
+GL_PREFIX(DeleteLists):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    32(%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    32(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    32(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    32(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DeleteLists), .-GL_PREFIX(DeleteLists)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GenLists)
+       .type   GL_PREFIX(GenLists), @function
+GL_PREFIX(GenLists):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    40(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    40(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    40(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    40(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GenLists), .-GL_PREFIX(GenLists)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ListBase)
+       .type   GL_PREFIX(ListBase), @function
+GL_PREFIX(ListBase):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    48(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    48(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    48(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    48(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ListBase), .-GL_PREFIX(ListBase)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Begin)
+       .type   GL_PREFIX(Begin), @function
+GL_PREFIX(Begin):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    56(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    56(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    56(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    56(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Begin), .-GL_PREFIX(Begin)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Bitmap)
+       .type   GL_PREFIX(Bitmap), @function
+GL_PREFIX(Bitmap):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    64(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $56, %rsp
+       movq    %rdi, (%rsp)
+       movq    %rsi, 8(%rsp)
+       movq    %xmm0, 16(%rsp)
+       movq    %xmm1, 24(%rsp)
+       movq    %xmm2, 32(%rsp)
+       movq    %xmm3, 40(%rsp)
+       movq    %rdx, 48(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    48(%rsp), %rdx
+       movq    40(%rsp), %xmm3
+       movq    32(%rsp), %xmm2
+       movq    24(%rsp), %xmm1
+       movq    16(%rsp), %xmm0
+       movq    8(%rsp), %rsi
+       movq    (%rsp), %rdi
+       addq    $56, %rsp
+       movq    64(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    64(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $56, %rsp
+       movq    %rdi, (%rsp)
+       movq    %rsi, 8(%rsp)
+       movq    %xmm0, 16(%rsp)
+       movq    %xmm1, 24(%rsp)
+       movq    %xmm2, 32(%rsp)
+       movq    %xmm3, 40(%rsp)
+       movq    %rdx, 48(%rsp)
+       call    _glapi_get_dispatch
+       movq    48(%rsp), %rdx
+       movq    40(%rsp), %xmm3
+       movq    32(%rsp), %xmm2
+       movq    24(%rsp), %xmm1
+       movq    16(%rsp), %xmm0
+       movq    8(%rsp), %rsi
+       movq    (%rsp), %rdi
+       addq    $56, %rsp
+       movq    64(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Bitmap), .-GL_PREFIX(Bitmap)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color3b)
+       .type   GL_PREFIX(Color3b), @function
+GL_PREFIX(Color3b):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    72(%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    72(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    72(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    72(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color3b), .-GL_PREFIX(Color3b)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color3bv)
+       .type   GL_PREFIX(Color3bv), @function
+GL_PREFIX(Color3bv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    80(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    80(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    80(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    80(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color3bv), .-GL_PREFIX(Color3bv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color3d)
+       .type   GL_PREFIX(Color3d), @function
+GL_PREFIX(Color3d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    88(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    88(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    88(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    88(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color3d), .-GL_PREFIX(Color3d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color3dv)
+       .type   GL_PREFIX(Color3dv), @function
+GL_PREFIX(Color3dv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    96(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    96(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    96(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    96(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color3dv), .-GL_PREFIX(Color3dv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color3f)
+       .type   GL_PREFIX(Color3f), @function
+GL_PREFIX(Color3f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    104(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    104(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    104(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    104(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color3f), .-GL_PREFIX(Color3f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color3fv)
+       .type   GL_PREFIX(Color3fv), @function
+GL_PREFIX(Color3fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    112(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    112(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    112(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    112(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color3fv), .-GL_PREFIX(Color3fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color3i)
+       .type   GL_PREFIX(Color3i), @function
+GL_PREFIX(Color3i):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    120(%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    120(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    120(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    120(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color3i), .-GL_PREFIX(Color3i)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color3iv)
+       .type   GL_PREFIX(Color3iv), @function
+GL_PREFIX(Color3iv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    128(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    128(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    128(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    128(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color3iv), .-GL_PREFIX(Color3iv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color3s)
+       .type   GL_PREFIX(Color3s), @function
+GL_PREFIX(Color3s):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    136(%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    136(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    136(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    136(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color3s), .-GL_PREFIX(Color3s)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color3sv)
+       .type   GL_PREFIX(Color3sv), @function
+GL_PREFIX(Color3sv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    144(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    144(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    144(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    144(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color3sv), .-GL_PREFIX(Color3sv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color3ub)
+       .type   GL_PREFIX(Color3ub), @function
+GL_PREFIX(Color3ub):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    152(%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    152(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    152(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    152(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color3ub), .-GL_PREFIX(Color3ub)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color3ubv)
+       .type   GL_PREFIX(Color3ubv), @function
+GL_PREFIX(Color3ubv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    160(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    160(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    160(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    160(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color3ubv), .-GL_PREFIX(Color3ubv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color3ui)
+       .type   GL_PREFIX(Color3ui), @function
+GL_PREFIX(Color3ui):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    168(%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    168(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    168(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    168(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color3ui), .-GL_PREFIX(Color3ui)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color3uiv)
+       .type   GL_PREFIX(Color3uiv), @function
+GL_PREFIX(Color3uiv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    176(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    176(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    176(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    176(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color3uiv), .-GL_PREFIX(Color3uiv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color3us)
+       .type   GL_PREFIX(Color3us), @function
+GL_PREFIX(Color3us):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    184(%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    184(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    184(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    184(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color3us), .-GL_PREFIX(Color3us)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color3usv)
+       .type   GL_PREFIX(Color3usv), @function
+GL_PREFIX(Color3usv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    192(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    192(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    192(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    192(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color3usv), .-GL_PREFIX(Color3usv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color4b)
+       .type   GL_PREFIX(Color4b), @function
+GL_PREFIX(Color4b):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    200(%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    200(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    200(%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    200(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color4b), .-GL_PREFIX(Color4b)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color4bv)
+       .type   GL_PREFIX(Color4bv), @function
+GL_PREFIX(Color4bv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    208(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    208(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    208(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    208(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color4bv), .-GL_PREFIX(Color4bv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color4d)
+       .type   GL_PREFIX(Color4d), @function
+GL_PREFIX(Color4d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    216(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    216(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    216(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    216(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color4d), .-GL_PREFIX(Color4d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color4dv)
+       .type   GL_PREFIX(Color4dv), @function
+GL_PREFIX(Color4dv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    224(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    224(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    224(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    224(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color4dv), .-GL_PREFIX(Color4dv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color4f)
+       .type   GL_PREFIX(Color4f), @function
+GL_PREFIX(Color4f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    232(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    232(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    232(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    232(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color4f), .-GL_PREFIX(Color4f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color4fv)
+       .type   GL_PREFIX(Color4fv), @function
+GL_PREFIX(Color4fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    240(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    240(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    240(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    240(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color4fv), .-GL_PREFIX(Color4fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color4i)
+       .type   GL_PREFIX(Color4i), @function
+GL_PREFIX(Color4i):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    248(%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    248(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    248(%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    248(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color4i), .-GL_PREFIX(Color4i)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color4iv)
+       .type   GL_PREFIX(Color4iv), @function
+GL_PREFIX(Color4iv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    256(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    256(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    256(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    256(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color4iv), .-GL_PREFIX(Color4iv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color4s)
+       .type   GL_PREFIX(Color4s), @function
+GL_PREFIX(Color4s):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    264(%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    264(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    264(%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    264(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color4s), .-GL_PREFIX(Color4s)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color4sv)
+       .type   GL_PREFIX(Color4sv), @function
+GL_PREFIX(Color4sv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    272(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    272(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    272(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    272(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color4sv), .-GL_PREFIX(Color4sv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color4ub)
+       .type   GL_PREFIX(Color4ub), @function
+GL_PREFIX(Color4ub):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    280(%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    280(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    280(%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    280(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color4ub), .-GL_PREFIX(Color4ub)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color4ubv)
+       .type   GL_PREFIX(Color4ubv), @function
+GL_PREFIX(Color4ubv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    288(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    288(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    288(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    288(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color4ubv), .-GL_PREFIX(Color4ubv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color4ui)
+       .type   GL_PREFIX(Color4ui), @function
+GL_PREFIX(Color4ui):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    296(%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    296(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    296(%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    296(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color4ui), .-GL_PREFIX(Color4ui)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color4uiv)
+       .type   GL_PREFIX(Color4uiv), @function
+GL_PREFIX(Color4uiv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    304(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    304(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    304(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    304(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color4uiv), .-GL_PREFIX(Color4uiv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color4us)
+       .type   GL_PREFIX(Color4us), @function
+GL_PREFIX(Color4us):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    312(%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    312(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    312(%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    312(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color4us), .-GL_PREFIX(Color4us)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Color4usv)
+       .type   GL_PREFIX(Color4usv), @function
+GL_PREFIX(Color4usv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    320(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    320(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    320(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    320(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Color4usv), .-GL_PREFIX(Color4usv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EdgeFlag)
+       .type   GL_PREFIX(EdgeFlag), @function
+GL_PREFIX(EdgeFlag):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    328(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    328(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    328(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    328(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EdgeFlag), .-GL_PREFIX(EdgeFlag)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EdgeFlagv)
+       .type   GL_PREFIX(EdgeFlagv), @function
+GL_PREFIX(EdgeFlagv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    336(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    336(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    336(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    336(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EdgeFlagv), .-GL_PREFIX(EdgeFlagv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(End)
+       .type   GL_PREFIX(End), @function
+GL_PREFIX(End):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    344(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    344(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    344(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    344(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(End), .-GL_PREFIX(End)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Indexd)
+       .type   GL_PREFIX(Indexd), @function
+GL_PREFIX(Indexd):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    352(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    352(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    352(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _glapi_get_dispatch
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    352(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Indexd), .-GL_PREFIX(Indexd)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Indexdv)
+       .type   GL_PREFIX(Indexdv), @function
+GL_PREFIX(Indexdv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    360(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    360(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    360(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    360(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Indexdv), .-GL_PREFIX(Indexdv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Indexf)
+       .type   GL_PREFIX(Indexf), @function
+GL_PREFIX(Indexf):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    368(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    368(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    368(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _glapi_get_dispatch
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    368(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Indexf), .-GL_PREFIX(Indexf)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Indexfv)
+       .type   GL_PREFIX(Indexfv), @function
+GL_PREFIX(Indexfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    376(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    376(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    376(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    376(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Indexfv), .-GL_PREFIX(Indexfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Indexi)
+       .type   GL_PREFIX(Indexi), @function
+GL_PREFIX(Indexi):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    384(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    384(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    384(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    384(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Indexi), .-GL_PREFIX(Indexi)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Indexiv)
+       .type   GL_PREFIX(Indexiv), @function
+GL_PREFIX(Indexiv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    392(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    392(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    392(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    392(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Indexiv), .-GL_PREFIX(Indexiv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Indexs)
+       .type   GL_PREFIX(Indexs), @function
+GL_PREFIX(Indexs):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    400(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    400(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    400(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    400(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Indexs), .-GL_PREFIX(Indexs)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Indexsv)
+       .type   GL_PREFIX(Indexsv), @function
+GL_PREFIX(Indexsv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    408(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    408(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    408(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    408(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Indexsv), .-GL_PREFIX(Indexsv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Normal3b)
+       .type   GL_PREFIX(Normal3b), @function
+GL_PREFIX(Normal3b):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    416(%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    416(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    416(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    416(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Normal3b), .-GL_PREFIX(Normal3b)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Normal3bv)
+       .type   GL_PREFIX(Normal3bv), @function
+GL_PREFIX(Normal3bv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    424(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    424(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    424(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    424(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Normal3bv), .-GL_PREFIX(Normal3bv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Normal3d)
+       .type   GL_PREFIX(Normal3d), @function
+GL_PREFIX(Normal3d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    432(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    432(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    432(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    432(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Normal3d), .-GL_PREFIX(Normal3d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Normal3dv)
+       .type   GL_PREFIX(Normal3dv), @function
+GL_PREFIX(Normal3dv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    440(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    440(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    440(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    440(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Normal3dv), .-GL_PREFIX(Normal3dv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Normal3f)
+       .type   GL_PREFIX(Normal3f), @function
+GL_PREFIX(Normal3f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    448(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    448(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    448(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    448(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Normal3f), .-GL_PREFIX(Normal3f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Normal3fv)
+       .type   GL_PREFIX(Normal3fv), @function
+GL_PREFIX(Normal3fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    456(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    456(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    456(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    456(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Normal3fv), .-GL_PREFIX(Normal3fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Normal3i)
+       .type   GL_PREFIX(Normal3i), @function
+GL_PREFIX(Normal3i):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    464(%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    464(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    464(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    464(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Normal3i), .-GL_PREFIX(Normal3i)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Normal3iv)
+       .type   GL_PREFIX(Normal3iv), @function
+GL_PREFIX(Normal3iv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    472(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    472(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    472(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    472(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Normal3iv), .-GL_PREFIX(Normal3iv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Normal3s)
+       .type   GL_PREFIX(Normal3s), @function
+GL_PREFIX(Normal3s):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    480(%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    480(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    480(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    480(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Normal3s), .-GL_PREFIX(Normal3s)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Normal3sv)
+       .type   GL_PREFIX(Normal3sv), @function
+GL_PREFIX(Normal3sv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    488(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    488(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    488(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    488(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Normal3sv), .-GL_PREFIX(Normal3sv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos2d)
+       .type   GL_PREFIX(RasterPos2d), @function
+GL_PREFIX(RasterPos2d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    496(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    496(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    496(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    496(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos2d), .-GL_PREFIX(RasterPos2d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos2dv)
+       .type   GL_PREFIX(RasterPos2dv), @function
+GL_PREFIX(RasterPos2dv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    504(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    504(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    504(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    504(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos2dv), .-GL_PREFIX(RasterPos2dv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos2f)
+       .type   GL_PREFIX(RasterPos2f), @function
+GL_PREFIX(RasterPos2f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    512(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    512(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    512(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    512(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos2f), .-GL_PREFIX(RasterPos2f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos2fv)
+       .type   GL_PREFIX(RasterPos2fv), @function
+GL_PREFIX(RasterPos2fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    520(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    520(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    520(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    520(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos2fv), .-GL_PREFIX(RasterPos2fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos2i)
+       .type   GL_PREFIX(RasterPos2i), @function
+GL_PREFIX(RasterPos2i):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    528(%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    528(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    528(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    528(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos2i), .-GL_PREFIX(RasterPos2i)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos2iv)
+       .type   GL_PREFIX(RasterPos2iv), @function
+GL_PREFIX(RasterPos2iv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    536(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    536(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    536(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    536(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos2iv), .-GL_PREFIX(RasterPos2iv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos2s)
+       .type   GL_PREFIX(RasterPos2s), @function
+GL_PREFIX(RasterPos2s):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    544(%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    544(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    544(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    544(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos2s), .-GL_PREFIX(RasterPos2s)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos2sv)
+       .type   GL_PREFIX(RasterPos2sv), @function
+GL_PREFIX(RasterPos2sv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    552(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    552(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    552(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    552(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos2sv), .-GL_PREFIX(RasterPos2sv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos3d)
+       .type   GL_PREFIX(RasterPos3d), @function
+GL_PREFIX(RasterPos3d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    560(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    560(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    560(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    560(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos3d), .-GL_PREFIX(RasterPos3d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos3dv)
+       .type   GL_PREFIX(RasterPos3dv), @function
+GL_PREFIX(RasterPos3dv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    568(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    568(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    568(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    568(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos3dv), .-GL_PREFIX(RasterPos3dv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos3f)
+       .type   GL_PREFIX(RasterPos3f), @function
+GL_PREFIX(RasterPos3f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    576(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    576(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    576(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    576(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos3f), .-GL_PREFIX(RasterPos3f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos3fv)
+       .type   GL_PREFIX(RasterPos3fv), @function
+GL_PREFIX(RasterPos3fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    584(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    584(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    584(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    584(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos3fv), .-GL_PREFIX(RasterPos3fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos3i)
+       .type   GL_PREFIX(RasterPos3i), @function
+GL_PREFIX(RasterPos3i):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    592(%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    592(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    592(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    592(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos3i), .-GL_PREFIX(RasterPos3i)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos3iv)
+       .type   GL_PREFIX(RasterPos3iv), @function
+GL_PREFIX(RasterPos3iv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    600(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    600(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    600(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    600(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos3iv), .-GL_PREFIX(RasterPos3iv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos3s)
+       .type   GL_PREFIX(RasterPos3s), @function
+GL_PREFIX(RasterPos3s):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    608(%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    608(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    608(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    608(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos3s), .-GL_PREFIX(RasterPos3s)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos3sv)
+       .type   GL_PREFIX(RasterPos3sv), @function
+GL_PREFIX(RasterPos3sv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    616(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    616(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    616(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    616(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos3sv), .-GL_PREFIX(RasterPos3sv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos4d)
+       .type   GL_PREFIX(RasterPos4d), @function
+GL_PREFIX(RasterPos4d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    624(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    624(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    624(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    624(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos4d), .-GL_PREFIX(RasterPos4d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos4dv)
+       .type   GL_PREFIX(RasterPos4dv), @function
+GL_PREFIX(RasterPos4dv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    632(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    632(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    632(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    632(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos4dv), .-GL_PREFIX(RasterPos4dv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos4f)
+       .type   GL_PREFIX(RasterPos4f), @function
+GL_PREFIX(RasterPos4f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    640(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    640(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    640(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    640(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos4f), .-GL_PREFIX(RasterPos4f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos4fv)
+       .type   GL_PREFIX(RasterPos4fv), @function
+GL_PREFIX(RasterPos4fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    648(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    648(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    648(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    648(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos4fv), .-GL_PREFIX(RasterPos4fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos4i)
+       .type   GL_PREFIX(RasterPos4i), @function
+GL_PREFIX(RasterPos4i):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    656(%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    656(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    656(%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    656(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos4i), .-GL_PREFIX(RasterPos4i)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos4iv)
+       .type   GL_PREFIX(RasterPos4iv), @function
+GL_PREFIX(RasterPos4iv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    664(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    664(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    664(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    664(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos4iv), .-GL_PREFIX(RasterPos4iv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos4s)
+       .type   GL_PREFIX(RasterPos4s), @function
+GL_PREFIX(RasterPos4s):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    672(%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    672(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    672(%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    672(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos4s), .-GL_PREFIX(RasterPos4s)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RasterPos4sv)
+       .type   GL_PREFIX(RasterPos4sv), @function
+GL_PREFIX(RasterPos4sv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    680(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    680(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    680(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    680(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RasterPos4sv), .-GL_PREFIX(RasterPos4sv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Rectd)
+       .type   GL_PREFIX(Rectd), @function
+GL_PREFIX(Rectd):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    688(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    688(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    688(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    688(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Rectd), .-GL_PREFIX(Rectd)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Rectdv)
+       .type   GL_PREFIX(Rectdv), @function
+GL_PREFIX(Rectdv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    696(%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    696(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    696(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    696(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Rectdv), .-GL_PREFIX(Rectdv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Rectf)
+       .type   GL_PREFIX(Rectf), @function
+GL_PREFIX(Rectf):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    704(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    704(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    704(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    704(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Rectf), .-GL_PREFIX(Rectf)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Rectfv)
+       .type   GL_PREFIX(Rectfv), @function
+GL_PREFIX(Rectfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    712(%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    712(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    712(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    712(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Rectfv), .-GL_PREFIX(Rectfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Recti)
+       .type   GL_PREFIX(Recti), @function
+GL_PREFIX(Recti):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    720(%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    720(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    720(%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    720(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Recti), .-GL_PREFIX(Recti)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Rectiv)
+       .type   GL_PREFIX(Rectiv), @function
+GL_PREFIX(Rectiv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    728(%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    728(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    728(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    728(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Rectiv), .-GL_PREFIX(Rectiv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Rects)
+       .type   GL_PREFIX(Rects), @function
+GL_PREFIX(Rects):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    736(%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    736(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    736(%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    736(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Rects), .-GL_PREFIX(Rects)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Rectsv)
+       .type   GL_PREFIX(Rectsv), @function
+GL_PREFIX(Rectsv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    744(%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    744(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    744(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    744(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Rectsv), .-GL_PREFIX(Rectsv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord1d)
+       .type   GL_PREFIX(TexCoord1d), @function
+GL_PREFIX(TexCoord1d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    752(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    752(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    752(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _glapi_get_dispatch
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    752(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord1d), .-GL_PREFIX(TexCoord1d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord1dv)
+       .type   GL_PREFIX(TexCoord1dv), @function
+GL_PREFIX(TexCoord1dv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    760(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    760(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    760(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    760(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord1dv), .-GL_PREFIX(TexCoord1dv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord1f)
+       .type   GL_PREFIX(TexCoord1f), @function
+GL_PREFIX(TexCoord1f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    768(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    768(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    768(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _glapi_get_dispatch
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    768(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord1f), .-GL_PREFIX(TexCoord1f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord1fv)
+       .type   GL_PREFIX(TexCoord1fv), @function
+GL_PREFIX(TexCoord1fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    776(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    776(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    776(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    776(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord1fv), .-GL_PREFIX(TexCoord1fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord1i)
+       .type   GL_PREFIX(TexCoord1i), @function
+GL_PREFIX(TexCoord1i):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    784(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    784(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    784(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    784(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord1i), .-GL_PREFIX(TexCoord1i)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord1iv)
+       .type   GL_PREFIX(TexCoord1iv), @function
+GL_PREFIX(TexCoord1iv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    792(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    792(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    792(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    792(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord1iv), .-GL_PREFIX(TexCoord1iv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord1s)
+       .type   GL_PREFIX(TexCoord1s), @function
+GL_PREFIX(TexCoord1s):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    800(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    800(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    800(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    800(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord1s), .-GL_PREFIX(TexCoord1s)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord1sv)
+       .type   GL_PREFIX(TexCoord1sv), @function
+GL_PREFIX(TexCoord1sv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    808(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    808(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    808(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    808(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord1sv), .-GL_PREFIX(TexCoord1sv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord2d)
+       .type   GL_PREFIX(TexCoord2d), @function
+GL_PREFIX(TexCoord2d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    816(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    816(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    816(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    816(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord2d), .-GL_PREFIX(TexCoord2d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord2dv)
+       .type   GL_PREFIX(TexCoord2dv), @function
+GL_PREFIX(TexCoord2dv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    824(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    824(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    824(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    824(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord2dv), .-GL_PREFIX(TexCoord2dv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord2f)
+       .type   GL_PREFIX(TexCoord2f), @function
+GL_PREFIX(TexCoord2f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    832(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    832(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    832(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    832(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord2f), .-GL_PREFIX(TexCoord2f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord2fv)
+       .type   GL_PREFIX(TexCoord2fv), @function
+GL_PREFIX(TexCoord2fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    840(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    840(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    840(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    840(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord2fv), .-GL_PREFIX(TexCoord2fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord2i)
+       .type   GL_PREFIX(TexCoord2i), @function
+GL_PREFIX(TexCoord2i):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    848(%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    848(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    848(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    848(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord2i), .-GL_PREFIX(TexCoord2i)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord2iv)
+       .type   GL_PREFIX(TexCoord2iv), @function
+GL_PREFIX(TexCoord2iv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    856(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    856(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    856(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    856(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord2iv), .-GL_PREFIX(TexCoord2iv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord2s)
+       .type   GL_PREFIX(TexCoord2s), @function
+GL_PREFIX(TexCoord2s):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    864(%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    864(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    864(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    864(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord2s), .-GL_PREFIX(TexCoord2s)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord2sv)
+       .type   GL_PREFIX(TexCoord2sv), @function
+GL_PREFIX(TexCoord2sv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    872(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    872(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    872(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    872(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord2sv), .-GL_PREFIX(TexCoord2sv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord3d)
+       .type   GL_PREFIX(TexCoord3d), @function
+GL_PREFIX(TexCoord3d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    880(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    880(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    880(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    880(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord3d), .-GL_PREFIX(TexCoord3d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord3dv)
+       .type   GL_PREFIX(TexCoord3dv), @function
+GL_PREFIX(TexCoord3dv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    888(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    888(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    888(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    888(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord3dv), .-GL_PREFIX(TexCoord3dv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord3f)
+       .type   GL_PREFIX(TexCoord3f), @function
+GL_PREFIX(TexCoord3f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    896(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    896(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    896(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    896(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord3f), .-GL_PREFIX(TexCoord3f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord3fv)
+       .type   GL_PREFIX(TexCoord3fv), @function
+GL_PREFIX(TexCoord3fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    904(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    904(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    904(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    904(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord3fv), .-GL_PREFIX(TexCoord3fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord3i)
+       .type   GL_PREFIX(TexCoord3i), @function
+GL_PREFIX(TexCoord3i):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    912(%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    912(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    912(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    912(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord3i), .-GL_PREFIX(TexCoord3i)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord3iv)
+       .type   GL_PREFIX(TexCoord3iv), @function
+GL_PREFIX(TexCoord3iv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    920(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    920(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    920(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    920(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord3iv), .-GL_PREFIX(TexCoord3iv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord3s)
+       .type   GL_PREFIX(TexCoord3s), @function
+GL_PREFIX(TexCoord3s):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    928(%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    928(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    928(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    928(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord3s), .-GL_PREFIX(TexCoord3s)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord3sv)
+       .type   GL_PREFIX(TexCoord3sv), @function
+GL_PREFIX(TexCoord3sv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    936(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    936(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    936(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    936(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord3sv), .-GL_PREFIX(TexCoord3sv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord4d)
+       .type   GL_PREFIX(TexCoord4d), @function
+GL_PREFIX(TexCoord4d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    944(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    944(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    944(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    944(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord4d), .-GL_PREFIX(TexCoord4d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord4dv)
+       .type   GL_PREFIX(TexCoord4dv), @function
+GL_PREFIX(TexCoord4dv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    952(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    952(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    952(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    952(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord4dv), .-GL_PREFIX(TexCoord4dv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord4f)
+       .type   GL_PREFIX(TexCoord4f), @function
+GL_PREFIX(TexCoord4f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    960(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    960(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    960(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    960(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord4f), .-GL_PREFIX(TexCoord4f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord4fv)
+       .type   GL_PREFIX(TexCoord4fv), @function
+GL_PREFIX(TexCoord4fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    968(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    968(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    968(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    968(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord4fv), .-GL_PREFIX(TexCoord4fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord4i)
+       .type   GL_PREFIX(TexCoord4i), @function
+GL_PREFIX(TexCoord4i):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    976(%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    976(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    976(%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    976(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord4i), .-GL_PREFIX(TexCoord4i)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord4iv)
+       .type   GL_PREFIX(TexCoord4iv), @function
+GL_PREFIX(TexCoord4iv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    984(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    984(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    984(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    984(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord4iv), .-GL_PREFIX(TexCoord4iv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord4s)
+       .type   GL_PREFIX(TexCoord4s), @function
+GL_PREFIX(TexCoord4s):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    992(%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    992(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    992(%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    992(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord4s), .-GL_PREFIX(TexCoord4s)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoord4sv)
+       .type   GL_PREFIX(TexCoord4sv), @function
+GL_PREFIX(TexCoord4sv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1000(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1000(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1000(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1000(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoord4sv), .-GL_PREFIX(TexCoord4sv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex2d)
+       .type   GL_PREFIX(Vertex2d), @function
+GL_PREFIX(Vertex2d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1008(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    1008(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1008(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    1008(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex2d), .-GL_PREFIX(Vertex2d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex2dv)
+       .type   GL_PREFIX(Vertex2dv), @function
+GL_PREFIX(Vertex2dv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1016(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1016(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1016(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1016(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex2dv), .-GL_PREFIX(Vertex2dv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex2f)
+       .type   GL_PREFIX(Vertex2f), @function
+GL_PREFIX(Vertex2f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1024(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    1024(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1024(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    1024(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex2f), .-GL_PREFIX(Vertex2f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex2fv)
+       .type   GL_PREFIX(Vertex2fv), @function
+GL_PREFIX(Vertex2fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1032(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1032(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1032(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1032(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex2fv), .-GL_PREFIX(Vertex2fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex2i)
+       .type   GL_PREFIX(Vertex2i), @function
+GL_PREFIX(Vertex2i):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1040(%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    1040(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1040(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    1040(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex2i), .-GL_PREFIX(Vertex2i)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex2iv)
+       .type   GL_PREFIX(Vertex2iv), @function
+GL_PREFIX(Vertex2iv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1048(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1048(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1048(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1048(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex2iv), .-GL_PREFIX(Vertex2iv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex2s)
+       .type   GL_PREFIX(Vertex2s), @function
+GL_PREFIX(Vertex2s):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1056(%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    1056(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1056(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    1056(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex2s), .-GL_PREFIX(Vertex2s)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex2sv)
+       .type   GL_PREFIX(Vertex2sv), @function
+GL_PREFIX(Vertex2sv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1064(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1064(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1064(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1064(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex2sv), .-GL_PREFIX(Vertex2sv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex3d)
+       .type   GL_PREFIX(Vertex3d), @function
+GL_PREFIX(Vertex3d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1072(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    1072(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1072(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    1072(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex3d), .-GL_PREFIX(Vertex3d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex3dv)
+       .type   GL_PREFIX(Vertex3dv), @function
+GL_PREFIX(Vertex3dv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1080(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1080(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1080(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1080(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex3dv), .-GL_PREFIX(Vertex3dv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex3f)
+       .type   GL_PREFIX(Vertex3f), @function
+GL_PREFIX(Vertex3f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1088(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    1088(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1088(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    1088(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex3f), .-GL_PREFIX(Vertex3f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex3fv)
+       .type   GL_PREFIX(Vertex3fv), @function
+GL_PREFIX(Vertex3fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1096(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1096(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1096(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1096(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex3fv), .-GL_PREFIX(Vertex3fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex3i)
+       .type   GL_PREFIX(Vertex3i), @function
+GL_PREFIX(Vertex3i):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1104(%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    1104(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1104(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1104(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex3i), .-GL_PREFIX(Vertex3i)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex3iv)
+       .type   GL_PREFIX(Vertex3iv), @function
+GL_PREFIX(Vertex3iv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1112(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1112(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1112(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1112(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex3iv), .-GL_PREFIX(Vertex3iv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex3s)
+       .type   GL_PREFIX(Vertex3s), @function
+GL_PREFIX(Vertex3s):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1120(%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    1120(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1120(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1120(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex3s), .-GL_PREFIX(Vertex3s)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex3sv)
+       .type   GL_PREFIX(Vertex3sv), @function
+GL_PREFIX(Vertex3sv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1128(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1128(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1128(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1128(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex3sv), .-GL_PREFIX(Vertex3sv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex4d)
+       .type   GL_PREFIX(Vertex4d), @function
+GL_PREFIX(Vertex4d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1136(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    1136(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1136(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    1136(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex4d), .-GL_PREFIX(Vertex4d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex4dv)
+       .type   GL_PREFIX(Vertex4dv), @function
+GL_PREFIX(Vertex4dv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1144(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1144(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1144(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1144(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex4dv), .-GL_PREFIX(Vertex4dv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex4f)
+       .type   GL_PREFIX(Vertex4f), @function
+GL_PREFIX(Vertex4f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1152(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    1152(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1152(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    1152(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex4f), .-GL_PREFIX(Vertex4f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex4fv)
+       .type   GL_PREFIX(Vertex4fv), @function
+GL_PREFIX(Vertex4fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1160(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1160(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1160(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1160(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex4fv), .-GL_PREFIX(Vertex4fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex4i)
+       .type   GL_PREFIX(Vertex4i), @function
+GL_PREFIX(Vertex4i):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1168(%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    1168(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1168(%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    1168(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex4i), .-GL_PREFIX(Vertex4i)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex4iv)
+       .type   GL_PREFIX(Vertex4iv), @function
+GL_PREFIX(Vertex4iv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1176(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1176(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1176(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1176(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex4iv), .-GL_PREFIX(Vertex4iv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex4s)
+       .type   GL_PREFIX(Vertex4s), @function
+GL_PREFIX(Vertex4s):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1184(%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    1184(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1184(%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    1184(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex4s), .-GL_PREFIX(Vertex4s)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Vertex4sv)
+       .type   GL_PREFIX(Vertex4sv), @function
+GL_PREFIX(Vertex4sv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1192(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1192(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1192(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1192(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Vertex4sv), .-GL_PREFIX(Vertex4sv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ClipPlane)
+       .type   GL_PREFIX(ClipPlane), @function
+GL_PREFIX(ClipPlane):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1200(%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    1200(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1200(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    1200(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ClipPlane), .-GL_PREFIX(ClipPlane)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ColorMaterial)
+       .type   GL_PREFIX(ColorMaterial), @function
+GL_PREFIX(ColorMaterial):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1208(%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    1208(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1208(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    1208(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ColorMaterial), .-GL_PREFIX(ColorMaterial)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CullFace)
+       .type   GL_PREFIX(CullFace), @function
+GL_PREFIX(CullFace):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1216(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1216(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1216(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1216(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CullFace), .-GL_PREFIX(CullFace)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Fogf)
+       .type   GL_PREFIX(Fogf), @function
+GL_PREFIX(Fogf):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1224(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    1224(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1224(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    1224(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Fogf), .-GL_PREFIX(Fogf)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Fogfv)
+       .type   GL_PREFIX(Fogfv), @function
+GL_PREFIX(Fogfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1232(%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    1232(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1232(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    1232(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Fogfv), .-GL_PREFIX(Fogfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Fogi)
+       .type   GL_PREFIX(Fogi), @function
+GL_PREFIX(Fogi):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1240(%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    1240(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1240(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    1240(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Fogi), .-GL_PREFIX(Fogi)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Fogiv)
+       .type   GL_PREFIX(Fogiv), @function
+GL_PREFIX(Fogiv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1248(%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    1248(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1248(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    1248(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Fogiv), .-GL_PREFIX(Fogiv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(FrontFace)
+       .type   GL_PREFIX(FrontFace), @function
+GL_PREFIX(FrontFace):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1256(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1256(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1256(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1256(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(FrontFace), .-GL_PREFIX(FrontFace)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Hint)
+       .type   GL_PREFIX(Hint), @function
+GL_PREFIX(Hint):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1264(%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    1264(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1264(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    1264(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Hint), .-GL_PREFIX(Hint)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Lightf)
+       .type   GL_PREFIX(Lightf), @function
+GL_PREFIX(Lightf):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1272(%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    1272(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1272(%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    1272(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Lightf), .-GL_PREFIX(Lightf)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Lightfv)
+       .type   GL_PREFIX(Lightfv), @function
+GL_PREFIX(Lightfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1280(%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    1280(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1280(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1280(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Lightfv), .-GL_PREFIX(Lightfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Lighti)
+       .type   GL_PREFIX(Lighti), @function
+GL_PREFIX(Lighti):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1288(%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    1288(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1288(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1288(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Lighti), .-GL_PREFIX(Lighti)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Lightiv)
+       .type   GL_PREFIX(Lightiv), @function
+GL_PREFIX(Lightiv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1296(%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    1296(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1296(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1296(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Lightiv), .-GL_PREFIX(Lightiv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(LightModelf)
+       .type   GL_PREFIX(LightModelf), @function
+GL_PREFIX(LightModelf):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1304(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    1304(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1304(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    1304(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(LightModelf), .-GL_PREFIX(LightModelf)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(LightModelfv)
+       .type   GL_PREFIX(LightModelfv), @function
+GL_PREFIX(LightModelfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1312(%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    1312(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1312(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    1312(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(LightModelfv), .-GL_PREFIX(LightModelfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(LightModeli)
+       .type   GL_PREFIX(LightModeli), @function
+GL_PREFIX(LightModeli):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1320(%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    1320(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1320(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    1320(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(LightModeli), .-GL_PREFIX(LightModeli)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(LightModeliv)
+       .type   GL_PREFIX(LightModeliv), @function
+GL_PREFIX(LightModeliv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1328(%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    1328(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1328(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    1328(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(LightModeliv), .-GL_PREFIX(LightModeliv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(LineStipple)
+       .type   GL_PREFIX(LineStipple), @function
+GL_PREFIX(LineStipple):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1336(%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    1336(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1336(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    1336(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(LineStipple), .-GL_PREFIX(LineStipple)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(LineWidth)
+       .type   GL_PREFIX(LineWidth), @function
+GL_PREFIX(LineWidth):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1344(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    1344(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1344(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _glapi_get_dispatch
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    1344(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(LineWidth), .-GL_PREFIX(LineWidth)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Materialf)
+       .type   GL_PREFIX(Materialf), @function
+GL_PREFIX(Materialf):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1352(%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    1352(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1352(%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    1352(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Materialf), .-GL_PREFIX(Materialf)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Materialfv)
+       .type   GL_PREFIX(Materialfv), @function
+GL_PREFIX(Materialfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1360(%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    1360(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1360(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1360(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Materialfv), .-GL_PREFIX(Materialfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Materiali)
+       .type   GL_PREFIX(Materiali), @function
+GL_PREFIX(Materiali):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1368(%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    1368(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1368(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1368(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Materiali), .-GL_PREFIX(Materiali)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Materialiv)
+       .type   GL_PREFIX(Materialiv), @function
+GL_PREFIX(Materialiv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1376(%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    1376(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1376(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1376(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Materialiv), .-GL_PREFIX(Materialiv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PointSize)
+       .type   GL_PREFIX(PointSize), @function
+GL_PREFIX(PointSize):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1384(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    1384(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1384(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _glapi_get_dispatch
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    1384(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PointSize), .-GL_PREFIX(PointSize)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PolygonMode)
+       .type   GL_PREFIX(PolygonMode), @function
+GL_PREFIX(PolygonMode):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1392(%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    1392(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1392(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    1392(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PolygonMode), .-GL_PREFIX(PolygonMode)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PolygonStipple)
+       .type   GL_PREFIX(PolygonStipple), @function
+GL_PREFIX(PolygonStipple):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1400(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1400(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1400(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1400(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PolygonStipple), .-GL_PREFIX(PolygonStipple)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Scissor)
+       .type   GL_PREFIX(Scissor), @function
+GL_PREFIX(Scissor):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1408(%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    1408(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1408(%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    1408(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Scissor), .-GL_PREFIX(Scissor)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ShadeModel)
+       .type   GL_PREFIX(ShadeModel), @function
+GL_PREFIX(ShadeModel):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1416(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1416(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1416(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1416(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ShadeModel), .-GL_PREFIX(ShadeModel)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexParameterf)
+       .type   GL_PREFIX(TexParameterf), @function
+GL_PREFIX(TexParameterf):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1424(%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    1424(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1424(%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    1424(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexParameterf), .-GL_PREFIX(TexParameterf)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexParameterfv)
+       .type   GL_PREFIX(TexParameterfv), @function
+GL_PREFIX(TexParameterfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1432(%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    1432(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1432(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1432(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexParameterfv), .-GL_PREFIX(TexParameterfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexParameteri)
+       .type   GL_PREFIX(TexParameteri), @function
+GL_PREFIX(TexParameteri):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1440(%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    1440(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1440(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1440(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexParameteri), .-GL_PREFIX(TexParameteri)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexParameteriv)
+       .type   GL_PREFIX(TexParameteriv), @function
+GL_PREFIX(TexParameteriv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1448(%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    1448(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1448(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1448(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexParameteriv), .-GL_PREFIX(TexParameteriv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexImage1D)
+       .type   GL_PREFIX(TexImage1D), @function
+GL_PREFIX(TexImage1D):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1456(%rax), %r11
+       jmp     *%r11
+#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    1456(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1456(%rax), %r11
+       jmp     *%r11
+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    1456(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexImage1D), .-GL_PREFIX(TexImage1D)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexImage2D)
+       .type   GL_PREFIX(TexImage2D), @function
+GL_PREFIX(TexImage2D):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1464(%rax), %r11
+       jmp     *%r11
+#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    1464(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1464(%rax), %r11
+       jmp     *%r11
+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    1464(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexImage2D), .-GL_PREFIX(TexImage2D)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexEnvf)
+       .type   GL_PREFIX(TexEnvf), @function
+GL_PREFIX(TexEnvf):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1472(%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    1472(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1472(%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    1472(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexEnvf), .-GL_PREFIX(TexEnvf)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexEnvfv)
+       .type   GL_PREFIX(TexEnvfv), @function
+GL_PREFIX(TexEnvfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1480(%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    1480(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1480(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1480(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexEnvfv), .-GL_PREFIX(TexEnvfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexEnvi)
+       .type   GL_PREFIX(TexEnvi), @function
+GL_PREFIX(TexEnvi):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1488(%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    1488(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1488(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1488(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexEnvi), .-GL_PREFIX(TexEnvi)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexEnviv)
+       .type   GL_PREFIX(TexEnviv), @function
+GL_PREFIX(TexEnviv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1496(%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    1496(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1496(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1496(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexEnviv), .-GL_PREFIX(TexEnviv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexGend)
+       .type   GL_PREFIX(TexGend), @function
+GL_PREFIX(TexGend):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1504(%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    1504(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1504(%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    1504(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexGend), .-GL_PREFIX(TexGend)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexGendv)
+       .type   GL_PREFIX(TexGendv), @function
+GL_PREFIX(TexGendv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1512(%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    1512(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1512(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1512(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexGendv), .-GL_PREFIX(TexGendv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexGenf)
+       .type   GL_PREFIX(TexGenf), @function
+GL_PREFIX(TexGenf):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1520(%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    1520(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1520(%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    1520(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexGenf), .-GL_PREFIX(TexGenf)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexGenfv)
+       .type   GL_PREFIX(TexGenfv), @function
+GL_PREFIX(TexGenfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1528(%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    1528(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1528(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1528(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexGenfv), .-GL_PREFIX(TexGenfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexGeni)
+       .type   GL_PREFIX(TexGeni), @function
+GL_PREFIX(TexGeni):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1536(%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    1536(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1536(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1536(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexGeni), .-GL_PREFIX(TexGeni)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexGeniv)
+       .type   GL_PREFIX(TexGeniv), @function
+GL_PREFIX(TexGeniv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1544(%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    1544(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1544(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1544(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexGeniv), .-GL_PREFIX(TexGeniv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(FeedbackBuffer)
+       .type   GL_PREFIX(FeedbackBuffer), @function
+GL_PREFIX(FeedbackBuffer):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1552(%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    1552(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1552(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1552(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(FeedbackBuffer), .-GL_PREFIX(FeedbackBuffer)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SelectBuffer)
+       .type   GL_PREFIX(SelectBuffer), @function
+GL_PREFIX(SelectBuffer):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1560(%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    1560(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1560(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    1560(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(SelectBuffer), .-GL_PREFIX(SelectBuffer)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RenderMode)
+       .type   GL_PREFIX(RenderMode), @function
+GL_PREFIX(RenderMode):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1568(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1568(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1568(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1568(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RenderMode), .-GL_PREFIX(RenderMode)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(InitNames)
+       .type   GL_PREFIX(InitNames), @function
+GL_PREFIX(InitNames):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1576(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    1576(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1576(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    1576(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(InitNames), .-GL_PREFIX(InitNames)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(LoadName)
+       .type   GL_PREFIX(LoadName), @function
+GL_PREFIX(LoadName):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1584(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1584(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1584(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1584(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(LoadName), .-GL_PREFIX(LoadName)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PassThrough)
+       .type   GL_PREFIX(PassThrough), @function
+GL_PREFIX(PassThrough):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1592(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    1592(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1592(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _glapi_get_dispatch
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    1592(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PassThrough), .-GL_PREFIX(PassThrough)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PopName)
+       .type   GL_PREFIX(PopName), @function
+GL_PREFIX(PopName):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1600(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    1600(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1600(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    1600(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PopName), .-GL_PREFIX(PopName)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PushName)
+       .type   GL_PREFIX(PushName), @function
+GL_PREFIX(PushName):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1608(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1608(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1608(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1608(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PushName), .-GL_PREFIX(PushName)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DrawBuffer)
+       .type   GL_PREFIX(DrawBuffer), @function
+GL_PREFIX(DrawBuffer):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1616(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1616(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1616(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1616(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DrawBuffer), .-GL_PREFIX(DrawBuffer)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Clear)
+       .type   GL_PREFIX(Clear), @function
+GL_PREFIX(Clear):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1624(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1624(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1624(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1624(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Clear), .-GL_PREFIX(Clear)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ClearAccum)
+       .type   GL_PREFIX(ClearAccum), @function
+GL_PREFIX(ClearAccum):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1632(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    1632(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1632(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    1632(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ClearAccum), .-GL_PREFIX(ClearAccum)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ClearIndex)
+       .type   GL_PREFIX(ClearIndex), @function
+GL_PREFIX(ClearIndex):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1640(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    1640(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1640(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _glapi_get_dispatch
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    1640(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ClearIndex), .-GL_PREFIX(ClearIndex)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ClearColor)
+       .type   GL_PREFIX(ClearColor), @function
+GL_PREFIX(ClearColor):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1648(%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    1648(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1648(%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    1648(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ClearColor), .-GL_PREFIX(ClearColor)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ClearStencil)
+       .type   GL_PREFIX(ClearStencil), @function
+GL_PREFIX(ClearStencil):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1656(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1656(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1656(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1656(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ClearStencil), .-GL_PREFIX(ClearStencil)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ClearDepth)
+       .type   GL_PREFIX(ClearDepth), @function
+GL_PREFIX(ClearDepth):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1664(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1664(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1664(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1664(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ClearDepth), .-GL_PREFIX(ClearDepth)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(StencilMask)
+       .type   GL_PREFIX(StencilMask), @function
+GL_PREFIX(StencilMask):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1672(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1672(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1672(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1672(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(StencilMask), .-GL_PREFIX(StencilMask)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ColorMask)
+       .type   GL_PREFIX(ColorMask), @function
+GL_PREFIX(ColorMask):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1680(%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    1680(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1680(%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    1680(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ColorMask), .-GL_PREFIX(ColorMask)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DepthMask)
+       .type   GL_PREFIX(DepthMask), @function
+GL_PREFIX(DepthMask):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1688(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1688(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1688(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1688(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DepthMask), .-GL_PREFIX(DepthMask)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(IndexMask)
+       .type   GL_PREFIX(IndexMask), @function
+GL_PREFIX(IndexMask):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1696(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1696(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1696(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1696(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(IndexMask), .-GL_PREFIX(IndexMask)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Accum)
+       .type   GL_PREFIX(Accum), @function
+GL_PREFIX(Accum):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1704(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    1704(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1704(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    1704(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Accum), .-GL_PREFIX(Accum)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Disable)
+       .type   GL_PREFIX(Disable), @function
+GL_PREFIX(Disable):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1712(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1712(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1712(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1712(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Disable), .-GL_PREFIX(Disable)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Enable)
+       .type   GL_PREFIX(Enable), @function
+GL_PREFIX(Enable):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1720(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1720(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1720(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1720(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Enable), .-GL_PREFIX(Enable)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Finish)
+       .type   GL_PREFIX(Finish), @function
+GL_PREFIX(Finish):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1728(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    1728(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1728(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    1728(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Finish), .-GL_PREFIX(Finish)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Flush)
+       .type   GL_PREFIX(Flush), @function
+GL_PREFIX(Flush):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1736(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    1736(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1736(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    1736(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Flush), .-GL_PREFIX(Flush)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PopAttrib)
+       .type   GL_PREFIX(PopAttrib), @function
+GL_PREFIX(PopAttrib):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1744(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    1744(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1744(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    1744(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PopAttrib), .-GL_PREFIX(PopAttrib)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PushAttrib)
+       .type   GL_PREFIX(PushAttrib), @function
+GL_PREFIX(PushAttrib):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1752(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1752(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1752(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1752(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PushAttrib), .-GL_PREFIX(PushAttrib)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Map1d)
+       .type   GL_PREFIX(Map1d), @function
+GL_PREFIX(Map1d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1760(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $56, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %rsi, 24(%rsp)
+       movq    %rdx, 32(%rsp)
+       movq    %rcx, 40(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    40(%rsp), %rcx
+       movq    32(%rsp), %rdx
+       movq    24(%rsp), %rsi
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $56, %rsp
+       movq    1760(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1760(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $56, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %rsi, 24(%rsp)
+       movq    %rdx, 32(%rsp)
+       movq    %rcx, 40(%rsp)
+       call    _glapi_get_dispatch
+       movq    40(%rsp), %rcx
+       movq    32(%rsp), %rdx
+       movq    24(%rsp), %rsi
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $56, %rsp
+       movq    1760(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Map1d), .-GL_PREFIX(Map1d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Map1f)
+       .type   GL_PREFIX(Map1f), @function
+GL_PREFIX(Map1f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1768(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $56, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %rsi, 24(%rsp)
+       movq    %rdx, 32(%rsp)
+       movq    %rcx, 40(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    40(%rsp), %rcx
+       movq    32(%rsp), %rdx
+       movq    24(%rsp), %rsi
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $56, %rsp
+       movq    1768(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1768(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $56, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %rsi, 24(%rsp)
+       movq    %rdx, 32(%rsp)
+       movq    %rcx, 40(%rsp)
+       call    _glapi_get_dispatch
+       movq    40(%rsp), %rcx
+       movq    32(%rsp), %rdx
+       movq    24(%rsp), %rsi
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $56, %rsp
+       movq    1768(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Map1f), .-GL_PREFIX(Map1f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Map2d)
+       .type   GL_PREFIX(Map2d), @function
+GL_PREFIX(Map2d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1776(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $88, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %rsi, 24(%rsp)
+       movq    %rdx, 32(%rsp)
+       movq    %xmm2, 40(%rsp)
+       movq    %xmm3, 48(%rsp)
+       movq    %rcx, 56(%rsp)
+       movq    %r8, 64(%rsp)
+       movq    %r9, 72(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    72(%rsp), %r9
+       movq    64(%rsp), %r8
+       movq    56(%rsp), %rcx
+       movq    48(%rsp), %xmm3
+       movq    40(%rsp), %xmm2
+       movq    32(%rsp), %rdx
+       movq    24(%rsp), %rsi
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $88, %rsp
+       movq    1776(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1776(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $88, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %rsi, 24(%rsp)
+       movq    %rdx, 32(%rsp)
+       movq    %xmm2, 40(%rsp)
+       movq    %xmm3, 48(%rsp)
+       movq    %rcx, 56(%rsp)
+       movq    %r8, 64(%rsp)
+       movq    %r9, 72(%rsp)
+       call    _glapi_get_dispatch
+       movq    72(%rsp), %r9
+       movq    64(%rsp), %r8
+       movq    56(%rsp), %rcx
+       movq    48(%rsp), %xmm3
+       movq    40(%rsp), %xmm2
+       movq    32(%rsp), %rdx
+       movq    24(%rsp), %rsi
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $88, %rsp
+       movq    1776(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Map2d), .-GL_PREFIX(Map2d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Map2f)
+       .type   GL_PREFIX(Map2f), @function
+GL_PREFIX(Map2f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1784(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $88, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %rsi, 24(%rsp)
+       movq    %rdx, 32(%rsp)
+       movq    %xmm2, 40(%rsp)
+       movq    %xmm3, 48(%rsp)
+       movq    %rcx, 56(%rsp)
+       movq    %r8, 64(%rsp)
+       movq    %r9, 72(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    72(%rsp), %r9
+       movq    64(%rsp), %r8
+       movq    56(%rsp), %rcx
+       movq    48(%rsp), %xmm3
+       movq    40(%rsp), %xmm2
+       movq    32(%rsp), %rdx
+       movq    24(%rsp), %rsi
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $88, %rsp
+       movq    1784(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1784(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $88, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %rsi, 24(%rsp)
+       movq    %rdx, 32(%rsp)
+       movq    %xmm2, 40(%rsp)
+       movq    %xmm3, 48(%rsp)
+       movq    %rcx, 56(%rsp)
+       movq    %r8, 64(%rsp)
+       movq    %r9, 72(%rsp)
+       call    _glapi_get_dispatch
+       movq    72(%rsp), %r9
+       movq    64(%rsp), %r8
+       movq    56(%rsp), %rcx
+       movq    48(%rsp), %xmm3
+       movq    40(%rsp), %xmm2
+       movq    32(%rsp), %rdx
+       movq    24(%rsp), %rsi
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $88, %rsp
+       movq    1784(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Map2f), .-GL_PREFIX(Map2f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MapGrid1d)
+       .type   GL_PREFIX(MapGrid1d), @function
+GL_PREFIX(MapGrid1d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1792(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    1792(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1792(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    1792(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MapGrid1d), .-GL_PREFIX(MapGrid1d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MapGrid1f)
+       .type   GL_PREFIX(MapGrid1f), @function
+GL_PREFIX(MapGrid1f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1800(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    1800(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1800(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    1800(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MapGrid1f), .-GL_PREFIX(MapGrid1f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MapGrid2d)
+       .type   GL_PREFIX(MapGrid2d), @function
+GL_PREFIX(MapGrid2d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1808(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $56, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %rsi, 24(%rsp)
+       movq    %xmm2, 32(%rsp)
+       movq    %xmm3, 40(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    40(%rsp), %xmm3
+       movq    32(%rsp), %xmm2
+       movq    24(%rsp), %rsi
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $56, %rsp
+       movq    1808(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1808(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $56, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %rsi, 24(%rsp)
+       movq    %xmm2, 32(%rsp)
+       movq    %xmm3, 40(%rsp)
+       call    _glapi_get_dispatch
+       movq    40(%rsp), %xmm3
+       movq    32(%rsp), %xmm2
+       movq    24(%rsp), %rsi
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $56, %rsp
+       movq    1808(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MapGrid2d), .-GL_PREFIX(MapGrid2d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MapGrid2f)
+       .type   GL_PREFIX(MapGrid2f), @function
+GL_PREFIX(MapGrid2f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1816(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $56, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %rsi, 24(%rsp)
+       movq    %xmm2, 32(%rsp)
+       movq    %xmm3, 40(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    40(%rsp), %xmm3
+       movq    32(%rsp), %xmm2
+       movq    24(%rsp), %rsi
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $56, %rsp
+       movq    1816(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1816(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $56, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %rsi, 24(%rsp)
+       movq    %xmm2, 32(%rsp)
+       movq    %xmm3, 40(%rsp)
+       call    _glapi_get_dispatch
+       movq    40(%rsp), %xmm3
+       movq    32(%rsp), %xmm2
+       movq    24(%rsp), %rsi
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $56, %rsp
+       movq    1816(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MapGrid2f), .-GL_PREFIX(MapGrid2f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EvalCoord1d)
+       .type   GL_PREFIX(EvalCoord1d), @function
+GL_PREFIX(EvalCoord1d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1824(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    1824(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1824(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _glapi_get_dispatch
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    1824(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EvalCoord1d), .-GL_PREFIX(EvalCoord1d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EvalCoord1dv)
+       .type   GL_PREFIX(EvalCoord1dv), @function
+GL_PREFIX(EvalCoord1dv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1832(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1832(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1832(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1832(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EvalCoord1dv), .-GL_PREFIX(EvalCoord1dv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EvalCoord1f)
+       .type   GL_PREFIX(EvalCoord1f), @function
+GL_PREFIX(EvalCoord1f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1840(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    1840(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1840(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _glapi_get_dispatch
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    1840(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EvalCoord1f), .-GL_PREFIX(EvalCoord1f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EvalCoord1fv)
+       .type   GL_PREFIX(EvalCoord1fv), @function
+GL_PREFIX(EvalCoord1fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1848(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1848(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1848(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1848(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EvalCoord1fv), .-GL_PREFIX(EvalCoord1fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EvalCoord2d)
+       .type   GL_PREFIX(EvalCoord2d), @function
+GL_PREFIX(EvalCoord2d):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1856(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    1856(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1856(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    1856(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EvalCoord2d), .-GL_PREFIX(EvalCoord2d)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EvalCoord2dv)
+       .type   GL_PREFIX(EvalCoord2dv), @function
+GL_PREFIX(EvalCoord2dv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1864(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1864(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1864(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1864(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EvalCoord2dv), .-GL_PREFIX(EvalCoord2dv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EvalCoord2f)
+       .type   GL_PREFIX(EvalCoord2f), @function
+GL_PREFIX(EvalCoord2f):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1872(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    1872(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1872(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    1872(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EvalCoord2f), .-GL_PREFIX(EvalCoord2f)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EvalCoord2fv)
+       .type   GL_PREFIX(EvalCoord2fv), @function
+GL_PREFIX(EvalCoord2fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1880(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1880(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1880(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1880(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EvalCoord2fv), .-GL_PREFIX(EvalCoord2fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EvalMesh1)
+       .type   GL_PREFIX(EvalMesh1), @function
+GL_PREFIX(EvalMesh1):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1888(%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    1888(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1888(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1888(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EvalMesh1), .-GL_PREFIX(EvalMesh1)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EvalPoint1)
+       .type   GL_PREFIX(EvalPoint1), @function
+GL_PREFIX(EvalPoint1):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1896(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1896(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1896(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1896(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EvalPoint1), .-GL_PREFIX(EvalPoint1)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EvalMesh2)
+       .type   GL_PREFIX(EvalMesh2), @function
+GL_PREFIX(EvalMesh2):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1904(%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    1904(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1904(%rax), %r11
+       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    1904(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EvalMesh2), .-GL_PREFIX(EvalMesh2)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EvalPoint2)
+       .type   GL_PREFIX(EvalPoint2), @function
+GL_PREFIX(EvalPoint2):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1912(%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    1912(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1912(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    1912(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EvalPoint2), .-GL_PREFIX(EvalPoint2)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(AlphaFunc)
+       .type   GL_PREFIX(AlphaFunc), @function
+GL_PREFIX(AlphaFunc):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1920(%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    1920(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1920(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    1920(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(AlphaFunc), .-GL_PREFIX(AlphaFunc)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BlendFunc)
+       .type   GL_PREFIX(BlendFunc), @function
+GL_PREFIX(BlendFunc):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1928(%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    1928(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1928(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    1928(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BlendFunc), .-GL_PREFIX(BlendFunc)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(LogicOp)
+       .type   GL_PREFIX(LogicOp), @function
+GL_PREFIX(LogicOp):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1936(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1936(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1936(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1936(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(LogicOp), .-GL_PREFIX(LogicOp)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(StencilFunc)
+       .type   GL_PREFIX(StencilFunc), @function
+GL_PREFIX(StencilFunc):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1944(%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    1944(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1944(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1944(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(StencilFunc), .-GL_PREFIX(StencilFunc)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(StencilOp)
+       .type   GL_PREFIX(StencilOp), @function
+GL_PREFIX(StencilOp):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1952(%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    1952(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1952(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    1952(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(StencilOp), .-GL_PREFIX(StencilOp)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DepthFunc)
+       .type   GL_PREFIX(DepthFunc), @function
+GL_PREFIX(DepthFunc):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1960(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    1960(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1960(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    1960(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DepthFunc), .-GL_PREFIX(DepthFunc)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PixelZoom)
+       .type   GL_PREFIX(PixelZoom), @function
+GL_PREFIX(PixelZoom):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1968(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    1968(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1968(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    1968(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PixelZoom), .-GL_PREFIX(PixelZoom)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PixelTransferf)
+       .type   GL_PREFIX(PixelTransferf), @function
+GL_PREFIX(PixelTransferf):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1976(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    1976(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1976(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    1976(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PixelTransferf), .-GL_PREFIX(PixelTransferf)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PixelTransferi)
+       .type   GL_PREFIX(PixelTransferi), @function
+GL_PREFIX(PixelTransferi):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1984(%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    1984(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1984(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    1984(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PixelTransferi), .-GL_PREFIX(PixelTransferi)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PixelStoref)
+       .type   GL_PREFIX(PixelStoref), @function
+GL_PREFIX(PixelStoref):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    1992(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    1992(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    1992(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    1992(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PixelStoref), .-GL_PREFIX(PixelStoref)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PixelStorei)
+       .type   GL_PREFIX(PixelStorei), @function
+GL_PREFIX(PixelStorei):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2000(%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    2000(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2000(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    2000(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PixelStorei), .-GL_PREFIX(PixelStorei)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PixelMapfv)
+       .type   GL_PREFIX(PixelMapfv), @function
+GL_PREFIX(PixelMapfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2008(%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    2008(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2008(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2008(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PixelMapfv), .-GL_PREFIX(PixelMapfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PixelMapuiv)
+       .type   GL_PREFIX(PixelMapuiv), @function
+GL_PREFIX(PixelMapuiv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2016(%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    2016(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2016(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2016(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PixelMapuiv), .-GL_PREFIX(PixelMapuiv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PixelMapusv)
+       .type   GL_PREFIX(PixelMapusv), @function
+GL_PREFIX(PixelMapusv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2024(%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    2024(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2024(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2024(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PixelMapusv), .-GL_PREFIX(PixelMapusv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ReadBuffer)
+       .type   GL_PREFIX(ReadBuffer), @function
+GL_PREFIX(ReadBuffer):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2032(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2032(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2032(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2032(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ReadBuffer), .-GL_PREFIX(ReadBuffer)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CopyPixels)
+       .type   GL_PREFIX(CopyPixels), @function
+GL_PREFIX(CopyPixels):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2040(%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    2040(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2040(%rax), %r11
+       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    2040(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CopyPixels), .-GL_PREFIX(CopyPixels)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ReadPixels)
+       .type   GL_PREFIX(ReadPixels), @function
+GL_PREFIX(ReadPixels):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2048(%rax), %r11
+       jmp     *%r11
+#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    2048(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2048(%rax), %r11
+       jmp     *%r11
+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    2048(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ReadPixels), .-GL_PREFIX(ReadPixels)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DrawPixels)
+       .type   GL_PREFIX(DrawPixels), @function
+GL_PREFIX(DrawPixels):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2056(%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    2056(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2056(%rax), %r11
+       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    2056(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DrawPixels), .-GL_PREFIX(DrawPixels)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetBooleanv)
+       .type   GL_PREFIX(GetBooleanv), @function
+GL_PREFIX(GetBooleanv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2064(%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    2064(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2064(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    2064(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetBooleanv), .-GL_PREFIX(GetBooleanv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetClipPlane)
+       .type   GL_PREFIX(GetClipPlane), @function
+GL_PREFIX(GetClipPlane):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2072(%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    2072(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2072(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    2072(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetClipPlane), .-GL_PREFIX(GetClipPlane)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetDoublev)
+       .type   GL_PREFIX(GetDoublev), @function
+GL_PREFIX(GetDoublev):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2080(%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    2080(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2080(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    2080(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetDoublev), .-GL_PREFIX(GetDoublev)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetError)
+       .type   GL_PREFIX(GetError), @function
+GL_PREFIX(GetError):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2088(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    2088(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2088(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    2088(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetError), .-GL_PREFIX(GetError)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetFloatv)
+       .type   GL_PREFIX(GetFloatv), @function
+GL_PREFIX(GetFloatv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2096(%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    2096(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2096(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    2096(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetFloatv), .-GL_PREFIX(GetFloatv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetIntegerv)
+       .type   GL_PREFIX(GetIntegerv), @function
+GL_PREFIX(GetIntegerv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2104(%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    2104(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2104(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    2104(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetIntegerv), .-GL_PREFIX(GetIntegerv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetLightfv)
+       .type   GL_PREFIX(GetLightfv), @function
+GL_PREFIX(GetLightfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2112(%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    2112(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2112(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2112(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetLightfv), .-GL_PREFIX(GetLightfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetLightiv)
+       .type   GL_PREFIX(GetLightiv), @function
+GL_PREFIX(GetLightiv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2120(%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    2120(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2120(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2120(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetLightiv), .-GL_PREFIX(GetLightiv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetMapdv)
+       .type   GL_PREFIX(GetMapdv), @function
+GL_PREFIX(GetMapdv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2128(%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    2128(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2128(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2128(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetMapdv), .-GL_PREFIX(GetMapdv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetMapfv)
+       .type   GL_PREFIX(GetMapfv), @function
+GL_PREFIX(GetMapfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2136(%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    2136(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2136(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2136(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetMapfv), .-GL_PREFIX(GetMapfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetMapiv)
+       .type   GL_PREFIX(GetMapiv), @function
+GL_PREFIX(GetMapiv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2144(%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    2144(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2144(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2144(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetMapiv), .-GL_PREFIX(GetMapiv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetMaterialfv)
+       .type   GL_PREFIX(GetMaterialfv), @function
+GL_PREFIX(GetMaterialfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2152(%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    2152(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2152(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2152(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetMaterialfv), .-GL_PREFIX(GetMaterialfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetMaterialiv)
+       .type   GL_PREFIX(GetMaterialiv), @function
+GL_PREFIX(GetMaterialiv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2160(%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    2160(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2160(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2160(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetMaterialiv), .-GL_PREFIX(GetMaterialiv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetPixelMapfv)
+       .type   GL_PREFIX(GetPixelMapfv), @function
+GL_PREFIX(GetPixelMapfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2168(%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    2168(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2168(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    2168(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetPixelMapfv), .-GL_PREFIX(GetPixelMapfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetPixelMapuiv)
+       .type   GL_PREFIX(GetPixelMapuiv), @function
+GL_PREFIX(GetPixelMapuiv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2176(%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    2176(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2176(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    2176(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetPixelMapuiv), .-GL_PREFIX(GetPixelMapuiv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetPixelMapusv)
+       .type   GL_PREFIX(GetPixelMapusv), @function
+GL_PREFIX(GetPixelMapusv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2184(%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    2184(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2184(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    2184(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetPixelMapusv), .-GL_PREFIX(GetPixelMapusv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetPolygonStipple)
+       .type   GL_PREFIX(GetPolygonStipple), @function
+GL_PREFIX(GetPolygonStipple):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2192(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2192(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2192(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2192(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetPolygonStipple), .-GL_PREFIX(GetPolygonStipple)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetString)
+       .type   GL_PREFIX(GetString), @function
+GL_PREFIX(GetString):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2200(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2200(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2200(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2200(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetString), .-GL_PREFIX(GetString)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetTexEnvfv)
+       .type   GL_PREFIX(GetTexEnvfv), @function
+GL_PREFIX(GetTexEnvfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2208(%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    2208(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2208(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2208(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetTexEnvfv), .-GL_PREFIX(GetTexEnvfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetTexEnviv)
+       .type   GL_PREFIX(GetTexEnviv), @function
+GL_PREFIX(GetTexEnviv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2216(%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    2216(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2216(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2216(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetTexEnviv), .-GL_PREFIX(GetTexEnviv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetTexGendv)
+       .type   GL_PREFIX(GetTexGendv), @function
+GL_PREFIX(GetTexGendv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2224(%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    2224(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2224(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2224(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetTexGendv), .-GL_PREFIX(GetTexGendv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetTexGenfv)
+       .type   GL_PREFIX(GetTexGenfv), @function
+GL_PREFIX(GetTexGenfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2232(%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    2232(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2232(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2232(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetTexGenfv), .-GL_PREFIX(GetTexGenfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetTexGeniv)
+       .type   GL_PREFIX(GetTexGeniv), @function
+GL_PREFIX(GetTexGeniv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2240(%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    2240(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2240(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2240(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetTexGeniv), .-GL_PREFIX(GetTexGeniv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetTexImage)
+       .type   GL_PREFIX(GetTexImage), @function
+GL_PREFIX(GetTexImage):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2248(%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    2248(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2248(%rax), %r11
+       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    2248(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetTexImage), .-GL_PREFIX(GetTexImage)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetTexParameterfv)
+       .type   GL_PREFIX(GetTexParameterfv), @function
+GL_PREFIX(GetTexParameterfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2256(%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    2256(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2256(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2256(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetTexParameterfv), .-GL_PREFIX(GetTexParameterfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetTexParameteriv)
+       .type   GL_PREFIX(GetTexParameteriv), @function
+GL_PREFIX(GetTexParameteriv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2264(%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    2264(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2264(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2264(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetTexParameteriv), .-GL_PREFIX(GetTexParameteriv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetTexLevelParameterfv)
+       .type   GL_PREFIX(GetTexLevelParameterfv), @function
+GL_PREFIX(GetTexLevelParameterfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2272(%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    2272(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2272(%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    2272(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetTexLevelParameterfv), .-GL_PREFIX(GetTexLevelParameterfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetTexLevelParameteriv)
+       .type   GL_PREFIX(GetTexLevelParameteriv), @function
+GL_PREFIX(GetTexLevelParameteriv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2280(%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    2280(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2280(%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    2280(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetTexLevelParameteriv), .-GL_PREFIX(GetTexLevelParameteriv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(IsEnabled)
+       .type   GL_PREFIX(IsEnabled), @function
+GL_PREFIX(IsEnabled):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2288(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2288(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2288(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2288(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(IsEnabled), .-GL_PREFIX(IsEnabled)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(IsList)
+       .type   GL_PREFIX(IsList), @function
+GL_PREFIX(IsList):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2296(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2296(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2296(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2296(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(IsList), .-GL_PREFIX(IsList)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DepthRange)
+       .type   GL_PREFIX(DepthRange), @function
+GL_PREFIX(DepthRange):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2304(%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    2304(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2304(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    2304(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DepthRange), .-GL_PREFIX(DepthRange)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Frustum)
+       .type   GL_PREFIX(Frustum), @function
+GL_PREFIX(Frustum):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2312(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $56, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       movq    %xmm4, 32(%rsp)
+       movq    %xmm5, 40(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    40(%rsp), %xmm5
+       movq    32(%rsp), %xmm4
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $56, %rsp
+       movq    2312(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2312(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $56, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       movq    %xmm4, 32(%rsp)
+       movq    %xmm5, 40(%rsp)
+       call    _glapi_get_dispatch
+       movq    40(%rsp), %xmm5
+       movq    32(%rsp), %xmm4
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $56, %rsp
+       movq    2312(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Frustum), .-GL_PREFIX(Frustum)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(LoadIdentity)
+       .type   GL_PREFIX(LoadIdentity), @function
+GL_PREFIX(LoadIdentity):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2320(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    2320(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2320(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    2320(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(LoadIdentity), .-GL_PREFIX(LoadIdentity)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(LoadMatrixf)
+       .type   GL_PREFIX(LoadMatrixf), @function
+GL_PREFIX(LoadMatrixf):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2328(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2328(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2328(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2328(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(LoadMatrixf), .-GL_PREFIX(LoadMatrixf)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(LoadMatrixd)
+       .type   GL_PREFIX(LoadMatrixd), @function
+GL_PREFIX(LoadMatrixd):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2336(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2336(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2336(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2336(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(LoadMatrixd), .-GL_PREFIX(LoadMatrixd)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MatrixMode)
+       .type   GL_PREFIX(MatrixMode), @function
+GL_PREFIX(MatrixMode):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2344(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2344(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2344(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2344(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MatrixMode), .-GL_PREFIX(MatrixMode)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultMatrixf)
+       .type   GL_PREFIX(MultMatrixf), @function
+GL_PREFIX(MultMatrixf):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2352(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2352(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2352(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2352(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultMatrixf), .-GL_PREFIX(MultMatrixf)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultMatrixd)
+       .type   GL_PREFIX(MultMatrixd), @function
+GL_PREFIX(MultMatrixd):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2360(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2360(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2360(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2360(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultMatrixd), .-GL_PREFIX(MultMatrixd)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Ortho)
+       .type   GL_PREFIX(Ortho), @function
+GL_PREFIX(Ortho):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2368(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $56, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       movq    %xmm4, 32(%rsp)
+       movq    %xmm5, 40(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    40(%rsp), %xmm5
+       movq    32(%rsp), %xmm4
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $56, %rsp
+       movq    2368(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2368(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $56, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       movq    %xmm4, 32(%rsp)
+       movq    %xmm5, 40(%rsp)
+       call    _glapi_get_dispatch
+       movq    40(%rsp), %xmm5
+       movq    32(%rsp), %xmm4
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $56, %rsp
+       movq    2368(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Ortho), .-GL_PREFIX(Ortho)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PopMatrix)
+       .type   GL_PREFIX(PopMatrix), @function
+GL_PREFIX(PopMatrix):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2376(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    2376(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2376(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    2376(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PopMatrix), .-GL_PREFIX(PopMatrix)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PushMatrix)
+       .type   GL_PREFIX(PushMatrix), @function
+GL_PREFIX(PushMatrix):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2384(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    2384(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2384(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    2384(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PushMatrix), .-GL_PREFIX(PushMatrix)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Rotated)
+       .type   GL_PREFIX(Rotated), @function
+GL_PREFIX(Rotated):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2392(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    2392(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2392(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    2392(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Rotated), .-GL_PREFIX(Rotated)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Rotatef)
+       .type   GL_PREFIX(Rotatef), @function
+GL_PREFIX(Rotatef):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2400(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    2400(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2400(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    2400(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Rotatef), .-GL_PREFIX(Rotatef)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Scaled)
+       .type   GL_PREFIX(Scaled), @function
+GL_PREFIX(Scaled):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2408(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    2408(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2408(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    2408(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Scaled), .-GL_PREFIX(Scaled)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Scalef)
+       .type   GL_PREFIX(Scalef), @function
+GL_PREFIX(Scalef):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2416(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    2416(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2416(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    2416(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Scalef), .-GL_PREFIX(Scalef)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Translated)
+       .type   GL_PREFIX(Translated), @function
+GL_PREFIX(Translated):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2424(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    2424(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2424(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    2424(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Translated), .-GL_PREFIX(Translated)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Translatef)
+       .type   GL_PREFIX(Translatef), @function
+GL_PREFIX(Translatef):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2432(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    2432(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2432(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    2432(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Translatef), .-GL_PREFIX(Translatef)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Viewport)
+       .type   GL_PREFIX(Viewport), @function
+GL_PREFIX(Viewport):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2440(%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    2440(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2440(%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    2440(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Viewport), .-GL_PREFIX(Viewport)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ArrayElement)
+       .type   GL_PREFIX(ArrayElement), @function
+GL_PREFIX(ArrayElement):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2448(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2448(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2448(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2448(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ArrayElement), .-GL_PREFIX(ArrayElement)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BindTexture)
+       .type   GL_PREFIX(BindTexture), @function
+GL_PREFIX(BindTexture):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2456(%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    2456(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2456(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    2456(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BindTexture), .-GL_PREFIX(BindTexture)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ColorPointer)
+       .type   GL_PREFIX(ColorPointer), @function
+GL_PREFIX(ColorPointer):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2464(%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    2464(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2464(%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    2464(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ColorPointer), .-GL_PREFIX(ColorPointer)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DisableClientState)
+       .type   GL_PREFIX(DisableClientState), @function
+GL_PREFIX(DisableClientState):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2472(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2472(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2472(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2472(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DisableClientState), .-GL_PREFIX(DisableClientState)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DrawArrays)
+       .type   GL_PREFIX(DrawArrays), @function
+GL_PREFIX(DrawArrays):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2480(%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    2480(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2480(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2480(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DrawArrays), .-GL_PREFIX(DrawArrays)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DrawElements)
+       .type   GL_PREFIX(DrawElements), @function
+GL_PREFIX(DrawElements):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2488(%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    2488(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2488(%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    2488(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DrawElements), .-GL_PREFIX(DrawElements)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EdgeFlagPointer)
+       .type   GL_PREFIX(EdgeFlagPointer), @function
+GL_PREFIX(EdgeFlagPointer):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2496(%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    2496(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2496(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    2496(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EdgeFlagPointer), .-GL_PREFIX(EdgeFlagPointer)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EnableClientState)
+       .type   GL_PREFIX(EnableClientState), @function
+GL_PREFIX(EnableClientState):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2504(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2504(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2504(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2504(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EnableClientState), .-GL_PREFIX(EnableClientState)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(IndexPointer)
+       .type   GL_PREFIX(IndexPointer), @function
+GL_PREFIX(IndexPointer):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2512(%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    2512(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2512(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2512(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(IndexPointer), .-GL_PREFIX(IndexPointer)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Indexub)
+       .type   GL_PREFIX(Indexub), @function
+GL_PREFIX(Indexub):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2520(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2520(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2520(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2520(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Indexub), .-GL_PREFIX(Indexub)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Indexubv)
+       .type   GL_PREFIX(Indexubv), @function
+GL_PREFIX(Indexubv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2528(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2528(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2528(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2528(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Indexubv), .-GL_PREFIX(Indexubv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(InterleavedArrays)
+       .type   GL_PREFIX(InterleavedArrays), @function
+GL_PREFIX(InterleavedArrays):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2536(%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    2536(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2536(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2536(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(InterleavedArrays), .-GL_PREFIX(InterleavedArrays)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(NormalPointer)
+       .type   GL_PREFIX(NormalPointer), @function
+GL_PREFIX(NormalPointer):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2544(%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    2544(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2544(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2544(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(NormalPointer), .-GL_PREFIX(NormalPointer)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PolygonOffset)
+       .type   GL_PREFIX(PolygonOffset), @function
+GL_PREFIX(PolygonOffset):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2552(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    2552(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2552(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    2552(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PolygonOffset), .-GL_PREFIX(PolygonOffset)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoordPointer)
+       .type   GL_PREFIX(TexCoordPointer), @function
+GL_PREFIX(TexCoordPointer):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2560(%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    2560(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2560(%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    2560(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoordPointer), .-GL_PREFIX(TexCoordPointer)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexPointer)
+       .type   GL_PREFIX(VertexPointer), @function
+GL_PREFIX(VertexPointer):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2568(%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    2568(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2568(%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    2568(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexPointer), .-GL_PREFIX(VertexPointer)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(AreTexturesResident)
+       .type   GL_PREFIX(AreTexturesResident), @function
+GL_PREFIX(AreTexturesResident):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2576(%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    2576(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2576(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2576(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(AreTexturesResident), .-GL_PREFIX(AreTexturesResident)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CopyTexImage1D)
+       .type   GL_PREFIX(CopyTexImage1D), @function
+GL_PREFIX(CopyTexImage1D):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2584(%rax), %r11
+       jmp     *%r11
+#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    2584(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2584(%rax), %r11
+       jmp     *%r11
+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    2584(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CopyTexImage1D), .-GL_PREFIX(CopyTexImage1D)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CopyTexImage2D)
+       .type   GL_PREFIX(CopyTexImage2D), @function
+GL_PREFIX(CopyTexImage2D):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2592(%rax), %r11
+       jmp     *%r11
+#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    2592(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2592(%rax), %r11
+       jmp     *%r11
+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    2592(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CopyTexImage2D), .-GL_PREFIX(CopyTexImage2D)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CopyTexSubImage1D)
+       .type   GL_PREFIX(CopyTexSubImage1D), @function
+GL_PREFIX(CopyTexSubImage1D):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2600(%rax), %r11
+       jmp     *%r11
+#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    2600(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2600(%rax), %r11
+       jmp     *%r11
+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    2600(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CopyTexSubImage1D), .-GL_PREFIX(CopyTexSubImage1D)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CopyTexSubImage2D)
+       .type   GL_PREFIX(CopyTexSubImage2D), @function
+GL_PREFIX(CopyTexSubImage2D):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2608(%rax), %r11
+       jmp     *%r11
+#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    2608(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2608(%rax), %r11
+       jmp     *%r11
+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    2608(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CopyTexSubImage2D), .-GL_PREFIX(CopyTexSubImage2D)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DeleteTextures)
+       .type   GL_PREFIX(DeleteTextures), @function
+GL_PREFIX(DeleteTextures):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2616(%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    2616(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2616(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    2616(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DeleteTextures), .-GL_PREFIX(DeleteTextures)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GenTextures)
+       .type   GL_PREFIX(GenTextures), @function
+GL_PREFIX(GenTextures):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2624(%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    2624(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2624(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    2624(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GenTextures), .-GL_PREFIX(GenTextures)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetPointerv)
+       .type   GL_PREFIX(GetPointerv), @function
+GL_PREFIX(GetPointerv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2632(%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    2632(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2632(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    2632(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetPointerv), .-GL_PREFIX(GetPointerv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(IsTexture)
+       .type   GL_PREFIX(IsTexture), @function
+GL_PREFIX(IsTexture):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2640(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2640(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2640(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2640(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(IsTexture), .-GL_PREFIX(IsTexture)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PrioritizeTextures)
+       .type   GL_PREFIX(PrioritizeTextures), @function
+GL_PREFIX(PrioritizeTextures):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2648(%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    2648(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2648(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2648(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PrioritizeTextures), .-GL_PREFIX(PrioritizeTextures)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexSubImage1D)
+       .type   GL_PREFIX(TexSubImage1D), @function
+GL_PREFIX(TexSubImage1D):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2656(%rax), %r11
+       jmp     *%r11
+#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    2656(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2656(%rax), %r11
+       jmp     *%r11
+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    2656(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexSubImage1D), .-GL_PREFIX(TexSubImage1D)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexSubImage2D)
+       .type   GL_PREFIX(TexSubImage2D), @function
+GL_PREFIX(TexSubImage2D):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2664(%rax), %r11
+       jmp     *%r11
+#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    2664(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2664(%rax), %r11
+       jmp     *%r11
+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    2664(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexSubImage2D), .-GL_PREFIX(TexSubImage2D)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PopClientAttrib)
+       .type   GL_PREFIX(PopClientAttrib), @function
+GL_PREFIX(PopClientAttrib):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2672(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    2672(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2672(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    2672(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PopClientAttrib), .-GL_PREFIX(PopClientAttrib)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PushClientAttrib)
+       .type   GL_PREFIX(PushClientAttrib), @function
+GL_PREFIX(PushClientAttrib):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2680(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2680(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2680(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2680(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PushClientAttrib), .-GL_PREFIX(PushClientAttrib)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BlendColor)
+       .type   GL_PREFIX(BlendColor), @function
+GL_PREFIX(BlendColor):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2688(%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    2688(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2688(%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    2688(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BlendColor), .-GL_PREFIX(BlendColor)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BlendEquation)
+       .type   GL_PREFIX(BlendEquation), @function
+GL_PREFIX(BlendEquation):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2696(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2696(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2696(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2696(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BlendEquation), .-GL_PREFIX(BlendEquation)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DrawRangeElements)
+       .type   GL_PREFIX(DrawRangeElements), @function
+GL_PREFIX(DrawRangeElements):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2704(%rax), %r11
+       jmp     *%r11
+#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    2704(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2704(%rax), %r11
+       jmp     *%r11
+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    2704(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DrawRangeElements), .-GL_PREFIX(DrawRangeElements)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ColorTable)
+       .type   GL_PREFIX(ColorTable), @function
+GL_PREFIX(ColorTable):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2712(%rax), %r11
+       jmp     *%r11
+#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    2712(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2712(%rax), %r11
+       jmp     *%r11
+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    2712(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ColorTable), .-GL_PREFIX(ColorTable)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ColorTableParameterfv)
+       .type   GL_PREFIX(ColorTableParameterfv), @function
+GL_PREFIX(ColorTableParameterfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2720(%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    2720(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2720(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2720(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ColorTableParameterfv), .-GL_PREFIX(ColorTableParameterfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ColorTableParameteriv)
+       .type   GL_PREFIX(ColorTableParameteriv), @function
+GL_PREFIX(ColorTableParameteriv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2728(%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    2728(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2728(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2728(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ColorTableParameteriv), .-GL_PREFIX(ColorTableParameteriv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CopyColorTable)
+       .type   GL_PREFIX(CopyColorTable), @function
+GL_PREFIX(CopyColorTable):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2736(%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    2736(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2736(%rax), %r11
+       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    2736(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CopyColorTable), .-GL_PREFIX(CopyColorTable)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetColorTable)
+       .type   GL_PREFIX(GetColorTable), @function
+GL_PREFIX(GetColorTable):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2744(%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    2744(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2744(%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    2744(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetColorTable), .-GL_PREFIX(GetColorTable)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetColorTableParameterfv)
+       .type   GL_PREFIX(GetColorTableParameterfv), @function
+GL_PREFIX(GetColorTableParameterfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2752(%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    2752(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2752(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2752(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetColorTableParameterfv), .-GL_PREFIX(GetColorTableParameterfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetColorTableParameteriv)
+       .type   GL_PREFIX(GetColorTableParameteriv), @function
+GL_PREFIX(GetColorTableParameteriv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2760(%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    2760(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2760(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2760(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetColorTableParameteriv), .-GL_PREFIX(GetColorTableParameteriv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ColorSubTable)
+       .type   GL_PREFIX(ColorSubTable), @function
+GL_PREFIX(ColorSubTable):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2768(%rax), %r11
+       jmp     *%r11
+#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    2768(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2768(%rax), %r11
+       jmp     *%r11
+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    2768(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ColorSubTable), .-GL_PREFIX(ColorSubTable)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CopyColorSubTable)
+       .type   GL_PREFIX(CopyColorSubTable), @function
+GL_PREFIX(CopyColorSubTable):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2776(%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    2776(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2776(%rax), %r11
+       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    2776(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CopyColorSubTable), .-GL_PREFIX(CopyColorSubTable)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ConvolutionFilter1D)
+       .type   GL_PREFIX(ConvolutionFilter1D), @function
+GL_PREFIX(ConvolutionFilter1D):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2784(%rax), %r11
+       jmp     *%r11
+#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    2784(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2784(%rax), %r11
+       jmp     *%r11
+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    2784(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ConvolutionFilter1D), .-GL_PREFIX(ConvolutionFilter1D)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ConvolutionFilter2D)
+       .type   GL_PREFIX(ConvolutionFilter2D), @function
+GL_PREFIX(ConvolutionFilter2D):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2792(%rax), %r11
+       jmp     *%r11
+#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    2792(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2792(%rax), %r11
+       jmp     *%r11
+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    2792(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ConvolutionFilter2D), .-GL_PREFIX(ConvolutionFilter2D)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ConvolutionParameterf)
+       .type   GL_PREFIX(ConvolutionParameterf), @function
+GL_PREFIX(ConvolutionParameterf):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2800(%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    2800(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2800(%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    2800(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ConvolutionParameterf), .-GL_PREFIX(ConvolutionParameterf)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ConvolutionParameterfv)
+       .type   GL_PREFIX(ConvolutionParameterfv), @function
+GL_PREFIX(ConvolutionParameterfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2808(%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    2808(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2808(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2808(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ConvolutionParameterfv), .-GL_PREFIX(ConvolutionParameterfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ConvolutionParameteri)
+       .type   GL_PREFIX(ConvolutionParameteri), @function
+GL_PREFIX(ConvolutionParameteri):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2816(%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    2816(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2816(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2816(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ConvolutionParameteri), .-GL_PREFIX(ConvolutionParameteri)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ConvolutionParameteriv)
+       .type   GL_PREFIX(ConvolutionParameteriv), @function
+GL_PREFIX(ConvolutionParameteriv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2824(%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    2824(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2824(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2824(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ConvolutionParameteriv), .-GL_PREFIX(ConvolutionParameteriv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CopyConvolutionFilter1D)
+       .type   GL_PREFIX(CopyConvolutionFilter1D), @function
+GL_PREFIX(CopyConvolutionFilter1D):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2832(%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    2832(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2832(%rax), %r11
+       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    2832(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CopyConvolutionFilter1D), .-GL_PREFIX(CopyConvolutionFilter1D)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CopyConvolutionFilter2D)
+       .type   GL_PREFIX(CopyConvolutionFilter2D), @function
+GL_PREFIX(CopyConvolutionFilter2D):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2840(%rax), %r11
+       jmp     *%r11
+#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    2840(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2840(%rax), %r11
+       jmp     *%r11
+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    2840(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CopyConvolutionFilter2D), .-GL_PREFIX(CopyConvolutionFilter2D)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetConvolutionFilter)
+       .type   GL_PREFIX(GetConvolutionFilter), @function
+GL_PREFIX(GetConvolutionFilter):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2848(%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    2848(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2848(%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    2848(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetConvolutionFilter), .-GL_PREFIX(GetConvolutionFilter)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetConvolutionParameterfv)
+       .type   GL_PREFIX(GetConvolutionParameterfv), @function
+GL_PREFIX(GetConvolutionParameterfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2856(%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    2856(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2856(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2856(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetConvolutionParameterfv), .-GL_PREFIX(GetConvolutionParameterfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetConvolutionParameteriv)
+       .type   GL_PREFIX(GetConvolutionParameteriv), @function
+GL_PREFIX(GetConvolutionParameteriv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2864(%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    2864(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2864(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2864(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetConvolutionParameteriv), .-GL_PREFIX(GetConvolutionParameteriv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetSeparableFilter)
+       .type   GL_PREFIX(GetSeparableFilter), @function
+GL_PREFIX(GetSeparableFilter):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2872(%rax), %r11
+       jmp     *%r11
+#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    2872(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2872(%rax), %r11
+       jmp     *%r11
+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    2872(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetSeparableFilter), .-GL_PREFIX(GetSeparableFilter)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SeparableFilter2D)
+       .type   GL_PREFIX(SeparableFilter2D), @function
+GL_PREFIX(SeparableFilter2D):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2880(%rax), %r11
+       jmp     *%r11
+#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    2880(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2880(%rax), %r11
+       jmp     *%r11
+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    2880(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(SeparableFilter2D), .-GL_PREFIX(SeparableFilter2D)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetHistogram)
+       .type   GL_PREFIX(GetHistogram), @function
+GL_PREFIX(GetHistogram):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2888(%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    2888(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2888(%rax), %r11
+       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    2888(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetHistogram), .-GL_PREFIX(GetHistogram)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetHistogramParameterfv)
+       .type   GL_PREFIX(GetHistogramParameterfv), @function
+GL_PREFIX(GetHistogramParameterfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2896(%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    2896(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2896(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2896(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetHistogramParameterfv), .-GL_PREFIX(GetHistogramParameterfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetHistogramParameteriv)
+       .type   GL_PREFIX(GetHistogramParameteriv), @function
+GL_PREFIX(GetHistogramParameteriv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2904(%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    2904(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2904(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2904(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetHistogramParameteriv), .-GL_PREFIX(GetHistogramParameteriv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetMinmax)
+       .type   GL_PREFIX(GetMinmax), @function
+GL_PREFIX(GetMinmax):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2912(%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    2912(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2912(%rax), %r11
+       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    2912(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetMinmax), .-GL_PREFIX(GetMinmax)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetMinmaxParameterfv)
+       .type   GL_PREFIX(GetMinmaxParameterfv), @function
+GL_PREFIX(GetMinmaxParameterfv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2920(%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    2920(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2920(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2920(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetMinmaxParameterfv), .-GL_PREFIX(GetMinmaxParameterfv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetMinmaxParameteriv)
+       .type   GL_PREFIX(GetMinmaxParameteriv), @function
+GL_PREFIX(GetMinmaxParameteriv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2928(%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    2928(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2928(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2928(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetMinmaxParameteriv), .-GL_PREFIX(GetMinmaxParameteriv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Histogram)
+       .type   GL_PREFIX(Histogram), @function
+GL_PREFIX(Histogram):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2936(%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    2936(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2936(%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    2936(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Histogram), .-GL_PREFIX(Histogram)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Minmax)
+       .type   GL_PREFIX(Minmax), @function
+GL_PREFIX(Minmax):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2944(%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    2944(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2944(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    2944(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Minmax), .-GL_PREFIX(Minmax)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ResetHistogram)
+       .type   GL_PREFIX(ResetHistogram), @function
+GL_PREFIX(ResetHistogram):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2952(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2952(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2952(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2952(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ResetHistogram), .-GL_PREFIX(ResetHistogram)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ResetMinmax)
+       .type   GL_PREFIX(ResetMinmax), @function
+GL_PREFIX(ResetMinmax):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2960(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2960(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2960(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2960(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ResetMinmax), .-GL_PREFIX(ResetMinmax)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexImage3D)
+       .type   GL_PREFIX(TexImage3D), @function
+GL_PREFIX(TexImage3D):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2968(%rax), %r11
+       jmp     *%r11
+#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    2968(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2968(%rax), %r11
+       jmp     *%r11
+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    2968(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexImage3D), .-GL_PREFIX(TexImage3D)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexSubImage3D)
+       .type   GL_PREFIX(TexSubImage3D), @function
+GL_PREFIX(TexSubImage3D):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2976(%rax), %r11
+       jmp     *%r11
+#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    2976(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2976(%rax), %r11
+       jmp     *%r11
+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    2976(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexSubImage3D), .-GL_PREFIX(TexSubImage3D)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CopyTexSubImage3D)
+       .type   GL_PREFIX(CopyTexSubImage3D), @function
+GL_PREFIX(CopyTexSubImage3D):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2984(%rax), %r11
+       jmp     *%r11
+#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    2984(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2984(%rax), %r11
+       jmp     *%r11
+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    2984(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CopyTexSubImage3D), .-GL_PREFIX(CopyTexSubImage3D)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ActiveTextureARB)
+       .type   GL_PREFIX(ActiveTextureARB), @function
+GL_PREFIX(ActiveTextureARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    2992(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    2992(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    2992(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    2992(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ActiveTextureARB), .-GL_PREFIX(ActiveTextureARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ClientActiveTextureARB)
+       .type   GL_PREFIX(ClientActiveTextureARB), @function
+GL_PREFIX(ClientActiveTextureARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3000(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    3000(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3000(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    3000(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ClientActiveTextureARB), .-GL_PREFIX(ClientActiveTextureARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord1dARB)
+       .type   GL_PREFIX(MultiTexCoord1dARB), @function
+GL_PREFIX(MultiTexCoord1dARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3008(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    3008(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3008(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    3008(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord1dARB), .-GL_PREFIX(MultiTexCoord1dARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord1dvARB)
+       .type   GL_PREFIX(MultiTexCoord1dvARB), @function
+GL_PREFIX(MultiTexCoord1dvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3016(%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    3016(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3016(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3016(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord1dvARB), .-GL_PREFIX(MultiTexCoord1dvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord1fARB)
+       .type   GL_PREFIX(MultiTexCoord1fARB), @function
+GL_PREFIX(MultiTexCoord1fARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3024(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    3024(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3024(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    3024(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord1fARB), .-GL_PREFIX(MultiTexCoord1fARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord1fvARB)
+       .type   GL_PREFIX(MultiTexCoord1fvARB), @function
+GL_PREFIX(MultiTexCoord1fvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3032(%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    3032(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3032(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3032(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord1fvARB), .-GL_PREFIX(MultiTexCoord1fvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord1iARB)
+       .type   GL_PREFIX(MultiTexCoord1iARB), @function
+GL_PREFIX(MultiTexCoord1iARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3040(%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    3040(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3040(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3040(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord1iARB), .-GL_PREFIX(MultiTexCoord1iARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord1ivARB)
+       .type   GL_PREFIX(MultiTexCoord1ivARB), @function
+GL_PREFIX(MultiTexCoord1ivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3048(%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    3048(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3048(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3048(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord1ivARB), .-GL_PREFIX(MultiTexCoord1ivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord1sARB)
+       .type   GL_PREFIX(MultiTexCoord1sARB), @function
+GL_PREFIX(MultiTexCoord1sARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3056(%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    3056(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3056(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3056(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord1sARB), .-GL_PREFIX(MultiTexCoord1sARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord1svARB)
+       .type   GL_PREFIX(MultiTexCoord1svARB), @function
+GL_PREFIX(MultiTexCoord1svARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3064(%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    3064(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3064(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3064(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord1svARB), .-GL_PREFIX(MultiTexCoord1svARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord2dARB)
+       .type   GL_PREFIX(MultiTexCoord2dARB), @function
+GL_PREFIX(MultiTexCoord2dARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3072(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    3072(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3072(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    3072(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord2dARB), .-GL_PREFIX(MultiTexCoord2dARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord2dvARB)
+       .type   GL_PREFIX(MultiTexCoord2dvARB), @function
+GL_PREFIX(MultiTexCoord2dvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3080(%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    3080(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3080(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3080(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord2dvARB), .-GL_PREFIX(MultiTexCoord2dvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord2fARB)
+       .type   GL_PREFIX(MultiTexCoord2fARB), @function
+GL_PREFIX(MultiTexCoord2fARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3088(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    3088(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3088(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    3088(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord2fARB), .-GL_PREFIX(MultiTexCoord2fARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord2fvARB)
+       .type   GL_PREFIX(MultiTexCoord2fvARB), @function
+GL_PREFIX(MultiTexCoord2fvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3096(%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    3096(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3096(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3096(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord2fvARB), .-GL_PREFIX(MultiTexCoord2fvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord2iARB)
+       .type   GL_PREFIX(MultiTexCoord2iARB), @function
+GL_PREFIX(MultiTexCoord2iARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3104(%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    3104(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3104(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3104(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord2iARB), .-GL_PREFIX(MultiTexCoord2iARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord2ivARB)
+       .type   GL_PREFIX(MultiTexCoord2ivARB), @function
+GL_PREFIX(MultiTexCoord2ivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3112(%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    3112(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3112(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3112(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord2ivARB), .-GL_PREFIX(MultiTexCoord2ivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord2sARB)
+       .type   GL_PREFIX(MultiTexCoord2sARB), @function
+GL_PREFIX(MultiTexCoord2sARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3120(%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    3120(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3120(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3120(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord2sARB), .-GL_PREFIX(MultiTexCoord2sARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord2svARB)
+       .type   GL_PREFIX(MultiTexCoord2svARB), @function
+GL_PREFIX(MultiTexCoord2svARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3128(%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    3128(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3128(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3128(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord2svARB), .-GL_PREFIX(MultiTexCoord2svARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord3dARB)
+       .type   GL_PREFIX(MultiTexCoord3dARB), @function
+GL_PREFIX(MultiTexCoord3dARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3136(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    3136(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3136(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    3136(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord3dARB), .-GL_PREFIX(MultiTexCoord3dARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord3dvARB)
+       .type   GL_PREFIX(MultiTexCoord3dvARB), @function
+GL_PREFIX(MultiTexCoord3dvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3144(%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    3144(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3144(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3144(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord3dvARB), .-GL_PREFIX(MultiTexCoord3dvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord3fARB)
+       .type   GL_PREFIX(MultiTexCoord3fARB), @function
+GL_PREFIX(MultiTexCoord3fARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3152(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    3152(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3152(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    3152(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord3fARB), .-GL_PREFIX(MultiTexCoord3fARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord3fvARB)
+       .type   GL_PREFIX(MultiTexCoord3fvARB), @function
+GL_PREFIX(MultiTexCoord3fvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3160(%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    3160(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3160(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3160(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord3fvARB), .-GL_PREFIX(MultiTexCoord3fvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord3iARB)
+       .type   GL_PREFIX(MultiTexCoord3iARB), @function
+GL_PREFIX(MultiTexCoord3iARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3168(%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    3168(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3168(%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    3168(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord3iARB), .-GL_PREFIX(MultiTexCoord3iARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord3ivARB)
+       .type   GL_PREFIX(MultiTexCoord3ivARB), @function
+GL_PREFIX(MultiTexCoord3ivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3176(%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    3176(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3176(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3176(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord3ivARB), .-GL_PREFIX(MultiTexCoord3ivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord3sARB)
+       .type   GL_PREFIX(MultiTexCoord3sARB), @function
+GL_PREFIX(MultiTexCoord3sARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3184(%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    3184(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3184(%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    3184(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord3sARB), .-GL_PREFIX(MultiTexCoord3sARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord3svARB)
+       .type   GL_PREFIX(MultiTexCoord3svARB), @function
+GL_PREFIX(MultiTexCoord3svARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3192(%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    3192(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3192(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3192(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord3svARB), .-GL_PREFIX(MultiTexCoord3svARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord4dARB)
+       .type   GL_PREFIX(MultiTexCoord4dARB), @function
+GL_PREFIX(MultiTexCoord4dARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3200(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       movq    %xmm3, 32(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    32(%rsp), %xmm3
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    3200(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3200(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       movq    %xmm3, 32(%rsp)
+       call    _glapi_get_dispatch
+       movq    32(%rsp), %xmm3
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    3200(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord4dARB), .-GL_PREFIX(MultiTexCoord4dARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord4dvARB)
+       .type   GL_PREFIX(MultiTexCoord4dvARB), @function
+GL_PREFIX(MultiTexCoord4dvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3208(%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    3208(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3208(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3208(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord4dvARB), .-GL_PREFIX(MultiTexCoord4dvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord4fARB)
+       .type   GL_PREFIX(MultiTexCoord4fARB), @function
+GL_PREFIX(MultiTexCoord4fARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3216(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       movq    %xmm3, 32(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    32(%rsp), %xmm3
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    3216(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3216(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       movq    %xmm3, 32(%rsp)
+       call    _glapi_get_dispatch
+       movq    32(%rsp), %xmm3
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    3216(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord4fARB), .-GL_PREFIX(MultiTexCoord4fARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord4fvARB)
+       .type   GL_PREFIX(MultiTexCoord4fvARB), @function
+GL_PREFIX(MultiTexCoord4fvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3224(%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    3224(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3224(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3224(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord4fvARB), .-GL_PREFIX(MultiTexCoord4fvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord4iARB)
+       .type   GL_PREFIX(MultiTexCoord4iARB), @function
+GL_PREFIX(MultiTexCoord4iARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3232(%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    3232(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3232(%rax), %r11
+       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    3232(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord4iARB), .-GL_PREFIX(MultiTexCoord4iARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord4ivARB)
+       .type   GL_PREFIX(MultiTexCoord4ivARB), @function
+GL_PREFIX(MultiTexCoord4ivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3240(%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    3240(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3240(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3240(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord4ivARB), .-GL_PREFIX(MultiTexCoord4ivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord4sARB)
+       .type   GL_PREFIX(MultiTexCoord4sARB), @function
+GL_PREFIX(MultiTexCoord4sARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3248(%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    3248(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3248(%rax), %r11
+       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    3248(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord4sARB), .-GL_PREFIX(MultiTexCoord4sARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiTexCoord4svARB)
+       .type   GL_PREFIX(MultiTexCoord4svARB), @function
+GL_PREFIX(MultiTexCoord4svARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3256(%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    3256(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3256(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3256(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiTexCoord4svARB), .-GL_PREFIX(MultiTexCoord4svARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(AttachShader)
+       .type   GL_PREFIX(AttachShader), @function
+GL_PREFIX(AttachShader):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3264(%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    3264(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3264(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3264(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(AttachShader), .-GL_PREFIX(AttachShader)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CreateProgram)
+       .type   GL_PREFIX(CreateProgram), @function
+GL_PREFIX(CreateProgram):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3272(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    3272(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3272(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    3272(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CreateProgram), .-GL_PREFIX(CreateProgram)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CreateShader)
+       .type   GL_PREFIX(CreateShader), @function
+GL_PREFIX(CreateShader):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3280(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    3280(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3280(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    3280(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CreateShader), .-GL_PREFIX(CreateShader)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DeleteProgram)
+       .type   GL_PREFIX(DeleteProgram), @function
+GL_PREFIX(DeleteProgram):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3288(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    3288(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3288(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    3288(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DeleteProgram), .-GL_PREFIX(DeleteProgram)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DeleteShader)
+       .type   GL_PREFIX(DeleteShader), @function
+GL_PREFIX(DeleteShader):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3296(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    3296(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3296(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    3296(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DeleteShader), .-GL_PREFIX(DeleteShader)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DetachShader)
+       .type   GL_PREFIX(DetachShader), @function
+GL_PREFIX(DetachShader):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3304(%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    3304(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3304(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3304(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DetachShader), .-GL_PREFIX(DetachShader)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetAttachedShaders)
+       .type   GL_PREFIX(GetAttachedShaders), @function
+GL_PREFIX(GetAttachedShaders):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3312(%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    3312(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3312(%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    3312(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetAttachedShaders), .-GL_PREFIX(GetAttachedShaders)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetProgramInfoLog)
+       .type   GL_PREFIX(GetProgramInfoLog), @function
+GL_PREFIX(GetProgramInfoLog):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3320(%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    3320(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3320(%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    3320(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetProgramInfoLog), .-GL_PREFIX(GetProgramInfoLog)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetProgramiv)
+       .type   GL_PREFIX(GetProgramiv), @function
+GL_PREFIX(GetProgramiv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3328(%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    3328(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3328(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3328(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetProgramiv), .-GL_PREFIX(GetProgramiv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetShaderInfoLog)
+       .type   GL_PREFIX(GetShaderInfoLog), @function
+GL_PREFIX(GetShaderInfoLog):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3336(%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    3336(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3336(%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    3336(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetShaderInfoLog), .-GL_PREFIX(GetShaderInfoLog)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetShaderiv)
+       .type   GL_PREFIX(GetShaderiv), @function
+GL_PREFIX(GetShaderiv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3344(%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    3344(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3344(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3344(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetShaderiv), .-GL_PREFIX(GetShaderiv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(IsProgram)
+       .type   GL_PREFIX(IsProgram), @function
+GL_PREFIX(IsProgram):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3352(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    3352(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3352(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    3352(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(IsProgram), .-GL_PREFIX(IsProgram)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(IsShader)
+       .type   GL_PREFIX(IsShader), @function
+GL_PREFIX(IsShader):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3360(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    3360(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3360(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    3360(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(IsShader), .-GL_PREFIX(IsShader)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(StencilFuncSeparate)
+       .type   GL_PREFIX(StencilFuncSeparate), @function
+GL_PREFIX(StencilFuncSeparate):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3368(%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    3368(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3368(%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    3368(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(StencilFuncSeparate), .-GL_PREFIX(StencilFuncSeparate)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(StencilMaskSeparate)
+       .type   GL_PREFIX(StencilMaskSeparate), @function
+GL_PREFIX(StencilMaskSeparate):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3376(%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    3376(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3376(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3376(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(StencilMaskSeparate), .-GL_PREFIX(StencilMaskSeparate)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(StencilOpSeparate)
+       .type   GL_PREFIX(StencilOpSeparate), @function
+GL_PREFIX(StencilOpSeparate):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3384(%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    3384(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3384(%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    3384(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(StencilOpSeparate), .-GL_PREFIX(StencilOpSeparate)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(UniformMatrix2x3fv)
+       .type   GL_PREFIX(UniformMatrix2x3fv), @function
+GL_PREFIX(UniformMatrix2x3fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3392(%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    3392(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3392(%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    3392(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(UniformMatrix2x3fv), .-GL_PREFIX(UniformMatrix2x3fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(UniformMatrix2x4fv)
+       .type   GL_PREFIX(UniformMatrix2x4fv), @function
+GL_PREFIX(UniformMatrix2x4fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3400(%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    3400(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3400(%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    3400(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(UniformMatrix2x4fv), .-GL_PREFIX(UniformMatrix2x4fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(UniformMatrix3x2fv)
+       .type   GL_PREFIX(UniformMatrix3x2fv), @function
+GL_PREFIX(UniformMatrix3x2fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3408(%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    3408(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3408(%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    3408(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(UniformMatrix3x2fv), .-GL_PREFIX(UniformMatrix3x2fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(UniformMatrix3x4fv)
+       .type   GL_PREFIX(UniformMatrix3x4fv), @function
+GL_PREFIX(UniformMatrix3x4fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3416(%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    3416(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3416(%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    3416(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(UniformMatrix3x4fv), .-GL_PREFIX(UniformMatrix3x4fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(UniformMatrix4x2fv)
+       .type   GL_PREFIX(UniformMatrix4x2fv), @function
+GL_PREFIX(UniformMatrix4x2fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3424(%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    3424(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3424(%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    3424(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(UniformMatrix4x2fv), .-GL_PREFIX(UniformMatrix4x2fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(UniformMatrix4x3fv)
+       .type   GL_PREFIX(UniformMatrix4x3fv), @function
+GL_PREFIX(UniformMatrix4x3fv):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3432(%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    3432(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3432(%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    3432(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(UniformMatrix4x3fv), .-GL_PREFIX(UniformMatrix4x3fv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DrawArraysInstanced)
+       .type   GL_PREFIX(DrawArraysInstanced), @function
+GL_PREFIX(DrawArraysInstanced):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3440(%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    3440(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3440(%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    3440(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DrawArraysInstanced), .-GL_PREFIX(DrawArraysInstanced)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DrawElementsInstanced)
+       .type   GL_PREFIX(DrawElementsInstanced), @function
+GL_PREFIX(DrawElementsInstanced):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3448(%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    3448(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3448(%rax), %r11
+       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    3448(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DrawElementsInstanced), .-GL_PREFIX(DrawElementsInstanced)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(LoadTransposeMatrixdARB)
+       .type   GL_PREFIX(LoadTransposeMatrixdARB), @function
+GL_PREFIX(LoadTransposeMatrixdARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3456(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    3456(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3456(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    3456(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(LoadTransposeMatrixdARB), .-GL_PREFIX(LoadTransposeMatrixdARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(LoadTransposeMatrixfARB)
+       .type   GL_PREFIX(LoadTransposeMatrixfARB), @function
+GL_PREFIX(LoadTransposeMatrixfARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3464(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    3464(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3464(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    3464(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(LoadTransposeMatrixfARB), .-GL_PREFIX(LoadTransposeMatrixfARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultTransposeMatrixdARB)
+       .type   GL_PREFIX(MultTransposeMatrixdARB), @function
+GL_PREFIX(MultTransposeMatrixdARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3472(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    3472(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3472(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    3472(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultTransposeMatrixdARB), .-GL_PREFIX(MultTransposeMatrixdARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultTransposeMatrixfARB)
+       .type   GL_PREFIX(MultTransposeMatrixfARB), @function
+GL_PREFIX(MultTransposeMatrixfARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3480(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    3480(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3480(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    3480(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultTransposeMatrixfARB), .-GL_PREFIX(MultTransposeMatrixfARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SampleCoverageARB)
+       .type   GL_PREFIX(SampleCoverageARB), @function
+GL_PREFIX(SampleCoverageARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3488(%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    3488(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3488(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3488(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(SampleCoverageARB), .-GL_PREFIX(SampleCoverageARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CompressedTexImage1DARB)
+       .type   GL_PREFIX(CompressedTexImage1DARB), @function
+GL_PREFIX(CompressedTexImage1DARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3496(%rax), %r11
+       jmp     *%r11
+#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    3496(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3496(%rax), %r11
+       jmp     *%r11
+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    3496(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CompressedTexImage1DARB), .-GL_PREFIX(CompressedTexImage1DARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CompressedTexImage2DARB)
+       .type   GL_PREFIX(CompressedTexImage2DARB), @function
+GL_PREFIX(CompressedTexImage2DARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3504(%rax), %r11
+       jmp     *%r11
+#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    3504(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3504(%rax), %r11
+       jmp     *%r11
+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    3504(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CompressedTexImage2DARB), .-GL_PREFIX(CompressedTexImage2DARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CompressedTexImage3DARB)
+       .type   GL_PREFIX(CompressedTexImage3DARB), @function
+GL_PREFIX(CompressedTexImage3DARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3512(%rax), %r11
+       jmp     *%r11
+#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    3512(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3512(%rax), %r11
+       jmp     *%r11
+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    3512(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CompressedTexImage3DARB), .-GL_PREFIX(CompressedTexImage3DARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CompressedTexSubImage1DARB)
+       .type   GL_PREFIX(CompressedTexSubImage1DARB), @function
+GL_PREFIX(CompressedTexSubImage1DARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3520(%rax), %r11
+       jmp     *%r11
+#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    3520(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3520(%rax), %r11
+       jmp     *%r11
+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    3520(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CompressedTexSubImage1DARB), .-GL_PREFIX(CompressedTexSubImage1DARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CompressedTexSubImage2DARB)
+       .type   GL_PREFIX(CompressedTexSubImage2DARB), @function
+GL_PREFIX(CompressedTexSubImage2DARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3528(%rax), %r11
+       jmp     *%r11
+#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    3528(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3528(%rax), %r11
+       jmp     *%r11
+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    3528(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CompressedTexSubImage2DARB), .-GL_PREFIX(CompressedTexSubImage2DARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CompressedTexSubImage3DARB)
+       .type   GL_PREFIX(CompressedTexSubImage3DARB), @function
+GL_PREFIX(CompressedTexSubImage3DARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3536(%rax), %r11
+       jmp     *%r11
+#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    3536(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3536(%rax), %r11
+       jmp     *%r11
+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    3536(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CompressedTexSubImage3DARB), .-GL_PREFIX(CompressedTexSubImage3DARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetCompressedTexImageARB)
+       .type   GL_PREFIX(GetCompressedTexImageARB), @function
+GL_PREFIX(GetCompressedTexImageARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3544(%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    3544(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3544(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3544(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetCompressedTexImageARB), .-GL_PREFIX(GetCompressedTexImageARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DisableVertexAttribArrayARB)
+       .type   GL_PREFIX(DisableVertexAttribArrayARB), @function
+GL_PREFIX(DisableVertexAttribArrayARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3552(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    3552(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3552(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    3552(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DisableVertexAttribArrayARB), .-GL_PREFIX(DisableVertexAttribArrayARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EnableVertexAttribArrayARB)
+       .type   GL_PREFIX(EnableVertexAttribArrayARB), @function
+GL_PREFIX(EnableVertexAttribArrayARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3560(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    3560(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3560(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    3560(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EnableVertexAttribArrayARB), .-GL_PREFIX(EnableVertexAttribArrayARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetProgramEnvParameterdvARB)
+       .type   GL_PREFIX(GetProgramEnvParameterdvARB), @function
+GL_PREFIX(GetProgramEnvParameterdvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3568(%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    3568(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3568(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3568(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetProgramEnvParameterdvARB), .-GL_PREFIX(GetProgramEnvParameterdvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetProgramEnvParameterfvARB)
+       .type   GL_PREFIX(GetProgramEnvParameterfvARB), @function
+GL_PREFIX(GetProgramEnvParameterfvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3576(%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    3576(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3576(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3576(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetProgramEnvParameterfvARB), .-GL_PREFIX(GetProgramEnvParameterfvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetProgramLocalParameterdvARB)
+       .type   GL_PREFIX(GetProgramLocalParameterdvARB), @function
+GL_PREFIX(GetProgramLocalParameterdvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3584(%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    3584(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3584(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3584(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetProgramLocalParameterdvARB), .-GL_PREFIX(GetProgramLocalParameterdvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetProgramLocalParameterfvARB)
+       .type   GL_PREFIX(GetProgramLocalParameterfvARB), @function
+GL_PREFIX(GetProgramLocalParameterfvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3592(%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    3592(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3592(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3592(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetProgramLocalParameterfvARB), .-GL_PREFIX(GetProgramLocalParameterfvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetProgramStringARB)
+       .type   GL_PREFIX(GetProgramStringARB), @function
+GL_PREFIX(GetProgramStringARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3600(%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    3600(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3600(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3600(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetProgramStringARB), .-GL_PREFIX(GetProgramStringARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetProgramivARB)
+       .type   GL_PREFIX(GetProgramivARB), @function
+GL_PREFIX(GetProgramivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3608(%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    3608(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3608(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3608(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetProgramivARB), .-GL_PREFIX(GetProgramivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetVertexAttribdvARB)
+       .type   GL_PREFIX(GetVertexAttribdvARB), @function
+GL_PREFIX(GetVertexAttribdvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3616(%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    3616(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3616(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3616(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetVertexAttribdvARB), .-GL_PREFIX(GetVertexAttribdvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetVertexAttribfvARB)
+       .type   GL_PREFIX(GetVertexAttribfvARB), @function
+GL_PREFIX(GetVertexAttribfvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3624(%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    3624(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3624(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3624(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetVertexAttribfvARB), .-GL_PREFIX(GetVertexAttribfvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetVertexAttribivARB)
+       .type   GL_PREFIX(GetVertexAttribivARB), @function
+GL_PREFIX(GetVertexAttribivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3632(%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    3632(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3632(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3632(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetVertexAttribivARB), .-GL_PREFIX(GetVertexAttribivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ProgramEnvParameter4dARB)
+       .type   GL_PREFIX(ProgramEnvParameter4dARB), @function
+GL_PREFIX(ProgramEnvParameter4dARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3640(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $56, %rsp
+       movq    %rdi, (%rsp)
+       movq    %rsi, 8(%rsp)
+       movq    %xmm0, 16(%rsp)
+       movq    %xmm1, 24(%rsp)
+       movq    %xmm2, 32(%rsp)
+       movq    %xmm3, 40(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    40(%rsp), %xmm3
+       movq    32(%rsp), %xmm2
+       movq    24(%rsp), %xmm1
+       movq    16(%rsp), %xmm0
+       movq    8(%rsp), %rsi
+       movq    (%rsp), %rdi
+       addq    $56, %rsp
+       movq    3640(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3640(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $56, %rsp
+       movq    %rdi, (%rsp)
+       movq    %rsi, 8(%rsp)
+       movq    %xmm0, 16(%rsp)
+       movq    %xmm1, 24(%rsp)
+       movq    %xmm2, 32(%rsp)
+       movq    %xmm3, 40(%rsp)
+       call    _glapi_get_dispatch
+       movq    40(%rsp), %xmm3
+       movq    32(%rsp), %xmm2
+       movq    24(%rsp), %xmm1
+       movq    16(%rsp), %xmm0
+       movq    8(%rsp), %rsi
+       movq    (%rsp), %rdi
+       addq    $56, %rsp
+       movq    3640(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ProgramEnvParameter4dARB), .-GL_PREFIX(ProgramEnvParameter4dARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ProgramEnvParameter4dvARB)
+       .type   GL_PREFIX(ProgramEnvParameter4dvARB), @function
+GL_PREFIX(ProgramEnvParameter4dvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3648(%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    3648(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3648(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3648(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ProgramEnvParameter4dvARB), .-GL_PREFIX(ProgramEnvParameter4dvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ProgramEnvParameter4fARB)
+       .type   GL_PREFIX(ProgramEnvParameter4fARB), @function
+GL_PREFIX(ProgramEnvParameter4fARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3656(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $56, %rsp
+       movq    %rdi, (%rsp)
+       movq    %rsi, 8(%rsp)
+       movq    %xmm0, 16(%rsp)
+       movq    %xmm1, 24(%rsp)
+       movq    %xmm2, 32(%rsp)
+       movq    %xmm3, 40(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    40(%rsp), %xmm3
+       movq    32(%rsp), %xmm2
+       movq    24(%rsp), %xmm1
+       movq    16(%rsp), %xmm0
+       movq    8(%rsp), %rsi
+       movq    (%rsp), %rdi
+       addq    $56, %rsp
+       movq    3656(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3656(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $56, %rsp
+       movq    %rdi, (%rsp)
+       movq    %rsi, 8(%rsp)
+       movq    %xmm0, 16(%rsp)
+       movq    %xmm1, 24(%rsp)
+       movq    %xmm2, 32(%rsp)
+       movq    %xmm3, 40(%rsp)
+       call    _glapi_get_dispatch
+       movq    40(%rsp), %xmm3
+       movq    32(%rsp), %xmm2
+       movq    24(%rsp), %xmm1
+       movq    16(%rsp), %xmm0
+       movq    8(%rsp), %rsi
+       movq    (%rsp), %rdi
+       addq    $56, %rsp
+       movq    3656(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ProgramEnvParameter4fARB), .-GL_PREFIX(ProgramEnvParameter4fARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ProgramEnvParameter4fvARB)
+       .type   GL_PREFIX(ProgramEnvParameter4fvARB), @function
+GL_PREFIX(ProgramEnvParameter4fvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3664(%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    3664(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3664(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3664(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ProgramEnvParameter4fvARB), .-GL_PREFIX(ProgramEnvParameter4fvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ProgramLocalParameter4dARB)
+       .type   GL_PREFIX(ProgramLocalParameter4dARB), @function
+GL_PREFIX(ProgramLocalParameter4dARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3672(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $56, %rsp
+       movq    %rdi, (%rsp)
+       movq    %rsi, 8(%rsp)
+       movq    %xmm0, 16(%rsp)
+       movq    %xmm1, 24(%rsp)
+       movq    %xmm2, 32(%rsp)
+       movq    %xmm3, 40(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    40(%rsp), %xmm3
+       movq    32(%rsp), %xmm2
+       movq    24(%rsp), %xmm1
+       movq    16(%rsp), %xmm0
+       movq    8(%rsp), %rsi
+       movq    (%rsp), %rdi
+       addq    $56, %rsp
+       movq    3672(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3672(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $56, %rsp
+       movq    %rdi, (%rsp)
+       movq    %rsi, 8(%rsp)
+       movq    %xmm0, 16(%rsp)
+       movq    %xmm1, 24(%rsp)
+       movq    %xmm2, 32(%rsp)
+       movq    %xmm3, 40(%rsp)
+       call    _glapi_get_dispatch
+       movq    40(%rsp), %xmm3
+       movq    32(%rsp), %xmm2
+       movq    24(%rsp), %xmm1
+       movq    16(%rsp), %xmm0
+       movq    8(%rsp), %rsi
+       movq    (%rsp), %rdi
+       addq    $56, %rsp
+       movq    3672(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ProgramLocalParameter4dARB), .-GL_PREFIX(ProgramLocalParameter4dARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ProgramLocalParameter4dvARB)
+       .type   GL_PREFIX(ProgramLocalParameter4dvARB), @function
+GL_PREFIX(ProgramLocalParameter4dvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3680(%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    3680(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3680(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3680(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ProgramLocalParameter4dvARB), .-GL_PREFIX(ProgramLocalParameter4dvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ProgramLocalParameter4fARB)
+       .type   GL_PREFIX(ProgramLocalParameter4fARB), @function
+GL_PREFIX(ProgramLocalParameter4fARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3688(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $56, %rsp
+       movq    %rdi, (%rsp)
+       movq    %rsi, 8(%rsp)
+       movq    %xmm0, 16(%rsp)
+       movq    %xmm1, 24(%rsp)
+       movq    %xmm2, 32(%rsp)
+       movq    %xmm3, 40(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    40(%rsp), %xmm3
+       movq    32(%rsp), %xmm2
+       movq    24(%rsp), %xmm1
+       movq    16(%rsp), %xmm0
+       movq    8(%rsp), %rsi
+       movq    (%rsp), %rdi
+       addq    $56, %rsp
+       movq    3688(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3688(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $56, %rsp
+       movq    %rdi, (%rsp)
+       movq    %rsi, 8(%rsp)
+       movq    %xmm0, 16(%rsp)
+       movq    %xmm1, 24(%rsp)
+       movq    %xmm2, 32(%rsp)
+       movq    %xmm3, 40(%rsp)
+       call    _glapi_get_dispatch
+       movq    40(%rsp), %xmm3
+       movq    32(%rsp), %xmm2
+       movq    24(%rsp), %xmm1
+       movq    16(%rsp), %xmm0
+       movq    8(%rsp), %rsi
+       movq    (%rsp), %rdi
+       addq    $56, %rsp
+       movq    3688(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ProgramLocalParameter4fARB), .-GL_PREFIX(ProgramLocalParameter4fARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ProgramLocalParameter4fvARB)
+       .type   GL_PREFIX(ProgramLocalParameter4fvARB), @function
+GL_PREFIX(ProgramLocalParameter4fvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3696(%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    3696(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3696(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3696(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ProgramLocalParameter4fvARB), .-GL_PREFIX(ProgramLocalParameter4fvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ProgramStringARB)
+       .type   GL_PREFIX(ProgramStringARB), @function
+GL_PREFIX(ProgramStringARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3704(%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    3704(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3704(%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    3704(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ProgramStringARB), .-GL_PREFIX(ProgramStringARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib1dARB)
+       .type   GL_PREFIX(VertexAttrib1dARB), @function
+GL_PREFIX(VertexAttrib1dARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3712(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    3712(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3712(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    3712(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib1dARB), .-GL_PREFIX(VertexAttrib1dARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib1dvARB)
+       .type   GL_PREFIX(VertexAttrib1dvARB), @function
+GL_PREFIX(VertexAttrib1dvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3720(%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    3720(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3720(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3720(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib1dvARB), .-GL_PREFIX(VertexAttrib1dvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib1fARB)
+       .type   GL_PREFIX(VertexAttrib1fARB), @function
+GL_PREFIX(VertexAttrib1fARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3728(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    3728(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3728(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    3728(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib1fARB), .-GL_PREFIX(VertexAttrib1fARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib1fvARB)
+       .type   GL_PREFIX(VertexAttrib1fvARB), @function
+GL_PREFIX(VertexAttrib1fvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3736(%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    3736(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3736(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3736(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib1fvARB), .-GL_PREFIX(VertexAttrib1fvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib1sARB)
+       .type   GL_PREFIX(VertexAttrib1sARB), @function
+GL_PREFIX(VertexAttrib1sARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3744(%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    3744(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3744(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3744(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib1sARB), .-GL_PREFIX(VertexAttrib1sARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib1svARB)
+       .type   GL_PREFIX(VertexAttrib1svARB), @function
+GL_PREFIX(VertexAttrib1svARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3752(%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    3752(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3752(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3752(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib1svARB), .-GL_PREFIX(VertexAttrib1svARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib2dARB)
+       .type   GL_PREFIX(VertexAttrib2dARB), @function
+GL_PREFIX(VertexAttrib2dARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3760(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    3760(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3760(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    3760(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib2dARB), .-GL_PREFIX(VertexAttrib2dARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib2dvARB)
+       .type   GL_PREFIX(VertexAttrib2dvARB), @function
+GL_PREFIX(VertexAttrib2dvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3768(%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    3768(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3768(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3768(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib2dvARB), .-GL_PREFIX(VertexAttrib2dvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib2fARB)
+       .type   GL_PREFIX(VertexAttrib2fARB), @function
+GL_PREFIX(VertexAttrib2fARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3776(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    3776(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3776(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    3776(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib2fARB), .-GL_PREFIX(VertexAttrib2fARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib2fvARB)
+       .type   GL_PREFIX(VertexAttrib2fvARB), @function
+GL_PREFIX(VertexAttrib2fvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3784(%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    3784(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3784(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3784(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib2fvARB), .-GL_PREFIX(VertexAttrib2fvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib2sARB)
+       .type   GL_PREFIX(VertexAttrib2sARB), @function
+GL_PREFIX(VertexAttrib2sARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3792(%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    3792(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3792(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    3792(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib2sARB), .-GL_PREFIX(VertexAttrib2sARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib2svARB)
+       .type   GL_PREFIX(VertexAttrib2svARB), @function
+GL_PREFIX(VertexAttrib2svARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3800(%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    3800(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3800(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3800(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib2svARB), .-GL_PREFIX(VertexAttrib2svARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib3dARB)
+       .type   GL_PREFIX(VertexAttrib3dARB), @function
+GL_PREFIX(VertexAttrib3dARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3808(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    3808(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3808(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    3808(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib3dARB), .-GL_PREFIX(VertexAttrib3dARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib3dvARB)
+       .type   GL_PREFIX(VertexAttrib3dvARB), @function
+GL_PREFIX(VertexAttrib3dvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3816(%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    3816(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3816(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3816(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib3dvARB), .-GL_PREFIX(VertexAttrib3dvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib3fARB)
+       .type   GL_PREFIX(VertexAttrib3fARB), @function
+GL_PREFIX(VertexAttrib3fARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3824(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    3824(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3824(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    3824(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib3fARB), .-GL_PREFIX(VertexAttrib3fARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib3fvARB)
+       .type   GL_PREFIX(VertexAttrib3fvARB), @function
+GL_PREFIX(VertexAttrib3fvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3832(%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    3832(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3832(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3832(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib3fvARB), .-GL_PREFIX(VertexAttrib3fvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib3sARB)
+       .type   GL_PREFIX(VertexAttrib3sARB), @function
+GL_PREFIX(VertexAttrib3sARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3840(%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    3840(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3840(%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    3840(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib3sARB), .-GL_PREFIX(VertexAttrib3sARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib3svARB)
+       .type   GL_PREFIX(VertexAttrib3svARB), @function
+GL_PREFIX(VertexAttrib3svARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3848(%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    3848(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3848(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3848(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib3svARB), .-GL_PREFIX(VertexAttrib3svARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4NbvARB)
+       .type   GL_PREFIX(VertexAttrib4NbvARB), @function
+GL_PREFIX(VertexAttrib4NbvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3856(%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    3856(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3856(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3856(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4NbvARB), .-GL_PREFIX(VertexAttrib4NbvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4NivARB)
+       .type   GL_PREFIX(VertexAttrib4NivARB), @function
+GL_PREFIX(VertexAttrib4NivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3864(%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    3864(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3864(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3864(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4NivARB), .-GL_PREFIX(VertexAttrib4NivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4NsvARB)
+       .type   GL_PREFIX(VertexAttrib4NsvARB), @function
+GL_PREFIX(VertexAttrib4NsvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3872(%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    3872(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3872(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3872(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4NsvARB), .-GL_PREFIX(VertexAttrib4NsvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4NubARB)
+       .type   GL_PREFIX(VertexAttrib4NubARB), @function
+GL_PREFIX(VertexAttrib4NubARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3880(%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    3880(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3880(%rax), %r11
+       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    3880(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4NubARB), .-GL_PREFIX(VertexAttrib4NubARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4NubvARB)
+       .type   GL_PREFIX(VertexAttrib4NubvARB), @function
+GL_PREFIX(VertexAttrib4NubvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3888(%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    3888(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3888(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3888(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4NubvARB), .-GL_PREFIX(VertexAttrib4NubvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4NuivARB)
+       .type   GL_PREFIX(VertexAttrib4NuivARB), @function
+GL_PREFIX(VertexAttrib4NuivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3896(%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    3896(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3896(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3896(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4NuivARB), .-GL_PREFIX(VertexAttrib4NuivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4NusvARB)
+       .type   GL_PREFIX(VertexAttrib4NusvARB), @function
+GL_PREFIX(VertexAttrib4NusvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3904(%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    3904(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3904(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3904(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4NusvARB), .-GL_PREFIX(VertexAttrib4NusvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4bvARB)
+       .type   GL_PREFIX(VertexAttrib4bvARB), @function
+GL_PREFIX(VertexAttrib4bvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3912(%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    3912(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3912(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3912(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4bvARB), .-GL_PREFIX(VertexAttrib4bvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4dARB)
+       .type   GL_PREFIX(VertexAttrib4dARB), @function
+GL_PREFIX(VertexAttrib4dARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3920(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       movq    %xmm3, 32(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    32(%rsp), %xmm3
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    3920(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3920(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       movq    %xmm3, 32(%rsp)
+       call    _glapi_get_dispatch
+       movq    32(%rsp), %xmm3
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    3920(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4dARB), .-GL_PREFIX(VertexAttrib4dARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4dvARB)
+       .type   GL_PREFIX(VertexAttrib4dvARB), @function
+GL_PREFIX(VertexAttrib4dvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3928(%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    3928(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3928(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3928(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4dvARB), .-GL_PREFIX(VertexAttrib4dvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4fARB)
+       .type   GL_PREFIX(VertexAttrib4fARB), @function
+GL_PREFIX(VertexAttrib4fARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3936(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       movq    %xmm3, 32(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    32(%rsp), %xmm3
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    3936(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3936(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       movq    %xmm3, 32(%rsp)
+       call    _glapi_get_dispatch
+       movq    32(%rsp), %xmm3
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    3936(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4fARB), .-GL_PREFIX(VertexAttrib4fARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4fvARB)
+       .type   GL_PREFIX(VertexAttrib4fvARB), @function
+GL_PREFIX(VertexAttrib4fvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3944(%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    3944(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3944(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3944(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4fvARB), .-GL_PREFIX(VertexAttrib4fvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4ivARB)
+       .type   GL_PREFIX(VertexAttrib4ivARB), @function
+GL_PREFIX(VertexAttrib4ivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3952(%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    3952(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3952(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3952(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4ivARB), .-GL_PREFIX(VertexAttrib4ivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4sARB)
+       .type   GL_PREFIX(VertexAttrib4sARB), @function
+GL_PREFIX(VertexAttrib4sARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3960(%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    3960(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3960(%rax), %r11
+       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    3960(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4sARB), .-GL_PREFIX(VertexAttrib4sARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4svARB)
+       .type   GL_PREFIX(VertexAttrib4svARB), @function
+GL_PREFIX(VertexAttrib4svARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3968(%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    3968(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3968(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3968(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4svARB), .-GL_PREFIX(VertexAttrib4svARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4ubvARB)
+       .type   GL_PREFIX(VertexAttrib4ubvARB), @function
+GL_PREFIX(VertexAttrib4ubvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3976(%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    3976(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3976(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3976(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4ubvARB), .-GL_PREFIX(VertexAttrib4ubvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4uivARB)
+       .type   GL_PREFIX(VertexAttrib4uivARB), @function
+GL_PREFIX(VertexAttrib4uivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3984(%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    3984(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3984(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3984(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4uivARB), .-GL_PREFIX(VertexAttrib4uivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4usvARB)
+       .type   GL_PREFIX(VertexAttrib4usvARB), @function
+GL_PREFIX(VertexAttrib4usvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    3992(%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    3992(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    3992(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    3992(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4usvARB), .-GL_PREFIX(VertexAttrib4usvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttribPointerARB)
+       .type   GL_PREFIX(VertexAttribPointerARB), @function
+GL_PREFIX(VertexAttribPointerARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4000(%rax), %r11
+       jmp     *%r11
+#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    4000(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4000(%rax), %r11
+       jmp     *%r11
+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    4000(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttribPointerARB), .-GL_PREFIX(VertexAttribPointerARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BindBufferARB)
+       .type   GL_PREFIX(BindBufferARB), @function
+GL_PREFIX(BindBufferARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4008(%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    4008(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4008(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4008(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BindBufferARB), .-GL_PREFIX(BindBufferARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BufferDataARB)
+       .type   GL_PREFIX(BufferDataARB), @function
+GL_PREFIX(BufferDataARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4016(%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    4016(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4016(%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    4016(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BufferDataARB), .-GL_PREFIX(BufferDataARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BufferSubDataARB)
+       .type   GL_PREFIX(BufferSubDataARB), @function
+GL_PREFIX(BufferSubDataARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4024(%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    4024(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4024(%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    4024(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BufferSubDataARB), .-GL_PREFIX(BufferSubDataARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DeleteBuffersARB)
+       .type   GL_PREFIX(DeleteBuffersARB), @function
+GL_PREFIX(DeleteBuffersARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4032(%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    4032(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4032(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4032(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DeleteBuffersARB), .-GL_PREFIX(DeleteBuffersARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GenBuffersARB)
+       .type   GL_PREFIX(GenBuffersARB), @function
+GL_PREFIX(GenBuffersARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4040(%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    4040(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4040(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4040(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GenBuffersARB), .-GL_PREFIX(GenBuffersARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetBufferParameterivARB)
+       .type   GL_PREFIX(GetBufferParameterivARB), @function
+GL_PREFIX(GetBufferParameterivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4048(%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    4048(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4048(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4048(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetBufferParameterivARB), .-GL_PREFIX(GetBufferParameterivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetBufferPointervARB)
+       .type   GL_PREFIX(GetBufferPointervARB), @function
+GL_PREFIX(GetBufferPointervARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4056(%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    4056(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4056(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4056(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetBufferPointervARB), .-GL_PREFIX(GetBufferPointervARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetBufferSubDataARB)
+       .type   GL_PREFIX(GetBufferSubDataARB), @function
+GL_PREFIX(GetBufferSubDataARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4064(%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    4064(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4064(%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    4064(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetBufferSubDataARB), .-GL_PREFIX(GetBufferSubDataARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(IsBufferARB)
+       .type   GL_PREFIX(IsBufferARB), @function
+GL_PREFIX(IsBufferARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4072(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4072(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4072(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4072(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(IsBufferARB), .-GL_PREFIX(IsBufferARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MapBufferARB)
+       .type   GL_PREFIX(MapBufferARB), @function
+GL_PREFIX(MapBufferARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4080(%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    4080(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4080(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4080(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MapBufferARB), .-GL_PREFIX(MapBufferARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(UnmapBufferARB)
+       .type   GL_PREFIX(UnmapBufferARB), @function
+GL_PREFIX(UnmapBufferARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4088(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4088(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4088(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4088(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(UnmapBufferARB), .-GL_PREFIX(UnmapBufferARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BeginQueryARB)
+       .type   GL_PREFIX(BeginQueryARB), @function
+GL_PREFIX(BeginQueryARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4096(%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    4096(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4096(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4096(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BeginQueryARB), .-GL_PREFIX(BeginQueryARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DeleteQueriesARB)
+       .type   GL_PREFIX(DeleteQueriesARB), @function
+GL_PREFIX(DeleteQueriesARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4104(%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    4104(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4104(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4104(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DeleteQueriesARB), .-GL_PREFIX(DeleteQueriesARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EndQueryARB)
+       .type   GL_PREFIX(EndQueryARB), @function
+GL_PREFIX(EndQueryARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4112(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4112(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4112(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4112(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EndQueryARB), .-GL_PREFIX(EndQueryARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GenQueriesARB)
+       .type   GL_PREFIX(GenQueriesARB), @function
+GL_PREFIX(GenQueriesARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4120(%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    4120(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4120(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4120(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GenQueriesARB), .-GL_PREFIX(GenQueriesARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetQueryObjectivARB)
+       .type   GL_PREFIX(GetQueryObjectivARB), @function
+GL_PREFIX(GetQueryObjectivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4128(%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    4128(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4128(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4128(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetQueryObjectivARB), .-GL_PREFIX(GetQueryObjectivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetQueryObjectuivARB)
+       .type   GL_PREFIX(GetQueryObjectuivARB), @function
+GL_PREFIX(GetQueryObjectuivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4136(%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    4136(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4136(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4136(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetQueryObjectuivARB), .-GL_PREFIX(GetQueryObjectuivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetQueryivARB)
+       .type   GL_PREFIX(GetQueryivARB), @function
+GL_PREFIX(GetQueryivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4144(%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    4144(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4144(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4144(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetQueryivARB), .-GL_PREFIX(GetQueryivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(IsQueryARB)
+       .type   GL_PREFIX(IsQueryARB), @function
+GL_PREFIX(IsQueryARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4152(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4152(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4152(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4152(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(IsQueryARB), .-GL_PREFIX(IsQueryARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(AttachObjectARB)
+       .type   GL_PREFIX(AttachObjectARB), @function
+GL_PREFIX(AttachObjectARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4160(%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    4160(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4160(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4160(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(AttachObjectARB), .-GL_PREFIX(AttachObjectARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CompileShaderARB)
+       .type   GL_PREFIX(CompileShaderARB), @function
+GL_PREFIX(CompileShaderARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4168(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4168(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4168(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4168(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CompileShaderARB), .-GL_PREFIX(CompileShaderARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CreateProgramObjectARB)
+       .type   GL_PREFIX(CreateProgramObjectARB), @function
+GL_PREFIX(CreateProgramObjectARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4176(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    4176(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4176(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    4176(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CreateProgramObjectARB), .-GL_PREFIX(CreateProgramObjectARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CreateShaderObjectARB)
+       .type   GL_PREFIX(CreateShaderObjectARB), @function
+GL_PREFIX(CreateShaderObjectARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4184(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4184(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4184(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4184(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CreateShaderObjectARB), .-GL_PREFIX(CreateShaderObjectARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DeleteObjectARB)
+       .type   GL_PREFIX(DeleteObjectARB), @function
+GL_PREFIX(DeleteObjectARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4192(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4192(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4192(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4192(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DeleteObjectARB), .-GL_PREFIX(DeleteObjectARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DetachObjectARB)
+       .type   GL_PREFIX(DetachObjectARB), @function
+GL_PREFIX(DetachObjectARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4200(%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    4200(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4200(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4200(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DetachObjectARB), .-GL_PREFIX(DetachObjectARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetActiveUniformARB)
+       .type   GL_PREFIX(GetActiveUniformARB), @function
+GL_PREFIX(GetActiveUniformARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4208(%rax), %r11
+       jmp     *%r11
+#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    4208(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4208(%rax), %r11
+       jmp     *%r11
+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    4208(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetActiveUniformARB), .-GL_PREFIX(GetActiveUniformARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetAttachedObjectsARB)
+       .type   GL_PREFIX(GetAttachedObjectsARB), @function
+GL_PREFIX(GetAttachedObjectsARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4216(%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    4216(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4216(%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    4216(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetAttachedObjectsARB), .-GL_PREFIX(GetAttachedObjectsARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetHandleARB)
+       .type   GL_PREFIX(GetHandleARB), @function
+GL_PREFIX(GetHandleARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4224(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4224(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4224(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4224(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetHandleARB), .-GL_PREFIX(GetHandleARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetInfoLogARB)
+       .type   GL_PREFIX(GetInfoLogARB), @function
+GL_PREFIX(GetInfoLogARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4232(%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    4232(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4232(%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    4232(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetInfoLogARB), .-GL_PREFIX(GetInfoLogARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetObjectParameterfvARB)
+       .type   GL_PREFIX(GetObjectParameterfvARB), @function
+GL_PREFIX(GetObjectParameterfvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4240(%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    4240(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4240(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4240(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetObjectParameterfvARB), .-GL_PREFIX(GetObjectParameterfvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetObjectParameterivARB)
+       .type   GL_PREFIX(GetObjectParameterivARB), @function
+GL_PREFIX(GetObjectParameterivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4248(%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    4248(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4248(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4248(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetObjectParameterivARB), .-GL_PREFIX(GetObjectParameterivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetShaderSourceARB)
+       .type   GL_PREFIX(GetShaderSourceARB), @function
+GL_PREFIX(GetShaderSourceARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4256(%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    4256(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4256(%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    4256(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetShaderSourceARB), .-GL_PREFIX(GetShaderSourceARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetUniformLocationARB)
+       .type   GL_PREFIX(GetUniformLocationARB), @function
+GL_PREFIX(GetUniformLocationARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4264(%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    4264(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4264(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4264(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetUniformLocationARB), .-GL_PREFIX(GetUniformLocationARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetUniformfvARB)
+       .type   GL_PREFIX(GetUniformfvARB), @function
+GL_PREFIX(GetUniformfvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4272(%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    4272(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4272(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4272(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetUniformfvARB), .-GL_PREFIX(GetUniformfvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetUniformivARB)
+       .type   GL_PREFIX(GetUniformivARB), @function
+GL_PREFIX(GetUniformivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4280(%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    4280(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4280(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4280(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetUniformivARB), .-GL_PREFIX(GetUniformivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(LinkProgramARB)
+       .type   GL_PREFIX(LinkProgramARB), @function
+GL_PREFIX(LinkProgramARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4288(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4288(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4288(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4288(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(LinkProgramARB), .-GL_PREFIX(LinkProgramARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ShaderSourceARB)
+       .type   GL_PREFIX(ShaderSourceARB), @function
+GL_PREFIX(ShaderSourceARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4296(%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    4296(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4296(%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    4296(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ShaderSourceARB), .-GL_PREFIX(ShaderSourceARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Uniform1fARB)
+       .type   GL_PREFIX(Uniform1fARB), @function
+GL_PREFIX(Uniform1fARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4304(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    4304(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4304(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    4304(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Uniform1fARB), .-GL_PREFIX(Uniform1fARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Uniform1fvARB)
+       .type   GL_PREFIX(Uniform1fvARB), @function
+GL_PREFIX(Uniform1fvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4312(%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    4312(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4312(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4312(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Uniform1fvARB), .-GL_PREFIX(Uniform1fvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Uniform1iARB)
+       .type   GL_PREFIX(Uniform1iARB), @function
+GL_PREFIX(Uniform1iARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4320(%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    4320(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4320(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4320(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Uniform1iARB), .-GL_PREFIX(Uniform1iARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Uniform1ivARB)
+       .type   GL_PREFIX(Uniform1ivARB), @function
+GL_PREFIX(Uniform1ivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4328(%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    4328(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4328(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4328(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Uniform1ivARB), .-GL_PREFIX(Uniform1ivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Uniform2fARB)
+       .type   GL_PREFIX(Uniform2fARB), @function
+GL_PREFIX(Uniform2fARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4336(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    4336(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4336(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    4336(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Uniform2fARB), .-GL_PREFIX(Uniform2fARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Uniform2fvARB)
+       .type   GL_PREFIX(Uniform2fvARB), @function
+GL_PREFIX(Uniform2fvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4344(%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    4344(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4344(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4344(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Uniform2fvARB), .-GL_PREFIX(Uniform2fvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Uniform2iARB)
+       .type   GL_PREFIX(Uniform2iARB), @function
+GL_PREFIX(Uniform2iARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4352(%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    4352(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4352(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4352(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Uniform2iARB), .-GL_PREFIX(Uniform2iARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Uniform2ivARB)
+       .type   GL_PREFIX(Uniform2ivARB), @function
+GL_PREFIX(Uniform2ivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4360(%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    4360(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4360(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4360(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Uniform2ivARB), .-GL_PREFIX(Uniform2ivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Uniform3fARB)
+       .type   GL_PREFIX(Uniform3fARB), @function
+GL_PREFIX(Uniform3fARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4368(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    4368(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4368(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    4368(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Uniform3fARB), .-GL_PREFIX(Uniform3fARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Uniform3fvARB)
+       .type   GL_PREFIX(Uniform3fvARB), @function
+GL_PREFIX(Uniform3fvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4376(%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    4376(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4376(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4376(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Uniform3fvARB), .-GL_PREFIX(Uniform3fvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Uniform3iARB)
+       .type   GL_PREFIX(Uniform3iARB), @function
+GL_PREFIX(Uniform3iARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4384(%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    4384(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4384(%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    4384(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Uniform3iARB), .-GL_PREFIX(Uniform3iARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Uniform3ivARB)
+       .type   GL_PREFIX(Uniform3ivARB), @function
+GL_PREFIX(Uniform3ivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4392(%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    4392(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4392(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4392(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Uniform3ivARB), .-GL_PREFIX(Uniform3ivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Uniform4fARB)
+       .type   GL_PREFIX(Uniform4fARB), @function
+GL_PREFIX(Uniform4fARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4400(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       movq    %xmm3, 32(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    32(%rsp), %xmm3
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    4400(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4400(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       movq    %xmm3, 32(%rsp)
+       call    _glapi_get_dispatch
+       movq    32(%rsp), %xmm3
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    4400(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Uniform4fARB), .-GL_PREFIX(Uniform4fARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Uniform4fvARB)
+       .type   GL_PREFIX(Uniform4fvARB), @function
+GL_PREFIX(Uniform4fvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4408(%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    4408(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4408(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4408(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Uniform4fvARB), .-GL_PREFIX(Uniform4fvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Uniform4iARB)
+       .type   GL_PREFIX(Uniform4iARB), @function
+GL_PREFIX(Uniform4iARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4416(%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    4416(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4416(%rax), %r11
+       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    4416(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Uniform4iARB), .-GL_PREFIX(Uniform4iARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(Uniform4ivARB)
+       .type   GL_PREFIX(Uniform4ivARB), @function
+GL_PREFIX(Uniform4ivARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4424(%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    4424(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4424(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4424(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(Uniform4ivARB), .-GL_PREFIX(Uniform4ivARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(UniformMatrix2fvARB)
+       .type   GL_PREFIX(UniformMatrix2fvARB), @function
+GL_PREFIX(UniformMatrix2fvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4432(%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    4432(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4432(%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    4432(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(UniformMatrix2fvARB), .-GL_PREFIX(UniformMatrix2fvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(UniformMatrix3fvARB)
+       .type   GL_PREFIX(UniformMatrix3fvARB), @function
+GL_PREFIX(UniformMatrix3fvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4440(%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    4440(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4440(%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    4440(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(UniformMatrix3fvARB), .-GL_PREFIX(UniformMatrix3fvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(UniformMatrix4fvARB)
+       .type   GL_PREFIX(UniformMatrix4fvARB), @function
+GL_PREFIX(UniformMatrix4fvARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4448(%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    4448(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4448(%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    4448(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(UniformMatrix4fvARB), .-GL_PREFIX(UniformMatrix4fvARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(UseProgramObjectARB)
+       .type   GL_PREFIX(UseProgramObjectARB), @function
+GL_PREFIX(UseProgramObjectARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4456(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4456(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4456(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4456(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(UseProgramObjectARB), .-GL_PREFIX(UseProgramObjectARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ValidateProgramARB)
+       .type   GL_PREFIX(ValidateProgramARB), @function
+GL_PREFIX(ValidateProgramARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4464(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4464(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4464(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4464(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ValidateProgramARB), .-GL_PREFIX(ValidateProgramARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BindAttribLocationARB)
+       .type   GL_PREFIX(BindAttribLocationARB), @function
+GL_PREFIX(BindAttribLocationARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4472(%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    4472(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4472(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4472(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BindAttribLocationARB), .-GL_PREFIX(BindAttribLocationARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetActiveAttribARB)
+       .type   GL_PREFIX(GetActiveAttribARB), @function
+GL_PREFIX(GetActiveAttribARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4480(%rax), %r11
+       jmp     *%r11
+#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    4480(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4480(%rax), %r11
+       jmp     *%r11
+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    4480(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetActiveAttribARB), .-GL_PREFIX(GetActiveAttribARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetAttribLocationARB)
+       .type   GL_PREFIX(GetAttribLocationARB), @function
+GL_PREFIX(GetAttribLocationARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4488(%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    4488(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4488(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4488(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetAttribLocationARB), .-GL_PREFIX(GetAttribLocationARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DrawBuffersARB)
+       .type   GL_PREFIX(DrawBuffersARB), @function
+GL_PREFIX(DrawBuffersARB):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4496(%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    4496(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4496(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4496(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DrawBuffersARB), .-GL_PREFIX(DrawBuffersARB)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RenderbufferStorageMultisample)
+       .type   GL_PREFIX(RenderbufferStorageMultisample), @function
+GL_PREFIX(RenderbufferStorageMultisample):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4504(%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    4504(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4504(%rax), %r11
+       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    4504(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RenderbufferStorageMultisample), .-GL_PREFIX(RenderbufferStorageMultisample)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(FlushMappedBufferRange)
+       .type   GL_PREFIX(FlushMappedBufferRange), @function
+GL_PREFIX(FlushMappedBufferRange):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4512(%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    4512(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4512(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4512(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(FlushMappedBufferRange), .-GL_PREFIX(FlushMappedBufferRange)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MapBufferRange)
+       .type   GL_PREFIX(MapBufferRange), @function
+GL_PREFIX(MapBufferRange):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4520(%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    4520(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4520(%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    4520(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MapBufferRange), .-GL_PREFIX(MapBufferRange)
+
+       .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    4528(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4528(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4528(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4528(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BindVertexArray), .-GL_PREFIX(BindVertexArray)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GenVertexArrays)
+       .type   GL_PREFIX(GenVertexArrays), @function
+GL_PREFIX(GenVertexArrays):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4536(%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    4536(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4536(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4536(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GenVertexArrays), .-GL_PREFIX(GenVertexArrays)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CopyBufferSubData)
+       .type   GL_PREFIX(CopyBufferSubData), @function
+GL_PREFIX(CopyBufferSubData):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4544(%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    4544(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4544(%rax), %r11
+       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    4544(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CopyBufferSubData), .-GL_PREFIX(CopyBufferSubData)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ClientWaitSync)
+       .type   GL_PREFIX(ClientWaitSync), @function
+GL_PREFIX(ClientWaitSync):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4552(%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    4552(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4552(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4552(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ClientWaitSync), .-GL_PREFIX(ClientWaitSync)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DeleteSync)
+       .type   GL_PREFIX(DeleteSync), @function
+GL_PREFIX(DeleteSync):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4560(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4560(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4560(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4560(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DeleteSync), .-GL_PREFIX(DeleteSync)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(FenceSync)
+       .type   GL_PREFIX(FenceSync), @function
+GL_PREFIX(FenceSync):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4568(%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    4568(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4568(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4568(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(FenceSync), .-GL_PREFIX(FenceSync)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetInteger64v)
+       .type   GL_PREFIX(GetInteger64v), @function
+GL_PREFIX(GetInteger64v):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4576(%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    4576(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       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(GetInteger64v), .-GL_PREFIX(GetInteger64v)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetSynciv)
+       .type   GL_PREFIX(GetSynciv), @function
+GL_PREFIX(GetSynciv):
+#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   %r8
+       call    _x86_64_get_dispatch@PLT
+       popq    %r8
+       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
+       pushq   %rdx
+       pushq   %rcx
+       pushq   %r8
+       call    _glapi_get_dispatch
+       popq    %r8
+       popq    %rcx
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4584(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetSynciv), .-GL_PREFIX(GetSynciv)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(IsSync)
+       .type   GL_PREFIX(IsSync), @function
+GL_PREFIX(IsSync):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4592(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4592(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4592(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4592(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(IsSync), .-GL_PREFIX(IsSync)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WaitSync)
+       .type   GL_PREFIX(WaitSync), @function
+GL_PREFIX(WaitSync):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4600(%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    4600(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4600(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4600(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WaitSync), .-GL_PREFIX(WaitSync)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DrawElementsBaseVertex)
+       .type   GL_PREFIX(DrawElementsBaseVertex), @function
+GL_PREFIX(DrawElementsBaseVertex):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4608(%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    4608(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4608(%rax), %r11
+       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    4608(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DrawElementsBaseVertex), .-GL_PREFIX(DrawElementsBaseVertex)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DrawRangeElementsBaseVertex)
+       .type   GL_PREFIX(DrawRangeElementsBaseVertex), @function
+GL_PREFIX(DrawRangeElementsBaseVertex):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4616(%rax), %r11
+       jmp     *%r11
+#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    4616(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4616(%rax), %r11
+       jmp     *%r11
+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    4616(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DrawRangeElementsBaseVertex), .-GL_PREFIX(DrawRangeElementsBaseVertex)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiDrawElementsBaseVertex)
+       .type   GL_PREFIX(MultiDrawElementsBaseVertex), @function
+GL_PREFIX(MultiDrawElementsBaseVertex):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4624(%rax), %r11
+       jmp     *%r11
+#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    4624(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4624(%rax), %r11
+       jmp     *%r11
+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    4624(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiDrawElementsBaseVertex), .-GL_PREFIX(MultiDrawElementsBaseVertex)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PolygonOffsetEXT)
+       .type   GL_PREFIX(PolygonOffsetEXT), @function
+GL_PREFIX(PolygonOffsetEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4632(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    4632(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4632(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    4632(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PolygonOffsetEXT), .-GL_PREFIX(PolygonOffsetEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_580)
+       .type   GL_PREFIX(_dispatch_stub_580), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_580))
+GL_PREFIX(_dispatch_stub_580):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4640(%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    4640(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4640(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4640(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_580), .-GL_PREFIX(_dispatch_stub_580)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_581)
+       .type   GL_PREFIX(_dispatch_stub_581), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_581))
+GL_PREFIX(_dispatch_stub_581):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4648(%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    4648(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4648(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4648(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_581), .-GL_PREFIX(_dispatch_stub_581)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_582)
+       .type   GL_PREFIX(_dispatch_stub_582), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_582))
+GL_PREFIX(_dispatch_stub_582):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4656(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    4656(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4656(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    4656(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_582), .-GL_PREFIX(_dispatch_stub_582)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_583)
+       .type   GL_PREFIX(_dispatch_stub_583), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_583))
+GL_PREFIX(_dispatch_stub_583):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4664(%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    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
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4664(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_583), .-GL_PREFIX(_dispatch_stub_583)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_584)
+       .type   GL_PREFIX(_dispatch_stub_584), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_584))
+GL_PREFIX(_dispatch_stub_584):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4672(%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    4672(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4672(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4672(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_584), .-GL_PREFIX(_dispatch_stub_584)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_585)
+       .type   GL_PREFIX(_dispatch_stub_585), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_585))
+GL_PREFIX(_dispatch_stub_585):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4680(%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    4680(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4680(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4680(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_585), .-GL_PREFIX(_dispatch_stub_585)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_586)
+       .type   GL_PREFIX(_dispatch_stub_586), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_586))
+GL_PREFIX(_dispatch_stub_586):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4688(%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    4688(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4688(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4688(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_586), .-GL_PREFIX(_dispatch_stub_586)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_587)
+       .type   GL_PREFIX(_dispatch_stub_587), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_587))
+GL_PREFIX(_dispatch_stub_587):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4696(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4696(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4696(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4696(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_587), .-GL_PREFIX(_dispatch_stub_587)
+
+       .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    4704(%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    4704(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4704(%rax), %r11
+       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    4704(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ColorPointerEXT), .-GL_PREFIX(ColorPointerEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EdgeFlagPointerEXT)
+       .type   GL_PREFIX(EdgeFlagPointerEXT), @function
+GL_PREFIX(EdgeFlagPointerEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4712(%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    4712(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4712(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4712(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EdgeFlagPointerEXT), .-GL_PREFIX(EdgeFlagPointerEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(IndexPointerEXT)
+       .type   GL_PREFIX(IndexPointerEXT), @function
+GL_PREFIX(IndexPointerEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4720(%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    4720(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4720(%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    4720(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(IndexPointerEXT), .-GL_PREFIX(IndexPointerEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(NormalPointerEXT)
+       .type   GL_PREFIX(NormalPointerEXT), @function
+GL_PREFIX(NormalPointerEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4728(%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    4728(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4728(%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    4728(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(NormalPointerEXT), .-GL_PREFIX(NormalPointerEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexCoordPointerEXT)
+       .type   GL_PREFIX(TexCoordPointerEXT), @function
+GL_PREFIX(TexCoordPointerEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4736(%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    4736(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4736(%rax), %r11
+       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    4736(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexCoordPointerEXT), .-GL_PREFIX(TexCoordPointerEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexPointerEXT)
+       .type   GL_PREFIX(VertexPointerEXT), @function
+GL_PREFIX(VertexPointerEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4744(%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    4744(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4744(%rax), %r11
+       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    4744(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexPointerEXT), .-GL_PREFIX(VertexPointerEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PointParameterfEXT)
+       .type   GL_PREFIX(PointParameterfEXT), @function
+GL_PREFIX(PointParameterfEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4752(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    4752(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4752(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    4752(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PointParameterfEXT), .-GL_PREFIX(PointParameterfEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PointParameterfvEXT)
+       .type   GL_PREFIX(PointParameterfvEXT), @function
+GL_PREFIX(PointParameterfvEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4760(%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    4760(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4760(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4760(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PointParameterfvEXT), .-GL_PREFIX(PointParameterfvEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(LockArraysEXT)
+       .type   GL_PREFIX(LockArraysEXT), @function
+GL_PREFIX(LockArraysEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4768(%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    4768(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4768(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4768(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(LockArraysEXT), .-GL_PREFIX(LockArraysEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(UnlockArraysEXT)
+       .type   GL_PREFIX(UnlockArraysEXT), @function
+GL_PREFIX(UnlockArraysEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4776(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    4776(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4776(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    4776(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(UnlockArraysEXT), .-GL_PREFIX(UnlockArraysEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_598)
+       .type   GL_PREFIX(_dispatch_stub_598), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_598))
+GL_PREFIX(_dispatch_stub_598):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4784(%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    4784(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4784(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4784(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_598), .-GL_PREFIX(_dispatch_stub_598)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_599)
+       .type   GL_PREFIX(_dispatch_stub_599), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_599))
+GL_PREFIX(_dispatch_stub_599):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4792(%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    4792(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4792(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    4792(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_599), .-GL_PREFIX(_dispatch_stub_599)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SecondaryColor3bEXT)
+       .type   GL_PREFIX(SecondaryColor3bEXT), @function
+GL_PREFIX(SecondaryColor3bEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4800(%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    4800(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4800(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4800(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(SecondaryColor3bEXT), .-GL_PREFIX(SecondaryColor3bEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SecondaryColor3bvEXT)
+       .type   GL_PREFIX(SecondaryColor3bvEXT), @function
+GL_PREFIX(SecondaryColor3bvEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4808(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       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
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4808(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(SecondaryColor3bvEXT), .-GL_PREFIX(SecondaryColor3bvEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SecondaryColor3dEXT)
+       .type   GL_PREFIX(SecondaryColor3dEXT), @function
+GL_PREFIX(SecondaryColor3dEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4816(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    4816(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4816(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    4816(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(SecondaryColor3dEXT), .-GL_PREFIX(SecondaryColor3dEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SecondaryColor3dvEXT)
+       .type   GL_PREFIX(SecondaryColor3dvEXT), @function
+GL_PREFIX(SecondaryColor3dvEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4824(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       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
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4824(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(SecondaryColor3dvEXT), .-GL_PREFIX(SecondaryColor3dvEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SecondaryColor3fEXT)
+       .type   GL_PREFIX(SecondaryColor3fEXT), @function
+GL_PREFIX(SecondaryColor3fEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4832(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    4832(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4832(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    4832(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(SecondaryColor3fEXT), .-GL_PREFIX(SecondaryColor3fEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SecondaryColor3fvEXT)
+       .type   GL_PREFIX(SecondaryColor3fvEXT), @function
+GL_PREFIX(SecondaryColor3fvEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4840(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       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
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4840(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(SecondaryColor3fvEXT), .-GL_PREFIX(SecondaryColor3fvEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SecondaryColor3iEXT)
+       .type   GL_PREFIX(SecondaryColor3iEXT), @function
+GL_PREFIX(SecondaryColor3iEXT):
+#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(SecondaryColor3iEXT), .-GL_PREFIX(SecondaryColor3iEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SecondaryColor3ivEXT)
+       .type   GL_PREFIX(SecondaryColor3ivEXT), @function
+GL_PREFIX(SecondaryColor3ivEXT):
+#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(SecondaryColor3ivEXT), .-GL_PREFIX(SecondaryColor3ivEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SecondaryColor3sEXT)
+       .type   GL_PREFIX(SecondaryColor3sEXT), @function
+GL_PREFIX(SecondaryColor3sEXT):
+#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(SecondaryColor3sEXT), .-GL_PREFIX(SecondaryColor3sEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SecondaryColor3svEXT)
+       .type   GL_PREFIX(SecondaryColor3svEXT), @function
+GL_PREFIX(SecondaryColor3svEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4872(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       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
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4872(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(SecondaryColor3svEXT), .-GL_PREFIX(SecondaryColor3svEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SecondaryColor3ubEXT)
+       .type   GL_PREFIX(SecondaryColor3ubEXT), @function
+GL_PREFIX(SecondaryColor3ubEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4880(%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    4880(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4880(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4880(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(SecondaryColor3ubEXT), .-GL_PREFIX(SecondaryColor3ubEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SecondaryColor3ubvEXT)
+       .type   GL_PREFIX(SecondaryColor3ubvEXT), @function
+GL_PREFIX(SecondaryColor3ubvEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4888(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       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
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4888(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(SecondaryColor3ubvEXT), .-GL_PREFIX(SecondaryColor3ubvEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SecondaryColor3uiEXT)
+       .type   GL_PREFIX(SecondaryColor3uiEXT), @function
+GL_PREFIX(SecondaryColor3uiEXT):
+#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(SecondaryColor3uiEXT), .-GL_PREFIX(SecondaryColor3uiEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SecondaryColor3uivEXT)
+       .type   GL_PREFIX(SecondaryColor3uivEXT), @function
+GL_PREFIX(SecondaryColor3uivEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4904(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       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
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4904(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(SecondaryColor3uivEXT), .-GL_PREFIX(SecondaryColor3uivEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SecondaryColor3usEXT)
+       .type   GL_PREFIX(SecondaryColor3usEXT), @function
+GL_PREFIX(SecondaryColor3usEXT):
+#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   %rdx
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdx
+       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   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4912(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(SecondaryColor3usEXT), .-GL_PREFIX(SecondaryColor3usEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SecondaryColor3usvEXT)
+       .type   GL_PREFIX(SecondaryColor3usvEXT), @function
+GL_PREFIX(SecondaryColor3usvEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4920(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4920(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4920(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4920(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(SecondaryColor3usvEXT), .-GL_PREFIX(SecondaryColor3usvEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SecondaryColorPointerEXT)
+       .type   GL_PREFIX(SecondaryColorPointerEXT), @function
+GL_PREFIX(SecondaryColorPointerEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4928(%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    4928(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4928(%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    4928(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(SecondaryColorPointerEXT), .-GL_PREFIX(SecondaryColorPointerEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiDrawArraysEXT)
+       .type   GL_PREFIX(MultiDrawArraysEXT), @function
+GL_PREFIX(MultiDrawArraysEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4936(%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    4936(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4936(%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    4936(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiDrawArraysEXT), .-GL_PREFIX(MultiDrawArraysEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(MultiDrawElementsEXT)
+       .type   GL_PREFIX(MultiDrawElementsEXT), @function
+GL_PREFIX(MultiDrawElementsEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4944(%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    4944(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4944(%rax), %r11
+       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    4944(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(MultiDrawElementsEXT), .-GL_PREFIX(MultiDrawElementsEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(FogCoordPointerEXT)
+       .type   GL_PREFIX(FogCoordPointerEXT), @function
+GL_PREFIX(FogCoordPointerEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4952(%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    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
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    4952(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(FogCoordPointerEXT), .-GL_PREFIX(FogCoordPointerEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(FogCoorddEXT)
+       .type   GL_PREFIX(FogCoorddEXT), @function
+GL_PREFIX(FogCoorddEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4960(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    4960(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4960(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _glapi_get_dispatch
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    4960(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(FogCoorddEXT), .-GL_PREFIX(FogCoorddEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(FogCoorddvEXT)
+       .type   GL_PREFIX(FogCoorddvEXT), @function
+GL_PREFIX(FogCoorddvEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4968(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4968(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4968(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4968(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(FogCoorddvEXT), .-GL_PREFIX(FogCoorddvEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(FogCoordfEXT)
+       .type   GL_PREFIX(FogCoordfEXT), @function
+GL_PREFIX(FogCoordfEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4976(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    4976(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4976(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $8, %rsp
+       movq    %xmm0, (%rsp)
+       call    _glapi_get_dispatch
+       movq    (%rsp), %xmm0
+       addq    $8, %rsp
+       movq    4976(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(FogCoordfEXT), .-GL_PREFIX(FogCoordfEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(FogCoordfvEXT)
+       .type   GL_PREFIX(FogCoordfvEXT), @function
+GL_PREFIX(FogCoordfvEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4984(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4984(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4984(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4984(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(FogCoordfvEXT), .-GL_PREFIX(FogCoordfvEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_624)
+       .type   GL_PREFIX(_dispatch_stub_624), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_624))
+GL_PREFIX(_dispatch_stub_624):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    4992(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    4992(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    4992(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    4992(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_624), .-GL_PREFIX(_dispatch_stub_624)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BlendFuncSeparateEXT)
+       .type   GL_PREFIX(BlendFuncSeparateEXT), @function
+GL_PREFIX(BlendFuncSeparateEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5000(%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    5000(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5000(%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    5000(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BlendFuncSeparateEXT), .-GL_PREFIX(BlendFuncSeparateEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(FlushVertexArrayRangeNV)
+       .type   GL_PREFIX(FlushVertexArrayRangeNV), @function
+GL_PREFIX(FlushVertexArrayRangeNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5008(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    5008(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5008(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    5008(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(FlushVertexArrayRangeNV), .-GL_PREFIX(FlushVertexArrayRangeNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexArrayRangeNV)
+       .type   GL_PREFIX(VertexArrayRangeNV), @function
+GL_PREFIX(VertexArrayRangeNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5016(%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    5016(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5016(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5016(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexArrayRangeNV), .-GL_PREFIX(VertexArrayRangeNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CombinerInputNV)
+       .type   GL_PREFIX(CombinerInputNV), @function
+GL_PREFIX(CombinerInputNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5024(%rax), %r11
+       jmp     *%r11
+#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    5024(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5024(%rax), %r11
+       jmp     *%r11
+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    5024(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CombinerInputNV), .-GL_PREFIX(CombinerInputNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CombinerOutputNV)
+       .type   GL_PREFIX(CombinerOutputNV), @function
+GL_PREFIX(CombinerOutputNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5032(%rax), %r11
+       jmp     *%r11
+#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    5032(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5032(%rax), %r11
+       jmp     *%r11
+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    5032(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CombinerOutputNV), .-GL_PREFIX(CombinerOutputNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CombinerParameterfNV)
+       .type   GL_PREFIX(CombinerParameterfNV), @function
+GL_PREFIX(CombinerParameterfNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5040(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    5040(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5040(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    5040(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CombinerParameterfNV), .-GL_PREFIX(CombinerParameterfNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CombinerParameterfvNV)
+       .type   GL_PREFIX(CombinerParameterfvNV), @function
+GL_PREFIX(CombinerParameterfvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5048(%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    5048(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5048(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5048(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CombinerParameterfvNV), .-GL_PREFIX(CombinerParameterfvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CombinerParameteriNV)
+       .type   GL_PREFIX(CombinerParameteriNV), @function
+GL_PREFIX(CombinerParameteriNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5056(%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    5056(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5056(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5056(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CombinerParameteriNV), .-GL_PREFIX(CombinerParameteriNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CombinerParameterivNV)
+       .type   GL_PREFIX(CombinerParameterivNV), @function
+GL_PREFIX(CombinerParameterivNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5064(%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    5064(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5064(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5064(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CombinerParameterivNV), .-GL_PREFIX(CombinerParameterivNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(FinalCombinerInputNV)
+       .type   GL_PREFIX(FinalCombinerInputNV), @function
+GL_PREFIX(FinalCombinerInputNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5072(%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    5072(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5072(%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    5072(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(FinalCombinerInputNV), .-GL_PREFIX(FinalCombinerInputNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetCombinerInputParameterfvNV)
+       .type   GL_PREFIX(GetCombinerInputParameterfvNV), @function
+GL_PREFIX(GetCombinerInputParameterfvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5080(%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    5080(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5080(%rax), %r11
+       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    5080(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetCombinerInputParameterfvNV), .-GL_PREFIX(GetCombinerInputParameterfvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetCombinerInputParameterivNV)
+       .type   GL_PREFIX(GetCombinerInputParameterivNV), @function
+GL_PREFIX(GetCombinerInputParameterivNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5088(%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    5088(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5088(%rax), %r11
+       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    5088(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetCombinerInputParameterivNV), .-GL_PREFIX(GetCombinerInputParameterivNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetCombinerOutputParameterfvNV)
+       .type   GL_PREFIX(GetCombinerOutputParameterfvNV), @function
+GL_PREFIX(GetCombinerOutputParameterfvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5096(%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    5096(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5096(%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    5096(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetCombinerOutputParameterfvNV), .-GL_PREFIX(GetCombinerOutputParameterfvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetCombinerOutputParameterivNV)
+       .type   GL_PREFIX(GetCombinerOutputParameterivNV), @function
+GL_PREFIX(GetCombinerOutputParameterivNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5104(%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    5104(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5104(%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    5104(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetCombinerOutputParameterivNV), .-GL_PREFIX(GetCombinerOutputParameterivNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetFinalCombinerInputParameterfvNV)
+       .type   GL_PREFIX(GetFinalCombinerInputParameterfvNV), @function
+GL_PREFIX(GetFinalCombinerInputParameterfvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5112(%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    5112(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5112(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5112(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetFinalCombinerInputParameterfvNV), .-GL_PREFIX(GetFinalCombinerInputParameterfvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetFinalCombinerInputParameterivNV)
+       .type   GL_PREFIX(GetFinalCombinerInputParameterivNV), @function
+GL_PREFIX(GetFinalCombinerInputParameterivNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5120(%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    5120(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5120(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5120(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetFinalCombinerInputParameterivNV), .-GL_PREFIX(GetFinalCombinerInputParameterivNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ResizeBuffersMESA)
+       .type   GL_PREFIX(ResizeBuffersMESA), @function
+GL_PREFIX(ResizeBuffersMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5128(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    5128(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5128(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    5128(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ResizeBuffersMESA), .-GL_PREFIX(ResizeBuffersMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos2dMESA)
+       .type   GL_PREFIX(WindowPos2dMESA), @function
+GL_PREFIX(WindowPos2dMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5136(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    5136(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5136(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    5136(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos2dMESA), .-GL_PREFIX(WindowPos2dMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos2dvMESA)
+       .type   GL_PREFIX(WindowPos2dvMESA), @function
+GL_PREFIX(WindowPos2dvMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5144(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5144(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5144(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5144(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos2dvMESA), .-GL_PREFIX(WindowPos2dvMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos2fMESA)
+       .type   GL_PREFIX(WindowPos2fMESA), @function
+GL_PREFIX(WindowPos2fMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5152(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    5152(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5152(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    5152(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos2fMESA), .-GL_PREFIX(WindowPos2fMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos2fvMESA)
+       .type   GL_PREFIX(WindowPos2fvMESA), @function
+GL_PREFIX(WindowPos2fvMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5160(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5160(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5160(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5160(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos2fvMESA), .-GL_PREFIX(WindowPos2fvMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos2iMESA)
+       .type   GL_PREFIX(WindowPos2iMESA), @function
+GL_PREFIX(WindowPos2iMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5168(%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    5168(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5168(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5168(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos2iMESA), .-GL_PREFIX(WindowPos2iMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos2ivMESA)
+       .type   GL_PREFIX(WindowPos2ivMESA), @function
+GL_PREFIX(WindowPos2ivMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5176(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5176(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5176(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5176(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos2ivMESA), .-GL_PREFIX(WindowPos2ivMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos2sMESA)
+       .type   GL_PREFIX(WindowPos2sMESA), @function
+GL_PREFIX(WindowPos2sMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5184(%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    5184(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5184(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5184(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos2sMESA), .-GL_PREFIX(WindowPos2sMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos2svMESA)
+       .type   GL_PREFIX(WindowPos2svMESA), @function
+GL_PREFIX(WindowPos2svMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5192(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5192(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5192(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5192(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos2svMESA), .-GL_PREFIX(WindowPos2svMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos3dMESA)
+       .type   GL_PREFIX(WindowPos3dMESA), @function
+GL_PREFIX(WindowPos3dMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5200(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    5200(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5200(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    5200(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos3dMESA), .-GL_PREFIX(WindowPos3dMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos3dvMESA)
+       .type   GL_PREFIX(WindowPos3dvMESA), @function
+GL_PREFIX(WindowPos3dvMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5208(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5208(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5208(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5208(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos3dvMESA), .-GL_PREFIX(WindowPos3dvMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos3fMESA)
+       .type   GL_PREFIX(WindowPos3fMESA), @function
+GL_PREFIX(WindowPos3fMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5216(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    5216(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5216(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $24, %rsp
+       movq    5216(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos3fMESA), .-GL_PREFIX(WindowPos3fMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos3fvMESA)
+       .type   GL_PREFIX(WindowPos3fvMESA), @function
+GL_PREFIX(WindowPos3fvMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5224(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5224(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5224(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5224(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos3fvMESA), .-GL_PREFIX(WindowPos3fvMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos3iMESA)
+       .type   GL_PREFIX(WindowPos3iMESA), @function
+GL_PREFIX(WindowPos3iMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5232(%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    5232(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5232(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5232(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos3iMESA), .-GL_PREFIX(WindowPos3iMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos3ivMESA)
+       .type   GL_PREFIX(WindowPos3ivMESA), @function
+GL_PREFIX(WindowPos3ivMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5240(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5240(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5240(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5240(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos3ivMESA), .-GL_PREFIX(WindowPos3ivMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos3sMESA)
+       .type   GL_PREFIX(WindowPos3sMESA), @function
+GL_PREFIX(WindowPos3sMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5248(%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    5248(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5248(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5248(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos3sMESA), .-GL_PREFIX(WindowPos3sMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos3svMESA)
+       .type   GL_PREFIX(WindowPos3svMESA), @function
+GL_PREFIX(WindowPos3svMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5256(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5256(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5256(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5256(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos3svMESA), .-GL_PREFIX(WindowPos3svMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos4dMESA)
+       .type   GL_PREFIX(WindowPos4dMESA), @function
+GL_PREFIX(WindowPos4dMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5264(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    5264(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5264(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    5264(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos4dMESA), .-GL_PREFIX(WindowPos4dMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos4dvMESA)
+       .type   GL_PREFIX(WindowPos4dvMESA), @function
+GL_PREFIX(WindowPos4dvMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5272(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5272(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5272(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5272(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos4dvMESA), .-GL_PREFIX(WindowPos4dvMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos4fMESA)
+       .type   GL_PREFIX(WindowPos4fMESA), @function
+GL_PREFIX(WindowPos4fMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5280(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    5280(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5280(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %xmm0, (%rsp)
+       movq    %xmm1, 8(%rsp)
+       movq    %xmm2, 16(%rsp)
+       movq    %xmm3, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm3
+       movq    16(%rsp), %xmm2
+       movq    8(%rsp), %xmm1
+       movq    (%rsp), %xmm0
+       addq    $40, %rsp
+       movq    5280(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos4fMESA), .-GL_PREFIX(WindowPos4fMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos4fvMESA)
+       .type   GL_PREFIX(WindowPos4fvMESA), @function
+GL_PREFIX(WindowPos4fvMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5288(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5288(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5288(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5288(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos4fvMESA), .-GL_PREFIX(WindowPos4fvMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos4iMESA)
+       .type   GL_PREFIX(WindowPos4iMESA), @function
+GL_PREFIX(WindowPos4iMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5296(%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    5296(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5296(%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    5296(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos4iMESA), .-GL_PREFIX(WindowPos4iMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos4ivMESA)
+       .type   GL_PREFIX(WindowPos4ivMESA), @function
+GL_PREFIX(WindowPos4ivMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5304(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5304(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5304(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5304(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos4ivMESA), .-GL_PREFIX(WindowPos4ivMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos4sMESA)
+       .type   GL_PREFIX(WindowPos4sMESA), @function
+GL_PREFIX(WindowPos4sMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5312(%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    5312(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5312(%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    5312(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos4sMESA), .-GL_PREFIX(WindowPos4sMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(WindowPos4svMESA)
+       .type   GL_PREFIX(WindowPos4svMESA), @function
+GL_PREFIX(WindowPos4svMESA):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5320(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5320(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5320(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5320(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(WindowPos4svMESA), .-GL_PREFIX(WindowPos4svMESA)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_666)
+       .type   GL_PREFIX(_dispatch_stub_666), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_666))
+GL_PREFIX(_dispatch_stub_666):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5328(%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    5328(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5328(%rax), %r11
+       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    5328(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_666), .-GL_PREFIX(_dispatch_stub_666)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_667)
+       .type   GL_PREFIX(_dispatch_stub_667), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_667))
+GL_PREFIX(_dispatch_stub_667):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5336(%rax), %r11
+       jmp     *%r11
+#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    5336(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5336(%rax), %r11
+       jmp     *%r11
+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    5336(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_667), .-GL_PREFIX(_dispatch_stub_667)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_668)
+       .type   GL_PREFIX(_dispatch_stub_668), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_668))
+GL_PREFIX(_dispatch_stub_668):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5344(%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    5344(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5344(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5344(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_668), .-GL_PREFIX(_dispatch_stub_668)
+
+       .p2align        4,,15
+       .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    5352(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5352(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5352(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5352(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_669), .-GL_PREFIX(_dispatch_stub_669)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_670)
+       .type   GL_PREFIX(_dispatch_stub_670), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_670))
+GL_PREFIX(_dispatch_stub_670):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5360(%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    5360(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5360(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5360(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_670), .-GL_PREFIX(_dispatch_stub_670)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_671)
+       .type   GL_PREFIX(_dispatch_stub_671), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_671))
+GL_PREFIX(_dispatch_stub_671):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5368(%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    5368(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5368(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5368(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_671), .-GL_PREFIX(_dispatch_stub_671)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_672)
+       .type   GL_PREFIX(_dispatch_stub_672), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_672))
+GL_PREFIX(_dispatch_stub_672):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5376(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5376(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5376(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5376(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_672), .-GL_PREFIX(_dispatch_stub_672)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_673)
+       .type   GL_PREFIX(_dispatch_stub_673), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_673))
+GL_PREFIX(_dispatch_stub_673):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5384(%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    5384(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5384(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5384(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_673), .-GL_PREFIX(_dispatch_stub_673)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_674)
+       .type   GL_PREFIX(_dispatch_stub_674), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_674))
+GL_PREFIX(_dispatch_stub_674):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5392(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5392(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5392(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5392(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_674), .-GL_PREFIX(_dispatch_stub_674)
+
+       .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    5400(%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    5400(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5400(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5400(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(AreProgramsResidentNV), .-GL_PREFIX(AreProgramsResidentNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BindProgramNV)
+       .type   GL_PREFIX(BindProgramNV), @function
+GL_PREFIX(BindProgramNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5408(%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    5408(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5408(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5408(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BindProgramNV), .-GL_PREFIX(BindProgramNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DeleteProgramsNV)
+       .type   GL_PREFIX(DeleteProgramsNV), @function
+GL_PREFIX(DeleteProgramsNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5416(%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    5416(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5416(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5416(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DeleteProgramsNV), .-GL_PREFIX(DeleteProgramsNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ExecuteProgramNV)
+       .type   GL_PREFIX(ExecuteProgramNV), @function
+GL_PREFIX(ExecuteProgramNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5424(%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    5424(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5424(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5424(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ExecuteProgramNV), .-GL_PREFIX(ExecuteProgramNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GenProgramsNV)
+       .type   GL_PREFIX(GenProgramsNV), @function
+GL_PREFIX(GenProgramsNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5432(%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    5432(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5432(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5432(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GenProgramsNV), .-GL_PREFIX(GenProgramsNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetProgramParameterdvNV)
+       .type   GL_PREFIX(GetProgramParameterdvNV), @function
+GL_PREFIX(GetProgramParameterdvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5440(%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    5440(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5440(%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    5440(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetProgramParameterdvNV), .-GL_PREFIX(GetProgramParameterdvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetProgramParameterfvNV)
+       .type   GL_PREFIX(GetProgramParameterfvNV), @function
+GL_PREFIX(GetProgramParameterfvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5448(%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    5448(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5448(%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    5448(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetProgramParameterfvNV), .-GL_PREFIX(GetProgramParameterfvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetProgramStringNV)
+       .type   GL_PREFIX(GetProgramStringNV), @function
+GL_PREFIX(GetProgramStringNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5456(%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    5456(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5456(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5456(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetProgramStringNV), .-GL_PREFIX(GetProgramStringNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetProgramivNV)
+       .type   GL_PREFIX(GetProgramivNV), @function
+GL_PREFIX(GetProgramivNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5464(%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    5464(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5464(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5464(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetProgramivNV), .-GL_PREFIX(GetProgramivNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetTrackMatrixivNV)
+       .type   GL_PREFIX(GetTrackMatrixivNV), @function
+GL_PREFIX(GetTrackMatrixivNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5472(%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    5472(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5472(%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    5472(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetTrackMatrixivNV), .-GL_PREFIX(GetTrackMatrixivNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetVertexAttribPointervNV)
+       .type   GL_PREFIX(GetVertexAttribPointervNV), @function
+GL_PREFIX(GetVertexAttribPointervNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5480(%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    5480(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5480(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5480(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetVertexAttribPointervNV), .-GL_PREFIX(GetVertexAttribPointervNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetVertexAttribdvNV)
+       .type   GL_PREFIX(GetVertexAttribdvNV), @function
+GL_PREFIX(GetVertexAttribdvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5488(%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    5488(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5488(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5488(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetVertexAttribdvNV), .-GL_PREFIX(GetVertexAttribdvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetVertexAttribfvNV)
+       .type   GL_PREFIX(GetVertexAttribfvNV), @function
+GL_PREFIX(GetVertexAttribfvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5496(%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    5496(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5496(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5496(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetVertexAttribfvNV), .-GL_PREFIX(GetVertexAttribfvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetVertexAttribivNV)
+       .type   GL_PREFIX(GetVertexAttribivNV), @function
+GL_PREFIX(GetVertexAttribivNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5504(%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    5504(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5504(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5504(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetVertexAttribivNV), .-GL_PREFIX(GetVertexAttribivNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(IsProgramNV)
+       .type   GL_PREFIX(IsProgramNV), @function
+GL_PREFIX(IsProgramNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5512(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5512(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5512(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5512(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(IsProgramNV), .-GL_PREFIX(IsProgramNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(LoadProgramNV)
+       .type   GL_PREFIX(LoadProgramNV), @function
+GL_PREFIX(LoadProgramNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5520(%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    5520(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5520(%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    5520(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(LoadProgramNV), .-GL_PREFIX(LoadProgramNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ProgramParameters4dvNV)
+       .type   GL_PREFIX(ProgramParameters4dvNV), @function
+GL_PREFIX(ProgramParameters4dvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5528(%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    5528(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5528(%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    5528(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ProgramParameters4dvNV), .-GL_PREFIX(ProgramParameters4dvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ProgramParameters4fvNV)
+       .type   GL_PREFIX(ProgramParameters4fvNV), @function
+GL_PREFIX(ProgramParameters4fvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5536(%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    5536(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5536(%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    5536(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ProgramParameters4fvNV), .-GL_PREFIX(ProgramParameters4fvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RequestResidentProgramsNV)
+       .type   GL_PREFIX(RequestResidentProgramsNV), @function
+GL_PREFIX(RequestResidentProgramsNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5544(%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    5544(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5544(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5544(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RequestResidentProgramsNV), .-GL_PREFIX(RequestResidentProgramsNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TrackMatrixNV)
+       .type   GL_PREFIX(TrackMatrixNV), @function
+GL_PREFIX(TrackMatrixNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5552(%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    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
+       pushq   %rsi
+       pushq   %rdx
+       pushq   %rcx
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rcx
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5552(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TrackMatrixNV), .-GL_PREFIX(TrackMatrixNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib1dNV)
+       .type   GL_PREFIX(VertexAttrib1dNV), @function
+GL_PREFIX(VertexAttrib1dNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5560(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    5560(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5560(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    5560(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib1dNV), .-GL_PREFIX(VertexAttrib1dNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib1dvNV)
+       .type   GL_PREFIX(VertexAttrib1dvNV), @function
+GL_PREFIX(VertexAttrib1dvNV):
+#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   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5568(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5568(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5568(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib1dvNV), .-GL_PREFIX(VertexAttrib1dvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib1fNV)
+       .type   GL_PREFIX(VertexAttrib1fNV), @function
+GL_PREFIX(VertexAttrib1fNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5576(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    5576(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5576(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       call    _glapi_get_dispatch
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    5576(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib1fNV), .-GL_PREFIX(VertexAttrib1fNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib1fvNV)
+       .type   GL_PREFIX(VertexAttrib1fvNV), @function
+GL_PREFIX(VertexAttrib1fvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5584(%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    5584(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5584(%rax), %r11
+       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
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib1fvNV), .-GL_PREFIX(VertexAttrib1fvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib1sNV)
+       .type   GL_PREFIX(VertexAttrib1sNV), @function
+GL_PREFIX(VertexAttrib1sNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5592(%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    5592(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5592(%rax), %r11
+       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
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib1sNV), .-GL_PREFIX(VertexAttrib1sNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib1svNV)
+       .type   GL_PREFIX(VertexAttrib1svNV), @function
+GL_PREFIX(VertexAttrib1svNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5600(%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    5600(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5600(%rax), %r11
+       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
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib1svNV), .-GL_PREFIX(VertexAttrib1svNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib2dNV)
+       .type   GL_PREFIX(VertexAttrib2dNV), @function
+GL_PREFIX(VertexAttrib2dNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5608(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    5608(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5608(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    5608(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib2dNV), .-GL_PREFIX(VertexAttrib2dNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib2dvNV)
+       .type   GL_PREFIX(VertexAttrib2dvNV), @function
+GL_PREFIX(VertexAttrib2dvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5616(%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    5616(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5616(%rax), %r11
+       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
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib2dvNV), .-GL_PREFIX(VertexAttrib2dvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib2fNV)
+       .type   GL_PREFIX(VertexAttrib2fNV), @function
+GL_PREFIX(VertexAttrib2fNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5624(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    5624(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5624(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $24, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       call    _glapi_get_dispatch
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $24, %rsp
+       movq    5624(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib2fNV), .-GL_PREFIX(VertexAttrib2fNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib2fvNV)
+       .type   GL_PREFIX(VertexAttrib2fvNV), @function
+GL_PREFIX(VertexAttrib2fvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5632(%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    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
+       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(VertexAttrib2fvNV), .-GL_PREFIX(VertexAttrib2fvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib2sNV)
+       .type   GL_PREFIX(VertexAttrib2sNV), @function
+GL_PREFIX(VertexAttrib2sNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5640(%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    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
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5640(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib2sNV), .-GL_PREFIX(VertexAttrib2sNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib2svNV)
+       .type   GL_PREFIX(VertexAttrib2svNV), @function
+GL_PREFIX(VertexAttrib2svNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5648(%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    5648(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5648(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5648(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib2svNV), .-GL_PREFIX(VertexAttrib2svNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib3dNV)
+       .type   GL_PREFIX(VertexAttrib3dNV), @function
+GL_PREFIX(VertexAttrib3dNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5656(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    5656(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5656(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    5656(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib3dNV), .-GL_PREFIX(VertexAttrib3dNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib3dvNV)
+       .type   GL_PREFIX(VertexAttrib3dvNV), @function
+GL_PREFIX(VertexAttrib3dvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5664(%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    5664(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5664(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5664(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib3dvNV), .-GL_PREFIX(VertexAttrib3dvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib3fNV)
+       .type   GL_PREFIX(VertexAttrib3fNV), @function
+GL_PREFIX(VertexAttrib3fNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5672(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    5672(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5672(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       call    _glapi_get_dispatch
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    5672(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib3fNV), .-GL_PREFIX(VertexAttrib3fNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib3fvNV)
+       .type   GL_PREFIX(VertexAttrib3fvNV), @function
+GL_PREFIX(VertexAttrib3fvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5680(%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    5680(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5680(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5680(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib3fvNV), .-GL_PREFIX(VertexAttrib3fvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib3sNV)
+       .type   GL_PREFIX(VertexAttrib3sNV), @function
+GL_PREFIX(VertexAttrib3sNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5688(%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    5688(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5688(%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    5688(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib3sNV), .-GL_PREFIX(VertexAttrib3sNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib3svNV)
+       .type   GL_PREFIX(VertexAttrib3svNV), @function
+GL_PREFIX(VertexAttrib3svNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5696(%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    5696(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5696(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5696(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib3svNV), .-GL_PREFIX(VertexAttrib3svNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4dNV)
+       .type   GL_PREFIX(VertexAttrib4dNV), @function
+GL_PREFIX(VertexAttrib4dNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5704(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       movq    %xmm3, 32(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    32(%rsp), %xmm3
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    5704(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5704(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       movq    %xmm3, 32(%rsp)
+       call    _glapi_get_dispatch
+       movq    32(%rsp), %xmm3
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    5704(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4dNV), .-GL_PREFIX(VertexAttrib4dNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4dvNV)
+       .type   GL_PREFIX(VertexAttrib4dvNV), @function
+GL_PREFIX(VertexAttrib4dvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5712(%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    5712(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5712(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5712(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4dvNV), .-GL_PREFIX(VertexAttrib4dvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4fNV)
+       .type   GL_PREFIX(VertexAttrib4fNV), @function
+GL_PREFIX(VertexAttrib4fNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5720(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       movq    %xmm3, 32(%rsp)
+       call    _x86_64_get_dispatch@PLT
+       movq    32(%rsp), %xmm3
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    5720(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5720(%rax), %r11
+       jmp     *%r11
+1:
+       subq    $40, %rsp
+       movq    %rdi, (%rsp)
+       movq    %xmm0, 8(%rsp)
+       movq    %xmm1, 16(%rsp)
+       movq    %xmm2, 24(%rsp)
+       movq    %xmm3, 32(%rsp)
+       call    _glapi_get_dispatch
+       movq    32(%rsp), %xmm3
+       movq    24(%rsp), %xmm2
+       movq    16(%rsp), %xmm1
+       movq    8(%rsp), %xmm0
+       movq    (%rsp), %rdi
+       addq    $40, %rsp
+       movq    5720(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4fNV), .-GL_PREFIX(VertexAttrib4fNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4fvNV)
+       .type   GL_PREFIX(VertexAttrib4fvNV), @function
+GL_PREFIX(VertexAttrib4fvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5728(%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    5728(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5728(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5728(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4fvNV), .-GL_PREFIX(VertexAttrib4fvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4sNV)
+       .type   GL_PREFIX(VertexAttrib4sNV), @function
+GL_PREFIX(VertexAttrib4sNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5736(%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    5736(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5736(%rax), %r11
+       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    5736(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4sNV), .-GL_PREFIX(VertexAttrib4sNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4svNV)
+       .type   GL_PREFIX(VertexAttrib4svNV), @function
+GL_PREFIX(VertexAttrib4svNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5744(%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    5744(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5744(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5744(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4svNV), .-GL_PREFIX(VertexAttrib4svNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4ubNV)
+       .type   GL_PREFIX(VertexAttrib4ubNV), @function
+GL_PREFIX(VertexAttrib4ubNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5752(%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    5752(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5752(%rax), %r11
+       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    5752(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4ubNV), .-GL_PREFIX(VertexAttrib4ubNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttrib4ubvNV)
+       .type   GL_PREFIX(VertexAttrib4ubvNV), @function
+GL_PREFIX(VertexAttrib4ubvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5760(%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    5760(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5760(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5760(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttrib4ubvNV), .-GL_PREFIX(VertexAttrib4ubvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttribPointerNV)
+       .type   GL_PREFIX(VertexAttribPointerNV), @function
+GL_PREFIX(VertexAttribPointerNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5768(%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    5768(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5768(%rax), %r11
+       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    5768(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttribPointerNV), .-GL_PREFIX(VertexAttribPointerNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttribs1dvNV)
+       .type   GL_PREFIX(VertexAttribs1dvNV), @function
+GL_PREFIX(VertexAttribs1dvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5776(%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    5776(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5776(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5776(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttribs1dvNV), .-GL_PREFIX(VertexAttribs1dvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttribs1fvNV)
+       .type   GL_PREFIX(VertexAttribs1fvNV), @function
+GL_PREFIX(VertexAttribs1fvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5784(%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    5784(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5784(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5784(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttribs1fvNV), .-GL_PREFIX(VertexAttribs1fvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttribs1svNV)
+       .type   GL_PREFIX(VertexAttribs1svNV), @function
+GL_PREFIX(VertexAttribs1svNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5792(%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    5792(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5792(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5792(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttribs1svNV), .-GL_PREFIX(VertexAttribs1svNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttribs2dvNV)
+       .type   GL_PREFIX(VertexAttribs2dvNV), @function
+GL_PREFIX(VertexAttribs2dvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5800(%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    5800(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5800(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5800(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttribs2dvNV), .-GL_PREFIX(VertexAttribs2dvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttribs2fvNV)
+       .type   GL_PREFIX(VertexAttribs2fvNV), @function
+GL_PREFIX(VertexAttribs2fvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5808(%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    5808(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5808(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5808(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttribs2fvNV), .-GL_PREFIX(VertexAttribs2fvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttribs2svNV)
+       .type   GL_PREFIX(VertexAttribs2svNV), @function
+GL_PREFIX(VertexAttribs2svNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5816(%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    5816(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5816(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5816(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttribs2svNV), .-GL_PREFIX(VertexAttribs2svNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttribs3dvNV)
+       .type   GL_PREFIX(VertexAttribs3dvNV), @function
+GL_PREFIX(VertexAttribs3dvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5824(%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    5824(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5824(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5824(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttribs3dvNV), .-GL_PREFIX(VertexAttribs3dvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttribs3fvNV)
+       .type   GL_PREFIX(VertexAttribs3fvNV), @function
+GL_PREFIX(VertexAttribs3fvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5832(%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    5832(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5832(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5832(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttribs3fvNV), .-GL_PREFIX(VertexAttribs3fvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttribs3svNV)
+       .type   GL_PREFIX(VertexAttribs3svNV), @function
+GL_PREFIX(VertexAttribs3svNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5840(%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    5840(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5840(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5840(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttribs3svNV), .-GL_PREFIX(VertexAttribs3svNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttribs4dvNV)
+       .type   GL_PREFIX(VertexAttribs4dvNV), @function
+GL_PREFIX(VertexAttribs4dvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5848(%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    5848(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5848(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5848(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttribs4dvNV), .-GL_PREFIX(VertexAttribs4dvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttribs4fvNV)
+       .type   GL_PREFIX(VertexAttribs4fvNV), @function
+GL_PREFIX(VertexAttribs4fvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5856(%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    5856(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5856(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5856(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttribs4fvNV), .-GL_PREFIX(VertexAttribs4fvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttribs4svNV)
+       .type   GL_PREFIX(VertexAttribs4svNV), @function
+GL_PREFIX(VertexAttribs4svNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5864(%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    5864(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5864(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5864(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttribs4svNV), .-GL_PREFIX(VertexAttribs4svNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(VertexAttribs4ubvNV)
+       .type   GL_PREFIX(VertexAttribs4ubvNV), @function
+GL_PREFIX(VertexAttribs4ubvNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5872(%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    5872(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5872(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    5872(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(VertexAttribs4ubvNV), .-GL_PREFIX(VertexAttribs4ubvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetTexBumpParameterfvATI)
+       .type   GL_PREFIX(GetTexBumpParameterfvATI), @function
+GL_PREFIX(GetTexBumpParameterfvATI):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5880(%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    5880(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5880(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5880(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetTexBumpParameterfvATI), .-GL_PREFIX(GetTexBumpParameterfvATI)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetTexBumpParameterivATI)
+       .type   GL_PREFIX(GetTexBumpParameterivATI), @function
+GL_PREFIX(GetTexBumpParameterivATI):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5888(%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    5888(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5888(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5888(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetTexBumpParameterivATI), .-GL_PREFIX(GetTexBumpParameterivATI)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexBumpParameterfvATI)
+       .type   GL_PREFIX(TexBumpParameterfvATI), @function
+GL_PREFIX(TexBumpParameterfvATI):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5896(%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    5896(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5896(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5896(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexBumpParameterfvATI), .-GL_PREFIX(TexBumpParameterfvATI)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TexBumpParameterivATI)
+       .type   GL_PREFIX(TexBumpParameterivATI), @function
+GL_PREFIX(TexBumpParameterivATI):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5904(%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    5904(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5904(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    5904(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TexBumpParameterivATI), .-GL_PREFIX(TexBumpParameterivATI)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(AlphaFragmentOp1ATI)
+       .type   GL_PREFIX(AlphaFragmentOp1ATI), @function
+GL_PREFIX(AlphaFragmentOp1ATI):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5912(%rax), %r11
+       jmp     *%r11
+#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    5912(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5912(%rax), %r11
+       jmp     *%r11
+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    5912(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(AlphaFragmentOp1ATI), .-GL_PREFIX(AlphaFragmentOp1ATI)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(AlphaFragmentOp2ATI)
+       .type   GL_PREFIX(AlphaFragmentOp2ATI), @function
+GL_PREFIX(AlphaFragmentOp2ATI):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5920(%rax), %r11
+       jmp     *%r11
+#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    5920(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5920(%rax), %r11
+       jmp     *%r11
+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    5920(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(AlphaFragmentOp2ATI), .-GL_PREFIX(AlphaFragmentOp2ATI)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(AlphaFragmentOp3ATI)
+       .type   GL_PREFIX(AlphaFragmentOp3ATI), @function
+GL_PREFIX(AlphaFragmentOp3ATI):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5928(%rax), %r11
+       jmp     *%r11
+#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    5928(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5928(%rax), %r11
+       jmp     *%r11
+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    5928(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(AlphaFragmentOp3ATI), .-GL_PREFIX(AlphaFragmentOp3ATI)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BeginFragmentShaderATI)
+       .type   GL_PREFIX(BeginFragmentShaderATI), @function
+GL_PREFIX(BeginFragmentShaderATI):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5936(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    5936(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5936(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    5936(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BeginFragmentShaderATI), .-GL_PREFIX(BeginFragmentShaderATI)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BindFragmentShaderATI)
+       .type   GL_PREFIX(BindFragmentShaderATI), @function
+GL_PREFIX(BindFragmentShaderATI):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5944(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5944(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5944(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5944(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BindFragmentShaderATI), .-GL_PREFIX(BindFragmentShaderATI)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ColorFragmentOp1ATI)
+       .type   GL_PREFIX(ColorFragmentOp1ATI), @function
+GL_PREFIX(ColorFragmentOp1ATI):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5952(%rax), %r11
+       jmp     *%r11
+#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    5952(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5952(%rax), %r11
+       jmp     *%r11
+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    5952(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ColorFragmentOp1ATI), .-GL_PREFIX(ColorFragmentOp1ATI)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ColorFragmentOp2ATI)
+       .type   GL_PREFIX(ColorFragmentOp2ATI), @function
+GL_PREFIX(ColorFragmentOp2ATI):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5960(%rax), %r11
+       jmp     *%r11
+#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    5960(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5960(%rax), %r11
+       jmp     *%r11
+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    5960(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ColorFragmentOp2ATI), .-GL_PREFIX(ColorFragmentOp2ATI)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ColorFragmentOp3ATI)
+       .type   GL_PREFIX(ColorFragmentOp3ATI), @function
+GL_PREFIX(ColorFragmentOp3ATI):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5968(%rax), %r11
+       jmp     *%r11
+#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    5968(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5968(%rax), %r11
+       jmp     *%r11
+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    5968(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ColorFragmentOp3ATI), .-GL_PREFIX(ColorFragmentOp3ATI)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DeleteFragmentShaderATI)
+       .type   GL_PREFIX(DeleteFragmentShaderATI), @function
+GL_PREFIX(DeleteFragmentShaderATI):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5976(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5976(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5976(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5976(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DeleteFragmentShaderATI), .-GL_PREFIX(DeleteFragmentShaderATI)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EndFragmentShaderATI)
+       .type   GL_PREFIX(EndFragmentShaderATI), @function
+GL_PREFIX(EndFragmentShaderATI):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5984(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       movq    5984(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5984(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    5984(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EndFragmentShaderATI), .-GL_PREFIX(EndFragmentShaderATI)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GenFragmentShadersATI)
+       .type   GL_PREFIX(GenFragmentShadersATI), @function
+GL_PREFIX(GenFragmentShadersATI):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    5992(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    5992(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    5992(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    5992(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GenFragmentShadersATI), .-GL_PREFIX(GenFragmentShadersATI)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PassTexCoordATI)
+       .type   GL_PREFIX(PassTexCoordATI), @function
+GL_PREFIX(PassTexCoordATI):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6000(%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    6000(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6000(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    6000(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PassTexCoordATI), .-GL_PREFIX(PassTexCoordATI)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SampleMapATI)
+       .type   GL_PREFIX(SampleMapATI), @function
+GL_PREFIX(SampleMapATI):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6008(%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    6008(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6008(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    6008(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(SampleMapATI), .-GL_PREFIX(SampleMapATI)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(SetFragmentShaderConstantATI)
+       .type   GL_PREFIX(SetFragmentShaderConstantATI), @function
+GL_PREFIX(SetFragmentShaderConstantATI):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6016(%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    6016(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6016(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    6016(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(SetFragmentShaderConstantATI), .-GL_PREFIX(SetFragmentShaderConstantATI)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PointParameteriNV)
+       .type   GL_PREFIX(PointParameteriNV), @function
+GL_PREFIX(PointParameteriNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6024(%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    6024(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6024(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    6024(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PointParameteriNV), .-GL_PREFIX(PointParameteriNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(PointParameterivNV)
+       .type   GL_PREFIX(PointParameterivNV), @function
+GL_PREFIX(PointParameterivNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6032(%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    6032(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6032(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    6032(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(PointParameterivNV), .-GL_PREFIX(PointParameterivNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_755)
+       .type   GL_PREFIX(_dispatch_stub_755), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_755))
+GL_PREFIX(_dispatch_stub_755):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6040(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    6040(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6040(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    6040(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_755), .-GL_PREFIX(_dispatch_stub_755)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_756)
+       .type   GL_PREFIX(_dispatch_stub_756), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_756))
+GL_PREFIX(_dispatch_stub_756):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6048(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    6048(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6048(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    6048(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_756), .-GL_PREFIX(_dispatch_stub_756)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_757)
+       .type   GL_PREFIX(_dispatch_stub_757), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_757))
+GL_PREFIX(_dispatch_stub_757):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6056(%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    6056(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6056(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    6056(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_757), .-GL_PREFIX(_dispatch_stub_757)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_758)
+       .type   GL_PREFIX(_dispatch_stub_758), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_758))
+GL_PREFIX(_dispatch_stub_758):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6064(%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    6064(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6064(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    6064(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_758), .-GL_PREFIX(_dispatch_stub_758)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_759)
+       .type   GL_PREFIX(_dispatch_stub_759), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_759))
+GL_PREFIX(_dispatch_stub_759):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6072(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    6072(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6072(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    6072(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_759), .-GL_PREFIX(_dispatch_stub_759)
+
+       .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    6080(%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    6080(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6080(%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    6080(%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    6088(%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    6088(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6088(%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    6088(%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    6096(%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    6096(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6096(%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    6096(%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    6104(%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    6104(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6104(%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    6104(%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    6112(%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    6112(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6112(%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    6112(%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    6120(%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    6120(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6120(%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    6120(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ProgramNamedParameter4fvNV), .-GL_PREFIX(ProgramNamedParameter4fvNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_766)
+       .type   GL_PREFIX(_dispatch_stub_766), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_766))
+GL_PREFIX(_dispatch_stub_766):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6128(%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    6128(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6128(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    6128(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_766), .-GL_PREFIX(_dispatch_stub_766)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_767)
+       .type   GL_PREFIX(_dispatch_stub_767), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_767))
+GL_PREFIX(_dispatch_stub_767):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6136(%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    6136(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6136(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    6136(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_767), .-GL_PREFIX(_dispatch_stub_767)
+
+       .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    6144(%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    6144(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6144(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    6144(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BindFramebufferEXT), .-GL_PREFIX(BindFramebufferEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BindRenderbufferEXT)
+       .type   GL_PREFIX(BindRenderbufferEXT), @function
+GL_PREFIX(BindRenderbufferEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6152(%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    6152(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6152(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    6152(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BindRenderbufferEXT), .-GL_PREFIX(BindRenderbufferEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(CheckFramebufferStatusEXT)
+       .type   GL_PREFIX(CheckFramebufferStatusEXT), @function
+GL_PREFIX(CheckFramebufferStatusEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6160(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    6160(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6160(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    6160(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(CheckFramebufferStatusEXT), .-GL_PREFIX(CheckFramebufferStatusEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DeleteFramebuffersEXT)
+       .type   GL_PREFIX(DeleteFramebuffersEXT), @function
+GL_PREFIX(DeleteFramebuffersEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6168(%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    6168(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6168(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    6168(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DeleteFramebuffersEXT), .-GL_PREFIX(DeleteFramebuffersEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DeleteRenderbuffersEXT)
+       .type   GL_PREFIX(DeleteRenderbuffersEXT), @function
+GL_PREFIX(DeleteRenderbuffersEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6176(%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    6176(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6176(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    6176(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DeleteRenderbuffersEXT), .-GL_PREFIX(DeleteRenderbuffersEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(FramebufferRenderbufferEXT)
+       .type   GL_PREFIX(FramebufferRenderbufferEXT), @function
+GL_PREFIX(FramebufferRenderbufferEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6184(%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    6184(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6184(%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    6184(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(FramebufferRenderbufferEXT), .-GL_PREFIX(FramebufferRenderbufferEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(FramebufferTexture1DEXT)
+       .type   GL_PREFIX(FramebufferTexture1DEXT), @function
+GL_PREFIX(FramebufferTexture1DEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6192(%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    6192(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6192(%rax), %r11
+       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    6192(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(FramebufferTexture1DEXT), .-GL_PREFIX(FramebufferTexture1DEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(FramebufferTexture2DEXT)
+       .type   GL_PREFIX(FramebufferTexture2DEXT), @function
+GL_PREFIX(FramebufferTexture2DEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6200(%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    6200(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6200(%rax), %r11
+       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    6200(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(FramebufferTexture2DEXT), .-GL_PREFIX(FramebufferTexture2DEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(FramebufferTexture3DEXT)
+       .type   GL_PREFIX(FramebufferTexture3DEXT), @function
+GL_PREFIX(FramebufferTexture3DEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6208(%rax), %r11
+       jmp     *%r11
+#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    6208(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6208(%rax), %r11
+       jmp     *%r11
+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    6208(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(FramebufferTexture3DEXT), .-GL_PREFIX(FramebufferTexture3DEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GenFramebuffersEXT)
+       .type   GL_PREFIX(GenFramebuffersEXT), @function
+GL_PREFIX(GenFramebuffersEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6216(%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    6216(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6216(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    6216(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GenFramebuffersEXT), .-GL_PREFIX(GenFramebuffersEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GenRenderbuffersEXT)
+       .type   GL_PREFIX(GenRenderbuffersEXT), @function
+GL_PREFIX(GenRenderbuffersEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6224(%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    6224(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6224(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    6224(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GenRenderbuffersEXT), .-GL_PREFIX(GenRenderbuffersEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GenerateMipmapEXT)
+       .type   GL_PREFIX(GenerateMipmapEXT), @function
+GL_PREFIX(GenerateMipmapEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6232(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    6232(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6232(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    6232(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GenerateMipmapEXT), .-GL_PREFIX(GenerateMipmapEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetFramebufferAttachmentParameterivEXT)
+       .type   GL_PREFIX(GetFramebufferAttachmentParameterivEXT), @function
+GL_PREFIX(GetFramebufferAttachmentParameterivEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6240(%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    6240(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6240(%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    6240(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetFramebufferAttachmentParameterivEXT), .-GL_PREFIX(GetFramebufferAttachmentParameterivEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetRenderbufferParameterivEXT)
+       .type   GL_PREFIX(GetRenderbufferParameterivEXT), @function
+GL_PREFIX(GetRenderbufferParameterivEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6248(%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    6248(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6248(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    6248(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetRenderbufferParameterivEXT), .-GL_PREFIX(GetRenderbufferParameterivEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(IsFramebufferEXT)
+       .type   GL_PREFIX(IsFramebufferEXT), @function
+GL_PREFIX(IsFramebufferEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6256(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdi
+       movq    6256(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6256(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    6256(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(IsFramebufferEXT), .-GL_PREFIX(IsFramebufferEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(IsRenderbufferEXT)
+       .type   GL_PREFIX(IsRenderbufferEXT), @function
+GL_PREFIX(IsRenderbufferEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6264(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rdi
+       call    _x86_64_get_dispatch@PLT
+       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
+       call    _glapi_get_dispatch
+       popq    %rdi
+       movq    6264(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(IsRenderbufferEXT), .-GL_PREFIX(IsRenderbufferEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(RenderbufferStorageEXT)
+       .type   GL_PREFIX(RenderbufferStorageEXT), @function
+GL_PREFIX(RenderbufferStorageEXT):
+#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   %rdx
+       pushq   %rcx
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       popq    %rcx
+       popq    %rdx
+       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   %rdx
+       pushq   %rcx
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rcx
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    6272(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(RenderbufferStorageEXT), .-GL_PREFIX(RenderbufferStorageEXT)
+
+       .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   %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    6280(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6280(%rax), %r11
+       jmp     *%r11
+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    6280(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_785), .-GL_PREFIX(_dispatch_stub_785)
+
+       .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
+       pushq   %rsi
+       pushq   %rdx
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdx
+       popq    %rsi
+       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
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       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
+       pushq   %rsi
+       pushq   %rdx
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdx
+       popq    %rsi
+       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
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       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(FramebufferTextureLayerEXT)
+       .type   GL_PREFIX(FramebufferTextureLayerEXT), @function
+GL_PREFIX(FramebufferTextureLayerEXT):
+#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   %rdx
+       pushq   %rcx
+       pushq   %r8
+       call    _x86_64_get_dispatch@PLT
+       popq    %r8
+       popq    %rcx
+       popq    %rdx
+       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   %rdx
+       pushq   %rcx
+       pushq   %r8
+       call    _glapi_get_dispatch
+       popq    %r8
+       popq    %rcx
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    6304(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(FramebufferTextureLayerEXT), .-GL_PREFIX(FramebufferTextureLayerEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ColorMaskIndexedEXT)
+       .type   GL_PREFIX(ColorMaskIndexedEXT), @function
+GL_PREFIX(ColorMaskIndexedEXT):
+#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   %rdx
+       pushq   %rcx
+       pushq   %r8
+       call    _x86_64_get_dispatch@PLT
+       popq    %r8
+       popq    %rcx
+       popq    %rdx
+       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   %rdx
+       pushq   %rcx
+       pushq   %r8
+       call    _glapi_get_dispatch
+       popq    %r8
+       popq    %rcx
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    6312(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ColorMaskIndexedEXT), .-GL_PREFIX(ColorMaskIndexedEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(DisableIndexedEXT)
+       .type   GL_PREFIX(DisableIndexedEXT), @function
+GL_PREFIX(DisableIndexedEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6320(%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    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
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    6320(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(DisableIndexedEXT), .-GL_PREFIX(DisableIndexedEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EnableIndexedEXT)
+       .type   GL_PREFIX(EnableIndexedEXT), @function
+GL_PREFIX(EnableIndexedEXT):
+#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   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       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   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    6328(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EnableIndexedEXT), .-GL_PREFIX(EnableIndexedEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetBooleanIndexedvEXT)
+       .type   GL_PREFIX(GetBooleanIndexedvEXT), @function
+GL_PREFIX(GetBooleanIndexedvEXT):
+#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
+       call    _x86_64_get_dispatch@PLT
+       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
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    6336(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetBooleanIndexedvEXT), .-GL_PREFIX(GetBooleanIndexedvEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetIntegerIndexedvEXT)
+       .type   GL_PREFIX(GetIntegerIndexedvEXT), @function
+GL_PREFIX(GetIntegerIndexedvEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6344(%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    6344(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6344(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    6344(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetIntegerIndexedvEXT), .-GL_PREFIX(GetIntegerIndexedvEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(IsEnabledIndexedEXT)
+       .type   GL_PREFIX(IsEnabledIndexedEXT), @function
+GL_PREFIX(IsEnabledIndexedEXT):
+#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   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       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   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    6352(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(IsEnabledIndexedEXT), .-GL_PREFIX(IsEnabledIndexedEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BeginConditionalRenderNV)
+       .type   GL_PREFIX(BeginConditionalRenderNV), @function
+GL_PREFIX(BeginConditionalRenderNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6360(%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    6360(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6360(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    6360(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BeginConditionalRenderNV), .-GL_PREFIX(BeginConditionalRenderNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EndConditionalRenderNV)
+       .type   GL_PREFIX(EndConditionalRenderNV), @function
+GL_PREFIX(EndConditionalRenderNV):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6368(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       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   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    6368(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EndConditionalRenderNV), .-GL_PREFIX(EndConditionalRenderNV)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BeginTransformFeedbackEXT)
+       .type   GL_PREFIX(BeginTransformFeedbackEXT), @function
+GL_PREFIX(BeginTransformFeedbackEXT):
+#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(BeginTransformFeedbackEXT), .-GL_PREFIX(BeginTransformFeedbackEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BindBufferBaseEXT)
+       .type   GL_PREFIX(BindBufferBaseEXT), @function
+GL_PREFIX(BindBufferBaseEXT):
+#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   %rdx
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdx
+       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   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    6384(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BindBufferBaseEXT), .-GL_PREFIX(BindBufferBaseEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BindBufferOffsetEXT)
+       .type   GL_PREFIX(BindBufferOffsetEXT), @function
+GL_PREFIX(BindBufferOffsetEXT):
+#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   %rdx
+       pushq   %rcx
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       popq    %rcx
+       popq    %rdx
+       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   %rdx
+       pushq   %rcx
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rcx
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    6392(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BindBufferOffsetEXT), .-GL_PREFIX(BindBufferOffsetEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(BindBufferRangeEXT)
+       .type   GL_PREFIX(BindBufferRangeEXT), @function
+GL_PREFIX(BindBufferRangeEXT):
+#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   %rdx
+       pushq   %rcx
+       pushq   %r8
+       call    _x86_64_get_dispatch@PLT
+       popq    %r8
+       popq    %rcx
+       popq    %rdx
+       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   %rdx
+       pushq   %rcx
+       pushq   %r8
+       call    _glapi_get_dispatch
+       popq    %r8
+       popq    %rcx
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    6400(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(BindBufferRangeEXT), .-GL_PREFIX(BindBufferRangeEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EndTransformFeedbackEXT)
+       .type   GL_PREFIX(EndTransformFeedbackEXT), @function
+GL_PREFIX(EndTransformFeedbackEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6408(%rax), %r11
+       jmp     *%r11
+#elif defined(PTHREADS)
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       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   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       movq    6408(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EndTransformFeedbackEXT), .-GL_PREFIX(EndTransformFeedbackEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(GetTransformFeedbackVaryingEXT)
+       .type   GL_PREFIX(GetTransformFeedbackVaryingEXT), @function
+GL_PREFIX(GetTransformFeedbackVaryingEXT):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6416(%rax), %r11
+       jmp     *%r11
+#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    6416(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6416(%rax), %r11
+       jmp     *%r11
+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    6416(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetTransformFeedbackVaryingEXT), .-GL_PREFIX(GetTransformFeedbackVaryingEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(TransformFeedbackVaryingsEXT)
+       .type   GL_PREFIX(TransformFeedbackVaryingsEXT), @function
+GL_PREFIX(TransformFeedbackVaryingsEXT):
+#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   %rdx
+       pushq   %rcx
+       pushq   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       popq    %rcx
+       popq    %rdx
+       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   %rdx
+       pushq   %rcx
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rcx
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    6424(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(TransformFeedbackVaryingsEXT), .-GL_PREFIX(TransformFeedbackVaryingsEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ProvokingVertexEXT)
+       .type   GL_PREFIX(ProvokingVertexEXT), @function
+GL_PREFIX(ProvokingVertexEXT):
+#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(ProvokingVertexEXT), .-GL_PREFIX(ProvokingVertexEXT)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_805)
+       .type   GL_PREFIX(_dispatch_stub_805), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_805))
+GL_PREFIX(_dispatch_stub_805):
+#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
+       call    _x86_64_get_dispatch@PLT
+       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
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    6440(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_805), .-GL_PREFIX(_dispatch_stub_805)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_806)
+       .type   GL_PREFIX(_dispatch_stub_806), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_806))
+GL_PREFIX(_dispatch_stub_806):
+#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
+       call    _x86_64_get_dispatch@PLT
+       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
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    6448(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_806), .-GL_PREFIX(_dispatch_stub_806)
+
+       .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    6456(%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    6456(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6456(%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    6456(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(GetObjectParameterivAPPLE), .-GL_PREFIX(GetObjectParameterivAPPLE)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ObjectPurgeableAPPLE)
+       .type   GL_PREFIX(ObjectPurgeableAPPLE), @function
+GL_PREFIX(ObjectPurgeableAPPLE):
+#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
+       call    _x86_64_get_dispatch@PLT
+       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
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    6464(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ObjectPurgeableAPPLE), .-GL_PREFIX(ObjectPurgeableAPPLE)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(ObjectUnpurgeableAPPLE)
+       .type   GL_PREFIX(ObjectUnpurgeableAPPLE), @function
+GL_PREFIX(ObjectUnpurgeableAPPLE):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6472(%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    6472(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6472(%rax), %r11
+       jmp     *%r11
+1:
+       pushq   %rdi
+       pushq   %rsi
+       pushq   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    6472(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(ObjectUnpurgeableAPPLE), .-GL_PREFIX(ObjectUnpurgeableAPPLE)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_810)
+       .type   GL_PREFIX(_dispatch_stub_810), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_810))
+GL_PREFIX(_dispatch_stub_810):
+#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(_dispatch_stub_810), .-GL_PREFIX(_dispatch_stub_810)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_811)
+       .type   GL_PREFIX(_dispatch_stub_811), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_811))
+GL_PREFIX(_dispatch_stub_811):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6488(%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    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
+       pushq   %rsi
+       pushq   %rdx
+       pushq   %rcx
+       pushq   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rcx
+       popq    %rdx
+       popq    %rsi
+       popq    %rdi
+       movq    6488(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_811), .-GL_PREFIX(_dispatch_stub_811)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(_dispatch_stub_812)
+       .type   GL_PREFIX(_dispatch_stub_812), @function
+       HIDDEN(GL_PREFIX(_dispatch_stub_812))
+GL_PREFIX(_dispatch_stub_812):
+#if defined(GLX_USE_TLS)
+       call    _x86_64_get_dispatch@PLT
+       movq    6496(%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    6496(%rax), %r11
+       jmp     *%r11
+#else
+       movq    _glapi_Dispatch(%rip), %rax
+       testq   %rax, %rax
+       je      1f
+       movq    6496(%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    6496(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(_dispatch_stub_812), .-GL_PREFIX(_dispatch_stub_812)
+
+       .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   %rdx
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdx
+       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   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       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   %rdx
+       call    _x86_64_get_dispatch@PLT
+       popq    %rdx
+       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   %rdx
+       call    _glapi_get_dispatch
+       popq    %rdx
+       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(EGLImageTargetRenderbufferStorageOES)
+       .type   GL_PREFIX(EGLImageTargetRenderbufferStorageOES), @function
+GL_PREFIX(EGLImageTargetRenderbufferStorageOES):
+#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(EGLImageTargetRenderbufferStorageOES), .-GL_PREFIX(EGLImageTargetRenderbufferStorageOES)
+
+       .p2align        4,,15
+       .globl  GL_PREFIX(EGLImageTargetTexture2DOES)
+       .type   GL_PREFIX(EGLImageTargetTexture2DOES), @function
+GL_PREFIX(EGLImageTargetTexture2DOES):
+#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   %rbp
+       call    _x86_64_get_dispatch@PLT
+       popq    %rbp
+       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   %rbp
+       call    _glapi_get_dispatch
+       popq    %rbp
+       popq    %rsi
+       popq    %rdi
+       movq    6528(%rax), %r11
+       jmp     *%r11
+#endif /* defined(GLX_USE_TLS) */
+       .size   GL_PREFIX(EGLImageTargetTexture2DOES), .-GL_PREFIX(EGLImageTargetTexture2DOES)
+
+       .globl GL_PREFIX(ArrayElementEXT) ; .set GL_PREFIX(ArrayElementEXT), GL_PREFIX(ArrayElement)
+       .globl GL_PREFIX(BindTextureEXT) ; .set GL_PREFIX(BindTextureEXT), GL_PREFIX(BindTexture)
+       .globl GL_PREFIX(DrawArraysEXT) ; .set GL_PREFIX(DrawArraysEXT), GL_PREFIX(DrawArrays)
+#ifndef GLX_INDIRECT_RENDERING
+       .globl GL_PREFIX(AreTexturesResidentEXT) ; .set GL_PREFIX(AreTexturesResidentEXT), GL_PREFIX(AreTexturesResident)
+#endif
+       .globl GL_PREFIX(CopyTexImage1DEXT) ; .set GL_PREFIX(CopyTexImage1DEXT), GL_PREFIX(CopyTexImage1D)
+       .globl GL_PREFIX(CopyTexImage2DEXT) ; .set GL_PREFIX(CopyTexImage2DEXT), GL_PREFIX(CopyTexImage2D)
+       .globl GL_PREFIX(CopyTexSubImage1DEXT) ; .set GL_PREFIX(CopyTexSubImage1DEXT), GL_PREFIX(CopyTexSubImage1D)
+       .globl GL_PREFIX(CopyTexSubImage2DEXT) ; .set GL_PREFIX(CopyTexSubImage2DEXT), GL_PREFIX(CopyTexSubImage2D)
+#ifndef GLX_INDIRECT_RENDERING
+       .globl GL_PREFIX(DeleteTexturesEXT) ; .set GL_PREFIX(DeleteTexturesEXT), GL_PREFIX(DeleteTextures)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       .globl GL_PREFIX(GenTexturesEXT) ; .set GL_PREFIX(GenTexturesEXT), GL_PREFIX(GenTextures)
+#endif
+       .globl GL_PREFIX(GetPointervEXT) ; .set GL_PREFIX(GetPointervEXT), GL_PREFIX(GetPointerv)
+#ifndef GLX_INDIRECT_RENDERING
+       .globl GL_PREFIX(IsTextureEXT) ; .set GL_PREFIX(IsTextureEXT), GL_PREFIX(IsTexture)
+#endif
+       .globl GL_PREFIX(PrioritizeTexturesEXT) ; .set GL_PREFIX(PrioritizeTexturesEXT), GL_PREFIX(PrioritizeTextures)
+       .globl GL_PREFIX(TexSubImage1DEXT) ; .set GL_PREFIX(TexSubImage1DEXT), GL_PREFIX(TexSubImage1D)
+       .globl GL_PREFIX(TexSubImage2DEXT) ; .set GL_PREFIX(TexSubImage2DEXT), GL_PREFIX(TexSubImage2D)
+       .globl GL_PREFIX(BlendColorEXT) ; .set GL_PREFIX(BlendColorEXT), GL_PREFIX(BlendColor)
+       .globl GL_PREFIX(BlendEquationEXT) ; .set GL_PREFIX(BlendEquationEXT), GL_PREFIX(BlendEquation)
+       .globl GL_PREFIX(DrawRangeElementsEXT) ; .set GL_PREFIX(DrawRangeElementsEXT), GL_PREFIX(DrawRangeElements)
+       .globl GL_PREFIX(ColorTableEXT) ; .set GL_PREFIX(ColorTableEXT), GL_PREFIX(ColorTable)
+#ifndef GLX_INDIRECT_RENDERING
+       .globl GL_PREFIX(GetColorTableEXT) ; .set GL_PREFIX(GetColorTableEXT), GL_PREFIX(GetColorTable)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       .globl GL_PREFIX(GetColorTableParameterfvEXT) ; .set GL_PREFIX(GetColorTableParameterfvEXT), GL_PREFIX(GetColorTableParameterfv)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       .globl GL_PREFIX(GetColorTableParameterivEXT) ; .set GL_PREFIX(GetColorTableParameterivEXT), GL_PREFIX(GetColorTableParameteriv)
+#endif
+       .globl GL_PREFIX(TexImage3DEXT) ; .set GL_PREFIX(TexImage3DEXT), GL_PREFIX(TexImage3D)
+       .globl GL_PREFIX(TexSubImage3DEXT) ; .set GL_PREFIX(TexSubImage3DEXT), GL_PREFIX(TexSubImage3D)
+       .globl GL_PREFIX(CopyTexSubImage3DEXT) ; .set GL_PREFIX(CopyTexSubImage3DEXT), GL_PREFIX(CopyTexSubImage3D)
+       .globl GL_PREFIX(ActiveTexture) ; .set GL_PREFIX(ActiveTexture), GL_PREFIX(ActiveTextureARB)
+       .globl GL_PREFIX(ClientActiveTexture) ; .set GL_PREFIX(ClientActiveTexture), GL_PREFIX(ClientActiveTextureARB)
+       .globl GL_PREFIX(MultiTexCoord1d) ; .set GL_PREFIX(MultiTexCoord1d), GL_PREFIX(MultiTexCoord1dARB)
+       .globl GL_PREFIX(MultiTexCoord1dv) ; .set GL_PREFIX(MultiTexCoord1dv), GL_PREFIX(MultiTexCoord1dvARB)
+       .globl GL_PREFIX(MultiTexCoord1f) ; .set GL_PREFIX(MultiTexCoord1f), GL_PREFIX(MultiTexCoord1fARB)
+       .globl GL_PREFIX(MultiTexCoord1fv) ; .set GL_PREFIX(MultiTexCoord1fv), GL_PREFIX(MultiTexCoord1fvARB)
+       .globl GL_PREFIX(MultiTexCoord1i) ; .set GL_PREFIX(MultiTexCoord1i), GL_PREFIX(MultiTexCoord1iARB)
+       .globl GL_PREFIX(MultiTexCoord1iv) ; .set GL_PREFIX(MultiTexCoord1iv), GL_PREFIX(MultiTexCoord1ivARB)
+       .globl GL_PREFIX(MultiTexCoord1s) ; .set GL_PREFIX(MultiTexCoord1s), GL_PREFIX(MultiTexCoord1sARB)
+       .globl GL_PREFIX(MultiTexCoord1sv) ; .set GL_PREFIX(MultiTexCoord1sv), GL_PREFIX(MultiTexCoord1svARB)
+       .globl GL_PREFIX(MultiTexCoord2d) ; .set GL_PREFIX(MultiTexCoord2d), GL_PREFIX(MultiTexCoord2dARB)
+       .globl GL_PREFIX(MultiTexCoord2dv) ; .set GL_PREFIX(MultiTexCoord2dv), GL_PREFIX(MultiTexCoord2dvARB)
+       .globl GL_PREFIX(MultiTexCoord2f) ; .set GL_PREFIX(MultiTexCoord2f), GL_PREFIX(MultiTexCoord2fARB)
+       .globl GL_PREFIX(MultiTexCoord2fv) ; .set GL_PREFIX(MultiTexCoord2fv), GL_PREFIX(MultiTexCoord2fvARB)
+       .globl GL_PREFIX(MultiTexCoord2i) ; .set GL_PREFIX(MultiTexCoord2i), GL_PREFIX(MultiTexCoord2iARB)
+       .globl GL_PREFIX(MultiTexCoord2iv) ; .set GL_PREFIX(MultiTexCoord2iv), GL_PREFIX(MultiTexCoord2ivARB)
+       .globl GL_PREFIX(MultiTexCoord2s) ; .set GL_PREFIX(MultiTexCoord2s), GL_PREFIX(MultiTexCoord2sARB)
+       .globl GL_PREFIX(MultiTexCoord2sv) ; .set GL_PREFIX(MultiTexCoord2sv), GL_PREFIX(MultiTexCoord2svARB)
+       .globl GL_PREFIX(MultiTexCoord3d) ; .set GL_PREFIX(MultiTexCoord3d), GL_PREFIX(MultiTexCoord3dARB)
+       .globl GL_PREFIX(MultiTexCoord3dv) ; .set GL_PREFIX(MultiTexCoord3dv), GL_PREFIX(MultiTexCoord3dvARB)
+       .globl GL_PREFIX(MultiTexCoord3f) ; .set GL_PREFIX(MultiTexCoord3f), GL_PREFIX(MultiTexCoord3fARB)
+       .globl GL_PREFIX(MultiTexCoord3fv) ; .set GL_PREFIX(MultiTexCoord3fv), GL_PREFIX(MultiTexCoord3fvARB)
+       .globl GL_PREFIX(MultiTexCoord3i) ; .set GL_PREFIX(MultiTexCoord3i), GL_PREFIX(MultiTexCoord3iARB)
+       .globl GL_PREFIX(MultiTexCoord3iv) ; .set GL_PREFIX(MultiTexCoord3iv), GL_PREFIX(MultiTexCoord3ivARB)
+       .globl GL_PREFIX(MultiTexCoord3s) ; .set GL_PREFIX(MultiTexCoord3s), GL_PREFIX(MultiTexCoord3sARB)
+       .globl GL_PREFIX(MultiTexCoord3sv) ; .set GL_PREFIX(MultiTexCoord3sv), GL_PREFIX(MultiTexCoord3svARB)
+       .globl GL_PREFIX(MultiTexCoord4d) ; .set GL_PREFIX(MultiTexCoord4d), GL_PREFIX(MultiTexCoord4dARB)
+       .globl GL_PREFIX(MultiTexCoord4dv) ; .set GL_PREFIX(MultiTexCoord4dv), GL_PREFIX(MultiTexCoord4dvARB)
+       .globl GL_PREFIX(MultiTexCoord4f) ; .set GL_PREFIX(MultiTexCoord4f), GL_PREFIX(MultiTexCoord4fARB)
+       .globl GL_PREFIX(MultiTexCoord4fv) ; .set GL_PREFIX(MultiTexCoord4fv), GL_PREFIX(MultiTexCoord4fvARB)
+       .globl GL_PREFIX(MultiTexCoord4i) ; .set GL_PREFIX(MultiTexCoord4i), GL_PREFIX(MultiTexCoord4iARB)
+       .globl GL_PREFIX(MultiTexCoord4iv) ; .set GL_PREFIX(MultiTexCoord4iv), GL_PREFIX(MultiTexCoord4ivARB)
+       .globl GL_PREFIX(MultiTexCoord4s) ; .set GL_PREFIX(MultiTexCoord4s), GL_PREFIX(MultiTexCoord4sARB)
+       .globl GL_PREFIX(MultiTexCoord4sv) ; .set GL_PREFIX(MultiTexCoord4sv), GL_PREFIX(MultiTexCoord4svARB)
+       .globl GL_PREFIX(DrawArraysInstancedARB) ; .set GL_PREFIX(DrawArraysInstancedARB), GL_PREFIX(DrawArraysInstanced)
+       .globl GL_PREFIX(DrawArraysInstancedEXT) ; .set GL_PREFIX(DrawArraysInstancedEXT), GL_PREFIX(DrawArraysInstanced)
+       .globl GL_PREFIX(DrawElementsInstancedARB) ; .set GL_PREFIX(DrawElementsInstancedARB), GL_PREFIX(DrawElementsInstanced)
+       .globl GL_PREFIX(DrawElementsInstancedEXT) ; .set GL_PREFIX(DrawElementsInstancedEXT), GL_PREFIX(DrawElementsInstanced)
+       .globl GL_PREFIX(LoadTransposeMatrixd) ; .set GL_PREFIX(LoadTransposeMatrixd), GL_PREFIX(LoadTransposeMatrixdARB)
+       .globl GL_PREFIX(LoadTransposeMatrixf) ; .set GL_PREFIX(LoadTransposeMatrixf), GL_PREFIX(LoadTransposeMatrixfARB)
+       .globl GL_PREFIX(MultTransposeMatrixd) ; .set GL_PREFIX(MultTransposeMatrixd), GL_PREFIX(MultTransposeMatrixdARB)
+       .globl GL_PREFIX(MultTransposeMatrixf) ; .set GL_PREFIX(MultTransposeMatrixf), GL_PREFIX(MultTransposeMatrixfARB)
+       .globl GL_PREFIX(SampleCoverage) ; .set GL_PREFIX(SampleCoverage), GL_PREFIX(SampleCoverageARB)
+       .globl GL_PREFIX(CompressedTexImage1D) ; .set GL_PREFIX(CompressedTexImage1D), GL_PREFIX(CompressedTexImage1DARB)
+       .globl GL_PREFIX(CompressedTexImage2D) ; .set GL_PREFIX(CompressedTexImage2D), GL_PREFIX(CompressedTexImage2DARB)
+       .globl GL_PREFIX(CompressedTexImage3D) ; .set GL_PREFIX(CompressedTexImage3D), GL_PREFIX(CompressedTexImage3DARB)
+       .globl GL_PREFIX(CompressedTexSubImage1D) ; .set GL_PREFIX(CompressedTexSubImage1D), GL_PREFIX(CompressedTexSubImage1DARB)
+       .globl GL_PREFIX(CompressedTexSubImage2D) ; .set GL_PREFIX(CompressedTexSubImage2D), GL_PREFIX(CompressedTexSubImage2DARB)
+       .globl GL_PREFIX(CompressedTexSubImage3D) ; .set GL_PREFIX(CompressedTexSubImage3D), GL_PREFIX(CompressedTexSubImage3DARB)
+       .globl GL_PREFIX(GetCompressedTexImage) ; .set GL_PREFIX(GetCompressedTexImage), GL_PREFIX(GetCompressedTexImageARB)
+       .globl GL_PREFIX(DisableVertexAttribArray) ; .set GL_PREFIX(DisableVertexAttribArray), GL_PREFIX(DisableVertexAttribArrayARB)
+       .globl GL_PREFIX(EnableVertexAttribArray) ; .set GL_PREFIX(EnableVertexAttribArray), GL_PREFIX(EnableVertexAttribArrayARB)
+       .globl GL_PREFIX(GetVertexAttribdv) ; .set GL_PREFIX(GetVertexAttribdv), GL_PREFIX(GetVertexAttribdvARB)
+       .globl GL_PREFIX(GetVertexAttribfv) ; .set GL_PREFIX(GetVertexAttribfv), GL_PREFIX(GetVertexAttribfvARB)
+       .globl GL_PREFIX(GetVertexAttribiv) ; .set GL_PREFIX(GetVertexAttribiv), GL_PREFIX(GetVertexAttribivARB)
+       .globl GL_PREFIX(ProgramParameter4dNV) ; .set GL_PREFIX(ProgramParameter4dNV), GL_PREFIX(ProgramEnvParameter4dARB)
+       .globl GL_PREFIX(ProgramParameter4dvNV) ; .set GL_PREFIX(ProgramParameter4dvNV), GL_PREFIX(ProgramEnvParameter4dvARB)
+       .globl GL_PREFIX(ProgramParameter4fNV) ; .set GL_PREFIX(ProgramParameter4fNV), GL_PREFIX(ProgramEnvParameter4fARB)
+       .globl GL_PREFIX(ProgramParameter4fvNV) ; .set GL_PREFIX(ProgramParameter4fvNV), GL_PREFIX(ProgramEnvParameter4fvARB)
+       .globl GL_PREFIX(VertexAttrib1d) ; .set GL_PREFIX(VertexAttrib1d), GL_PREFIX(VertexAttrib1dARB)
+       .globl GL_PREFIX(VertexAttrib1dv) ; .set GL_PREFIX(VertexAttrib1dv), GL_PREFIX(VertexAttrib1dvARB)
+       .globl GL_PREFIX(VertexAttrib1f) ; .set GL_PREFIX(VertexAttrib1f), GL_PREFIX(VertexAttrib1fARB)
+       .globl GL_PREFIX(VertexAttrib1fv) ; .set GL_PREFIX(VertexAttrib1fv), GL_PREFIX(VertexAttrib1fvARB)
+       .globl GL_PREFIX(VertexAttrib1s) ; .set GL_PREFIX(VertexAttrib1s), GL_PREFIX(VertexAttrib1sARB)
+       .globl GL_PREFIX(VertexAttrib1sv) ; .set GL_PREFIX(VertexAttrib1sv), GL_PREFIX(VertexAttrib1svARB)
+       .globl GL_PREFIX(VertexAttrib2d) ; .set GL_PREFIX(VertexAttrib2d), GL_PREFIX(VertexAttrib2dARB)
+       .globl GL_PREFIX(VertexAttrib2dv) ; .set GL_PREFIX(VertexAttrib2dv), GL_PREFIX(VertexAttrib2dvARB)
+       .globl GL_PREFIX(VertexAttrib2f) ; .set GL_PREFIX(VertexAttrib2f), GL_PREFIX(VertexAttrib2fARB)
+       .globl GL_PREFIX(VertexAttrib2fv) ; .set GL_PREFIX(VertexAttrib2fv), GL_PREFIX(VertexAttrib2fvARB)
+       .globl GL_PREFIX(VertexAttrib2s) ; .set GL_PREFIX(VertexAttrib2s), GL_PREFIX(VertexAttrib2sARB)
+       .globl GL_PREFIX(VertexAttrib2sv) ; .set GL_PREFIX(VertexAttrib2sv), GL_PREFIX(VertexAttrib2svARB)
+       .globl GL_PREFIX(VertexAttrib3d) ; .set GL_PREFIX(VertexAttrib3d), GL_PREFIX(VertexAttrib3dARB)
+       .globl GL_PREFIX(VertexAttrib3dv) ; .set GL_PREFIX(VertexAttrib3dv), GL_PREFIX(VertexAttrib3dvARB)
+       .globl GL_PREFIX(VertexAttrib3f) ; .set GL_PREFIX(VertexAttrib3f), GL_PREFIX(VertexAttrib3fARB)
+       .globl GL_PREFIX(VertexAttrib3fv) ; .set GL_PREFIX(VertexAttrib3fv), GL_PREFIX(VertexAttrib3fvARB)
+       .globl GL_PREFIX(VertexAttrib3s) ; .set GL_PREFIX(VertexAttrib3s), GL_PREFIX(VertexAttrib3sARB)
+       .globl GL_PREFIX(VertexAttrib3sv) ; .set GL_PREFIX(VertexAttrib3sv), GL_PREFIX(VertexAttrib3svARB)
+       .globl GL_PREFIX(VertexAttrib4Nbv) ; .set GL_PREFIX(VertexAttrib4Nbv), GL_PREFIX(VertexAttrib4NbvARB)
+       .globl GL_PREFIX(VertexAttrib4Niv) ; .set GL_PREFIX(VertexAttrib4Niv), GL_PREFIX(VertexAttrib4NivARB)
+       .globl GL_PREFIX(VertexAttrib4Nsv) ; .set GL_PREFIX(VertexAttrib4Nsv), GL_PREFIX(VertexAttrib4NsvARB)
+       .globl GL_PREFIX(VertexAttrib4Nub) ; .set GL_PREFIX(VertexAttrib4Nub), GL_PREFIX(VertexAttrib4NubARB)
+       .globl GL_PREFIX(VertexAttrib4Nubv) ; .set GL_PREFIX(VertexAttrib4Nubv), GL_PREFIX(VertexAttrib4NubvARB)
+       .globl GL_PREFIX(VertexAttrib4Nuiv) ; .set GL_PREFIX(VertexAttrib4Nuiv), GL_PREFIX(VertexAttrib4NuivARB)
+       .globl GL_PREFIX(VertexAttrib4Nusv) ; .set GL_PREFIX(VertexAttrib4Nusv), GL_PREFIX(VertexAttrib4NusvARB)
+       .globl GL_PREFIX(VertexAttrib4bv) ; .set GL_PREFIX(VertexAttrib4bv), GL_PREFIX(VertexAttrib4bvARB)
+       .globl GL_PREFIX(VertexAttrib4d) ; .set GL_PREFIX(VertexAttrib4d), GL_PREFIX(VertexAttrib4dARB)
+       .globl GL_PREFIX(VertexAttrib4dv) ; .set GL_PREFIX(VertexAttrib4dv), GL_PREFIX(VertexAttrib4dvARB)
+       .globl GL_PREFIX(VertexAttrib4f) ; .set GL_PREFIX(VertexAttrib4f), GL_PREFIX(VertexAttrib4fARB)
+       .globl GL_PREFIX(VertexAttrib4fv) ; .set GL_PREFIX(VertexAttrib4fv), GL_PREFIX(VertexAttrib4fvARB)
+       .globl GL_PREFIX(VertexAttrib4iv) ; .set GL_PREFIX(VertexAttrib4iv), GL_PREFIX(VertexAttrib4ivARB)
+       .globl GL_PREFIX(VertexAttrib4s) ; .set GL_PREFIX(VertexAttrib4s), GL_PREFIX(VertexAttrib4sARB)
+       .globl GL_PREFIX(VertexAttrib4sv) ; .set GL_PREFIX(VertexAttrib4sv), GL_PREFIX(VertexAttrib4svARB)
+       .globl GL_PREFIX(VertexAttrib4ubv) ; .set GL_PREFIX(VertexAttrib4ubv), GL_PREFIX(VertexAttrib4ubvARB)
+       .globl GL_PREFIX(VertexAttrib4uiv) ; .set GL_PREFIX(VertexAttrib4uiv), GL_PREFIX(VertexAttrib4uivARB)
+       .globl GL_PREFIX(VertexAttrib4usv) ; .set GL_PREFIX(VertexAttrib4usv), GL_PREFIX(VertexAttrib4usvARB)
+       .globl GL_PREFIX(VertexAttribPointer) ; .set GL_PREFIX(VertexAttribPointer), GL_PREFIX(VertexAttribPointerARB)
+       .globl GL_PREFIX(BindBuffer) ; .set GL_PREFIX(BindBuffer), GL_PREFIX(BindBufferARB)
+       .globl GL_PREFIX(BufferData) ; .set GL_PREFIX(BufferData), GL_PREFIX(BufferDataARB)
+       .globl GL_PREFIX(BufferSubData) ; .set GL_PREFIX(BufferSubData), GL_PREFIX(BufferSubDataARB)
+       .globl GL_PREFIX(DeleteBuffers) ; .set GL_PREFIX(DeleteBuffers), GL_PREFIX(DeleteBuffersARB)
+       .globl GL_PREFIX(GenBuffers) ; .set GL_PREFIX(GenBuffers), GL_PREFIX(GenBuffersARB)
+       .globl GL_PREFIX(GetBufferParameteriv) ; .set GL_PREFIX(GetBufferParameteriv), GL_PREFIX(GetBufferParameterivARB)
+       .globl GL_PREFIX(GetBufferPointerv) ; .set GL_PREFIX(GetBufferPointerv), GL_PREFIX(GetBufferPointervARB)
+       .globl GL_PREFIX(GetBufferSubData) ; .set GL_PREFIX(GetBufferSubData), GL_PREFIX(GetBufferSubDataARB)
+       .globl GL_PREFIX(IsBuffer) ; .set GL_PREFIX(IsBuffer), GL_PREFIX(IsBufferARB)
+       .globl GL_PREFIX(MapBuffer) ; .set GL_PREFIX(MapBuffer), GL_PREFIX(MapBufferARB)
+       .globl GL_PREFIX(UnmapBuffer) ; .set GL_PREFIX(UnmapBuffer), GL_PREFIX(UnmapBufferARB)
+       .globl GL_PREFIX(BeginQuery) ; .set GL_PREFIX(BeginQuery), GL_PREFIX(BeginQueryARB)
+       .globl GL_PREFIX(DeleteQueries) ; .set GL_PREFIX(DeleteQueries), GL_PREFIX(DeleteQueriesARB)
+       .globl GL_PREFIX(EndQuery) ; .set GL_PREFIX(EndQuery), GL_PREFIX(EndQueryARB)
+       .globl GL_PREFIX(GenQueries) ; .set GL_PREFIX(GenQueries), GL_PREFIX(GenQueriesARB)
+       .globl GL_PREFIX(GetQueryObjectiv) ; .set GL_PREFIX(GetQueryObjectiv), GL_PREFIX(GetQueryObjectivARB)
+       .globl GL_PREFIX(GetQueryObjectuiv) ; .set GL_PREFIX(GetQueryObjectuiv), GL_PREFIX(GetQueryObjectuivARB)
+       .globl GL_PREFIX(GetQueryiv) ; .set GL_PREFIX(GetQueryiv), GL_PREFIX(GetQueryivARB)
+       .globl GL_PREFIX(IsQuery) ; .set GL_PREFIX(IsQuery), GL_PREFIX(IsQueryARB)
+       .globl GL_PREFIX(CompileShader) ; .set GL_PREFIX(CompileShader), GL_PREFIX(CompileShaderARB)
+       .globl GL_PREFIX(GetActiveUniform) ; .set GL_PREFIX(GetActiveUniform), GL_PREFIX(GetActiveUniformARB)
+       .globl GL_PREFIX(GetShaderSource) ; .set GL_PREFIX(GetShaderSource), GL_PREFIX(GetShaderSourceARB)
+       .globl GL_PREFIX(GetUniformLocation) ; .set GL_PREFIX(GetUniformLocation), GL_PREFIX(GetUniformLocationARB)
+       .globl GL_PREFIX(GetUniformfv) ; .set GL_PREFIX(GetUniformfv), GL_PREFIX(GetUniformfvARB)
+       .globl GL_PREFIX(GetUniformiv) ; .set GL_PREFIX(GetUniformiv), GL_PREFIX(GetUniformivARB)
+       .globl GL_PREFIX(LinkProgram) ; .set GL_PREFIX(LinkProgram), GL_PREFIX(LinkProgramARB)
+       .globl GL_PREFIX(ShaderSource) ; .set GL_PREFIX(ShaderSource), GL_PREFIX(ShaderSourceARB)
+       .globl GL_PREFIX(Uniform1f) ; .set GL_PREFIX(Uniform1f), GL_PREFIX(Uniform1fARB)
+       .globl GL_PREFIX(Uniform1fv) ; .set GL_PREFIX(Uniform1fv), GL_PREFIX(Uniform1fvARB)
+       .globl GL_PREFIX(Uniform1i) ; .set GL_PREFIX(Uniform1i), GL_PREFIX(Uniform1iARB)
+       .globl GL_PREFIX(Uniform1iv) ; .set GL_PREFIX(Uniform1iv), GL_PREFIX(Uniform1ivARB)
+       .globl GL_PREFIX(Uniform2f) ; .set GL_PREFIX(Uniform2f), GL_PREFIX(Uniform2fARB)
+       .globl GL_PREFIX(Uniform2fv) ; .set GL_PREFIX(Uniform2fv), GL_PREFIX(Uniform2fvARB)
+       .globl GL_PREFIX(Uniform2i) ; .set GL_PREFIX(Uniform2i), GL_PREFIX(Uniform2iARB)
+       .globl GL_PREFIX(Uniform2iv) ; .set GL_PREFIX(Uniform2iv), GL_PREFIX(Uniform2ivARB)
+       .globl GL_PREFIX(Uniform3f) ; .set GL_PREFIX(Uniform3f), GL_PREFIX(Uniform3fARB)
+       .globl GL_PREFIX(Uniform3fv) ; .set GL_PREFIX(Uniform3fv), GL_PREFIX(Uniform3fvARB)
+       .globl GL_PREFIX(Uniform3i) ; .set GL_PREFIX(Uniform3i), GL_PREFIX(Uniform3iARB)
+       .globl GL_PREFIX(Uniform3iv) ; .set GL_PREFIX(Uniform3iv), GL_PREFIX(Uniform3ivARB)
+       .globl GL_PREFIX(Uniform4f) ; .set GL_PREFIX(Uniform4f), GL_PREFIX(Uniform4fARB)
+       .globl GL_PREFIX(Uniform4fv) ; .set GL_PREFIX(Uniform4fv), GL_PREFIX(Uniform4fvARB)
+       .globl GL_PREFIX(Uniform4i) ; .set GL_PREFIX(Uniform4i), GL_PREFIX(Uniform4iARB)
+       .globl GL_PREFIX(Uniform4iv) ; .set GL_PREFIX(Uniform4iv), GL_PREFIX(Uniform4ivARB)
+       .globl GL_PREFIX(UniformMatrix2fv) ; .set GL_PREFIX(UniformMatrix2fv), GL_PREFIX(UniformMatrix2fvARB)
+       .globl GL_PREFIX(UniformMatrix3fv) ; .set GL_PREFIX(UniformMatrix3fv), GL_PREFIX(UniformMatrix3fvARB)
+       .globl GL_PREFIX(UniformMatrix4fv) ; .set GL_PREFIX(UniformMatrix4fv), GL_PREFIX(UniformMatrix4fvARB)
+       .globl GL_PREFIX(UseProgram) ; .set GL_PREFIX(UseProgram), GL_PREFIX(UseProgramObjectARB)
+       .globl GL_PREFIX(ValidateProgram) ; .set GL_PREFIX(ValidateProgram), GL_PREFIX(ValidateProgramARB)
+       .globl GL_PREFIX(BindAttribLocation) ; .set GL_PREFIX(BindAttribLocation), GL_PREFIX(BindAttribLocationARB)
+       .globl GL_PREFIX(GetActiveAttrib) ; .set GL_PREFIX(GetActiveAttrib), GL_PREFIX(GetActiveAttribARB)
+       .globl GL_PREFIX(GetAttribLocation) ; .set GL_PREFIX(GetAttribLocation), GL_PREFIX(GetAttribLocationARB)
+       .globl GL_PREFIX(DrawBuffers) ; .set GL_PREFIX(DrawBuffers), GL_PREFIX(DrawBuffersARB)
+       .globl GL_PREFIX(DrawBuffersATI) ; .set GL_PREFIX(DrawBuffersATI), GL_PREFIX(DrawBuffersARB)
+       .globl GL_PREFIX(RenderbufferStorageMultisampleEXT) ; .set GL_PREFIX(RenderbufferStorageMultisampleEXT), GL_PREFIX(RenderbufferStorageMultisample)
+       .globl GL_PREFIX(PointParameterf) ; .set GL_PREFIX(PointParameterf), GL_PREFIX(PointParameterfEXT)
+       .globl GL_PREFIX(PointParameterfARB) ; .set GL_PREFIX(PointParameterfARB), GL_PREFIX(PointParameterfEXT)
+       .globl GL_PREFIX(PointParameterfv) ; .set GL_PREFIX(PointParameterfv), GL_PREFIX(PointParameterfvEXT)
+       .globl GL_PREFIX(PointParameterfvARB) ; .set GL_PREFIX(PointParameterfvARB), GL_PREFIX(PointParameterfvEXT)
+       .globl GL_PREFIX(SecondaryColor3b) ; .set GL_PREFIX(SecondaryColor3b), GL_PREFIX(SecondaryColor3bEXT)
+       .globl GL_PREFIX(SecondaryColor3bv) ; .set GL_PREFIX(SecondaryColor3bv), GL_PREFIX(SecondaryColor3bvEXT)
+       .globl GL_PREFIX(SecondaryColor3d) ; .set GL_PREFIX(SecondaryColor3d), GL_PREFIX(SecondaryColor3dEXT)
+       .globl GL_PREFIX(SecondaryColor3dv) ; .set GL_PREFIX(SecondaryColor3dv), GL_PREFIX(SecondaryColor3dvEXT)
+       .globl GL_PREFIX(SecondaryColor3f) ; .set GL_PREFIX(SecondaryColor3f), GL_PREFIX(SecondaryColor3fEXT)
+       .globl GL_PREFIX(SecondaryColor3fv) ; .set GL_PREFIX(SecondaryColor3fv), GL_PREFIX(SecondaryColor3fvEXT)
+       .globl GL_PREFIX(SecondaryColor3i) ; .set GL_PREFIX(SecondaryColor3i), GL_PREFIX(SecondaryColor3iEXT)
+       .globl GL_PREFIX(SecondaryColor3iv) ; .set GL_PREFIX(SecondaryColor3iv), GL_PREFIX(SecondaryColor3ivEXT)
+       .globl GL_PREFIX(SecondaryColor3s) ; .set GL_PREFIX(SecondaryColor3s), GL_PREFIX(SecondaryColor3sEXT)
+       .globl GL_PREFIX(SecondaryColor3sv) ; .set GL_PREFIX(SecondaryColor3sv), GL_PREFIX(SecondaryColor3svEXT)
+       .globl GL_PREFIX(SecondaryColor3ub) ; .set GL_PREFIX(SecondaryColor3ub), GL_PREFIX(SecondaryColor3ubEXT)
+       .globl GL_PREFIX(SecondaryColor3ubv) ; .set GL_PREFIX(SecondaryColor3ubv), GL_PREFIX(SecondaryColor3ubvEXT)
+       .globl GL_PREFIX(SecondaryColor3ui) ; .set GL_PREFIX(SecondaryColor3ui), GL_PREFIX(SecondaryColor3uiEXT)
+       .globl GL_PREFIX(SecondaryColor3uiv) ; .set GL_PREFIX(SecondaryColor3uiv), GL_PREFIX(SecondaryColor3uivEXT)
+       .globl GL_PREFIX(SecondaryColor3us) ; .set GL_PREFIX(SecondaryColor3us), GL_PREFIX(SecondaryColor3usEXT)
+       .globl GL_PREFIX(SecondaryColor3usv) ; .set GL_PREFIX(SecondaryColor3usv), GL_PREFIX(SecondaryColor3usvEXT)
+       .globl GL_PREFIX(SecondaryColorPointer) ; .set GL_PREFIX(SecondaryColorPointer), GL_PREFIX(SecondaryColorPointerEXT)
+       .globl GL_PREFIX(MultiDrawArrays) ; .set GL_PREFIX(MultiDrawArrays), GL_PREFIX(MultiDrawArraysEXT)
+       .globl GL_PREFIX(MultiDrawElements) ; .set GL_PREFIX(MultiDrawElements), GL_PREFIX(MultiDrawElementsEXT)
+       .globl GL_PREFIX(FogCoordPointer) ; .set GL_PREFIX(FogCoordPointer), GL_PREFIX(FogCoordPointerEXT)
+       .globl GL_PREFIX(FogCoordd) ; .set GL_PREFIX(FogCoordd), GL_PREFIX(FogCoorddEXT)
+       .globl GL_PREFIX(FogCoorddv) ; .set GL_PREFIX(FogCoorddv), GL_PREFIX(FogCoorddvEXT)
+       .globl GL_PREFIX(FogCoordf) ; .set GL_PREFIX(FogCoordf), GL_PREFIX(FogCoordfEXT)
+       .globl GL_PREFIX(FogCoordfv) ; .set GL_PREFIX(FogCoordfv), GL_PREFIX(FogCoordfvEXT)
+       .globl GL_PREFIX(BlendFuncSeparate) ; .set GL_PREFIX(BlendFuncSeparate), GL_PREFIX(BlendFuncSeparateEXT)
+       .globl GL_PREFIX(WindowPos2d) ; .set GL_PREFIX(WindowPos2d), GL_PREFIX(WindowPos2dMESA)
+       .globl GL_PREFIX(WindowPos2dARB) ; .set GL_PREFIX(WindowPos2dARB), GL_PREFIX(WindowPos2dMESA)
+       .globl GL_PREFIX(WindowPos2dv) ; .set GL_PREFIX(WindowPos2dv), GL_PREFIX(WindowPos2dvMESA)
+       .globl GL_PREFIX(WindowPos2dvARB) ; .set GL_PREFIX(WindowPos2dvARB), GL_PREFIX(WindowPos2dvMESA)
+       .globl GL_PREFIX(WindowPos2f) ; .set GL_PREFIX(WindowPos2f), GL_PREFIX(WindowPos2fMESA)
+       .globl GL_PREFIX(WindowPos2fARB) ; .set GL_PREFIX(WindowPos2fARB), GL_PREFIX(WindowPos2fMESA)
+       .globl GL_PREFIX(WindowPos2fv) ; .set GL_PREFIX(WindowPos2fv), GL_PREFIX(WindowPos2fvMESA)
+       .globl GL_PREFIX(WindowPos2fvARB) ; .set GL_PREFIX(WindowPos2fvARB), GL_PREFIX(WindowPos2fvMESA)
+       .globl GL_PREFIX(WindowPos2i) ; .set GL_PREFIX(WindowPos2i), GL_PREFIX(WindowPos2iMESA)
+       .globl GL_PREFIX(WindowPos2iARB) ; .set GL_PREFIX(WindowPos2iARB), GL_PREFIX(WindowPos2iMESA)
+       .globl GL_PREFIX(WindowPos2iv) ; .set GL_PREFIX(WindowPos2iv), GL_PREFIX(WindowPos2ivMESA)
+       .globl GL_PREFIX(WindowPos2ivARB) ; .set GL_PREFIX(WindowPos2ivARB), GL_PREFIX(WindowPos2ivMESA)
+       .globl GL_PREFIX(WindowPos2s) ; .set GL_PREFIX(WindowPos2s), GL_PREFIX(WindowPos2sMESA)
+       .globl GL_PREFIX(WindowPos2sARB) ; .set GL_PREFIX(WindowPos2sARB), GL_PREFIX(WindowPos2sMESA)
+       .globl GL_PREFIX(WindowPos2sv) ; .set GL_PREFIX(WindowPos2sv), GL_PREFIX(WindowPos2svMESA)
+       .globl GL_PREFIX(WindowPos2svARB) ; .set GL_PREFIX(WindowPos2svARB), GL_PREFIX(WindowPos2svMESA)
+       .globl GL_PREFIX(WindowPos3d) ; .set GL_PREFIX(WindowPos3d), GL_PREFIX(WindowPos3dMESA)
+       .globl GL_PREFIX(WindowPos3dARB) ; .set GL_PREFIX(WindowPos3dARB), GL_PREFIX(WindowPos3dMESA)
+       .globl GL_PREFIX(WindowPos3dv) ; .set GL_PREFIX(WindowPos3dv), GL_PREFIX(WindowPos3dvMESA)
+       .globl GL_PREFIX(WindowPos3dvARB) ; .set GL_PREFIX(WindowPos3dvARB), GL_PREFIX(WindowPos3dvMESA)
+       .globl GL_PREFIX(WindowPos3f) ; .set GL_PREFIX(WindowPos3f), GL_PREFIX(WindowPos3fMESA)
+       .globl GL_PREFIX(WindowPos3fARB) ; .set GL_PREFIX(WindowPos3fARB), GL_PREFIX(WindowPos3fMESA)
+       .globl GL_PREFIX(WindowPos3fv) ; .set GL_PREFIX(WindowPos3fv), GL_PREFIX(WindowPos3fvMESA)
+       .globl GL_PREFIX(WindowPos3fvARB) ; .set GL_PREFIX(WindowPos3fvARB), GL_PREFIX(WindowPos3fvMESA)
+       .globl GL_PREFIX(WindowPos3i) ; .set GL_PREFIX(WindowPos3i), GL_PREFIX(WindowPos3iMESA)
+       .globl GL_PREFIX(WindowPos3iARB) ; .set GL_PREFIX(WindowPos3iARB), GL_PREFIX(WindowPos3iMESA)
+       .globl GL_PREFIX(WindowPos3iv) ; .set GL_PREFIX(WindowPos3iv), GL_PREFIX(WindowPos3ivMESA)
+       .globl GL_PREFIX(WindowPos3ivARB) ; .set GL_PREFIX(WindowPos3ivARB), GL_PREFIX(WindowPos3ivMESA)
+       .globl GL_PREFIX(WindowPos3s) ; .set GL_PREFIX(WindowPos3s), GL_PREFIX(WindowPos3sMESA)
+       .globl GL_PREFIX(WindowPos3sARB) ; .set GL_PREFIX(WindowPos3sARB), GL_PREFIX(WindowPos3sMESA)
+       .globl GL_PREFIX(WindowPos3sv) ; .set GL_PREFIX(WindowPos3sv), GL_PREFIX(WindowPos3svMESA)
+       .globl GL_PREFIX(WindowPos3svARB) ; .set GL_PREFIX(WindowPos3svARB), GL_PREFIX(WindowPos3svMESA)
+       .globl GL_PREFIX(BindProgramARB) ; .set GL_PREFIX(BindProgramARB), GL_PREFIX(BindProgramNV)
+       .globl GL_PREFIX(DeleteProgramsARB) ; .set GL_PREFIX(DeleteProgramsARB), GL_PREFIX(DeleteProgramsNV)
+       .globl GL_PREFIX(GenProgramsARB) ; .set GL_PREFIX(GenProgramsARB), GL_PREFIX(GenProgramsNV)
+       .globl GL_PREFIX(GetVertexAttribPointerv) ; .set GL_PREFIX(GetVertexAttribPointerv), GL_PREFIX(GetVertexAttribPointervNV)
+       .globl GL_PREFIX(GetVertexAttribPointervARB) ; .set GL_PREFIX(GetVertexAttribPointervARB), GL_PREFIX(GetVertexAttribPointervNV)
+       .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_757)
+       .globl GL_PREFIX(IsVertexArray) ; .set GL_PREFIX(IsVertexArray), GL_PREFIX(_dispatch_stub_759)
+       .globl GL_PREFIX(BlendEquationSeparate) ; .set GL_PREFIX(BlendEquationSeparate), GL_PREFIX(_dispatch_stub_767)
+       .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)
+       .globl GL_PREFIX(DeleteFramebuffers) ; .set GL_PREFIX(DeleteFramebuffers), GL_PREFIX(DeleteFramebuffersEXT)
+       .globl GL_PREFIX(DeleteRenderbuffers) ; .set GL_PREFIX(DeleteRenderbuffers), GL_PREFIX(DeleteRenderbuffersEXT)
+       .globl GL_PREFIX(FramebufferRenderbuffer) ; .set GL_PREFIX(FramebufferRenderbuffer), GL_PREFIX(FramebufferRenderbufferEXT)
+       .globl GL_PREFIX(FramebufferTexture1D) ; .set GL_PREFIX(FramebufferTexture1D), GL_PREFIX(FramebufferTexture1DEXT)
+       .globl GL_PREFIX(FramebufferTexture2D) ; .set GL_PREFIX(FramebufferTexture2D), GL_PREFIX(FramebufferTexture2DEXT)
+       .globl GL_PREFIX(FramebufferTexture3D) ; .set GL_PREFIX(FramebufferTexture3D), GL_PREFIX(FramebufferTexture3DEXT)
+       .globl GL_PREFIX(GenFramebuffers) ; .set GL_PREFIX(GenFramebuffers), GL_PREFIX(GenFramebuffersEXT)
+       .globl GL_PREFIX(GenRenderbuffers) ; .set GL_PREFIX(GenRenderbuffers), GL_PREFIX(GenRenderbuffersEXT)
+       .globl GL_PREFIX(GenerateMipmap) ; .set GL_PREFIX(GenerateMipmap), GL_PREFIX(GenerateMipmapEXT)
+       .globl GL_PREFIX(GetFramebufferAttachmentParameteriv) ; .set GL_PREFIX(GetFramebufferAttachmentParameteriv), GL_PREFIX(GetFramebufferAttachmentParameterivEXT)
+       .globl GL_PREFIX(GetRenderbufferParameteriv) ; .set GL_PREFIX(GetRenderbufferParameteriv), GL_PREFIX(GetRenderbufferParameterivEXT)
+       .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_785)
+       .globl GL_PREFIX(FramebufferTextureLayer) ; .set GL_PREFIX(FramebufferTextureLayer), GL_PREFIX(FramebufferTextureLayerEXT)
+       .globl GL_PREFIX(BeginTransformFeedback) ; .set GL_PREFIX(BeginTransformFeedback), GL_PREFIX(BeginTransformFeedbackEXT)
+       .globl GL_PREFIX(BindBufferBase) ; .set GL_PREFIX(BindBufferBase), GL_PREFIX(BindBufferBaseEXT)
+       .globl GL_PREFIX(BindBufferRange) ; .set GL_PREFIX(BindBufferRange), GL_PREFIX(BindBufferRangeEXT)
+       .globl GL_PREFIX(EndTransformFeedback) ; .set GL_PREFIX(EndTransformFeedback), GL_PREFIX(EndTransformFeedbackEXT)
+       .globl GL_PREFIX(GetTransformFeedbackVarying) ; .set GL_PREFIX(GetTransformFeedbackVarying), GL_PREFIX(GetTransformFeedbackVaryingEXT)
+       .globl GL_PREFIX(TransformFeedbackVaryings) ; .set GL_PREFIX(TransformFeedbackVaryings), GL_PREFIX(TransformFeedbackVaryingsEXT)
+       .globl GL_PREFIX(ProvokingVertex) ; .set GL_PREFIX(ProvokingVertex), GL_PREFIX(ProvokingVertexEXT)
+
+#if defined(GLX_USE_TLS) && defined(__linux__)
+       .section ".note.ABI-tag", "a"
+       .p2align 2
+       .long   1f - 0f   /* name length */
+       .long   3f - 2f   /* data length */
+       .long   1         /* note length */
+0:     .asciz "GNU"      /* vendor name */
+1:     .p2align 2
+2:     .long   0         /* note data: the ABI tag */
+       .long   2,4,20    /* Minimum kernel version w/TLS */
+3:     .p2align 2        /* pad out section */
+#endif /* GLX_USE_TLS */
+
+#if defined (__ELF__) && defined (__linux__)
+       .section .note.GNU-stack,"",%progbits
+#endif
diff --git a/src/mapi/glapi/glapi_x86.S b/src/mapi/glapi/glapi_x86.S
new file mode 100644 (file)
index 0000000..317f595
--- /dev/null
@@ -0,0 +1,1316 @@
+/* DO NOT EDIT - This file generated automatically by gl_x86_asm.py (from Mesa) script */
+
+/*
+ * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
+ * (C) Copyright IBM Corporation 2004, 2005
+ * 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
+ * BRIAN PAUL, IBM,
+ * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
+ * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+#include "x86/assyntax.h"
+#include "glapi/glapioffsets.h"
+
+#if defined(STDCALL_API)
+# if defined(USE_MGL_NAMESPACE)
+#  define GL_PREFIX(n,n2) GLNAME(CONCAT(mgl,n2))
+# else
+#  define GL_PREFIX(n,n2) GLNAME(CONCAT(gl,n2))
+# endif
+#else
+# if defined(USE_MGL_NAMESPACE)
+#  define GL_PREFIX(n,n2) GLNAME(CONCAT(mgl,n))
+#  define _glapi_Dispatch _mglapi_Dispatch
+# else
+#  define GL_PREFIX(n,n2) GLNAME(CONCAT(gl,n))
+# endif
+#endif
+
+#define GL_OFFSET(x) CODEPTR(REGOFF(4 * x, EAX))
+
+#if defined(GNU_ASSEMBLER) && !defined(__DJGPP__) && !defined(__MINGW32__) && !defined(__APPLE__)
+#define GLOBL_FN(x) GLOBL x ; .type x, function
+#else
+#define GLOBL_FN(x) GLOBL x
+#endif
+
+#if defined(PTHREADS) || defined(WIN32_THREADS) || defined(BEOS_THREADS)
+#  define THREADS
+#endif
+
+#ifdef GLX_USE_TLS
+
+#ifdef GLX_X86_READONLY_TEXT
+# define CTX_INSNS MOV_L(GS:(EAX), EAX)
+#else
+# define CTX_INSNS NOP /* Pad for init_glapi_relocs() */
+#endif
+
+#  define GL_STUB(fn,off,fn_alt)                       \
+ALIGNTEXT16;                                           \
+GLOBL_FN(GL_PREFIX(fn, fn_alt));                       \
+GL_PREFIX(fn, fn_alt):                                 \
+       CALL(_x86_get_dispatch) ;                       \
+       CTX_INSNS ;                                     \
+       JMP(GL_OFFSET(off))
+
+#elif defined(PTHREADS)
+#  define GL_STUB(fn,off,fn_alt)                       \
+ALIGNTEXT16;                                           \
+GLOBL_FN(GL_PREFIX(fn, fn_alt));                       \
+GL_PREFIX(fn, fn_alt):                                 \
+       MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX) ;  \
+       TEST_L(EAX, EAX) ;                              \
+       JE(1f) ;                                        \
+       JMP(GL_OFFSET(off)) ;                           \
+1:     CALL(_x86_get_dispatch) ;                       \
+       JMP(GL_OFFSET(off))
+#elif defined(THREADS)
+#  define GL_STUB(fn,off,fn_alt)                       \
+ALIGNTEXT16;                                           \
+GLOBL_FN(GL_PREFIX(fn, fn_alt));                       \
+GL_PREFIX(fn, fn_alt):                                 \
+       MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX) ;  \
+       TEST_L(EAX, EAX) ;                              \
+       JE(1f) ;                                        \
+       JMP(GL_OFFSET(off)) ;                           \
+1:     CALL(_glapi_get_dispatch) ;                     \
+       JMP(GL_OFFSET(off))
+#else /* Non-threaded version. */
+#  define GL_STUB(fn,off,fn_alt)                       \
+ALIGNTEXT16;                                           \
+GLOBL_FN(GL_PREFIX(fn, fn_alt));                       \
+GL_PREFIX(fn, fn_alt):                                 \
+       MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX) ;  \
+       JMP(GL_OFFSET(off))
+#endif
+
+#ifdef HAVE_ALIAS
+#  define GL_STUB_ALIAS(fn,off,fn_alt,alias,alias_alt) \
+       .globl  GL_PREFIX(fn, fn_alt) ;                 \
+       .set    GL_PREFIX(fn, fn_alt), GL_PREFIX(alias, alias_alt)
+#else
+#  define GL_STUB_ALIAS(fn,off,fn_alt,alias,alias_alt) \
+    GL_STUB(fn, off, fn_alt)
+#endif
+
+SEG_TEXT
+
+#ifdef GLX_USE_TLS
+
+       GLOBL   GLNAME(_x86_get_dispatch)
+       HIDDEN(GLNAME(_x86_get_dispatch))
+ALIGNTEXT16
+GLNAME(_x86_get_dispatch):
+       call    1f
+1:     popl    %eax
+       addl    $_GLOBAL_OFFSET_TABLE_+[.-1b], %eax
+       movl    _glapi_tls_Dispatch@GOTNTPOFF(%eax), %eax
+       ret
+
+#elif defined(PTHREADS)
+EXTERN GLNAME(_glapi_Dispatch)
+EXTERN GLNAME(_gl_DispatchTSD)
+EXTERN GLNAME(pthread_getspecific)
+
+ALIGNTEXT16
+GLNAME(_x86_get_dispatch):
+       SUB_L(CONST(24), ESP)
+       PUSH_L(GLNAME(_gl_DispatchTSD))
+       CALL(GLNAME(pthread_getspecific))
+       ADD_L(CONST(28), ESP)
+       RET
+#elif defined(THREADS)
+EXTERN GLNAME(_glapi_get_dispatch)
+#endif
+
+#if defined( GLX_USE_TLS ) && !defined( GLX_X86_READONLY_TEXT )
+               .section        wtext, "awx", @progbits
+#endif /* defined( GLX_USE_TLS ) */
+
+               ALIGNTEXT16
+               GLOBL GLNAME(gl_dispatch_functions_start)
+               HIDDEN(GLNAME(gl_dispatch_functions_start))
+GLNAME(gl_dispatch_functions_start):
+
+       GL_STUB(NewList, _gloffset_NewList, NewList@8)
+       GL_STUB(EndList, _gloffset_EndList, EndList@0)
+       GL_STUB(CallList, _gloffset_CallList, CallList@4)
+       GL_STUB(CallLists, _gloffset_CallLists, CallLists@12)
+       GL_STUB(DeleteLists, _gloffset_DeleteLists, DeleteLists@8)
+       GL_STUB(GenLists, _gloffset_GenLists, GenLists@4)
+       GL_STUB(ListBase, _gloffset_ListBase, ListBase@4)
+       GL_STUB(Begin, _gloffset_Begin, Begin@4)
+       GL_STUB(Bitmap, _gloffset_Bitmap, Bitmap@28)
+       GL_STUB(Color3b, _gloffset_Color3b, Color3b@12)
+       GL_STUB(Color3bv, _gloffset_Color3bv, Color3bv@4)
+       GL_STUB(Color3d, _gloffset_Color3d, Color3d@24)
+       GL_STUB(Color3dv, _gloffset_Color3dv, Color3dv@4)
+       GL_STUB(Color3f, _gloffset_Color3f, Color3f@12)
+       GL_STUB(Color3fv, _gloffset_Color3fv, Color3fv@4)
+       GL_STUB(Color3i, _gloffset_Color3i, Color3i@12)
+       GL_STUB(Color3iv, _gloffset_Color3iv, Color3iv@4)
+       GL_STUB(Color3s, _gloffset_Color3s, Color3s@12)
+       GL_STUB(Color3sv, _gloffset_Color3sv, Color3sv@4)
+       GL_STUB(Color3ub, _gloffset_Color3ub, Color3ub@12)
+       GL_STUB(Color3ubv, _gloffset_Color3ubv, Color3ubv@4)
+       GL_STUB(Color3ui, _gloffset_Color3ui, Color3ui@12)
+       GL_STUB(Color3uiv, _gloffset_Color3uiv, Color3uiv@4)
+       GL_STUB(Color3us, _gloffset_Color3us, Color3us@12)
+       GL_STUB(Color3usv, _gloffset_Color3usv, Color3usv@4)
+       GL_STUB(Color4b, _gloffset_Color4b, Color4b@16)
+       GL_STUB(Color4bv, _gloffset_Color4bv, Color4bv@4)
+       GL_STUB(Color4d, _gloffset_Color4d, Color4d@32)
+       GL_STUB(Color4dv, _gloffset_Color4dv, Color4dv@4)
+       GL_STUB(Color4f, _gloffset_Color4f, Color4f@16)
+       GL_STUB(Color4fv, _gloffset_Color4fv, Color4fv@4)
+       GL_STUB(Color4i, _gloffset_Color4i, Color4i@16)
+       GL_STUB(Color4iv, _gloffset_Color4iv, Color4iv@4)
+       GL_STUB(Color4s, _gloffset_Color4s, Color4s@16)
+       GL_STUB(Color4sv, _gloffset_Color4sv, Color4sv@4)
+       GL_STUB(Color4ub, _gloffset_Color4ub, Color4ub@16)
+       GL_STUB(Color4ubv, _gloffset_Color4ubv, Color4ubv@4)
+       GL_STUB(Color4ui, _gloffset_Color4ui, Color4ui@16)
+       GL_STUB(Color4uiv, _gloffset_Color4uiv, Color4uiv@4)
+       GL_STUB(Color4us, _gloffset_Color4us, Color4us@16)
+       GL_STUB(Color4usv, _gloffset_Color4usv, Color4usv@4)
+       GL_STUB(EdgeFlag, _gloffset_EdgeFlag, EdgeFlag@4)
+       GL_STUB(EdgeFlagv, _gloffset_EdgeFlagv, EdgeFlagv@4)
+       GL_STUB(End, _gloffset_End, End@0)
+       GL_STUB(Indexd, _gloffset_Indexd, Indexd@8)
+       GL_STUB(Indexdv, _gloffset_Indexdv, Indexdv@4)
+       GL_STUB(Indexf, _gloffset_Indexf, Indexf@4)
+       GL_STUB(Indexfv, _gloffset_Indexfv, Indexfv@4)
+       GL_STUB(Indexi, _gloffset_Indexi, Indexi@4)
+       GL_STUB(Indexiv, _gloffset_Indexiv, Indexiv@4)
+       GL_STUB(Indexs, _gloffset_Indexs, Indexs@4)
+       GL_STUB(Indexsv, _gloffset_Indexsv, Indexsv@4)
+       GL_STUB(Normal3b, _gloffset_Normal3b, Normal3b@12)
+       GL_STUB(Normal3bv, _gloffset_Normal3bv, Normal3bv@4)
+       GL_STUB(Normal3d, _gloffset_Normal3d, Normal3d@24)
+       GL_STUB(Normal3dv, _gloffset_Normal3dv, Normal3dv@4)
+       GL_STUB(Normal3f, _gloffset_Normal3f, Normal3f@12)
+       GL_STUB(Normal3fv, _gloffset_Normal3fv, Normal3fv@4)
+       GL_STUB(Normal3i, _gloffset_Normal3i, Normal3i@12)
+       GL_STUB(Normal3iv, _gloffset_Normal3iv, Normal3iv@4)
+       GL_STUB(Normal3s, _gloffset_Normal3s, Normal3s@12)
+       GL_STUB(Normal3sv, _gloffset_Normal3sv, Normal3sv@4)
+       GL_STUB(RasterPos2d, _gloffset_RasterPos2d, RasterPos2d@16)
+       GL_STUB(RasterPos2dv, _gloffset_RasterPos2dv, RasterPos2dv@4)
+       GL_STUB(RasterPos2f, _gloffset_RasterPos2f, RasterPos2f@8)
+       GL_STUB(RasterPos2fv, _gloffset_RasterPos2fv, RasterPos2fv@4)
+       GL_STUB(RasterPos2i, _gloffset_RasterPos2i, RasterPos2i@8)
+       GL_STUB(RasterPos2iv, _gloffset_RasterPos2iv, RasterPos2iv@4)
+       GL_STUB(RasterPos2s, _gloffset_RasterPos2s, RasterPos2s@8)
+       GL_STUB(RasterPos2sv, _gloffset_RasterPos2sv, RasterPos2sv@4)
+       GL_STUB(RasterPos3d, _gloffset_RasterPos3d, RasterPos3d@24)
+       GL_STUB(RasterPos3dv, _gloffset_RasterPos3dv, RasterPos3dv@4)
+       GL_STUB(RasterPos3f, _gloffset_RasterPos3f, RasterPos3f@12)
+       GL_STUB(RasterPos3fv, _gloffset_RasterPos3fv, RasterPos3fv@4)
+       GL_STUB(RasterPos3i, _gloffset_RasterPos3i, RasterPos3i@12)
+       GL_STUB(RasterPos3iv, _gloffset_RasterPos3iv, RasterPos3iv@4)
+       GL_STUB(RasterPos3s, _gloffset_RasterPos3s, RasterPos3s@12)
+       GL_STUB(RasterPos3sv, _gloffset_RasterPos3sv, RasterPos3sv@4)
+       GL_STUB(RasterPos4d, _gloffset_RasterPos4d, RasterPos4d@32)
+       GL_STUB(RasterPos4dv, _gloffset_RasterPos4dv, RasterPos4dv@4)
+       GL_STUB(RasterPos4f, _gloffset_RasterPos4f, RasterPos4f@16)
+       GL_STUB(RasterPos4fv, _gloffset_RasterPos4fv, RasterPos4fv@4)
+       GL_STUB(RasterPos4i, _gloffset_RasterPos4i, RasterPos4i@16)
+       GL_STUB(RasterPos4iv, _gloffset_RasterPos4iv, RasterPos4iv@4)
+       GL_STUB(RasterPos4s, _gloffset_RasterPos4s, RasterPos4s@16)
+       GL_STUB(RasterPos4sv, _gloffset_RasterPos4sv, RasterPos4sv@4)
+       GL_STUB(Rectd, _gloffset_Rectd, Rectd@32)
+       GL_STUB(Rectdv, _gloffset_Rectdv, Rectdv@8)
+       GL_STUB(Rectf, _gloffset_Rectf, Rectf@16)
+       GL_STUB(Rectfv, _gloffset_Rectfv, Rectfv@8)
+       GL_STUB(Recti, _gloffset_Recti, Recti@16)
+       GL_STUB(Rectiv, _gloffset_Rectiv, Rectiv@8)
+       GL_STUB(Rects, _gloffset_Rects, Rects@16)
+       GL_STUB(Rectsv, _gloffset_Rectsv, Rectsv@8)
+       GL_STUB(TexCoord1d, _gloffset_TexCoord1d, TexCoord1d@8)
+       GL_STUB(TexCoord1dv, _gloffset_TexCoord1dv, TexCoord1dv@4)
+       GL_STUB(TexCoord1f, _gloffset_TexCoord1f, TexCoord1f@4)
+       GL_STUB(TexCoord1fv, _gloffset_TexCoord1fv, TexCoord1fv@4)
+       GL_STUB(TexCoord1i, _gloffset_TexCoord1i, TexCoord1i@4)
+       GL_STUB(TexCoord1iv, _gloffset_TexCoord1iv, TexCoord1iv@4)
+       GL_STUB(TexCoord1s, _gloffset_TexCoord1s, TexCoord1s@4)
+       GL_STUB(TexCoord1sv, _gloffset_TexCoord1sv, TexCoord1sv@4)
+       GL_STUB(TexCoord2d, _gloffset_TexCoord2d, TexCoord2d@16)
+       GL_STUB(TexCoord2dv, _gloffset_TexCoord2dv, TexCoord2dv@4)
+       GL_STUB(TexCoord2f, _gloffset_TexCoord2f, TexCoord2f@8)
+       GL_STUB(TexCoord2fv, _gloffset_TexCoord2fv, TexCoord2fv@4)
+       GL_STUB(TexCoord2i, _gloffset_TexCoord2i, TexCoord2i@8)
+       GL_STUB(TexCoord2iv, _gloffset_TexCoord2iv, TexCoord2iv@4)
+       GL_STUB(TexCoord2s, _gloffset_TexCoord2s, TexCoord2s@8)
+       GL_STUB(TexCoord2sv, _gloffset_TexCoord2sv, TexCoord2sv@4)
+       GL_STUB(TexCoord3d, _gloffset_TexCoord3d, TexCoord3d@24)
+       GL_STUB(TexCoord3dv, _gloffset_TexCoord3dv, TexCoord3dv@4)
+       GL_STUB(TexCoord3f, _gloffset_TexCoord3f, TexCoord3f@12)
+       GL_STUB(TexCoord3fv, _gloffset_TexCoord3fv, TexCoord3fv@4)
+       GL_STUB(TexCoord3i, _gloffset_TexCoord3i, TexCoord3i@12)
+       GL_STUB(TexCoord3iv, _gloffset_TexCoord3iv, TexCoord3iv@4)
+       GL_STUB(TexCoord3s, _gloffset_TexCoord3s, TexCoord3s@12)
+       GL_STUB(TexCoord3sv, _gloffset_TexCoord3sv, TexCoord3sv@4)
+       GL_STUB(TexCoord4d, _gloffset_TexCoord4d, TexCoord4d@32)
+       GL_STUB(TexCoord4dv, _gloffset_TexCoord4dv, TexCoord4dv@4)
+       GL_STUB(TexCoord4f, _gloffset_TexCoord4f, TexCoord4f@16)
+       GL_STUB(TexCoord4fv, _gloffset_TexCoord4fv, TexCoord4fv@4)
+       GL_STUB(TexCoord4i, _gloffset_TexCoord4i, TexCoord4i@16)
+       GL_STUB(TexCoord4iv, _gloffset_TexCoord4iv, TexCoord4iv@4)
+       GL_STUB(TexCoord4s, _gloffset_TexCoord4s, TexCoord4s@16)
+       GL_STUB(TexCoord4sv, _gloffset_TexCoord4sv, TexCoord4sv@4)
+       GL_STUB(Vertex2d, _gloffset_Vertex2d, Vertex2d@16)
+       GL_STUB(Vertex2dv, _gloffset_Vertex2dv, Vertex2dv@4)
+       GL_STUB(Vertex2f, _gloffset_Vertex2f, Vertex2f@8)
+       GL_STUB(Vertex2fv, _gloffset_Vertex2fv, Vertex2fv@4)
+       GL_STUB(Vertex2i, _gloffset_Vertex2i, Vertex2i@8)
+       GL_STUB(Vertex2iv, _gloffset_Vertex2iv, Vertex2iv@4)
+       GL_STUB(Vertex2s, _gloffset_Vertex2s, Vertex2s@8)
+       GL_STUB(Vertex2sv, _gloffset_Vertex2sv, Vertex2sv@4)
+       GL_STUB(Vertex3d, _gloffset_Vertex3d, Vertex3d@24)
+       GL_STUB(Vertex3dv, _gloffset_Vertex3dv, Vertex3dv@4)
+       GL_STUB(Vertex3f, _gloffset_Vertex3f, Vertex3f@12)
+       GL_STUB(Vertex3fv, _gloffset_Vertex3fv, Vertex3fv@4)
+       GL_STUB(Vertex3i, _gloffset_Vertex3i, Vertex3i@12)
+       GL_STUB(Vertex3iv, _gloffset_Vertex3iv, Vertex3iv@4)
+       GL_STUB(Vertex3s, _gloffset_Vertex3s, Vertex3s@12)
+       GL_STUB(Vertex3sv, _gloffset_Vertex3sv, Vertex3sv@4)
+       GL_STUB(Vertex4d, _gloffset_Vertex4d, Vertex4d@32)
+       GL_STUB(Vertex4dv, _gloffset_Vertex4dv, Vertex4dv@4)
+       GL_STUB(Vertex4f, _gloffset_Vertex4f, Vertex4f@16)
+       GL_STUB(Vertex4fv, _gloffset_Vertex4fv, Vertex4fv@4)
+       GL_STUB(Vertex4i, _gloffset_Vertex4i, Vertex4i@16)
+       GL_STUB(Vertex4iv, _gloffset_Vertex4iv, Vertex4iv@4)
+       GL_STUB(Vertex4s, _gloffset_Vertex4s, Vertex4s@16)
+       GL_STUB(Vertex4sv, _gloffset_Vertex4sv, Vertex4sv@4)
+       GL_STUB(ClipPlane, _gloffset_ClipPlane, ClipPlane@8)
+       GL_STUB(ColorMaterial, _gloffset_ColorMaterial, ColorMaterial@8)
+       GL_STUB(CullFace, _gloffset_CullFace, CullFace@4)
+       GL_STUB(Fogf, _gloffset_Fogf, Fogf@8)
+       GL_STUB(Fogfv, _gloffset_Fogfv, Fogfv@8)
+       GL_STUB(Fogi, _gloffset_Fogi, Fogi@8)
+       GL_STUB(Fogiv, _gloffset_Fogiv, Fogiv@8)
+       GL_STUB(FrontFace, _gloffset_FrontFace, FrontFace@4)
+       GL_STUB(Hint, _gloffset_Hint, Hint@8)
+       GL_STUB(Lightf, _gloffset_Lightf, Lightf@12)
+       GL_STUB(Lightfv, _gloffset_Lightfv, Lightfv@12)
+       GL_STUB(Lighti, _gloffset_Lighti, Lighti@12)
+       GL_STUB(Lightiv, _gloffset_Lightiv, Lightiv@12)
+       GL_STUB(LightModelf, _gloffset_LightModelf, LightModelf@8)
+       GL_STUB(LightModelfv, _gloffset_LightModelfv, LightModelfv@8)
+       GL_STUB(LightModeli, _gloffset_LightModeli, LightModeli@8)
+       GL_STUB(LightModeliv, _gloffset_LightModeliv, LightModeliv@8)
+       GL_STUB(LineStipple, _gloffset_LineStipple, LineStipple@8)
+       GL_STUB(LineWidth, _gloffset_LineWidth, LineWidth@4)
+       GL_STUB(Materialf, _gloffset_Materialf, Materialf@12)
+       GL_STUB(Materialfv, _gloffset_Materialfv, Materialfv@12)
+       GL_STUB(Materiali, _gloffset_Materiali, Materiali@12)
+       GL_STUB(Materialiv, _gloffset_Materialiv, Materialiv@12)
+       GL_STUB(PointSize, _gloffset_PointSize, PointSize@4)
+       GL_STUB(PolygonMode, _gloffset_PolygonMode, PolygonMode@8)
+       GL_STUB(PolygonStipple, _gloffset_PolygonStipple, PolygonStipple@4)
+       GL_STUB(Scissor, _gloffset_Scissor, Scissor@16)
+       GL_STUB(ShadeModel, _gloffset_ShadeModel, ShadeModel@4)
+       GL_STUB(TexParameterf, _gloffset_TexParameterf, TexParameterf@12)
+       GL_STUB(TexParameterfv, _gloffset_TexParameterfv, TexParameterfv@12)
+       GL_STUB(TexParameteri, _gloffset_TexParameteri, TexParameteri@12)
+       GL_STUB(TexParameteriv, _gloffset_TexParameteriv, TexParameteriv@12)
+       GL_STUB(TexImage1D, _gloffset_TexImage1D, TexImage1D@32)
+       GL_STUB(TexImage2D, _gloffset_TexImage2D, TexImage2D@36)
+       GL_STUB(TexEnvf, _gloffset_TexEnvf, TexEnvf@12)
+       GL_STUB(TexEnvfv, _gloffset_TexEnvfv, TexEnvfv@12)
+       GL_STUB(TexEnvi, _gloffset_TexEnvi, TexEnvi@12)
+       GL_STUB(TexEnviv, _gloffset_TexEnviv, TexEnviv@12)
+       GL_STUB(TexGend, _gloffset_TexGend, TexGend@16)
+       GL_STUB(TexGendv, _gloffset_TexGendv, TexGendv@12)
+       GL_STUB(TexGenf, _gloffset_TexGenf, TexGenf@12)
+       GL_STUB(TexGenfv, _gloffset_TexGenfv, TexGenfv@12)
+       GL_STUB(TexGeni, _gloffset_TexGeni, TexGeni@12)
+       GL_STUB(TexGeniv, _gloffset_TexGeniv, TexGeniv@12)
+       GL_STUB(FeedbackBuffer, _gloffset_FeedbackBuffer, FeedbackBuffer@12)
+       GL_STUB(SelectBuffer, _gloffset_SelectBuffer, SelectBuffer@8)
+       GL_STUB(RenderMode, _gloffset_RenderMode, RenderMode@4)
+       GL_STUB(InitNames, _gloffset_InitNames, InitNames@0)
+       GL_STUB(LoadName, _gloffset_LoadName, LoadName@4)
+       GL_STUB(PassThrough, _gloffset_PassThrough, PassThrough@4)
+       GL_STUB(PopName, _gloffset_PopName, PopName@0)
+       GL_STUB(PushName, _gloffset_PushName, PushName@4)
+       GL_STUB(DrawBuffer, _gloffset_DrawBuffer, DrawBuffer@4)
+       GL_STUB(Clear, _gloffset_Clear, Clear@4)
+       GL_STUB(ClearAccum, _gloffset_ClearAccum, ClearAccum@16)
+       GL_STUB(ClearIndex, _gloffset_ClearIndex, ClearIndex@4)
+       GL_STUB(ClearColor, _gloffset_ClearColor, ClearColor@16)
+       GL_STUB(ClearStencil, _gloffset_ClearStencil, ClearStencil@4)
+       GL_STUB(ClearDepth, _gloffset_ClearDepth, ClearDepth@8)
+       GL_STUB(StencilMask, _gloffset_StencilMask, StencilMask@4)
+       GL_STUB(ColorMask, _gloffset_ColorMask, ColorMask@16)
+       GL_STUB(DepthMask, _gloffset_DepthMask, DepthMask@4)
+       GL_STUB(IndexMask, _gloffset_IndexMask, IndexMask@4)
+       GL_STUB(Accum, _gloffset_Accum, Accum@8)
+       GL_STUB(Disable, _gloffset_Disable, Disable@4)
+       GL_STUB(Enable, _gloffset_Enable, Enable@4)
+       GL_STUB(Finish, _gloffset_Finish, Finish@0)
+       GL_STUB(Flush, _gloffset_Flush, Flush@0)
+       GL_STUB(PopAttrib, _gloffset_PopAttrib, PopAttrib@0)
+       GL_STUB(PushAttrib, _gloffset_PushAttrib, PushAttrib@4)
+       GL_STUB(Map1d, _gloffset_Map1d, Map1d@32)
+       GL_STUB(Map1f, _gloffset_Map1f, Map1f@24)
+       GL_STUB(Map2d, _gloffset_Map2d, Map2d@56)
+       GL_STUB(Map2f, _gloffset_Map2f, Map2f@40)
+       GL_STUB(MapGrid1d, _gloffset_MapGrid1d, MapGrid1d@20)
+       GL_STUB(MapGrid1f, _gloffset_MapGrid1f, MapGrid1f@12)
+       GL_STUB(MapGrid2d, _gloffset_MapGrid2d, MapGrid2d@40)
+       GL_STUB(MapGrid2f, _gloffset_MapGrid2f, MapGrid2f@24)
+       GL_STUB(EvalCoord1d, _gloffset_EvalCoord1d, EvalCoord1d@8)
+       GL_STUB(EvalCoord1dv, _gloffset_EvalCoord1dv, EvalCoord1dv@4)
+       GL_STUB(EvalCoord1f, _gloffset_EvalCoord1f, EvalCoord1f@4)
+       GL_STUB(EvalCoord1fv, _gloffset_EvalCoord1fv, EvalCoord1fv@4)
+       GL_STUB(EvalCoord2d, _gloffset_EvalCoord2d, EvalCoord2d@16)
+       GL_STUB(EvalCoord2dv, _gloffset_EvalCoord2dv, EvalCoord2dv@4)
+       GL_STUB(EvalCoord2f, _gloffset_EvalCoord2f, EvalCoord2f@8)
+       GL_STUB(EvalCoord2fv, _gloffset_EvalCoord2fv, EvalCoord2fv@4)
+       GL_STUB(EvalMesh1, _gloffset_EvalMesh1, EvalMesh1@12)
+       GL_STUB(EvalPoint1, _gloffset_EvalPoint1, EvalPoint1@4)
+       GL_STUB(EvalMesh2, _gloffset_EvalMesh2, EvalMesh2@20)
+       GL_STUB(EvalPoint2, _gloffset_EvalPoint2, EvalPoint2@8)
+       GL_STUB(AlphaFunc, _gloffset_AlphaFunc, AlphaFunc@8)
+       GL_STUB(BlendFunc, _gloffset_BlendFunc, BlendFunc@8)
+       GL_STUB(LogicOp, _gloffset_LogicOp, LogicOp@4)
+       GL_STUB(StencilFunc, _gloffset_StencilFunc, StencilFunc@12)
+       GL_STUB(StencilOp, _gloffset_StencilOp, StencilOp@12)
+       GL_STUB(DepthFunc, _gloffset_DepthFunc, DepthFunc@4)
+       GL_STUB(PixelZoom, _gloffset_PixelZoom, PixelZoom@8)
+       GL_STUB(PixelTransferf, _gloffset_PixelTransferf, PixelTransferf@8)
+       GL_STUB(PixelTransferi, _gloffset_PixelTransferi, PixelTransferi@8)
+       GL_STUB(PixelStoref, _gloffset_PixelStoref, PixelStoref@8)
+       GL_STUB(PixelStorei, _gloffset_PixelStorei, PixelStorei@8)
+       GL_STUB(PixelMapfv, _gloffset_PixelMapfv, PixelMapfv@12)
+       GL_STUB(PixelMapuiv, _gloffset_PixelMapuiv, PixelMapuiv@12)
+       GL_STUB(PixelMapusv, _gloffset_PixelMapusv, PixelMapusv@12)
+       GL_STUB(ReadBuffer, _gloffset_ReadBuffer, ReadBuffer@4)
+       GL_STUB(CopyPixels, _gloffset_CopyPixels, CopyPixels@20)
+       GL_STUB(ReadPixels, _gloffset_ReadPixels, ReadPixels@28)
+       GL_STUB(DrawPixels, _gloffset_DrawPixels, DrawPixels@20)
+       GL_STUB(GetBooleanv, _gloffset_GetBooleanv, GetBooleanv@8)
+       GL_STUB(GetClipPlane, _gloffset_GetClipPlane, GetClipPlane@8)
+       GL_STUB(GetDoublev, _gloffset_GetDoublev, GetDoublev@8)
+       GL_STUB(GetError, _gloffset_GetError, GetError@0)
+       GL_STUB(GetFloatv, _gloffset_GetFloatv, GetFloatv@8)
+       GL_STUB(GetIntegerv, _gloffset_GetIntegerv, GetIntegerv@8)
+       GL_STUB(GetLightfv, _gloffset_GetLightfv, GetLightfv@12)
+       GL_STUB(GetLightiv, _gloffset_GetLightiv, GetLightiv@12)
+       GL_STUB(GetMapdv, _gloffset_GetMapdv, GetMapdv@12)
+       GL_STUB(GetMapfv, _gloffset_GetMapfv, GetMapfv@12)
+       GL_STUB(GetMapiv, _gloffset_GetMapiv, GetMapiv@12)
+       GL_STUB(GetMaterialfv, _gloffset_GetMaterialfv, GetMaterialfv@12)
+       GL_STUB(GetMaterialiv, _gloffset_GetMaterialiv, GetMaterialiv@12)
+       GL_STUB(GetPixelMapfv, _gloffset_GetPixelMapfv, GetPixelMapfv@8)
+       GL_STUB(GetPixelMapuiv, _gloffset_GetPixelMapuiv, GetPixelMapuiv@8)
+       GL_STUB(GetPixelMapusv, _gloffset_GetPixelMapusv, GetPixelMapusv@8)
+       GL_STUB(GetPolygonStipple, _gloffset_GetPolygonStipple, GetPolygonStipple@4)
+       GL_STUB(GetString, _gloffset_GetString, GetString@4)
+       GL_STUB(GetTexEnvfv, _gloffset_GetTexEnvfv, GetTexEnvfv@12)
+       GL_STUB(GetTexEnviv, _gloffset_GetTexEnviv, GetTexEnviv@12)
+       GL_STUB(GetTexGendv, _gloffset_GetTexGendv, GetTexGendv@12)
+       GL_STUB(GetTexGenfv, _gloffset_GetTexGenfv, GetTexGenfv@12)
+       GL_STUB(GetTexGeniv, _gloffset_GetTexGeniv, GetTexGeniv@12)
+       GL_STUB(GetTexImage, _gloffset_GetTexImage, GetTexImage@20)
+       GL_STUB(GetTexParameterfv, _gloffset_GetTexParameterfv, GetTexParameterfv@12)
+       GL_STUB(GetTexParameteriv, _gloffset_GetTexParameteriv, GetTexParameteriv@12)
+       GL_STUB(GetTexLevelParameterfv, _gloffset_GetTexLevelParameterfv, GetTexLevelParameterfv@16)
+       GL_STUB(GetTexLevelParameteriv, _gloffset_GetTexLevelParameteriv, GetTexLevelParameteriv@16)
+       GL_STUB(IsEnabled, _gloffset_IsEnabled, IsEnabled@4)
+       GL_STUB(IsList, _gloffset_IsList, IsList@4)
+       GL_STUB(DepthRange, _gloffset_DepthRange, DepthRange@16)
+       GL_STUB(Frustum, _gloffset_Frustum, Frustum@48)
+       GL_STUB(LoadIdentity, _gloffset_LoadIdentity, LoadIdentity@0)
+       GL_STUB(LoadMatrixf, _gloffset_LoadMatrixf, LoadMatrixf@4)
+       GL_STUB(LoadMatrixd, _gloffset_LoadMatrixd, LoadMatrixd@4)
+       GL_STUB(MatrixMode, _gloffset_MatrixMode, MatrixMode@4)
+       GL_STUB(MultMatrixf, _gloffset_MultMatrixf, MultMatrixf@4)
+       GL_STUB(MultMatrixd, _gloffset_MultMatrixd, MultMatrixd@4)
+       GL_STUB(Ortho, _gloffset_Ortho, Ortho@48)
+       GL_STUB(PopMatrix, _gloffset_PopMatrix, PopMatrix@0)
+       GL_STUB(PushMatrix, _gloffset_PushMatrix, PushMatrix@0)
+       GL_STUB(Rotated, _gloffset_Rotated, Rotated@32)
+       GL_STUB(Rotatef, _gloffset_Rotatef, Rotatef@16)
+       GL_STUB(Scaled, _gloffset_Scaled, Scaled@24)
+       GL_STUB(Scalef, _gloffset_Scalef, Scalef@12)
+       GL_STUB(Translated, _gloffset_Translated, Translated@24)
+       GL_STUB(Translatef, _gloffset_Translatef, Translatef@12)
+       GL_STUB(Viewport, _gloffset_Viewport, Viewport@16)
+       GL_STUB(ArrayElement, _gloffset_ArrayElement, ArrayElement@4)
+       GL_STUB(BindTexture, _gloffset_BindTexture, BindTexture@8)
+       GL_STUB(ColorPointer, _gloffset_ColorPointer, ColorPointer@16)
+       GL_STUB(DisableClientState, _gloffset_DisableClientState, DisableClientState@4)
+       GL_STUB(DrawArrays, _gloffset_DrawArrays, DrawArrays@12)
+       GL_STUB(DrawElements, _gloffset_DrawElements, DrawElements@16)
+       GL_STUB(EdgeFlagPointer, _gloffset_EdgeFlagPointer, EdgeFlagPointer@8)
+       GL_STUB(EnableClientState, _gloffset_EnableClientState, EnableClientState@4)
+       GL_STUB(IndexPointer, _gloffset_IndexPointer, IndexPointer@12)
+       GL_STUB(Indexub, _gloffset_Indexub, Indexub@4)
+       GL_STUB(Indexubv, _gloffset_Indexubv, Indexubv@4)
+       GL_STUB(InterleavedArrays, _gloffset_InterleavedArrays, InterleavedArrays@12)
+       GL_STUB(NormalPointer, _gloffset_NormalPointer, NormalPointer@12)
+       GL_STUB(PolygonOffset, _gloffset_PolygonOffset, PolygonOffset@8)
+       GL_STUB(TexCoordPointer, _gloffset_TexCoordPointer, TexCoordPointer@16)
+       GL_STUB(VertexPointer, _gloffset_VertexPointer, VertexPointer@16)
+       GL_STUB(AreTexturesResident, _gloffset_AreTexturesResident, AreTexturesResident@12)
+       GL_STUB(CopyTexImage1D, _gloffset_CopyTexImage1D, CopyTexImage1D@28)
+       GL_STUB(CopyTexImage2D, _gloffset_CopyTexImage2D, CopyTexImage2D@32)
+       GL_STUB(CopyTexSubImage1D, _gloffset_CopyTexSubImage1D, CopyTexSubImage1D@24)
+       GL_STUB(CopyTexSubImage2D, _gloffset_CopyTexSubImage2D, CopyTexSubImage2D@32)
+       GL_STUB(DeleteTextures, _gloffset_DeleteTextures, DeleteTextures@8)
+       GL_STUB(GenTextures, _gloffset_GenTextures, GenTextures@8)
+       GL_STUB(GetPointerv, _gloffset_GetPointerv, GetPointerv@8)
+       GL_STUB(IsTexture, _gloffset_IsTexture, IsTexture@4)
+       GL_STUB(PrioritizeTextures, _gloffset_PrioritizeTextures, PrioritizeTextures@12)
+       GL_STUB(TexSubImage1D, _gloffset_TexSubImage1D, TexSubImage1D@28)
+       GL_STUB(TexSubImage2D, _gloffset_TexSubImage2D, TexSubImage2D@36)
+       GL_STUB(PopClientAttrib, _gloffset_PopClientAttrib, PopClientAttrib@0)
+       GL_STUB(PushClientAttrib, _gloffset_PushClientAttrib, PushClientAttrib@4)
+       GL_STUB(BlendColor, _gloffset_BlendColor, BlendColor@16)
+       GL_STUB(BlendEquation, _gloffset_BlendEquation, BlendEquation@4)
+       GL_STUB(DrawRangeElements, _gloffset_DrawRangeElements, DrawRangeElements@24)
+       GL_STUB(ColorTable, _gloffset_ColorTable, ColorTable@24)
+       GL_STUB(ColorTableParameterfv, _gloffset_ColorTableParameterfv, ColorTableParameterfv@12)
+       GL_STUB(ColorTableParameteriv, _gloffset_ColorTableParameteriv, ColorTableParameteriv@12)
+       GL_STUB(CopyColorTable, _gloffset_CopyColorTable, CopyColorTable@20)
+       GL_STUB(GetColorTable, _gloffset_GetColorTable, GetColorTable@16)
+       GL_STUB(GetColorTableParameterfv, _gloffset_GetColorTableParameterfv, GetColorTableParameterfv@12)
+       GL_STUB(GetColorTableParameteriv, _gloffset_GetColorTableParameteriv, GetColorTableParameteriv@12)
+       GL_STUB(ColorSubTable, _gloffset_ColorSubTable, ColorSubTable@24)
+       GL_STUB(CopyColorSubTable, _gloffset_CopyColorSubTable, CopyColorSubTable@20)
+       GL_STUB(ConvolutionFilter1D, _gloffset_ConvolutionFilter1D, ConvolutionFilter1D@24)
+       GL_STUB(ConvolutionFilter2D, _gloffset_ConvolutionFilter2D, ConvolutionFilter2D@28)
+       GL_STUB(ConvolutionParameterf, _gloffset_ConvolutionParameterf, ConvolutionParameterf@12)
+       GL_STUB(ConvolutionParameterfv, _gloffset_ConvolutionParameterfv, ConvolutionParameterfv@12)
+       GL_STUB(ConvolutionParameteri, _gloffset_ConvolutionParameteri, ConvolutionParameteri@12)
+       GL_STUB(ConvolutionParameteriv, _gloffset_ConvolutionParameteriv, ConvolutionParameteriv@12)
+       GL_STUB(CopyConvolutionFilter1D, _gloffset_CopyConvolutionFilter1D, CopyConvolutionFilter1D@20)
+       GL_STUB(CopyConvolutionFilter2D, _gloffset_CopyConvolutionFilter2D, CopyConvolutionFilter2D@24)
+       GL_STUB(GetConvolutionFilter, _gloffset_GetConvolutionFilter, GetConvolutionFilter@16)
+       GL_STUB(GetConvolutionParameterfv, _gloffset_GetConvolutionParameterfv, GetConvolutionParameterfv@12)
+       GL_STUB(GetConvolutionParameteriv, _gloffset_GetConvolutionParameteriv, GetConvolutionParameteriv@12)
+       GL_STUB(GetSeparableFilter, _gloffset_GetSeparableFilter, GetSeparableFilter@24)
+       GL_STUB(SeparableFilter2D, _gloffset_SeparableFilter2D, SeparableFilter2D@32)
+       GL_STUB(GetHistogram, _gloffset_GetHistogram, GetHistogram@20)
+       GL_STUB(GetHistogramParameterfv, _gloffset_GetHistogramParameterfv, GetHistogramParameterfv@12)
+       GL_STUB(GetHistogramParameteriv, _gloffset_GetHistogramParameteriv, GetHistogramParameteriv@12)
+       GL_STUB(GetMinmax, _gloffset_GetMinmax, GetMinmax@20)
+       GL_STUB(GetMinmaxParameterfv, _gloffset_GetMinmaxParameterfv, GetMinmaxParameterfv@12)
+       GL_STUB(GetMinmaxParameteriv, _gloffset_GetMinmaxParameteriv, GetMinmaxParameteriv@12)
+       GL_STUB(Histogram, _gloffset_Histogram, Histogram@16)
+       GL_STUB(Minmax, _gloffset_Minmax, Minmax@12)
+       GL_STUB(ResetHistogram, _gloffset_ResetHistogram, ResetHistogram@4)
+       GL_STUB(ResetMinmax, _gloffset_ResetMinmax, ResetMinmax@4)
+       GL_STUB(TexImage3D, _gloffset_TexImage3D, TexImage3D@40)
+       GL_STUB(TexSubImage3D, _gloffset_TexSubImage3D, TexSubImage3D@44)
+       GL_STUB(CopyTexSubImage3D, _gloffset_CopyTexSubImage3D, CopyTexSubImage3D@36)
+       GL_STUB(ActiveTextureARB, _gloffset_ActiveTextureARB, ActiveTextureARB@4)
+       GL_STUB(ClientActiveTextureARB, _gloffset_ClientActiveTextureARB, ClientActiveTextureARB@4)
+       GL_STUB(MultiTexCoord1dARB, _gloffset_MultiTexCoord1dARB, MultiTexCoord1dARB@12)
+       GL_STUB(MultiTexCoord1dvARB, _gloffset_MultiTexCoord1dvARB, MultiTexCoord1dvARB@8)
+       GL_STUB(MultiTexCoord1fARB, _gloffset_MultiTexCoord1fARB, MultiTexCoord1fARB@8)
+       GL_STUB(MultiTexCoord1fvARB, _gloffset_MultiTexCoord1fvARB, MultiTexCoord1fvARB@8)
+       GL_STUB(MultiTexCoord1iARB, _gloffset_MultiTexCoord1iARB, MultiTexCoord1iARB@8)
+       GL_STUB(MultiTexCoord1ivARB, _gloffset_MultiTexCoord1ivARB, MultiTexCoord1ivARB@8)
+       GL_STUB(MultiTexCoord1sARB, _gloffset_MultiTexCoord1sARB, MultiTexCoord1sARB@8)
+       GL_STUB(MultiTexCoord1svARB, _gloffset_MultiTexCoord1svARB, MultiTexCoord1svARB@8)
+       GL_STUB(MultiTexCoord2dARB, _gloffset_MultiTexCoord2dARB, MultiTexCoord2dARB@20)
+       GL_STUB(MultiTexCoord2dvARB, _gloffset_MultiTexCoord2dvARB, MultiTexCoord2dvARB@8)
+       GL_STUB(MultiTexCoord2fARB, _gloffset_MultiTexCoord2fARB, MultiTexCoord2fARB@12)
+       GL_STUB(MultiTexCoord2fvARB, _gloffset_MultiTexCoord2fvARB, MultiTexCoord2fvARB@8)
+       GL_STUB(MultiTexCoord2iARB, _gloffset_MultiTexCoord2iARB, MultiTexCoord2iARB@12)
+       GL_STUB(MultiTexCoord2ivARB, _gloffset_MultiTexCoord2ivARB, MultiTexCoord2ivARB@8)
+       GL_STUB(MultiTexCoord2sARB, _gloffset_MultiTexCoord2sARB, MultiTexCoord2sARB@12)
+       GL_STUB(MultiTexCoord2svARB, _gloffset_MultiTexCoord2svARB, MultiTexCoord2svARB@8)
+       GL_STUB(MultiTexCoord3dARB, _gloffset_MultiTexCoord3dARB, MultiTexCoord3dARB@28)
+       GL_STUB(MultiTexCoord3dvARB, _gloffset_MultiTexCoord3dvARB, MultiTexCoord3dvARB@8)
+       GL_STUB(MultiTexCoord3fARB, _gloffset_MultiTexCoord3fARB, MultiTexCoord3fARB@16)
+       GL_STUB(MultiTexCoord3fvARB, _gloffset_MultiTexCoord3fvARB, MultiTexCoord3fvARB@8)
+       GL_STUB(MultiTexCoord3iARB, _gloffset_MultiTexCoord3iARB, MultiTexCoord3iARB@16)
+       GL_STUB(MultiTexCoord3ivARB, _gloffset_MultiTexCoord3ivARB, MultiTexCoord3ivARB@8)
+       GL_STUB(MultiTexCoord3sARB, _gloffset_MultiTexCoord3sARB, MultiTexCoord3sARB@16)
+       GL_STUB(MultiTexCoord3svARB, _gloffset_MultiTexCoord3svARB, MultiTexCoord3svARB@8)
+       GL_STUB(MultiTexCoord4dARB, _gloffset_MultiTexCoord4dARB, MultiTexCoord4dARB@36)
+       GL_STUB(MultiTexCoord4dvARB, _gloffset_MultiTexCoord4dvARB, MultiTexCoord4dvARB@8)
+       GL_STUB(MultiTexCoord4fARB, _gloffset_MultiTexCoord4fARB, MultiTexCoord4fARB@20)
+       GL_STUB(MultiTexCoord4fvARB, _gloffset_MultiTexCoord4fvARB, MultiTexCoord4fvARB@8)
+       GL_STUB(MultiTexCoord4iARB, _gloffset_MultiTexCoord4iARB, MultiTexCoord4iARB@20)
+       GL_STUB(MultiTexCoord4ivARB, _gloffset_MultiTexCoord4ivARB, MultiTexCoord4ivARB@8)
+       GL_STUB(MultiTexCoord4sARB, _gloffset_MultiTexCoord4sARB, MultiTexCoord4sARB@20)
+       GL_STUB(MultiTexCoord4svARB, _gloffset_MultiTexCoord4svARB, MultiTexCoord4svARB@8)
+       GL_STUB(AttachShader, _gloffset_AttachShader, AttachShader@8)
+       GL_STUB(CreateProgram, _gloffset_CreateProgram, CreateProgram@0)
+       GL_STUB(CreateShader, _gloffset_CreateShader, CreateShader@4)
+       GL_STUB(DeleteProgram, _gloffset_DeleteProgram, DeleteProgram@4)
+       GL_STUB(DeleteShader, _gloffset_DeleteShader, DeleteShader@4)
+       GL_STUB(DetachShader, _gloffset_DetachShader, DetachShader@8)
+       GL_STUB(GetAttachedShaders, _gloffset_GetAttachedShaders, GetAttachedShaders@16)
+       GL_STUB(GetProgramInfoLog, _gloffset_GetProgramInfoLog, GetProgramInfoLog@16)
+       GL_STUB(GetProgramiv, _gloffset_GetProgramiv, GetProgramiv@12)
+       GL_STUB(GetShaderInfoLog, _gloffset_GetShaderInfoLog, GetShaderInfoLog@16)
+       GL_STUB(GetShaderiv, _gloffset_GetShaderiv, GetShaderiv@12)
+       GL_STUB(IsProgram, _gloffset_IsProgram, IsProgram@4)
+       GL_STUB(IsShader, _gloffset_IsShader, IsShader@4)
+       GL_STUB(StencilFuncSeparate, _gloffset_StencilFuncSeparate, StencilFuncSeparate@16)
+       GL_STUB(StencilMaskSeparate, _gloffset_StencilMaskSeparate, StencilMaskSeparate@8)
+       GL_STUB(StencilOpSeparate, _gloffset_StencilOpSeparate, StencilOpSeparate@16)
+       GL_STUB(UniformMatrix2x3fv, _gloffset_UniformMatrix2x3fv, UniformMatrix2x3fv@16)
+       GL_STUB(UniformMatrix2x4fv, _gloffset_UniformMatrix2x4fv, UniformMatrix2x4fv@16)
+       GL_STUB(UniformMatrix3x2fv, _gloffset_UniformMatrix3x2fv, UniformMatrix3x2fv@16)
+       GL_STUB(UniformMatrix3x4fv, _gloffset_UniformMatrix3x4fv, UniformMatrix3x4fv@16)
+       GL_STUB(UniformMatrix4x2fv, _gloffset_UniformMatrix4x2fv, UniformMatrix4x2fv@16)
+       GL_STUB(UniformMatrix4x3fv, _gloffset_UniformMatrix4x3fv, UniformMatrix4x3fv@16)
+       GL_STUB(DrawArraysInstanced, _gloffset_DrawArraysInstanced, DrawArraysInstanced@16)
+       GL_STUB(DrawElementsInstanced, _gloffset_DrawElementsInstanced, DrawElementsInstanced@20)
+       GL_STUB(LoadTransposeMatrixdARB, _gloffset_LoadTransposeMatrixdARB, LoadTransposeMatrixdARB@4)
+       GL_STUB(LoadTransposeMatrixfARB, _gloffset_LoadTransposeMatrixfARB, LoadTransposeMatrixfARB@4)
+       GL_STUB(MultTransposeMatrixdARB, _gloffset_MultTransposeMatrixdARB, MultTransposeMatrixdARB@4)
+       GL_STUB(MultTransposeMatrixfARB, _gloffset_MultTransposeMatrixfARB, MultTransposeMatrixfARB@4)
+       GL_STUB(SampleCoverageARB, _gloffset_SampleCoverageARB, SampleCoverageARB@8)
+       GL_STUB(CompressedTexImage1DARB, _gloffset_CompressedTexImage1DARB, CompressedTexImage1DARB@28)
+       GL_STUB(CompressedTexImage2DARB, _gloffset_CompressedTexImage2DARB, CompressedTexImage2DARB@32)
+       GL_STUB(CompressedTexImage3DARB, _gloffset_CompressedTexImage3DARB, CompressedTexImage3DARB@36)
+       GL_STUB(CompressedTexSubImage1DARB, _gloffset_CompressedTexSubImage1DARB, CompressedTexSubImage1DARB@28)
+       GL_STUB(CompressedTexSubImage2DARB, _gloffset_CompressedTexSubImage2DARB, CompressedTexSubImage2DARB@36)
+       GL_STUB(CompressedTexSubImage3DARB, _gloffset_CompressedTexSubImage3DARB, CompressedTexSubImage3DARB@44)
+       GL_STUB(GetCompressedTexImageARB, _gloffset_GetCompressedTexImageARB, GetCompressedTexImageARB@12)
+       GL_STUB(DisableVertexAttribArrayARB, _gloffset_DisableVertexAttribArrayARB, DisableVertexAttribArrayARB@4)
+       GL_STUB(EnableVertexAttribArrayARB, _gloffset_EnableVertexAttribArrayARB, EnableVertexAttribArrayARB@4)
+       GL_STUB(GetProgramEnvParameterdvARB, _gloffset_GetProgramEnvParameterdvARB, GetProgramEnvParameterdvARB@12)
+       GL_STUB(GetProgramEnvParameterfvARB, _gloffset_GetProgramEnvParameterfvARB, GetProgramEnvParameterfvARB@12)
+       GL_STUB(GetProgramLocalParameterdvARB, _gloffset_GetProgramLocalParameterdvARB, GetProgramLocalParameterdvARB@12)
+       GL_STUB(GetProgramLocalParameterfvARB, _gloffset_GetProgramLocalParameterfvARB, GetProgramLocalParameterfvARB@12)
+       GL_STUB(GetProgramStringARB, _gloffset_GetProgramStringARB, GetProgramStringARB@12)
+       GL_STUB(GetProgramivARB, _gloffset_GetProgramivARB, GetProgramivARB@12)
+       GL_STUB(GetVertexAttribdvARB, _gloffset_GetVertexAttribdvARB, GetVertexAttribdvARB@12)
+       GL_STUB(GetVertexAttribfvARB, _gloffset_GetVertexAttribfvARB, GetVertexAttribfvARB@12)
+       GL_STUB(GetVertexAttribivARB, _gloffset_GetVertexAttribivARB, GetVertexAttribivARB@12)
+       GL_STUB(ProgramEnvParameter4dARB, _gloffset_ProgramEnvParameter4dARB, ProgramEnvParameter4dARB@40)
+       GL_STUB(ProgramEnvParameter4dvARB, _gloffset_ProgramEnvParameter4dvARB, ProgramEnvParameter4dvARB@12)
+       GL_STUB(ProgramEnvParameter4fARB, _gloffset_ProgramEnvParameter4fARB, ProgramEnvParameter4fARB@24)
+       GL_STUB(ProgramEnvParameter4fvARB, _gloffset_ProgramEnvParameter4fvARB, ProgramEnvParameter4fvARB@12)
+       GL_STUB(ProgramLocalParameter4dARB, _gloffset_ProgramLocalParameter4dARB, ProgramLocalParameter4dARB@40)
+       GL_STUB(ProgramLocalParameter4dvARB, _gloffset_ProgramLocalParameter4dvARB, ProgramLocalParameter4dvARB@12)
+       GL_STUB(ProgramLocalParameter4fARB, _gloffset_ProgramLocalParameter4fARB, ProgramLocalParameter4fARB@24)
+       GL_STUB(ProgramLocalParameter4fvARB, _gloffset_ProgramLocalParameter4fvARB, ProgramLocalParameter4fvARB@12)
+       GL_STUB(ProgramStringARB, _gloffset_ProgramStringARB, ProgramStringARB@16)
+       GL_STUB(VertexAttrib1dARB, _gloffset_VertexAttrib1dARB, VertexAttrib1dARB@12)
+       GL_STUB(VertexAttrib1dvARB, _gloffset_VertexAttrib1dvARB, VertexAttrib1dvARB@8)
+       GL_STUB(VertexAttrib1fARB, _gloffset_VertexAttrib1fARB, VertexAttrib1fARB@8)
+       GL_STUB(VertexAttrib1fvARB, _gloffset_VertexAttrib1fvARB, VertexAttrib1fvARB@8)
+       GL_STUB(VertexAttrib1sARB, _gloffset_VertexAttrib1sARB, VertexAttrib1sARB@8)
+       GL_STUB(VertexAttrib1svARB, _gloffset_VertexAttrib1svARB, VertexAttrib1svARB@8)
+       GL_STUB(VertexAttrib2dARB, _gloffset_VertexAttrib2dARB, VertexAttrib2dARB@20)
+       GL_STUB(VertexAttrib2dvARB, _gloffset_VertexAttrib2dvARB, VertexAttrib2dvARB@8)
+       GL_STUB(VertexAttrib2fARB, _gloffset_VertexAttrib2fARB, VertexAttrib2fARB@12)
+       GL_STUB(VertexAttrib2fvARB, _gloffset_VertexAttrib2fvARB, VertexAttrib2fvARB@8)
+       GL_STUB(VertexAttrib2sARB, _gloffset_VertexAttrib2sARB, VertexAttrib2sARB@12)
+       GL_STUB(VertexAttrib2svARB, _gloffset_VertexAttrib2svARB, VertexAttrib2svARB@8)
+       GL_STUB(VertexAttrib3dARB, _gloffset_VertexAttrib3dARB, VertexAttrib3dARB@28)
+       GL_STUB(VertexAttrib3dvARB, _gloffset_VertexAttrib3dvARB, VertexAttrib3dvARB@8)
+       GL_STUB(VertexAttrib3fARB, _gloffset_VertexAttrib3fARB, VertexAttrib3fARB@16)
+       GL_STUB(VertexAttrib3fvARB, _gloffset_VertexAttrib3fvARB, VertexAttrib3fvARB@8)
+       GL_STUB(VertexAttrib3sARB, _gloffset_VertexAttrib3sARB, VertexAttrib3sARB@16)
+       GL_STUB(VertexAttrib3svARB, _gloffset_VertexAttrib3svARB, VertexAttrib3svARB@8)
+       GL_STUB(VertexAttrib4NbvARB, _gloffset_VertexAttrib4NbvARB, VertexAttrib4NbvARB@8)
+       GL_STUB(VertexAttrib4NivARB, _gloffset_VertexAttrib4NivARB, VertexAttrib4NivARB@8)
+       GL_STUB(VertexAttrib4NsvARB, _gloffset_VertexAttrib4NsvARB, VertexAttrib4NsvARB@8)
+       GL_STUB(VertexAttrib4NubARB, _gloffset_VertexAttrib4NubARB, VertexAttrib4NubARB@20)
+       GL_STUB(VertexAttrib4NubvARB, _gloffset_VertexAttrib4NubvARB, VertexAttrib4NubvARB@8)
+       GL_STUB(VertexAttrib4NuivARB, _gloffset_VertexAttrib4NuivARB, VertexAttrib4NuivARB@8)
+       GL_STUB(VertexAttrib4NusvARB, _gloffset_VertexAttrib4NusvARB, VertexAttrib4NusvARB@8)
+       GL_STUB(VertexAttrib4bvARB, _gloffset_VertexAttrib4bvARB, VertexAttrib4bvARB@8)
+       GL_STUB(VertexAttrib4dARB, _gloffset_VertexAttrib4dARB, VertexAttrib4dARB@36)
+       GL_STUB(VertexAttrib4dvARB, _gloffset_VertexAttrib4dvARB, VertexAttrib4dvARB@8)
+       GL_STUB(VertexAttrib4fARB, _gloffset_VertexAttrib4fARB, VertexAttrib4fARB@20)
+       GL_STUB(VertexAttrib4fvARB, _gloffset_VertexAttrib4fvARB, VertexAttrib4fvARB@8)
+       GL_STUB(VertexAttrib4ivARB, _gloffset_VertexAttrib4ivARB, VertexAttrib4ivARB@8)
+       GL_STUB(VertexAttrib4sARB, _gloffset_VertexAttrib4sARB, VertexAttrib4sARB@20)
+       GL_STUB(VertexAttrib4svARB, _gloffset_VertexAttrib4svARB, VertexAttrib4svARB@8)
+       GL_STUB(VertexAttrib4ubvARB, _gloffset_VertexAttrib4ubvARB, VertexAttrib4ubvARB@8)
+       GL_STUB(VertexAttrib4uivARB, _gloffset_VertexAttrib4uivARB, VertexAttrib4uivARB@8)
+       GL_STUB(VertexAttrib4usvARB, _gloffset_VertexAttrib4usvARB, VertexAttrib4usvARB@8)
+       GL_STUB(VertexAttribPointerARB, _gloffset_VertexAttribPointerARB, VertexAttribPointerARB@24)
+       GL_STUB(BindBufferARB, _gloffset_BindBufferARB, BindBufferARB@8)
+       GL_STUB(BufferDataARB, _gloffset_BufferDataARB, BufferDataARB@16)
+       GL_STUB(BufferSubDataARB, _gloffset_BufferSubDataARB, BufferSubDataARB@16)
+       GL_STUB(DeleteBuffersARB, _gloffset_DeleteBuffersARB, DeleteBuffersARB@8)
+       GL_STUB(GenBuffersARB, _gloffset_GenBuffersARB, GenBuffersARB@8)
+       GL_STUB(GetBufferParameterivARB, _gloffset_GetBufferParameterivARB, GetBufferParameterivARB@12)
+       GL_STUB(GetBufferPointervARB, _gloffset_GetBufferPointervARB, GetBufferPointervARB@12)
+       GL_STUB(GetBufferSubDataARB, _gloffset_GetBufferSubDataARB, GetBufferSubDataARB@16)
+       GL_STUB(IsBufferARB, _gloffset_IsBufferARB, IsBufferARB@4)
+       GL_STUB(MapBufferARB, _gloffset_MapBufferARB, MapBufferARB@8)
+       GL_STUB(UnmapBufferARB, _gloffset_UnmapBufferARB, UnmapBufferARB@4)
+       GL_STUB(BeginQueryARB, _gloffset_BeginQueryARB, BeginQueryARB@8)
+       GL_STUB(DeleteQueriesARB, _gloffset_DeleteQueriesARB, DeleteQueriesARB@8)
+       GL_STUB(EndQueryARB, _gloffset_EndQueryARB, EndQueryARB@4)
+       GL_STUB(GenQueriesARB, _gloffset_GenQueriesARB, GenQueriesARB@8)
+       GL_STUB(GetQueryObjectivARB, _gloffset_GetQueryObjectivARB, GetQueryObjectivARB@12)
+       GL_STUB(GetQueryObjectuivARB, _gloffset_GetQueryObjectuivARB, GetQueryObjectuivARB@12)
+       GL_STUB(GetQueryivARB, _gloffset_GetQueryivARB, GetQueryivARB@12)
+       GL_STUB(IsQueryARB, _gloffset_IsQueryARB, IsQueryARB@4)
+       GL_STUB(AttachObjectARB, _gloffset_AttachObjectARB, AttachObjectARB@8)
+       GL_STUB(CompileShaderARB, _gloffset_CompileShaderARB, CompileShaderARB@4)
+       GL_STUB(CreateProgramObjectARB, _gloffset_CreateProgramObjectARB, CreateProgramObjectARB@0)
+       GL_STUB(CreateShaderObjectARB, _gloffset_CreateShaderObjectARB, CreateShaderObjectARB@4)
+       GL_STUB(DeleteObjectARB, _gloffset_DeleteObjectARB, DeleteObjectARB@4)
+       GL_STUB(DetachObjectARB, _gloffset_DetachObjectARB, DetachObjectARB@8)
+       GL_STUB(GetActiveUniformARB, _gloffset_GetActiveUniformARB, GetActiveUniformARB@28)
+       GL_STUB(GetAttachedObjectsARB, _gloffset_GetAttachedObjectsARB, GetAttachedObjectsARB@16)
+       GL_STUB(GetHandleARB, _gloffset_GetHandleARB, GetHandleARB@4)
+       GL_STUB(GetInfoLogARB, _gloffset_GetInfoLogARB, GetInfoLogARB@16)
+       GL_STUB(GetObjectParameterfvARB, _gloffset_GetObjectParameterfvARB, GetObjectParameterfvARB@12)
+       GL_STUB(GetObjectParameterivARB, _gloffset_GetObjectParameterivARB, GetObjectParameterivARB@12)
+       GL_STUB(GetShaderSourceARB, _gloffset_GetShaderSourceARB, GetShaderSourceARB@16)
+       GL_STUB(GetUniformLocationARB, _gloffset_GetUniformLocationARB, GetUniformLocationARB@8)
+       GL_STUB(GetUniformfvARB, _gloffset_GetUniformfvARB, GetUniformfvARB@12)
+       GL_STUB(GetUniformivARB, _gloffset_GetUniformivARB, GetUniformivARB@12)
+       GL_STUB(LinkProgramARB, _gloffset_LinkProgramARB, LinkProgramARB@4)
+       GL_STUB(ShaderSourceARB, _gloffset_ShaderSourceARB, ShaderSourceARB@16)
+       GL_STUB(Uniform1fARB, _gloffset_Uniform1fARB, Uniform1fARB@8)
+       GL_STUB(Uniform1fvARB, _gloffset_Uniform1fvARB, Uniform1fvARB@12)
+       GL_STUB(Uniform1iARB, _gloffset_Uniform1iARB, Uniform1iARB@8)
+       GL_STUB(Uniform1ivARB, _gloffset_Uniform1ivARB, Uniform1ivARB@12)
+       GL_STUB(Uniform2fARB, _gloffset_Uniform2fARB, Uniform2fARB@12)
+       GL_STUB(Uniform2fvARB, _gloffset_Uniform2fvARB, Uniform2fvARB@12)
+       GL_STUB(Uniform2iARB, _gloffset_Uniform2iARB, Uniform2iARB@12)
+       GL_STUB(Uniform2ivARB, _gloffset_Uniform2ivARB, Uniform2ivARB@12)
+       GL_STUB(Uniform3fARB, _gloffset_Uniform3fARB, Uniform3fARB@16)
+       GL_STUB(Uniform3fvARB, _gloffset_Uniform3fvARB, Uniform3fvARB@12)
+       GL_STUB(Uniform3iARB, _gloffset_Uniform3iARB, Uniform3iARB@16)
+       GL_STUB(Uniform3ivARB, _gloffset_Uniform3ivARB, Uniform3ivARB@12)
+       GL_STUB(Uniform4fARB, _gloffset_Uniform4fARB, Uniform4fARB@20)
+       GL_STUB(Uniform4fvARB, _gloffset_Uniform4fvARB, Uniform4fvARB@12)
+       GL_STUB(Uniform4iARB, _gloffset_Uniform4iARB, Uniform4iARB@20)
+       GL_STUB(Uniform4ivARB, _gloffset_Uniform4ivARB, Uniform4ivARB@12)
+       GL_STUB(UniformMatrix2fvARB, _gloffset_UniformMatrix2fvARB, UniformMatrix2fvARB@16)
+       GL_STUB(UniformMatrix3fvARB, _gloffset_UniformMatrix3fvARB, UniformMatrix3fvARB@16)
+       GL_STUB(UniformMatrix4fvARB, _gloffset_UniformMatrix4fvARB, UniformMatrix4fvARB@16)
+       GL_STUB(UseProgramObjectARB, _gloffset_UseProgramObjectARB, UseProgramObjectARB@4)
+       GL_STUB(ValidateProgramARB, _gloffset_ValidateProgramARB, ValidateProgramARB@4)
+       GL_STUB(BindAttribLocationARB, _gloffset_BindAttribLocationARB, BindAttribLocationARB@12)
+       GL_STUB(GetActiveAttribARB, _gloffset_GetActiveAttribARB, GetActiveAttribARB@28)
+       GL_STUB(GetAttribLocationARB, _gloffset_GetAttribLocationARB, GetAttribLocationARB@8)
+       GL_STUB(DrawBuffersARB, _gloffset_DrawBuffersARB, DrawBuffersARB@8)
+       GL_STUB(RenderbufferStorageMultisample, _gloffset_RenderbufferStorageMultisample, RenderbufferStorageMultisample@20)
+       GL_STUB(FlushMappedBufferRange, _gloffset_FlushMappedBufferRange, FlushMappedBufferRange@12)
+       GL_STUB(MapBufferRange, _gloffset_MapBufferRange, MapBufferRange@16)
+       GL_STUB(BindVertexArray, _gloffset_BindVertexArray, BindVertexArray@4)
+       GL_STUB(GenVertexArrays, _gloffset_GenVertexArrays, GenVertexArrays@8)
+       GL_STUB(CopyBufferSubData, _gloffset_CopyBufferSubData, CopyBufferSubData@20)
+       GL_STUB(ClientWaitSync, _gloffset_ClientWaitSync, ClientWaitSync@12)
+       GL_STUB(DeleteSync, _gloffset_DeleteSync, DeleteSync@4)
+       GL_STUB(FenceSync, _gloffset_FenceSync, FenceSync@8)
+       GL_STUB(GetInteger64v, _gloffset_GetInteger64v, GetInteger64v@8)
+       GL_STUB(GetSynciv, _gloffset_GetSynciv, GetSynciv@20)
+       GL_STUB(IsSync, _gloffset_IsSync, IsSync@4)
+       GL_STUB(WaitSync, _gloffset_WaitSync, WaitSync@12)
+       GL_STUB(DrawElementsBaseVertex, _gloffset_DrawElementsBaseVertex, DrawElementsBaseVertex@20)
+       GL_STUB(DrawRangeElementsBaseVertex, _gloffset_DrawRangeElementsBaseVertex, DrawRangeElementsBaseVertex@28)
+       GL_STUB(MultiDrawElementsBaseVertex, _gloffset_MultiDrawElementsBaseVertex, MultiDrawElementsBaseVertex@24)
+       GL_STUB(PolygonOffsetEXT, _gloffset_PolygonOffsetEXT, PolygonOffsetEXT@8)
+       GL_STUB(_dispatch_stub_580, _gloffset_GetPixelTexGenParameterfvSGIS, _dispatch_stub_580@8)
+       HIDDEN(GL_PREFIX(_dispatch_stub_580, _dispatch_stub_580@8))
+       GL_STUB(_dispatch_stub_581, _gloffset_GetPixelTexGenParameterivSGIS, _dispatch_stub_581@8)
+       HIDDEN(GL_PREFIX(_dispatch_stub_581, _dispatch_stub_581@8))
+       GL_STUB(_dispatch_stub_582, _gloffset_PixelTexGenParameterfSGIS, _dispatch_stub_582@8)
+       HIDDEN(GL_PREFIX(_dispatch_stub_582, _dispatch_stub_582@8))
+       GL_STUB(_dispatch_stub_583, _gloffset_PixelTexGenParameterfvSGIS, _dispatch_stub_583@8)
+       HIDDEN(GL_PREFIX(_dispatch_stub_583, _dispatch_stub_583@8))
+       GL_STUB(_dispatch_stub_584, _gloffset_PixelTexGenParameteriSGIS, _dispatch_stub_584@8)
+       HIDDEN(GL_PREFIX(_dispatch_stub_584, _dispatch_stub_584@8))
+       GL_STUB(_dispatch_stub_585, _gloffset_PixelTexGenParameterivSGIS, _dispatch_stub_585@8)
+       HIDDEN(GL_PREFIX(_dispatch_stub_585, _dispatch_stub_585@8))
+       GL_STUB(_dispatch_stub_586, _gloffset_SampleMaskSGIS, _dispatch_stub_586@8)
+       HIDDEN(GL_PREFIX(_dispatch_stub_586, _dispatch_stub_586@8))
+       GL_STUB(_dispatch_stub_587, _gloffset_SamplePatternSGIS, _dispatch_stub_587@4)
+       HIDDEN(GL_PREFIX(_dispatch_stub_587, _dispatch_stub_587@4))
+       GL_STUB(ColorPointerEXT, _gloffset_ColorPointerEXT, ColorPointerEXT@20)
+       GL_STUB(EdgeFlagPointerEXT, _gloffset_EdgeFlagPointerEXT, EdgeFlagPointerEXT@12)
+       GL_STUB(IndexPointerEXT, _gloffset_IndexPointerEXT, IndexPointerEXT@16)
+       GL_STUB(NormalPointerEXT, _gloffset_NormalPointerEXT, NormalPointerEXT@16)
+       GL_STUB(TexCoordPointerEXT, _gloffset_TexCoordPointerEXT, TexCoordPointerEXT@20)
+       GL_STUB(VertexPointerEXT, _gloffset_VertexPointerEXT, VertexPointerEXT@20)
+       GL_STUB(PointParameterfEXT, _gloffset_PointParameterfEXT, PointParameterfEXT@8)
+       GL_STUB(PointParameterfvEXT, _gloffset_PointParameterfvEXT, PointParameterfvEXT@8)
+       GL_STUB(LockArraysEXT, _gloffset_LockArraysEXT, LockArraysEXT@8)
+       GL_STUB(UnlockArraysEXT, _gloffset_UnlockArraysEXT, UnlockArraysEXT@0)
+       GL_STUB(_dispatch_stub_598, _gloffset_CullParameterdvEXT, _dispatch_stub_598@8)
+       HIDDEN(GL_PREFIX(_dispatch_stub_598, _dispatch_stub_598@8))
+       GL_STUB(_dispatch_stub_599, _gloffset_CullParameterfvEXT, _dispatch_stub_599@8)
+       HIDDEN(GL_PREFIX(_dispatch_stub_599, _dispatch_stub_599@8))
+       GL_STUB(SecondaryColor3bEXT, _gloffset_SecondaryColor3bEXT, SecondaryColor3bEXT@12)
+       GL_STUB(SecondaryColor3bvEXT, _gloffset_SecondaryColor3bvEXT, SecondaryColor3bvEXT@4)
+       GL_STUB(SecondaryColor3dEXT, _gloffset_SecondaryColor3dEXT, SecondaryColor3dEXT@24)
+       GL_STUB(SecondaryColor3dvEXT, _gloffset_SecondaryColor3dvEXT, SecondaryColor3dvEXT@4)
+       GL_STUB(SecondaryColor3fEXT, _gloffset_SecondaryColor3fEXT, SecondaryColor3fEXT@12)
+       GL_STUB(SecondaryColor3fvEXT, _gloffset_SecondaryColor3fvEXT, SecondaryColor3fvEXT@4)
+       GL_STUB(SecondaryColor3iEXT, _gloffset_SecondaryColor3iEXT, SecondaryColor3iEXT@12)
+       GL_STUB(SecondaryColor3ivEXT, _gloffset_SecondaryColor3ivEXT, SecondaryColor3ivEXT@4)
+       GL_STUB(SecondaryColor3sEXT, _gloffset_SecondaryColor3sEXT, SecondaryColor3sEXT@12)
+       GL_STUB(SecondaryColor3svEXT, _gloffset_SecondaryColor3svEXT, SecondaryColor3svEXT@4)
+       GL_STUB(SecondaryColor3ubEXT, _gloffset_SecondaryColor3ubEXT, SecondaryColor3ubEXT@12)
+       GL_STUB(SecondaryColor3ubvEXT, _gloffset_SecondaryColor3ubvEXT, SecondaryColor3ubvEXT@4)
+       GL_STUB(SecondaryColor3uiEXT, _gloffset_SecondaryColor3uiEXT, SecondaryColor3uiEXT@12)
+       GL_STUB(SecondaryColor3uivEXT, _gloffset_SecondaryColor3uivEXT, SecondaryColor3uivEXT@4)
+       GL_STUB(SecondaryColor3usEXT, _gloffset_SecondaryColor3usEXT, SecondaryColor3usEXT@12)
+       GL_STUB(SecondaryColor3usvEXT, _gloffset_SecondaryColor3usvEXT, SecondaryColor3usvEXT@4)
+       GL_STUB(SecondaryColorPointerEXT, _gloffset_SecondaryColorPointerEXT, SecondaryColorPointerEXT@16)
+       GL_STUB(MultiDrawArraysEXT, _gloffset_MultiDrawArraysEXT, MultiDrawArraysEXT@16)
+       GL_STUB(MultiDrawElementsEXT, _gloffset_MultiDrawElementsEXT, MultiDrawElementsEXT@20)
+       GL_STUB(FogCoordPointerEXT, _gloffset_FogCoordPointerEXT, FogCoordPointerEXT@12)
+       GL_STUB(FogCoorddEXT, _gloffset_FogCoorddEXT, FogCoorddEXT@8)
+       GL_STUB(FogCoorddvEXT, _gloffset_FogCoorddvEXT, FogCoorddvEXT@4)
+       GL_STUB(FogCoordfEXT, _gloffset_FogCoordfEXT, FogCoordfEXT@4)
+       GL_STUB(FogCoordfvEXT, _gloffset_FogCoordfvEXT, FogCoordfvEXT@4)
+       GL_STUB(_dispatch_stub_624, _gloffset_PixelTexGenSGIX, _dispatch_stub_624@4)
+       HIDDEN(GL_PREFIX(_dispatch_stub_624, _dispatch_stub_624@4))
+       GL_STUB(BlendFuncSeparateEXT, _gloffset_BlendFuncSeparateEXT, BlendFuncSeparateEXT@16)
+       GL_STUB(FlushVertexArrayRangeNV, _gloffset_FlushVertexArrayRangeNV, FlushVertexArrayRangeNV@0)
+       GL_STUB(VertexArrayRangeNV, _gloffset_VertexArrayRangeNV, VertexArrayRangeNV@8)
+       GL_STUB(CombinerInputNV, _gloffset_CombinerInputNV, CombinerInputNV@24)
+       GL_STUB(CombinerOutputNV, _gloffset_CombinerOutputNV, CombinerOutputNV@40)
+       GL_STUB(CombinerParameterfNV, _gloffset_CombinerParameterfNV, CombinerParameterfNV@8)
+       GL_STUB(CombinerParameterfvNV, _gloffset_CombinerParameterfvNV, CombinerParameterfvNV@8)
+       GL_STUB(CombinerParameteriNV, _gloffset_CombinerParameteriNV, CombinerParameteriNV@8)
+       GL_STUB(CombinerParameterivNV, _gloffset_CombinerParameterivNV, CombinerParameterivNV@8)
+       GL_STUB(FinalCombinerInputNV, _gloffset_FinalCombinerInputNV, FinalCombinerInputNV@16)
+       GL_STUB(GetCombinerInputParameterfvNV, _gloffset_GetCombinerInputParameterfvNV, GetCombinerInputParameterfvNV@20)
+       GL_STUB(GetCombinerInputParameterivNV, _gloffset_GetCombinerInputParameterivNV, GetCombinerInputParameterivNV@20)
+       GL_STUB(GetCombinerOutputParameterfvNV, _gloffset_GetCombinerOutputParameterfvNV, GetCombinerOutputParameterfvNV@16)
+       GL_STUB(GetCombinerOutputParameterivNV, _gloffset_GetCombinerOutputParameterivNV, GetCombinerOutputParameterivNV@16)
+       GL_STUB(GetFinalCombinerInputParameterfvNV, _gloffset_GetFinalCombinerInputParameterfvNV, GetFinalCombinerInputParameterfvNV@12)
+       GL_STUB(GetFinalCombinerInputParameterivNV, _gloffset_GetFinalCombinerInputParameterivNV, GetFinalCombinerInputParameterivNV@12)
+       GL_STUB(ResizeBuffersMESA, _gloffset_ResizeBuffersMESA, ResizeBuffersMESA@0)
+       GL_STUB(WindowPos2dMESA, _gloffset_WindowPos2dMESA, WindowPos2dMESA@16)
+       GL_STUB(WindowPos2dvMESA, _gloffset_WindowPos2dvMESA, WindowPos2dvMESA@4)
+       GL_STUB(WindowPos2fMESA, _gloffset_WindowPos2fMESA, WindowPos2fMESA@8)
+       GL_STUB(WindowPos2fvMESA, _gloffset_WindowPos2fvMESA, WindowPos2fvMESA@4)
+       GL_STUB(WindowPos2iMESA, _gloffset_WindowPos2iMESA, WindowPos2iMESA@8)
+       GL_STUB(WindowPos2ivMESA, _gloffset_WindowPos2ivMESA, WindowPos2ivMESA@4)
+       GL_STUB(WindowPos2sMESA, _gloffset_WindowPos2sMESA, WindowPos2sMESA@8)
+       GL_STUB(WindowPos2svMESA, _gloffset_WindowPos2svMESA, WindowPos2svMESA@4)
+       GL_STUB(WindowPos3dMESA, _gloffset_WindowPos3dMESA, WindowPos3dMESA@24)
+       GL_STUB(WindowPos3dvMESA, _gloffset_WindowPos3dvMESA, WindowPos3dvMESA@4)
+       GL_STUB(WindowPos3fMESA, _gloffset_WindowPos3fMESA, WindowPos3fMESA@12)
+       GL_STUB(WindowPos3fvMESA, _gloffset_WindowPos3fvMESA, WindowPos3fvMESA@4)
+       GL_STUB(WindowPos3iMESA, _gloffset_WindowPos3iMESA, WindowPos3iMESA@12)
+       GL_STUB(WindowPos3ivMESA, _gloffset_WindowPos3ivMESA, WindowPos3ivMESA@4)
+       GL_STUB(WindowPos3sMESA, _gloffset_WindowPos3sMESA, WindowPos3sMESA@12)
+       GL_STUB(WindowPos3svMESA, _gloffset_WindowPos3svMESA, WindowPos3svMESA@4)
+       GL_STUB(WindowPos4dMESA, _gloffset_WindowPos4dMESA, WindowPos4dMESA@32)
+       GL_STUB(WindowPos4dvMESA, _gloffset_WindowPos4dvMESA, WindowPos4dvMESA@4)
+       GL_STUB(WindowPos4fMESA, _gloffset_WindowPos4fMESA, WindowPos4fMESA@16)
+       GL_STUB(WindowPos4fvMESA, _gloffset_WindowPos4fvMESA, WindowPos4fvMESA@4)
+       GL_STUB(WindowPos4iMESA, _gloffset_WindowPos4iMESA, WindowPos4iMESA@16)
+       GL_STUB(WindowPos4ivMESA, _gloffset_WindowPos4ivMESA, WindowPos4ivMESA@4)
+       GL_STUB(WindowPos4sMESA, _gloffset_WindowPos4sMESA, WindowPos4sMESA@16)
+       GL_STUB(WindowPos4svMESA, _gloffset_WindowPos4svMESA, WindowPos4svMESA@4)
+       GL_STUB(_dispatch_stub_666, _gloffset_MultiModeDrawArraysIBM, _dispatch_stub_666@20)
+       HIDDEN(GL_PREFIX(_dispatch_stub_666, _dispatch_stub_666@20))
+       GL_STUB(_dispatch_stub_667, _gloffset_MultiModeDrawElementsIBM, _dispatch_stub_667@24)
+       HIDDEN(GL_PREFIX(_dispatch_stub_667, _dispatch_stub_667@24))
+       GL_STUB(_dispatch_stub_668, _gloffset_DeleteFencesNV, _dispatch_stub_668@8)
+       HIDDEN(GL_PREFIX(_dispatch_stub_668, _dispatch_stub_668@8))
+       GL_STUB(_dispatch_stub_669, _gloffset_FinishFenceNV, _dispatch_stub_669@4)
+       HIDDEN(GL_PREFIX(_dispatch_stub_669, _dispatch_stub_669@4))
+       GL_STUB(_dispatch_stub_670, _gloffset_GenFencesNV, _dispatch_stub_670@8)
+       HIDDEN(GL_PREFIX(_dispatch_stub_670, _dispatch_stub_670@8))
+       GL_STUB(_dispatch_stub_671, _gloffset_GetFenceivNV, _dispatch_stub_671@12)
+       HIDDEN(GL_PREFIX(_dispatch_stub_671, _dispatch_stub_671@12))
+       GL_STUB(_dispatch_stub_672, _gloffset_IsFenceNV, _dispatch_stub_672@4)
+       HIDDEN(GL_PREFIX(_dispatch_stub_672, _dispatch_stub_672@4))
+       GL_STUB(_dispatch_stub_673, _gloffset_SetFenceNV, _dispatch_stub_673@8)
+       HIDDEN(GL_PREFIX(_dispatch_stub_673, _dispatch_stub_673@8))
+       GL_STUB(_dispatch_stub_674, _gloffset_TestFenceNV, _dispatch_stub_674@4)
+       HIDDEN(GL_PREFIX(_dispatch_stub_674, _dispatch_stub_674@4))
+       GL_STUB(AreProgramsResidentNV, _gloffset_AreProgramsResidentNV, AreProgramsResidentNV@12)
+       GL_STUB(BindProgramNV, _gloffset_BindProgramNV, BindProgramNV@8)
+       GL_STUB(DeleteProgramsNV, _gloffset_DeleteProgramsNV, DeleteProgramsNV@8)
+       GL_STUB(ExecuteProgramNV, _gloffset_ExecuteProgramNV, ExecuteProgramNV@12)
+       GL_STUB(GenProgramsNV, _gloffset_GenProgramsNV, GenProgramsNV@8)
+       GL_STUB(GetProgramParameterdvNV, _gloffset_GetProgramParameterdvNV, GetProgramParameterdvNV@16)
+       GL_STUB(GetProgramParameterfvNV, _gloffset_GetProgramParameterfvNV, GetProgramParameterfvNV@16)
+       GL_STUB(GetProgramStringNV, _gloffset_GetProgramStringNV, GetProgramStringNV@12)
+       GL_STUB(GetProgramivNV, _gloffset_GetProgramivNV, GetProgramivNV@12)
+       GL_STUB(GetTrackMatrixivNV, _gloffset_GetTrackMatrixivNV, GetTrackMatrixivNV@16)
+       GL_STUB(GetVertexAttribPointervNV, _gloffset_GetVertexAttribPointervNV, GetVertexAttribPointervNV@12)
+       GL_STUB(GetVertexAttribdvNV, _gloffset_GetVertexAttribdvNV, GetVertexAttribdvNV@12)
+       GL_STUB(GetVertexAttribfvNV, _gloffset_GetVertexAttribfvNV, GetVertexAttribfvNV@12)
+       GL_STUB(GetVertexAttribivNV, _gloffset_GetVertexAttribivNV, GetVertexAttribivNV@12)
+       GL_STUB(IsProgramNV, _gloffset_IsProgramNV, IsProgramNV@4)
+       GL_STUB(LoadProgramNV, _gloffset_LoadProgramNV, LoadProgramNV@16)
+       GL_STUB(ProgramParameters4dvNV, _gloffset_ProgramParameters4dvNV, ProgramParameters4dvNV@16)
+       GL_STUB(ProgramParameters4fvNV, _gloffset_ProgramParameters4fvNV, ProgramParameters4fvNV@16)
+       GL_STUB(RequestResidentProgramsNV, _gloffset_RequestResidentProgramsNV, RequestResidentProgramsNV@8)
+       GL_STUB(TrackMatrixNV, _gloffset_TrackMatrixNV, TrackMatrixNV@16)
+       GL_STUB(VertexAttrib1dNV, _gloffset_VertexAttrib1dNV, VertexAttrib1dNV@12)
+       GL_STUB(VertexAttrib1dvNV, _gloffset_VertexAttrib1dvNV, VertexAttrib1dvNV@8)
+       GL_STUB(VertexAttrib1fNV, _gloffset_VertexAttrib1fNV, VertexAttrib1fNV@8)
+       GL_STUB(VertexAttrib1fvNV, _gloffset_VertexAttrib1fvNV, VertexAttrib1fvNV@8)
+       GL_STUB(VertexAttrib1sNV, _gloffset_VertexAttrib1sNV, VertexAttrib1sNV@8)
+       GL_STUB(VertexAttrib1svNV, _gloffset_VertexAttrib1svNV, VertexAttrib1svNV@8)
+       GL_STUB(VertexAttrib2dNV, _gloffset_VertexAttrib2dNV, VertexAttrib2dNV@20)
+       GL_STUB(VertexAttrib2dvNV, _gloffset_VertexAttrib2dvNV, VertexAttrib2dvNV@8)
+       GL_STUB(VertexAttrib2fNV, _gloffset_VertexAttrib2fNV, VertexAttrib2fNV@12)
+       GL_STUB(VertexAttrib2fvNV, _gloffset_VertexAttrib2fvNV, VertexAttrib2fvNV@8)
+       GL_STUB(VertexAttrib2sNV, _gloffset_VertexAttrib2sNV, VertexAttrib2sNV@12)
+       GL_STUB(VertexAttrib2svNV, _gloffset_VertexAttrib2svNV, VertexAttrib2svNV@8)
+       GL_STUB(VertexAttrib3dNV, _gloffset_VertexAttrib3dNV, VertexAttrib3dNV@28)
+       GL_STUB(VertexAttrib3dvNV, _gloffset_VertexAttrib3dvNV, VertexAttrib3dvNV@8)
+       GL_STUB(VertexAttrib3fNV, _gloffset_VertexAttrib3fNV, VertexAttrib3fNV@16)
+       GL_STUB(VertexAttrib3fvNV, _gloffset_VertexAttrib3fvNV, VertexAttrib3fvNV@8)
+       GL_STUB(VertexAttrib3sNV, _gloffset_VertexAttrib3sNV, VertexAttrib3sNV@16)
+       GL_STUB(VertexAttrib3svNV, _gloffset_VertexAttrib3svNV, VertexAttrib3svNV@8)
+       GL_STUB(VertexAttrib4dNV, _gloffset_VertexAttrib4dNV, VertexAttrib4dNV@36)
+       GL_STUB(VertexAttrib4dvNV, _gloffset_VertexAttrib4dvNV, VertexAttrib4dvNV@8)
+       GL_STUB(VertexAttrib4fNV, _gloffset_VertexAttrib4fNV, VertexAttrib4fNV@20)
+       GL_STUB(VertexAttrib4fvNV, _gloffset_VertexAttrib4fvNV, VertexAttrib4fvNV@8)
+       GL_STUB(VertexAttrib4sNV, _gloffset_VertexAttrib4sNV, VertexAttrib4sNV@20)
+       GL_STUB(VertexAttrib4svNV, _gloffset_VertexAttrib4svNV, VertexAttrib4svNV@8)
+       GL_STUB(VertexAttrib4ubNV, _gloffset_VertexAttrib4ubNV, VertexAttrib4ubNV@20)
+       GL_STUB(VertexAttrib4ubvNV, _gloffset_VertexAttrib4ubvNV, VertexAttrib4ubvNV@8)
+       GL_STUB(VertexAttribPointerNV, _gloffset_VertexAttribPointerNV, VertexAttribPointerNV@20)
+       GL_STUB(VertexAttribs1dvNV, _gloffset_VertexAttribs1dvNV, VertexAttribs1dvNV@12)
+       GL_STUB(VertexAttribs1fvNV, _gloffset_VertexAttribs1fvNV, VertexAttribs1fvNV@12)
+       GL_STUB(VertexAttribs1svNV, _gloffset_VertexAttribs1svNV, VertexAttribs1svNV@12)
+       GL_STUB(VertexAttribs2dvNV, _gloffset_VertexAttribs2dvNV, VertexAttribs2dvNV@12)
+       GL_STUB(VertexAttribs2fvNV, _gloffset_VertexAttribs2fvNV, VertexAttribs2fvNV@12)
+       GL_STUB(VertexAttribs2svNV, _gloffset_VertexAttribs2svNV, VertexAttribs2svNV@12)
+       GL_STUB(VertexAttribs3dvNV, _gloffset_VertexAttribs3dvNV, VertexAttribs3dvNV@12)
+       GL_STUB(VertexAttribs3fvNV, _gloffset_VertexAttribs3fvNV, VertexAttribs3fvNV@12)
+       GL_STUB(VertexAttribs3svNV, _gloffset_VertexAttribs3svNV, VertexAttribs3svNV@12)
+       GL_STUB(VertexAttribs4dvNV, _gloffset_VertexAttribs4dvNV, VertexAttribs4dvNV@12)
+       GL_STUB(VertexAttribs4fvNV, _gloffset_VertexAttribs4fvNV, VertexAttribs4fvNV@12)
+       GL_STUB(VertexAttribs4svNV, _gloffset_VertexAttribs4svNV, VertexAttribs4svNV@12)
+       GL_STUB(VertexAttribs4ubvNV, _gloffset_VertexAttribs4ubvNV, VertexAttribs4ubvNV@12)
+       GL_STUB(GetTexBumpParameterfvATI, _gloffset_GetTexBumpParameterfvATI, GetTexBumpParameterfvATI@8)
+       GL_STUB(GetTexBumpParameterivATI, _gloffset_GetTexBumpParameterivATI, GetTexBumpParameterivATI@8)
+       GL_STUB(TexBumpParameterfvATI, _gloffset_TexBumpParameterfvATI, TexBumpParameterfvATI@8)
+       GL_STUB(TexBumpParameterivATI, _gloffset_TexBumpParameterivATI, TexBumpParameterivATI@8)
+       GL_STUB(AlphaFragmentOp1ATI, _gloffset_AlphaFragmentOp1ATI, AlphaFragmentOp1ATI@24)
+       GL_STUB(AlphaFragmentOp2ATI, _gloffset_AlphaFragmentOp2ATI, AlphaFragmentOp2ATI@36)
+       GL_STUB(AlphaFragmentOp3ATI, _gloffset_AlphaFragmentOp3ATI, AlphaFragmentOp3ATI@48)
+       GL_STUB(BeginFragmentShaderATI, _gloffset_BeginFragmentShaderATI, BeginFragmentShaderATI@0)
+       GL_STUB(BindFragmentShaderATI, _gloffset_BindFragmentShaderATI, BindFragmentShaderATI@4)
+       GL_STUB(ColorFragmentOp1ATI, _gloffset_ColorFragmentOp1ATI, ColorFragmentOp1ATI@28)
+       GL_STUB(ColorFragmentOp2ATI, _gloffset_ColorFragmentOp2ATI, ColorFragmentOp2ATI@40)
+       GL_STUB(ColorFragmentOp3ATI, _gloffset_ColorFragmentOp3ATI, ColorFragmentOp3ATI@52)
+       GL_STUB(DeleteFragmentShaderATI, _gloffset_DeleteFragmentShaderATI, DeleteFragmentShaderATI@4)
+       GL_STUB(EndFragmentShaderATI, _gloffset_EndFragmentShaderATI, EndFragmentShaderATI@0)
+       GL_STUB(GenFragmentShadersATI, _gloffset_GenFragmentShadersATI, GenFragmentShadersATI@4)
+       GL_STUB(PassTexCoordATI, _gloffset_PassTexCoordATI, PassTexCoordATI@12)
+       GL_STUB(SampleMapATI, _gloffset_SampleMapATI, SampleMapATI@12)
+       GL_STUB(SetFragmentShaderConstantATI, _gloffset_SetFragmentShaderConstantATI, SetFragmentShaderConstantATI@8)
+       GL_STUB(PointParameteriNV, _gloffset_PointParameteriNV, PointParameteriNV@8)
+       GL_STUB(PointParameterivNV, _gloffset_PointParameterivNV, PointParameterivNV@8)
+       GL_STUB(_dispatch_stub_755, _gloffset_ActiveStencilFaceEXT, _dispatch_stub_755@4)
+       HIDDEN(GL_PREFIX(_dispatch_stub_755, _dispatch_stub_755@4))
+       GL_STUB(_dispatch_stub_756, _gloffset_BindVertexArrayAPPLE, _dispatch_stub_756@4)
+       HIDDEN(GL_PREFIX(_dispatch_stub_756, _dispatch_stub_756@4))
+       GL_STUB(_dispatch_stub_757, _gloffset_DeleteVertexArraysAPPLE, _dispatch_stub_757@8)
+       HIDDEN(GL_PREFIX(_dispatch_stub_757, _dispatch_stub_757@8))
+       GL_STUB(_dispatch_stub_758, _gloffset_GenVertexArraysAPPLE, _dispatch_stub_758@8)
+       HIDDEN(GL_PREFIX(_dispatch_stub_758, _dispatch_stub_758@8))
+       GL_STUB(_dispatch_stub_759, _gloffset_IsVertexArrayAPPLE, _dispatch_stub_759@4)
+       HIDDEN(GL_PREFIX(_dispatch_stub_759, _dispatch_stub_759@4))
+       GL_STUB(GetProgramNamedParameterdvNV, _gloffset_GetProgramNamedParameterdvNV, GetProgramNamedParameterdvNV@16)
+       GL_STUB(GetProgramNamedParameterfvNV, _gloffset_GetProgramNamedParameterfvNV, GetProgramNamedParameterfvNV@16)
+       GL_STUB(ProgramNamedParameter4dNV, _gloffset_ProgramNamedParameter4dNV, ProgramNamedParameter4dNV@44)
+       GL_STUB(ProgramNamedParameter4dvNV, _gloffset_ProgramNamedParameter4dvNV, ProgramNamedParameter4dvNV@16)
+       GL_STUB(ProgramNamedParameter4fNV, _gloffset_ProgramNamedParameter4fNV, ProgramNamedParameter4fNV@28)
+       GL_STUB(ProgramNamedParameter4fvNV, _gloffset_ProgramNamedParameter4fvNV, ProgramNamedParameter4fvNV@16)
+       GL_STUB(_dispatch_stub_766, _gloffset_DepthBoundsEXT, _dispatch_stub_766@16)
+       HIDDEN(GL_PREFIX(_dispatch_stub_766, _dispatch_stub_766@16))
+       GL_STUB(_dispatch_stub_767, _gloffset_BlendEquationSeparateEXT, _dispatch_stub_767@8)
+       HIDDEN(GL_PREFIX(_dispatch_stub_767, _dispatch_stub_767@8))
+       GL_STUB(BindFramebufferEXT, _gloffset_BindFramebufferEXT, BindFramebufferEXT@8)
+       GL_STUB(BindRenderbufferEXT, _gloffset_BindRenderbufferEXT, BindRenderbufferEXT@8)
+       GL_STUB(CheckFramebufferStatusEXT, _gloffset_CheckFramebufferStatusEXT, CheckFramebufferStatusEXT@4)
+       GL_STUB(DeleteFramebuffersEXT, _gloffset_DeleteFramebuffersEXT, DeleteFramebuffersEXT@8)
+       GL_STUB(DeleteRenderbuffersEXT, _gloffset_DeleteRenderbuffersEXT, DeleteRenderbuffersEXT@8)
+       GL_STUB(FramebufferRenderbufferEXT, _gloffset_FramebufferRenderbufferEXT, FramebufferRenderbufferEXT@16)
+       GL_STUB(FramebufferTexture1DEXT, _gloffset_FramebufferTexture1DEXT, FramebufferTexture1DEXT@20)
+       GL_STUB(FramebufferTexture2DEXT, _gloffset_FramebufferTexture2DEXT, FramebufferTexture2DEXT@20)
+       GL_STUB(FramebufferTexture3DEXT, _gloffset_FramebufferTexture3DEXT, FramebufferTexture3DEXT@24)
+       GL_STUB(GenFramebuffersEXT, _gloffset_GenFramebuffersEXT, GenFramebuffersEXT@8)
+       GL_STUB(GenRenderbuffersEXT, _gloffset_GenRenderbuffersEXT, GenRenderbuffersEXT@8)
+       GL_STUB(GenerateMipmapEXT, _gloffset_GenerateMipmapEXT, GenerateMipmapEXT@4)
+       GL_STUB(GetFramebufferAttachmentParameterivEXT, _gloffset_GetFramebufferAttachmentParameterivEXT, GetFramebufferAttachmentParameterivEXT@16)
+       GL_STUB(GetRenderbufferParameterivEXT, _gloffset_GetRenderbufferParameterivEXT, GetRenderbufferParameterivEXT@12)
+       GL_STUB(IsFramebufferEXT, _gloffset_IsFramebufferEXT, IsFramebufferEXT@4)
+       GL_STUB(IsRenderbufferEXT, _gloffset_IsRenderbufferEXT, IsRenderbufferEXT@4)
+       GL_STUB(RenderbufferStorageEXT, _gloffset_RenderbufferStorageEXT, RenderbufferStorageEXT@16)
+       GL_STUB(_dispatch_stub_785, _gloffset_BlitFramebufferEXT, _dispatch_stub_785@40)
+       HIDDEN(GL_PREFIX(_dispatch_stub_785, _dispatch_stub_785@40))
+       GL_STUB(_dispatch_stub_786, _gloffset_BufferParameteriAPPLE, _dispatch_stub_786@12)
+       HIDDEN(GL_PREFIX(_dispatch_stub_786, _dispatch_stub_786@12))
+       GL_STUB(_dispatch_stub_787, _gloffset_FlushMappedBufferRangeAPPLE, _dispatch_stub_787@12)
+       HIDDEN(GL_PREFIX(_dispatch_stub_787, _dispatch_stub_787@12))
+       GL_STUB(FramebufferTextureLayerEXT, _gloffset_FramebufferTextureLayerEXT, FramebufferTextureLayerEXT@20)
+       GL_STUB(ColorMaskIndexedEXT, _gloffset_ColorMaskIndexedEXT, ColorMaskIndexedEXT@20)
+       GL_STUB(DisableIndexedEXT, _gloffset_DisableIndexedEXT, DisableIndexedEXT@8)
+       GL_STUB(EnableIndexedEXT, _gloffset_EnableIndexedEXT, EnableIndexedEXT@8)
+       GL_STUB(GetBooleanIndexedvEXT, _gloffset_GetBooleanIndexedvEXT, GetBooleanIndexedvEXT@12)
+       GL_STUB(GetIntegerIndexedvEXT, _gloffset_GetIntegerIndexedvEXT, GetIntegerIndexedvEXT@12)
+       GL_STUB(IsEnabledIndexedEXT, _gloffset_IsEnabledIndexedEXT, IsEnabledIndexedEXT@8)
+       GL_STUB(BeginConditionalRenderNV, _gloffset_BeginConditionalRenderNV, BeginConditionalRenderNV@8)
+       GL_STUB(EndConditionalRenderNV, _gloffset_EndConditionalRenderNV, EndConditionalRenderNV@0)
+       GL_STUB(BeginTransformFeedbackEXT, _gloffset_BeginTransformFeedbackEXT, BeginTransformFeedbackEXT@4)
+       GL_STUB(BindBufferBaseEXT, _gloffset_BindBufferBaseEXT, BindBufferBaseEXT@12)
+       GL_STUB(BindBufferOffsetEXT, _gloffset_BindBufferOffsetEXT, BindBufferOffsetEXT@16)
+       GL_STUB(BindBufferRangeEXT, _gloffset_BindBufferRangeEXT, BindBufferRangeEXT@20)
+       GL_STUB(EndTransformFeedbackEXT, _gloffset_EndTransformFeedbackEXT, EndTransformFeedbackEXT@0)
+       GL_STUB(GetTransformFeedbackVaryingEXT, _gloffset_GetTransformFeedbackVaryingEXT, GetTransformFeedbackVaryingEXT@28)
+       GL_STUB(TransformFeedbackVaryingsEXT, _gloffset_TransformFeedbackVaryingsEXT, TransformFeedbackVaryingsEXT@16)
+       GL_STUB(ProvokingVertexEXT, _gloffset_ProvokingVertexEXT, ProvokingVertexEXT@4)
+       GL_STUB(_dispatch_stub_805, _gloffset_GetTexParameterPointervAPPLE, _dispatch_stub_805@12)
+       HIDDEN(GL_PREFIX(_dispatch_stub_805, _dispatch_stub_805@12))
+       GL_STUB(_dispatch_stub_806, _gloffset_TextureRangeAPPLE, _dispatch_stub_806@12)
+       HIDDEN(GL_PREFIX(_dispatch_stub_806, _dispatch_stub_806@12))
+       GL_STUB(GetObjectParameterivAPPLE, _gloffset_GetObjectParameterivAPPLE, GetObjectParameterivAPPLE@16)
+       GL_STUB(ObjectPurgeableAPPLE, _gloffset_ObjectPurgeableAPPLE, ObjectPurgeableAPPLE@12)
+       GL_STUB(ObjectUnpurgeableAPPLE, _gloffset_ObjectUnpurgeableAPPLE, ObjectUnpurgeableAPPLE@12)
+       GL_STUB(_dispatch_stub_810, _gloffset_StencilFuncSeparateATI, _dispatch_stub_810@16)
+       HIDDEN(GL_PREFIX(_dispatch_stub_810, _dispatch_stub_810@16))
+       GL_STUB(_dispatch_stub_811, _gloffset_ProgramEnvParameters4fvEXT, _dispatch_stub_811@16)
+       HIDDEN(GL_PREFIX(_dispatch_stub_811, _dispatch_stub_811@16))
+       GL_STUB(_dispatch_stub_812, _gloffset_ProgramLocalParameters4fvEXT, _dispatch_stub_812@16)
+       HIDDEN(GL_PREFIX(_dispatch_stub_812, _dispatch_stub_812@16))
+       GL_STUB(_dispatch_stub_813, _gloffset_GetQueryObjecti64vEXT, _dispatch_stub_813@12)
+       HIDDEN(GL_PREFIX(_dispatch_stub_813, _dispatch_stub_813@12))
+       GL_STUB(_dispatch_stub_814, _gloffset_GetQueryObjectui64vEXT, _dispatch_stub_814@12)
+       HIDDEN(GL_PREFIX(_dispatch_stub_814, _dispatch_stub_814@12))
+       GL_STUB(EGLImageTargetRenderbufferStorageOES, _gloffset_EGLImageTargetRenderbufferStorageOES, EGLImageTargetRenderbufferStorageOES@8)
+       GL_STUB(EGLImageTargetTexture2DOES, _gloffset_EGLImageTargetTexture2DOES, EGLImageTargetTexture2DOES@8)
+       GL_STUB_ALIAS(ArrayElementEXT, _gloffset_ArrayElement, ArrayElementEXT@4, ArrayElement, ArrayElement@4)
+       GL_STUB_ALIAS(BindTextureEXT, _gloffset_BindTexture, BindTextureEXT@8, BindTexture, BindTexture@8)
+       GL_STUB_ALIAS(DrawArraysEXT, _gloffset_DrawArrays, DrawArraysEXT@12, DrawArrays, DrawArrays@12)
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(AreTexturesResidentEXT, _gloffset_AreTexturesResident, AreTexturesResidentEXT@12, AreTexturesResident, AreTexturesResident@12)
+#endif
+       GL_STUB_ALIAS(CopyTexImage1DEXT, _gloffset_CopyTexImage1D, CopyTexImage1DEXT@28, CopyTexImage1D, CopyTexImage1D@28)
+       GL_STUB_ALIAS(CopyTexImage2DEXT, _gloffset_CopyTexImage2D, CopyTexImage2DEXT@32, CopyTexImage2D, CopyTexImage2D@32)
+       GL_STUB_ALIAS(CopyTexSubImage1DEXT, _gloffset_CopyTexSubImage1D, CopyTexSubImage1DEXT@24, CopyTexSubImage1D, CopyTexSubImage1D@24)
+       GL_STUB_ALIAS(CopyTexSubImage2DEXT, _gloffset_CopyTexSubImage2D, CopyTexSubImage2DEXT@32, CopyTexSubImage2D, CopyTexSubImage2D@32)
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(DeleteTexturesEXT, _gloffset_DeleteTextures, DeleteTexturesEXT@8, DeleteTextures, DeleteTextures@8)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(GenTexturesEXT, _gloffset_GenTextures, GenTexturesEXT@8, GenTextures, GenTextures@8)
+#endif
+       GL_STUB_ALIAS(GetPointervEXT, _gloffset_GetPointerv, GetPointervEXT@8, GetPointerv, GetPointerv@8)
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(IsTextureEXT, _gloffset_IsTexture, IsTextureEXT@4, IsTexture, IsTexture@4)
+#endif
+       GL_STUB_ALIAS(PrioritizeTexturesEXT, _gloffset_PrioritizeTextures, PrioritizeTexturesEXT@12, PrioritizeTextures, PrioritizeTextures@12)
+       GL_STUB_ALIAS(TexSubImage1DEXT, _gloffset_TexSubImage1D, TexSubImage1DEXT@28, TexSubImage1D, TexSubImage1D@28)
+       GL_STUB_ALIAS(TexSubImage2DEXT, _gloffset_TexSubImage2D, TexSubImage2DEXT@36, TexSubImage2D, TexSubImage2D@36)
+       GL_STUB_ALIAS(BlendColorEXT, _gloffset_BlendColor, BlendColorEXT@16, BlendColor, BlendColor@16)
+       GL_STUB_ALIAS(BlendEquationEXT, _gloffset_BlendEquation, BlendEquationEXT@4, BlendEquation, BlendEquation@4)
+       GL_STUB_ALIAS(DrawRangeElementsEXT, _gloffset_DrawRangeElements, DrawRangeElementsEXT@24, DrawRangeElements, DrawRangeElements@24)
+       GL_STUB_ALIAS(ColorTableEXT, _gloffset_ColorTable, ColorTableEXT@24, ColorTable, ColorTable@24)
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(GetColorTableEXT, _gloffset_GetColorTable, GetColorTableEXT@16, GetColorTable, GetColorTable@16)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(GetColorTableParameterfvEXT, _gloffset_GetColorTableParameterfv, GetColorTableParameterfvEXT@12, GetColorTableParameterfv, GetColorTableParameterfv@12)
+#endif
+#ifndef GLX_INDIRECT_RENDERING
+       GL_STUB_ALIAS(GetColorTableParameterivEXT, _gloffset_GetColorTableParameteriv, GetColorTableParameterivEXT@12, GetColorTableParameteriv, GetColorTableParameteriv@12)
+#endif
+       GL_STUB_ALIAS(TexImage3DEXT, _gloffset_TexImage3D, TexImage3DEXT@40, TexImage3D, TexImage3D@40)
+       GL_STUB_ALIAS(TexSubImage3DEXT, _gloffset_TexSubImage3D, TexSubImage3DEXT@44, TexSubImage3D, TexSubImage3D@44)
+       GL_STUB_ALIAS(CopyTexSubImage3DEXT, _gloffset_CopyTexSubImage3D, CopyTexSubImage3DEXT@36, CopyTexSubImage3D, CopyTexSubImage3D@36)
+       GL_STUB_ALIAS(ActiveTexture, _gloffset_ActiveTextureARB, ActiveTexture@4, ActiveTextureARB, ActiveTextureARB@4)
+       GL_STUB_ALIAS(ClientActiveTexture, _gloffset_ClientActiveTextureARB, ClientActiveTexture@4, ClientActiveTextureARB, ClientActiveTextureARB@4)
+       GL_STUB_ALIAS(MultiTexCoord1d, _gloffset_MultiTexCoord1dARB, MultiTexCoord1d@12, MultiTexCoord1dARB, MultiTexCoord1dARB@12)
+       GL_STUB_ALIAS(MultiTexCoord1dv, _gloffset_MultiTexCoord1dvARB, MultiTexCoord1dv@8, MultiTexCoord1dvARB, MultiTexCoord1dvARB@8)
+       GL_STUB_ALIAS(MultiTexCoord1f, _gloffset_MultiTexCoord1fARB, MultiTexCoord1f@8, MultiTexCoord1fARB, MultiTexCoord1fARB@8)
+       GL_STUB_ALIAS(MultiTexCoord1fv, _gloffset_MultiTexCoord1fvARB, MultiTexCoord1fv@8, MultiTexCoord1fvARB, MultiTexCoord1fvARB@8)
+       GL_STUB_ALIAS(MultiTexCoord1i, _gloffset_MultiTexCoord1iARB, MultiTexCoord1i@8, MultiTexCoord1iARB, MultiTexCoord1iARB@8)
+       GL_STUB_ALIAS(MultiTexCoord1iv, _gloffset_MultiTexCoord1ivARB, MultiTexCoord1iv@8, MultiTexCoord1ivARB, MultiTexCoord1ivARB@8)
+       GL_STUB_ALIAS(MultiTexCoord1s, _gloffset_MultiTexCoord1sARB, MultiTexCoord1s@8, MultiTexCoord1sARB, MultiTexCoord1sARB@8)
+       GL_STUB_ALIAS(MultiTexCoord1sv, _gloffset_MultiTexCoord1svARB, MultiTexCoord1sv@8, MultiTexCoord1svARB, MultiTexCoord1svARB@8)
+       GL_STUB_ALIAS(MultiTexCoord2d, _gloffset_MultiTexCoord2dARB, MultiTexCoord2d@20, MultiTexCoord2dARB, MultiTexCoord2dARB@20)
+       GL_STUB_ALIAS(MultiTexCoord2dv, _gloffset_MultiTexCoord2dvARB, MultiTexCoord2dv@8, MultiTexCoord2dvARB, MultiTexCoord2dvARB@8)
+       GL_STUB_ALIAS(MultiTexCoord2f, _gloffset_MultiTexCoord2fARB, MultiTexCoord2f@12, MultiTexCoord2fARB, MultiTexCoord2fARB@12)
+       GL_STUB_ALIAS(MultiTexCoord2fv, _gloffset_MultiTexCoord2fvARB, MultiTexCoord2fv@8, MultiTexCoord2fvARB, MultiTexCoord2fvARB@8)
+       GL_STUB_ALIAS(MultiTexCoord2i, _gloffset_MultiTexCoord2iARB, MultiTexCoord2i@12, MultiTexCoord2iARB, MultiTexCoord2iARB@12)
+       GL_STUB_ALIAS(MultiTexCoord2iv, _gloffset_MultiTexCoord2ivARB, MultiTexCoord2iv@8, MultiTexCoord2ivARB, MultiTexCoord2ivARB@8)
+       GL_STUB_ALIAS(MultiTexCoord2s, _gloffset_MultiTexCoord2sARB, MultiTexCoord2s@12, MultiTexCoord2sARB, MultiTexCoord2sARB@12)
+       GL_STUB_ALIAS(MultiTexCoord2sv, _gloffset_MultiTexCoord2svARB, MultiTexCoord2sv@8, MultiTexCoord2svARB, MultiTexCoord2svARB@8)
+       GL_STUB_ALIAS(MultiTexCoord3d, _gloffset_MultiTexCoord3dARB, MultiTexCoord3d@28, MultiTexCoord3dARB, MultiTexCoord3dARB@28)
+       GL_STUB_ALIAS(MultiTexCoord3dv, _gloffset_MultiTexCoord3dvARB, MultiTexCoord3dv@8, MultiTexCoord3dvARB, MultiTexCoord3dvARB@8)
+       GL_STUB_ALIAS(MultiTexCoord3f, _gloffset_MultiTexCoord3fARB, MultiTexCoord3f@16, MultiTexCoord3fARB, MultiTexCoord3fARB@16)
+       GL_STUB_ALIAS(MultiTexCoord3fv, _gloffset_MultiTexCoord3fvARB, MultiTexCoord3fv@8, MultiTexCoord3fvARB, MultiTexCoord3fvARB@8)
+       GL_STUB_ALIAS(MultiTexCoord3i, _gloffset_MultiTexCoord3iARB, MultiTexCoord3i@16, MultiTexCoord3iARB, MultiTexCoord3iARB@16)
+       GL_STUB_ALIAS(MultiTexCoord3iv, _gloffset_MultiTexCoord3ivARB, MultiTexCoord3iv@8, MultiTexCoord3ivARB, MultiTexCoord3ivARB@8)
+       GL_STUB_ALIAS(MultiTexCoord3s, _gloffset_MultiTexCoord3sARB, MultiTexCoord3s@16, MultiTexCoord3sARB, MultiTexCoord3sARB@16)
+       GL_STUB_ALIAS(MultiTexCoord3sv, _gloffset_MultiTexCoord3svARB, MultiTexCoord3sv@8, MultiTexCoord3svARB, MultiTexCoord3svARB@8)
+       GL_STUB_ALIAS(MultiTexCoord4d, _gloffset_MultiTexCoord4dARB, MultiTexCoord4d@36, MultiTexCoord4dARB, MultiTexCoord4dARB@36)
+       GL_STUB_ALIAS(MultiTexCoord4dv, _gloffset_MultiTexCoord4dvARB, MultiTexCoord4dv@8, MultiTexCoord4dvARB, MultiTexCoord4dvARB@8)
+       GL_STUB_ALIAS(MultiTexCoord4f, _gloffset_MultiTexCoord4fARB, MultiTexCoord4f@20, MultiTexCoord4fARB, MultiTexCoord4fARB@20)
+       GL_STUB_ALIAS(MultiTexCoord4fv, _gloffset_MultiTexCoord4fvARB, MultiTexCoord4fv@8, MultiTexCoord4fvARB, MultiTexCoord4fvARB@8)
+       GL_STUB_ALIAS(MultiTexCoord4i, _gloffset_MultiTexCoord4iARB, MultiTexCoord4i@20, MultiTexCoord4iARB, MultiTexCoord4iARB@20)
+       GL_STUB_ALIAS(MultiTexCoord4iv, _gloffset_MultiTexCoord4ivARB, MultiTexCoord4iv@8, MultiTexCoord4ivARB, MultiTexCoord4ivARB@8)
+       GL_STUB_ALIAS(MultiTexCoord4s, _gloffset_MultiTexCoord4sARB, MultiTexCoord4s@20, MultiTexCoord4sARB, MultiTexCoord4sARB@20)
+       GL_STUB_ALIAS(MultiTexCoord4sv, _gloffset_MultiTexCoord4svARB, MultiTexCoord4sv@8, MultiTexCoord4svARB, MultiTexCoord4svARB@8)
+       GL_STUB_ALIAS(DrawArraysInstancedARB, _gloffset_DrawArraysInstanced, DrawArraysInstancedARB@16, DrawArraysInstanced, DrawArraysInstanced@16)
+       GL_STUB_ALIAS(DrawArraysInstancedEXT, _gloffset_DrawArraysInstanced, DrawArraysInstancedEXT@16, DrawArraysInstanced, DrawArraysInstanced@16)
+       GL_STUB_ALIAS(DrawElementsInstancedARB, _gloffset_DrawElementsInstanced, DrawElementsInstancedARB@20, DrawElementsInstanced, DrawElementsInstanced@20)
+       GL_STUB_ALIAS(DrawElementsInstancedEXT, _gloffset_DrawElementsInstanced, DrawElementsInstancedEXT@20, DrawElementsInstanced, DrawElementsInstanced@20)
+       GL_STUB_ALIAS(LoadTransposeMatrixd, _gloffset_LoadTransposeMatrixdARB, LoadTransposeMatrixd@4, LoadTransposeMatrixdARB, LoadTransposeMatrixdARB@4)
+       GL_STUB_ALIAS(LoadTransposeMatrixf, _gloffset_LoadTransposeMatrixfARB, LoadTransposeMatrixf@4, LoadTransposeMatrixfARB, LoadTransposeMatrixfARB@4)
+       GL_STUB_ALIAS(MultTransposeMatrixd, _gloffset_MultTransposeMatrixdARB, MultTransposeMatrixd@4, MultTransposeMatrixdARB, MultTransposeMatrixdARB@4)
+       GL_STUB_ALIAS(MultTransposeMatrixf, _gloffset_MultTransposeMatrixfARB, MultTransposeMatrixf@4, MultTransposeMatrixfARB, MultTransposeMatrixfARB@4)
+       GL_STUB_ALIAS(SampleCoverage, _gloffset_SampleCoverageARB, SampleCoverage@8, SampleCoverageARB, SampleCoverageARB@8)
+       GL_STUB_ALIAS(CompressedTexImage1D, _gloffset_CompressedTexImage1DARB, CompressedTexImage1D@28, CompressedTexImage1DARB, CompressedTexImage1DARB@28)
+       GL_STUB_ALIAS(CompressedTexImage2D, _gloffset_CompressedTexImage2DARB, CompressedTexImage2D@32, CompressedTexImage2DARB, CompressedTexImage2DARB@32)
+       GL_STUB_ALIAS(CompressedTexImage3D, _gloffset_CompressedTexImage3DARB, CompressedTexImage3D@36, CompressedTexImage3DARB, CompressedTexImage3DARB@36)
+       GL_STUB_ALIAS(CompressedTexSubImage1D, _gloffset_CompressedTexSubImage1DARB, CompressedTexSubImage1D@28, CompressedTexSubImage1DARB, CompressedTexSubImage1DARB@28)
+       GL_STUB_ALIAS(CompressedTexSubImage2D, _gloffset_CompressedTexSubImage2DARB, CompressedTexSubImage2D@36, CompressedTexSubImage2DARB, CompressedTexSubImage2DARB@36)
+       GL_STUB_ALIAS(CompressedTexSubImage3D, _gloffset_CompressedTexSubImage3DARB, CompressedTexSubImage3D@44, CompressedTexSubImage3DARB, CompressedTexSubImage3DARB@44)
+       GL_STUB_ALIAS(GetCompressedTexImage, _gloffset_GetCompressedTexImageARB, GetCompressedTexImage@12, GetCompressedTexImageARB, GetCompressedTexImageARB@12)
+       GL_STUB_ALIAS(DisableVertexAttribArray, _gloffset_DisableVertexAttribArrayARB, DisableVertexAttribArray@4, DisableVertexAttribArrayARB, DisableVertexAttribArrayARB@4)
+       GL_STUB_ALIAS(EnableVertexAttribArray, _gloffset_EnableVertexAttribArrayARB, EnableVertexAttribArray@4, EnableVertexAttribArrayARB, EnableVertexAttribArrayARB@4)
+       GL_STUB_ALIAS(GetVertexAttribdv, _gloffset_GetVertexAttribdvARB, GetVertexAttribdv@12, GetVertexAttribdvARB, GetVertexAttribdvARB@12)
+       GL_STUB_ALIAS(GetVertexAttribfv, _gloffset_GetVertexAttribfvARB, GetVertexAttribfv@12, GetVertexAttribfvARB, GetVertexAttribfvARB@12)
+       GL_STUB_ALIAS(GetVertexAttribiv, _gloffset_GetVertexAttribivARB, GetVertexAttribiv@12, GetVertexAttribivARB, GetVertexAttribivARB@12)
+       GL_STUB_ALIAS(ProgramParameter4dNV, _gloffset_ProgramEnvParameter4dARB, ProgramParameter4dNV@40, ProgramEnvParameter4dARB, ProgramEnvParameter4dARB@40)
+       GL_STUB_ALIAS(ProgramParameter4dvNV, _gloffset_ProgramEnvParameter4dvARB, ProgramParameter4dvNV@12, ProgramEnvParameter4dvARB, ProgramEnvParameter4dvARB@12)
+       GL_STUB_ALIAS(ProgramParameter4fNV, _gloffset_ProgramEnvParameter4fARB, ProgramParameter4fNV@24, ProgramEnvParameter4fARB, ProgramEnvParameter4fARB@24)
+       GL_STUB_ALIAS(ProgramParameter4fvNV, _gloffset_ProgramEnvParameter4fvARB, ProgramParameter4fvNV@12, ProgramEnvParameter4fvARB, ProgramEnvParameter4fvARB@12)
+       GL_STUB_ALIAS(VertexAttrib1d, _gloffset_VertexAttrib1dARB, VertexAttrib1d@12, VertexAttrib1dARB, VertexAttrib1dARB@12)
+       GL_STUB_ALIAS(VertexAttrib1dv, _gloffset_VertexAttrib1dvARB, VertexAttrib1dv@8, VertexAttrib1dvARB, VertexAttrib1dvARB@8)
+       GL_STUB_ALIAS(VertexAttrib1f, _gloffset_VertexAttrib1fARB, VertexAttrib1f@8, VertexAttrib1fARB, VertexAttrib1fARB@8)
+       GL_STUB_ALIAS(VertexAttrib1fv, _gloffset_VertexAttrib1fvARB, VertexAttrib1fv@8, VertexAttrib1fvARB, VertexAttrib1fvARB@8)
+       GL_STUB_ALIAS(VertexAttrib1s, _gloffset_VertexAttrib1sARB, VertexAttrib1s@8, VertexAttrib1sARB, VertexAttrib1sARB@8)
+       GL_STUB_ALIAS(VertexAttrib1sv, _gloffset_VertexAttrib1svARB, VertexAttrib1sv@8, VertexAttrib1svARB, VertexAttrib1svARB@8)
+       GL_STUB_ALIAS(VertexAttrib2d, _gloffset_VertexAttrib2dARB, VertexAttrib2d@20, VertexAttrib2dARB, VertexAttrib2dARB@20)
+       GL_STUB_ALIAS(VertexAttrib2dv, _gloffset_VertexAttrib2dvARB, VertexAttrib2dv@8, VertexAttrib2dvARB, VertexAttrib2dvARB@8)
+       GL_STUB_ALIAS(VertexAttrib2f, _gloffset_VertexAttrib2fARB, VertexAttrib2f@12, VertexAttrib2fARB, VertexAttrib2fARB@12)
+       GL_STUB_ALIAS(VertexAttrib2fv, _gloffset_VertexAttrib2fvARB, VertexAttrib2fv@8, VertexAttrib2fvARB, VertexAttrib2fvARB@8)
+       GL_STUB_ALIAS(VertexAttrib2s, _gloffset_VertexAttrib2sARB, VertexAttrib2s@12, VertexAttrib2sARB, VertexAttrib2sARB@12)
+       GL_STUB_ALIAS(VertexAttrib2sv, _gloffset_VertexAttrib2svARB, VertexAttrib2sv@8, VertexAttrib2svARB, VertexAttrib2svARB@8)
+       GL_STUB_ALIAS(VertexAttrib3d, _gloffset_VertexAttrib3dARB, VertexAttrib3d@28, VertexAttrib3dARB, VertexAttrib3dARB@28)
+       GL_STUB_ALIAS(VertexAttrib3dv, _gloffset_VertexAttrib3dvARB, VertexAttrib3dv@8, VertexAttrib3dvARB, VertexAttrib3dvARB@8)
+       GL_STUB_ALIAS(VertexAttrib3f, _gloffset_VertexAttrib3fARB, VertexAttrib3f@16, VertexAttrib3fARB, VertexAttrib3fARB@16)
+       GL_STUB_ALIAS(VertexAttrib3fv, _gloffset_VertexAttrib3fvARB, VertexAttrib3fv@8, VertexAttrib3fvARB, VertexAttrib3fvARB@8)
+       GL_STUB_ALIAS(VertexAttrib3s, _gloffset_VertexAttrib3sARB, VertexAttrib3s@16, VertexAttrib3sARB, VertexAttrib3sARB@16)
+       GL_STUB_ALIAS(VertexAttrib3sv, _gloffset_VertexAttrib3svARB, VertexAttrib3sv@8, VertexAttrib3svARB, VertexAttrib3svARB@8)
+       GL_STUB_ALIAS(VertexAttrib4Nbv, _gloffset_VertexAttrib4NbvARB, VertexAttrib4Nbv@8, VertexAttrib4NbvARB, VertexAttrib4NbvARB@8)
+       GL_STUB_ALIAS(VertexAttrib4Niv, _gloffset_VertexAttrib4NivARB, VertexAttrib4Niv@8, VertexAttrib4NivARB, VertexAttrib4NivARB@8)
+       GL_STUB_ALIAS(VertexAttrib4Nsv, _gloffset_VertexAttrib4NsvARB, VertexAttrib4Nsv@8, VertexAttrib4NsvARB, VertexAttrib4NsvARB@8)
+       GL_STUB_ALIAS(VertexAttrib4Nub, _gloffset_VertexAttrib4NubARB, VertexAttrib4Nub@20, VertexAttrib4NubARB, VertexAttrib4NubARB@20)
+       GL_STUB_ALIAS(VertexAttrib4Nubv, _gloffset_VertexAttrib4NubvARB, VertexAttrib4Nubv@8, VertexAttrib4NubvARB, VertexAttrib4NubvARB@8)
+       GL_STUB_ALIAS(VertexAttrib4Nuiv, _gloffset_VertexAttrib4NuivARB, VertexAttrib4Nuiv@8, VertexAttrib4NuivARB, VertexAttrib4NuivARB@8)
+       GL_STUB_ALIAS(VertexAttrib4Nusv, _gloffset_VertexAttrib4NusvARB, VertexAttrib4Nusv@8, VertexAttrib4NusvARB, VertexAttrib4NusvARB@8)
+       GL_STUB_ALIAS(VertexAttrib4bv, _gloffset_VertexAttrib4bvARB, VertexAttrib4bv@8, VertexAttrib4bvARB, VertexAttrib4bvARB@8)
+       GL_STUB_ALIAS(VertexAttrib4d, _gloffset_VertexAttrib4dARB, VertexAttrib4d@36, VertexAttrib4dARB, VertexAttrib4dARB@36)
+       GL_STUB_ALIAS(VertexAttrib4dv, _gloffset_VertexAttrib4dvARB, VertexAttrib4dv@8, VertexAttrib4dvARB, VertexAttrib4dvARB@8)
+       GL_STUB_ALIAS(VertexAttrib4f, _gloffset_VertexAttrib4fARB, VertexAttrib4f@20, VertexAttrib4fARB, VertexAttrib4fARB@20)
+       GL_STUB_ALIAS(VertexAttrib4fv, _gloffset_VertexAttrib4fvARB, VertexAttrib4fv@8, VertexAttrib4fvARB, VertexAttrib4fvARB@8)
+       GL_STUB_ALIAS(VertexAttrib4iv, _gloffset_VertexAttrib4ivARB, VertexAttrib4iv@8, VertexAttrib4ivARB, VertexAttrib4ivARB@8)
+       GL_STUB_ALIAS(VertexAttrib4s, _gloffset_VertexAttrib4sARB, VertexAttrib4s@20, VertexAttrib4sARB, VertexAttrib4sARB@20)
+       GL_STUB_ALIAS(VertexAttrib4sv, _gloffset_VertexAttrib4svARB, VertexAttrib4sv@8, VertexAttrib4svARB, VertexAttrib4svARB@8)
+       GL_STUB_ALIAS(VertexAttrib4ubv, _gloffset_VertexAttrib4ubvARB, VertexAttrib4ubv@8, VertexAttrib4ubvARB, VertexAttrib4ubvARB@8)
+       GL_STUB_ALIAS(VertexAttrib4uiv, _gloffset_VertexAttrib4uivARB, VertexAttrib4uiv@8, VertexAttrib4uivARB, VertexAttrib4uivARB@8)
+       GL_STUB_ALIAS(VertexAttrib4usv, _gloffset_VertexAttrib4usvARB, VertexAttrib4usv@8, VertexAttrib4usvARB, VertexAttrib4usvARB@8)
+       GL_STUB_ALIAS(VertexAttribPointer, _gloffset_VertexAttribPointerARB, VertexAttribPointer@24, VertexAttribPointerARB, VertexAttribPointerARB@24)
+       GL_STUB_ALIAS(BindBuffer, _gloffset_BindBufferARB, BindBuffer@8, BindBufferARB, BindBufferARB@8)
+       GL_STUB_ALIAS(BufferData, _gloffset_BufferDataARB, BufferData@16, BufferDataARB, BufferDataARB@16)
+       GL_STUB_ALIAS(BufferSubData, _gloffset_BufferSubDataARB, BufferSubData@16, BufferSubDataARB, BufferSubDataARB@16)
+       GL_STUB_ALIAS(DeleteBuffers, _gloffset_DeleteBuffersARB, DeleteBuffers@8, DeleteBuffersARB, DeleteBuffersARB@8)
+       GL_STUB_ALIAS(GenBuffers, _gloffset_GenBuffersARB, GenBuffers@8, GenBuffersARB, GenBuffersARB@8)
+       GL_STUB_ALIAS(GetBufferParameteriv, _gloffset_GetBufferParameterivARB, GetBufferParameteriv@12, GetBufferParameterivARB, GetBufferParameterivARB@12)
+       GL_STUB_ALIAS(GetBufferPointerv, _gloffset_GetBufferPointervARB, GetBufferPointerv@12, GetBufferPointervARB, GetBufferPointervARB@12)
+       GL_STUB_ALIAS(GetBufferSubData, _gloffset_GetBufferSubDataARB, GetBufferSubData@16, GetBufferSubDataARB, GetBufferSubDataARB@16)
+       GL_STUB_ALIAS(IsBuffer, _gloffset_IsBufferARB, IsBuffer@4, IsBufferARB, IsBufferARB@4)
+       GL_STUB_ALIAS(MapBuffer, _gloffset_MapBufferARB, MapBuffer@8, MapBufferARB, MapBufferARB@8)
+       GL_STUB_ALIAS(UnmapBuffer, _gloffset_UnmapBufferARB, UnmapBuffer@4, UnmapBufferARB, UnmapBufferARB@4)
+       GL_STUB_ALIAS(BeginQuery, _gloffset_BeginQueryARB, BeginQuery@8, BeginQueryARB, BeginQueryARB@8)
+       GL_STUB_ALIAS(DeleteQueries, _gloffset_DeleteQueriesARB, DeleteQueries@8, DeleteQueriesARB, DeleteQueriesARB@8)
+       GL_STUB_ALIAS(EndQuery, _gloffset_EndQueryARB, EndQuery@4, EndQueryARB, EndQueryARB@4)
+       GL_STUB_ALIAS(GenQueries, _gloffset_GenQueriesARB, GenQueries@8, GenQueriesARB, GenQueriesARB@8)
+       GL_STUB_ALIAS(GetQueryObjectiv, _gloffset_GetQueryObjectivARB, GetQueryObjectiv@12, GetQueryObjectivARB, GetQueryObjectivARB@12)
+       GL_STUB_ALIAS(GetQueryObjectuiv, _gloffset_GetQueryObjectuivARB, GetQueryObjectuiv@12, GetQueryObjectuivARB, GetQueryObjectuivARB@12)
+       GL_STUB_ALIAS(GetQueryiv, _gloffset_GetQueryivARB, GetQueryiv@12, GetQueryivARB, GetQueryivARB@12)
+       GL_STUB_ALIAS(IsQuery, _gloffset_IsQueryARB, IsQuery@4, IsQueryARB, IsQueryARB@4)
+       GL_STUB_ALIAS(CompileShader, _gloffset_CompileShaderARB, CompileShader@4, CompileShaderARB, CompileShaderARB@4)
+       GL_STUB_ALIAS(GetActiveUniform, _gloffset_GetActiveUniformARB, GetActiveUniform@28, GetActiveUniformARB, GetActiveUniformARB@28)
+       GL_STUB_ALIAS(GetShaderSource, _gloffset_GetShaderSourceARB, GetShaderSource@16, GetShaderSourceARB, GetShaderSourceARB@16)
+       GL_STUB_ALIAS(GetUniformLocation, _gloffset_GetUniformLocationARB, GetUniformLocation@8, GetUniformLocationARB, GetUniformLocationARB@8)
+       GL_STUB_ALIAS(GetUniformfv, _gloffset_GetUniformfvARB, GetUniformfv@12, GetUniformfvARB, GetUniformfvARB@12)
+       GL_STUB_ALIAS(GetUniformiv, _gloffset_GetUniformivARB, GetUniformiv@12, GetUniformivARB, GetUniformivARB@12)
+       GL_STUB_ALIAS(LinkProgram, _gloffset_LinkProgramARB, LinkProgram@4, LinkProgramARB, LinkProgramARB@4)
+       GL_STUB_ALIAS(ShaderSource, _gloffset_ShaderSourceARB, ShaderSource@16, ShaderSourceARB, ShaderSourceARB@16)
+       GL_STUB_ALIAS(Uniform1f, _gloffset_Uniform1fARB, Uniform1f@8, Uniform1fARB, Uniform1fARB@8)
+       GL_STUB_ALIAS(Uniform1fv, _gloffset_Uniform1fvARB, Uniform1fv@12, Uniform1fvARB, Uniform1fvARB@12)
+       GL_STUB_ALIAS(Uniform1i, _gloffset_Uniform1iARB, Uniform1i@8, Uniform1iARB, Uniform1iARB@8)
+       GL_STUB_ALIAS(Uniform1iv, _gloffset_Uniform1ivARB, Uniform1iv@12, Uniform1ivARB, Uniform1ivARB@12)
+       GL_STUB_ALIAS(Uniform2f, _gloffset_Uniform2fARB, Uniform2f@12, Uniform2fARB, Uniform2fARB@12)
+       GL_STUB_ALIAS(Uniform2fv, _gloffset_Uniform2fvARB, Uniform2fv@12, Uniform2fvARB, Uniform2fvARB@12)
+       GL_STUB_ALIAS(Uniform2i, _gloffset_Uniform2iARB, Uniform2i@12, Uniform2iARB, Uniform2iARB@12)
+       GL_STUB_ALIAS(Uniform2iv, _gloffset_Uniform2ivARB, Uniform2iv@12, Uniform2ivARB, Uniform2ivARB@12)
+       GL_STUB_ALIAS(Uniform3f, _gloffset_Uniform3fARB, Uniform3f@16, Uniform3fARB, Uniform3fARB@16)
+       GL_STUB_ALIAS(Uniform3fv, _gloffset_Uniform3fvARB, Uniform3fv@12, Uniform3fvARB, Uniform3fvARB@12)
+       GL_STUB_ALIAS(Uniform3i, _gloffset_Uniform3iARB, Uniform3i@16, Uniform3iARB, Uniform3iARB@16)
+       GL_STUB_ALIAS(Uniform3iv, _gloffset_Uniform3ivARB, Uniform3iv@12, Uniform3ivARB, Uniform3ivARB@12)
+       GL_STUB_ALIAS(Uniform4f, _gloffset_Uniform4fARB, Uniform4f@20, Uniform4fARB, Uniform4fARB@20)
+       GL_STUB_ALIAS(Uniform4fv, _gloffset_Uniform4fvARB, Uniform4fv@12, Uniform4fvARB, Uniform4fvARB@12)
+       GL_STUB_ALIAS(Uniform4i, _gloffset_Uniform4iARB, Uniform4i@20, Uniform4iARB, Uniform4iARB@20)
+       GL_STUB_ALIAS(Uniform4iv, _gloffset_Uniform4ivARB, Uniform4iv@12, Uniform4ivARB, Uniform4ivARB@12)
+       GL_STUB_ALIAS(UniformMatrix2fv, _gloffset_UniformMatrix2fvARB, UniformMatrix2fv@16, UniformMatrix2fvARB, UniformMatrix2fvARB@16)
+       GL_STUB_ALIAS(UniformMatrix3fv, _gloffset_UniformMatrix3fvARB, UniformMatrix3fv@16, UniformMatrix3fvARB, UniformMatrix3fvARB@16)
+       GL_STUB_ALIAS(UniformMatrix4fv, _gloffset_UniformMatrix4fvARB, UniformMatrix4fv@16, UniformMatrix4fvARB, UniformMatrix4fvARB@16)
+       GL_STUB_ALIAS(UseProgram, _gloffset_UseProgramObjectARB, UseProgram@4, UseProgramObjectARB, UseProgramObjectARB@4)
+       GL_STUB_ALIAS(ValidateProgram, _gloffset_ValidateProgramARB, ValidateProgram@4, ValidateProgramARB, ValidateProgramARB@4)
+       GL_STUB_ALIAS(BindAttribLocation, _gloffset_BindAttribLocationARB, BindAttribLocation@12, BindAttribLocationARB, BindAttribLocationARB@12)
+       GL_STUB_ALIAS(GetActiveAttrib, _gloffset_GetActiveAttribARB, GetActiveAttrib@28, GetActiveAttribARB, GetActiveAttribARB@28)
+       GL_STUB_ALIAS(GetAttribLocation, _gloffset_GetAttribLocationARB, GetAttribLocation@8, GetAttribLocationARB, GetAttribLocationARB@8)
+       GL_STUB_ALIAS(DrawBuffers, _gloffset_DrawBuffersARB, DrawBuffers@8, DrawBuffersARB, DrawBuffersARB@8)
+       GL_STUB_ALIAS(DrawBuffersATI, _gloffset_DrawBuffersARB, DrawBuffersATI@8, DrawBuffersARB, DrawBuffersARB@8)
+       GL_STUB_ALIAS(RenderbufferStorageMultisampleEXT, _gloffset_RenderbufferStorageMultisample, RenderbufferStorageMultisampleEXT@20, RenderbufferStorageMultisample, RenderbufferStorageMultisample@20)
+       GL_STUB_ALIAS(PointParameterf, _gloffset_PointParameterfEXT, PointParameterf@8, PointParameterfEXT, PointParameterfEXT@8)
+       GL_STUB_ALIAS(PointParameterfARB, _gloffset_PointParameterfEXT, PointParameterfARB@8, PointParameterfEXT, PointParameterfEXT@8)
+       GL_STUB_ALIAS(PointParameterfv, _gloffset_PointParameterfvEXT, PointParameterfv@8, PointParameterfvEXT, PointParameterfvEXT@8)
+       GL_STUB_ALIAS(PointParameterfvARB, _gloffset_PointParameterfvEXT, PointParameterfvARB@8, PointParameterfvEXT, PointParameterfvEXT@8)
+       GL_STUB_ALIAS(SecondaryColor3b, _gloffset_SecondaryColor3bEXT, SecondaryColor3b@12, SecondaryColor3bEXT, SecondaryColor3bEXT@12)
+       GL_STUB_ALIAS(SecondaryColor3bv, _gloffset_SecondaryColor3bvEXT, SecondaryColor3bv@4, SecondaryColor3bvEXT, SecondaryColor3bvEXT@4)
+       GL_STUB_ALIAS(SecondaryColor3d, _gloffset_SecondaryColor3dEXT, SecondaryColor3d@24, SecondaryColor3dEXT, SecondaryColor3dEXT@24)
+       GL_STUB_ALIAS(SecondaryColor3dv, _gloffset_SecondaryColor3dvEXT, SecondaryColor3dv@4, SecondaryColor3dvEXT, SecondaryColor3dvEXT@4)
+       GL_STUB_ALIAS(SecondaryColor3f, _gloffset_SecondaryColor3fEXT, SecondaryColor3f@12, SecondaryColor3fEXT, SecondaryColor3fEXT@12)
+       GL_STUB_ALIAS(SecondaryColor3fv, _gloffset_SecondaryColor3fvEXT, SecondaryColor3fv@4, SecondaryColor3fvEXT, SecondaryColor3fvEXT@4)
+       GL_STUB_ALIAS(SecondaryColor3i, _gloffset_SecondaryColor3iEXT, SecondaryColor3i@12, SecondaryColor3iEXT, SecondaryColor3iEXT@12)
+       GL_STUB_ALIAS(SecondaryColor3iv, _gloffset_SecondaryColor3ivEXT, SecondaryColor3iv@4, SecondaryColor3ivEXT, SecondaryColor3ivEXT@4)
+       GL_STUB_ALIAS(SecondaryColor3s, _gloffset_SecondaryColor3sEXT, SecondaryColor3s@12, SecondaryColor3sEXT, SecondaryColor3sEXT@12)
+       GL_STUB_ALIAS(SecondaryColor3sv, _gloffset_SecondaryColor3svEXT, SecondaryColor3sv@4, SecondaryColor3svEXT, SecondaryColor3svEXT@4)
+       GL_STUB_ALIAS(SecondaryColor3ub, _gloffset_SecondaryColor3ubEXT, SecondaryColor3ub@12, SecondaryColor3ubEXT, SecondaryColor3ubEXT@12)
+       GL_STUB_ALIAS(SecondaryColor3ubv, _gloffset_SecondaryColor3ubvEXT, SecondaryColor3ubv@4, SecondaryColor3ubvEXT, SecondaryColor3ubvEXT@4)
+       GL_STUB_ALIAS(SecondaryColor3ui, _gloffset_SecondaryColor3uiEXT, SecondaryColor3ui@12, SecondaryColor3uiEXT, SecondaryColor3uiEXT@12)
+       GL_STUB_ALIAS(SecondaryColor3uiv, _gloffset_SecondaryColor3uivEXT, SecondaryColor3uiv@4, SecondaryColor3uivEXT, SecondaryColor3uivEXT@4)
+       GL_STUB_ALIAS(SecondaryColor3us, _gloffset_SecondaryColor3usEXT, SecondaryColor3us@12, SecondaryColor3usEXT, SecondaryColor3usEXT@12)
+       GL_STUB_ALIAS(SecondaryColor3usv, _gloffset_SecondaryColor3usvEXT, SecondaryColor3usv@4, SecondaryColor3usvEXT, SecondaryColor3usvEXT@4)
+       GL_STUB_ALIAS(SecondaryColorPointer, _gloffset_SecondaryColorPointerEXT, SecondaryColorPointer@16, SecondaryColorPointerEXT, SecondaryColorPointerEXT@16)
+       GL_STUB_ALIAS(MultiDrawArrays, _gloffset_MultiDrawArraysEXT, MultiDrawArrays@16, MultiDrawArraysEXT, MultiDrawArraysEXT@16)
+       GL_STUB_ALIAS(MultiDrawElements, _gloffset_MultiDrawElementsEXT, MultiDrawElements@20, MultiDrawElementsEXT, MultiDrawElementsEXT@20)
+       GL_STUB_ALIAS(FogCoordPointer, _gloffset_FogCoordPointerEXT, FogCoordPointer@12, FogCoordPointerEXT, FogCoordPointerEXT@12)
+       GL_STUB_ALIAS(FogCoordd, _gloffset_FogCoorddEXT, FogCoordd@8, FogCoorddEXT, FogCoorddEXT@8)
+       GL_STUB_ALIAS(FogCoorddv, _gloffset_FogCoorddvEXT, FogCoorddv@4, FogCoorddvEXT, FogCoorddvEXT@4)
+       GL_STUB_ALIAS(FogCoordf, _gloffset_FogCoordfEXT, FogCoordf@4, FogCoordfEXT, FogCoordfEXT@4)
+       GL_STUB_ALIAS(FogCoordfv, _gloffset_FogCoordfvEXT, FogCoordfv@4, FogCoordfvEXT, FogCoordfvEXT@4)
+       GL_STUB_ALIAS(BlendFuncSeparate, _gloffset_BlendFuncSeparateEXT, BlendFuncSeparate@16, BlendFuncSeparateEXT, BlendFuncSeparateEXT@16)
+       GL_STUB_ALIAS(WindowPos2d, _gloffset_WindowPos2dMESA, WindowPos2d@16, WindowPos2dMESA, WindowPos2dMESA@16)
+       GL_STUB_ALIAS(WindowPos2dARB, _gloffset_WindowPos2dMESA, WindowPos2dARB@16, WindowPos2dMESA, WindowPos2dMESA@16)
+       GL_STUB_ALIAS(WindowPos2dv, _gloffset_WindowPos2dvMESA, WindowPos2dv@4, WindowPos2dvMESA, WindowPos2dvMESA@4)
+       GL_STUB_ALIAS(WindowPos2dvARB, _gloffset_WindowPos2dvMESA, WindowPos2dvARB@4, WindowPos2dvMESA, WindowPos2dvMESA@4)
+       GL_STUB_ALIAS(WindowPos2f, _gloffset_WindowPos2fMESA, WindowPos2f@8, WindowPos2fMESA, WindowPos2fMESA@8)
+       GL_STUB_ALIAS(WindowPos2fARB, _gloffset_WindowPos2fMESA, WindowPos2fARB@8, WindowPos2fMESA, WindowPos2fMESA@8)
+       GL_STUB_ALIAS(WindowPos2fv, _gloffset_WindowPos2fvMESA, WindowPos2fv@4, WindowPos2fvMESA, WindowPos2fvMESA@4)
+       GL_STUB_ALIAS(WindowPos2fvARB, _gloffset_WindowPos2fvMESA, WindowPos2fvARB@4, WindowPos2fvMESA, WindowPos2fvMESA@4)
+       GL_STUB_ALIAS(WindowPos2i, _gloffset_WindowPos2iMESA, WindowPos2i@8, WindowPos2iMESA, WindowPos2iMESA@8)
+       GL_STUB_ALIAS(WindowPos2iARB, _gloffset_WindowPos2iMESA, WindowPos2iARB@8, WindowPos2iMESA, WindowPos2iMESA@8)
+       GL_STUB_ALIAS(WindowPos2iv, _gloffset_WindowPos2ivMESA, WindowPos2iv@4, WindowPos2ivMESA, WindowPos2ivMESA@4)
+       GL_STUB_ALIAS(WindowPos2ivARB, _gloffset_WindowPos2ivMESA, WindowPos2ivARB@4, WindowPos2ivMESA, WindowPos2ivMESA@4)
+       GL_STUB_ALIAS(WindowPos2s, _gloffset_WindowPos2sMESA, WindowPos2s@8, WindowPos2sMESA, WindowPos2sMESA@8)
+       GL_STUB_ALIAS(WindowPos2sARB, _gloffset_WindowPos2sMESA, WindowPos2sARB@8, WindowPos2sMESA, WindowPos2sMESA@8)
+       GL_STUB_ALIAS(WindowPos2sv, _gloffset_WindowPos2svMESA, WindowPos2sv@4, WindowPos2svMESA, WindowPos2svMESA@4)
+       GL_STUB_ALIAS(WindowPos2svARB, _gloffset_WindowPos2svMESA, WindowPos2svARB@4, WindowPos2svMESA, WindowPos2svMESA@4)
+       GL_STUB_ALIAS(WindowPos3d, _gloffset_WindowPos3dMESA, WindowPos3d@24, WindowPos3dMESA, WindowPos3dMESA@24)
+       GL_STUB_ALIAS(WindowPos3dARB, _gloffset_WindowPos3dMESA, WindowPos3dARB@24, WindowPos3dMESA, WindowPos3dMESA@24)
+       GL_STUB_ALIAS(WindowPos3dv, _gloffset_WindowPos3dvMESA, WindowPos3dv@4, WindowPos3dvMESA, WindowPos3dvMESA@4)
+       GL_STUB_ALIAS(WindowPos3dvARB, _gloffset_WindowPos3dvMESA, WindowPos3dvARB@4, WindowPos3dvMESA, WindowPos3dvMESA@4)
+       GL_STUB_ALIAS(WindowPos3f, _gloffset_WindowPos3fMESA, WindowPos3f@12, WindowPos3fMESA, WindowPos3fMESA@12)
+       GL_STUB_ALIAS(WindowPos3fARB, _gloffset_WindowPos3fMESA, WindowPos3fARB@12, WindowPos3fMESA, WindowPos3fMESA@12)
+       GL_STUB_ALIAS(WindowPos3fv, _gloffset_WindowPos3fvMESA, WindowPos3fv@4, WindowPos3fvMESA, WindowPos3fvMESA@4)
+       GL_STUB_ALIAS(WindowPos3fvARB, _gloffset_WindowPos3fvMESA, WindowPos3fvARB@4, WindowPos3fvMESA, WindowPos3fvMESA@4)
+       GL_STUB_ALIAS(WindowPos3i, _gloffset_WindowPos3iMESA, WindowPos3i@12, WindowPos3iMESA, WindowPos3iMESA@12)
+       GL_STUB_ALIAS(WindowPos3iARB, _gloffset_WindowPos3iMESA, WindowPos3iARB@12, WindowPos3iMESA, WindowPos3iMESA@12)
+       GL_STUB_ALIAS(WindowPos3iv, _gloffset_WindowPos3ivMESA, WindowPos3iv@4, WindowPos3ivMESA, WindowPos3ivMESA@4)
+       GL_STUB_ALIAS(WindowPos3ivARB, _gloffset_WindowPos3ivMESA, WindowPos3ivARB@4, WindowPos3ivMESA, WindowPos3ivMESA@4)
+       GL_STUB_ALIAS(WindowPos3s, _gloffset_WindowPos3sMESA, WindowPos3s@12, WindowPos3sMESA, WindowPos3sMESA@12)
+       GL_STUB_ALIAS(WindowPos3sARB, _gloffset_WindowPos3sMESA, WindowPos3sARB@12, WindowPos3sMESA, WindowPos3sMESA@12)
+       GL_STUB_ALIAS(WindowPos3sv, _gloffset_WindowPos3svMESA, WindowPos3sv@4, WindowPos3svMESA, WindowPos3svMESA@4)
+       GL_STUB_ALIAS(WindowPos3svARB, _gloffset_WindowPos3svMESA, WindowPos3svARB@4, WindowPos3svMESA, WindowPos3svMESA@4)
+       GL_STUB_ALIAS(BindProgramARB, _gloffset_BindProgramNV, BindProgramARB@8, BindProgramNV, BindProgramNV@8)
+       GL_STUB_ALIAS(DeleteProgramsARB, _gloffset_DeleteProgramsNV, DeleteProgramsARB@8, DeleteProgramsNV, DeleteProgramsNV@8)
+       GL_STUB_ALIAS(GenProgramsARB, _gloffset_GenProgramsNV, GenProgramsARB@8, GenProgramsNV, GenProgramsNV@8)
+       GL_STUB_ALIAS(GetVertexAttribPointerv, _gloffset_GetVertexAttribPointervNV, GetVertexAttribPointerv@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12)
+       GL_STUB_ALIAS(GetVertexAttribPointervARB, _gloffset_GetVertexAttribPointervNV, GetVertexAttribPointervARB@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12)
+       GL_STUB_ALIAS(IsProgramARB, _gloffset_IsProgramNV, IsProgramARB@4, IsProgramNV, IsProgramNV@4)
+       GL_STUB_ALIAS(PointParameteri, _gloffset_PointParameteriNV, PointParameteri@8, PointParameteriNV, PointParameteriNV@8)
+       GL_STUB_ALIAS(PointParameteriv, _gloffset_PointParameterivNV, PointParameteriv@8, PointParameterivNV, PointParameterivNV@8)
+       GL_STUB_ALIAS(DeleteVertexArrays, _gloffset_DeleteVertexArraysAPPLE, DeleteVertexArrays@8, _dispatch_stub_757, _dispatch_stub_757@8)
+       GL_STUB_ALIAS(IsVertexArray, _gloffset_IsVertexArrayAPPLE, IsVertexArray@4, _dispatch_stub_759, _dispatch_stub_759@4)
+       GL_STUB_ALIAS(BlendEquationSeparate, _gloffset_BlendEquationSeparateEXT, BlendEquationSeparate@8, _dispatch_stub_767, _dispatch_stub_767@8)
+       GL_STUB_ALIAS(BindFramebuffer, _gloffset_BindFramebufferEXT, BindFramebuffer@8, BindFramebufferEXT, BindFramebufferEXT@8)
+       GL_STUB_ALIAS(BindRenderbuffer, _gloffset_BindRenderbufferEXT, BindRenderbuffer@8, BindRenderbufferEXT, BindRenderbufferEXT@8)
+       GL_STUB_ALIAS(CheckFramebufferStatus, _gloffset_CheckFramebufferStatusEXT, CheckFramebufferStatus@4, CheckFramebufferStatusEXT, CheckFramebufferStatusEXT@4)
+       GL_STUB_ALIAS(DeleteFramebuffers, _gloffset_DeleteFramebuffersEXT, DeleteFramebuffers@8, DeleteFramebuffersEXT, DeleteFramebuffersEXT@8)
+       GL_STUB_ALIAS(DeleteRenderbuffers, _gloffset_DeleteRenderbuffersEXT, DeleteRenderbuffers@8, DeleteRenderbuffersEXT, DeleteRenderbuffersEXT@8)
+       GL_STUB_ALIAS(FramebufferRenderbuffer, _gloffset_FramebufferRenderbufferEXT, FramebufferRenderbuffer@16, FramebufferRenderbufferEXT, FramebufferRenderbufferEXT@16)
+       GL_STUB_ALIAS(FramebufferTexture1D, _gloffset_FramebufferTexture1DEXT, FramebufferTexture1D@20, FramebufferTexture1DEXT, FramebufferTexture1DEXT@20)
+       GL_STUB_ALIAS(FramebufferTexture2D, _gloffset_FramebufferTexture2DEXT, FramebufferTexture2D@20, FramebufferTexture2DEXT, FramebufferTexture2DEXT@20)
+       GL_STUB_ALIAS(FramebufferTexture3D, _gloffset_FramebufferTexture3DEXT, FramebufferTexture3D@24, FramebufferTexture3DEXT, FramebufferTexture3DEXT@24)
+       GL_STUB_ALIAS(GenFramebuffers, _gloffset_GenFramebuffersEXT, GenFramebuffers@8, GenFramebuffersEXT, GenFramebuffersEXT@8)
+       GL_STUB_ALIAS(GenRenderbuffers, _gloffset_GenRenderbuffersEXT, GenRenderbuffers@8, GenRenderbuffersEXT, GenRenderbuffersEXT@8)
+       GL_STUB_ALIAS(GenerateMipmap, _gloffset_GenerateMipmapEXT, GenerateMipmap@4, GenerateMipmapEXT, GenerateMipmapEXT@4)
+       GL_STUB_ALIAS(GetFramebufferAttachmentParameteriv, _gloffset_GetFramebufferAttachmentParameterivEXT, GetFramebufferAttachmentParameteriv@16, GetFramebufferAttachmentParameterivEXT, GetFramebufferAttachmentParameterivEXT@16)
+       GL_STUB_ALIAS(GetRenderbufferParameteriv, _gloffset_GetRenderbufferParameterivEXT, GetRenderbufferParameteriv@12, GetRenderbufferParameterivEXT, GetRenderbufferParameterivEXT@12)
+       GL_STUB_ALIAS(IsFramebuffer, _gloffset_IsFramebufferEXT, IsFramebuffer@4, IsFramebufferEXT, IsFramebufferEXT@4)
+       GL_STUB_ALIAS(IsRenderbuffer, _gloffset_IsRenderbufferEXT, IsRenderbuffer@4, IsRenderbufferEXT, IsRenderbufferEXT@4)
+       GL_STUB_ALIAS(RenderbufferStorage, _gloffset_RenderbufferStorageEXT, RenderbufferStorage@16, RenderbufferStorageEXT, RenderbufferStorageEXT@16)
+       GL_STUB_ALIAS(BlitFramebuffer, _gloffset_BlitFramebufferEXT, BlitFramebuffer@40, _dispatch_stub_785, _dispatch_stub_785@40)
+       GL_STUB_ALIAS(FramebufferTextureLayer, _gloffset_FramebufferTextureLayerEXT, FramebufferTextureLayer@20, FramebufferTextureLayerEXT, FramebufferTextureLayerEXT@20)
+       GL_STUB_ALIAS(BeginTransformFeedback, _gloffset_BeginTransformFeedbackEXT, BeginTransformFeedback@4, BeginTransformFeedbackEXT, BeginTransformFeedbackEXT@4)
+       GL_STUB_ALIAS(BindBufferBase, _gloffset_BindBufferBaseEXT, BindBufferBase@12, BindBufferBaseEXT, BindBufferBaseEXT@12)
+       GL_STUB_ALIAS(BindBufferRange, _gloffset_BindBufferRangeEXT, BindBufferRange@20, BindBufferRangeEXT, BindBufferRangeEXT@20)
+       GL_STUB_ALIAS(EndTransformFeedback, _gloffset_EndTransformFeedbackEXT, EndTransformFeedback@0, EndTransformFeedbackEXT, EndTransformFeedbackEXT@0)
+       GL_STUB_ALIAS(GetTransformFeedbackVarying, _gloffset_GetTransformFeedbackVaryingEXT, GetTransformFeedbackVarying@28, GetTransformFeedbackVaryingEXT, GetTransformFeedbackVaryingEXT@28)
+       GL_STUB_ALIAS(TransformFeedbackVaryings, _gloffset_TransformFeedbackVaryingsEXT, TransformFeedbackVaryings@16, TransformFeedbackVaryingsEXT, TransformFeedbackVaryingsEXT@16)
+       GL_STUB_ALIAS(ProvokingVertex, _gloffset_ProvokingVertexEXT, ProvokingVertex@4, ProvokingVertexEXT, ProvokingVertexEXT@4)
+
+               GLOBL   GLNAME(gl_dispatch_functions_end)
+               HIDDEN(GLNAME(gl_dispatch_functions_end))
+               ALIGNTEXT16
+GLNAME(gl_dispatch_functions_end):
+
+#if defined(GLX_USE_TLS) && defined(__linux__)
+       .section ".note.ABI-tag", "a"
+       .p2align 2
+       .long   1f - 0f   /* name length */
+       .long   3f - 2f   /* data length */
+       .long   1         /* note length */
+0:     .asciz "GNU"      /* vendor name */
+1:     .p2align 2
+2:     .long   0         /* note data: the ABI tag */
+       .long   2,4,20    /* Minimum kernel version w/TLS */
+3:     .p2align 2        /* pad out section */
+#endif /* GLX_USE_TLS */
+
+#if defined (__ELF__) && defined (__linux__)
+       .section .note.GNU-stack,"",%progbits
+#endif
diff --git a/src/mapi/glapi/glapidispatch.h b/src/mapi/glapi/glapidispatch.h
new file mode 100644 (file)
index 0000000..f66876f
--- /dev/null
@@ -0,0 +1,4161 @@
+/* DO NOT EDIT - This file generated automatically by gl_table.py (from Mesa) script */
+
+/*
+ * (C) Copyright IBM Corporation 2005
+ * 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
+ * IBM,
+ * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
+ * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+#if !defined( _GLAPI_DISPATCH_H_ )
+#  define _GLAPI_DISPATCH_H_
+
+
+/* this file should not be included directly in mesa */
+
+/**
+ * \file glapidispatch.h
+ * Macros for handling GL dispatch tables.
+ *
+ * For each known GL function, there are 3 macros in this file.  The first
+ * macro is named CALL_FuncName and is used to call that GL function using
+ * the specified dispatch table.  The other 2 macros, called GET_FuncName
+ * can SET_FuncName, are used to get and set the dispatch pointer for the
+ * named function in the specified dispatch table.
+ */
+
+#define CALL_by_offset(disp, cast, offset, parameters) \
+    (*(cast (GET_by_offset(disp, offset)))) parameters
+#define GET_by_offset(disp, offset) \
+    (offset >= 0) ? (((_glapi_proc *)(disp))[offset]) : NULL
+#define SET_by_offset(disp, offset, fn) \
+    do { \
+        if ( (offset) < 0 ) { \
+            /* fprintf( stderr, "[%s:%u] SET_by_offset(%p, %d, %s)!\n", */ \
+            /*         __func__, __LINE__, disp, offset, # fn); */ \
+            /* abort(); */ \
+        } \
+        else { \
+            ( (_glapi_proc *) (disp) )[offset] = (_glapi_proc) fn; \
+        } \
+    } while(0)
+
+#define CALL_NewList(disp, parameters) (*((disp)->NewList)) parameters
+#define GET_NewList(disp) ((disp)->NewList)
+#define SET_NewList(disp, fn) ((disp)->NewList = fn)
+#define CALL_EndList(disp, parameters) (*((disp)->EndList)) parameters
+#define GET_EndList(disp) ((disp)->EndList)
+#define SET_EndList(disp, fn) ((disp)->EndList = fn)
+#define CALL_CallList(disp, parameters) (*((disp)->CallList)) parameters
+#define GET_CallList(disp) ((disp)->CallList)
+#define SET_CallList(disp, fn) ((disp)->CallList = fn)
+#define CALL_CallLists(disp, parameters) (*((disp)->CallLists)) parameters
+#define GET_CallLists(disp) ((disp)->CallLists)
+#define SET_CallLists(disp, fn) ((disp)->CallLists = fn)
+#define CALL_DeleteLists(disp, parameters) (*((disp)->DeleteLists)) parameters
+#define GET_DeleteLists(disp) ((disp)->DeleteLists)
+#define SET_DeleteLists(disp, fn) ((disp)->DeleteLists = fn)
+#define CALL_GenLists(disp, parameters) (*((disp)->GenLists)) parameters
+#define GET_GenLists(disp) ((disp)->GenLists)
+#define SET_GenLists(disp, fn) ((disp)->GenLists = fn)
+#define CALL_ListBase(disp, parameters) (*((disp)->ListBase)) parameters
+#define GET_ListBase(disp) ((disp)->ListBase)
+#define SET_ListBase(disp, fn) ((disp)->ListBase = fn)
+#define CALL_Begin(disp, parameters) (*((disp)->Begin)) parameters
+#define GET_Begin(disp) ((disp)->Begin)
+#define SET_Begin(disp, fn) ((disp)->Begin = fn)
+#define CALL_Bitmap(disp, parameters) (*((disp)->Bitmap)) parameters
+#define GET_Bitmap(disp) ((disp)->Bitmap)
+#define SET_Bitmap(disp, fn) ((disp)->Bitmap = fn)
+#define CALL_Color3b(disp, parameters) (*((disp)->Color3b)) parameters
+#define GET_Color3b(disp) ((disp)->Color3b)
+#define SET_Color3b(disp, fn) ((disp)->Color3b = fn)
+#define CALL_Color3bv(disp, parameters) (*((disp)->Color3bv)) parameters
+#define GET_Color3bv(disp) ((disp)->Color3bv)
+#define SET_Color3bv(disp, fn) ((disp)->Color3bv = fn)
+#define CALL_Color3d(disp, parameters) (*((disp)->Color3d)) parameters
+#define GET_Color3d(disp) ((disp)->Color3d)
+#define SET_Color3d(disp, fn) ((disp)->Color3d = fn)
+#define CALL_Color3dv(disp, parameters) (*((disp)->Color3dv)) parameters
+#define GET_Color3dv(disp) ((disp)->Color3dv)
+#define SET_Color3dv(disp, fn) ((disp)->Color3dv = fn)
+#define CALL_Color3f(disp, parameters) (*((disp)->Color3f)) parameters
+#define GET_Color3f(disp) ((disp)->Color3f)
+#define SET_Color3f(disp, fn) ((disp)->Color3f = fn)
+#define CALL_Color3fv(disp, parameters) (*((disp)->Color3fv)) parameters
+#define GET_Color3fv(disp) ((disp)->Color3fv)
+#define SET_Color3fv(disp, fn) ((disp)->Color3fv = fn)
+#define CALL_Color3i(disp, parameters) (*((disp)->Color3i)) parameters
+#define GET_Color3i(disp) ((disp)->Color3i)
+#define SET_Color3i(disp, fn) ((disp)->Color3i = fn)
+#define CALL_Color3iv(disp, parameters) (*((disp)->Color3iv)) parameters
+#define GET_Color3iv(disp) ((disp)->Color3iv)
+#define SET_Color3iv(disp, fn) ((disp)->Color3iv = fn)
+#define CALL_Color3s(disp, parameters) (*((disp)->Color3s)) parameters
+#define GET_Color3s(disp) ((disp)->Color3s)
+#define SET_Color3s(disp, fn) ((disp)->Color3s = fn)
+#define CALL_Color3sv(disp, parameters) (*((disp)->Color3sv)) parameters
+#define GET_Color3sv(disp) ((disp)->Color3sv)
+#define SET_Color3sv(disp, fn) ((disp)->Color3sv = fn)
+#define CALL_Color3ub(disp, parameters) (*((disp)->Color3ub)) parameters
+#define GET_Color3ub(disp) ((disp)->Color3ub)
+#define SET_Color3ub(disp, fn) ((disp)->Color3ub = fn)
+#define CALL_Color3ubv(disp, parameters) (*((disp)->Color3ubv)) parameters
+#define GET_Color3ubv(disp) ((disp)->Color3ubv)
+#define SET_Color3ubv(disp, fn) ((disp)->Color3ubv = fn)
+#define CALL_Color3ui(disp, parameters) (*((disp)->Color3ui)) parameters
+#define GET_Color3ui(disp) ((disp)->Color3ui)
+#define SET_Color3ui(disp, fn) ((disp)->Color3ui = fn)
+#define CALL_Color3uiv(disp, parameters) (*((disp)->Color3uiv)) parameters
+#define GET_Color3uiv(disp) ((disp)->Color3uiv)
+#define SET_Color3uiv(disp, fn) ((disp)->Color3uiv = fn)
+#define CALL_Color3us(disp, parameters) (*((disp)->Color3us)) parameters
+#define GET_Color3us(disp) ((disp)->Color3us)
+#define SET_Color3us(disp, fn) ((disp)->Color3us = fn)
+#define CALL_Color3usv(disp, parameters) (*((disp)->Color3usv)) parameters
+#define GET_Color3usv(disp) ((disp)->Color3usv)
+#define SET_Color3usv(disp, fn) ((disp)->Color3usv = fn)
+#define CALL_Color4b(disp, parameters) (*((disp)->Color4b)) parameters
+#define GET_Color4b(disp) ((disp)->Color4b)
+#define SET_Color4b(disp, fn) ((disp)->Color4b = fn)
+#define CALL_Color4bv(disp, parameters) (*((disp)->Color4bv)) parameters
+#define GET_Color4bv(disp) ((disp)->Color4bv)
+#define SET_Color4bv(disp, fn) ((disp)->Color4bv = fn)
+#define CALL_Color4d(disp, parameters) (*((disp)->Color4d)) parameters
+#define GET_Color4d(disp) ((disp)->Color4d)
+#define SET_Color4d(disp, fn) ((disp)->Color4d = fn)
+#define CALL_Color4dv(disp, parameters) (*((disp)->Color4dv)) parameters
+#define GET_Color4dv(disp) ((disp)->Color4dv)
+#define SET_Color4dv(disp, fn) ((disp)->Color4dv = fn)
+#define CALL_Color4f(disp, parameters) (*((disp)->Color4f)) parameters
+#define GET_Color4f(disp) ((disp)->Color4f)
+#define SET_Color4f(disp, fn) ((disp)->Color4f = fn)
+#define CALL_Color4fv(disp, parameters) (*((disp)->Color4fv)) parameters
+#define GET_Color4fv(disp) ((disp)->Color4fv)
+#define SET_Color4fv(disp, fn) ((disp)->Color4fv = fn)
+#define CALL_Color4i(disp, parameters) (*((disp)->Color4i)) parameters
+#define GET_Color4i(disp) ((disp)->Color4i)
+#define SET_Color4i(disp, fn) ((disp)->Color4i = fn)
+#define CALL_Color4iv(disp, parameters) (*((disp)->Color4iv)) parameters
+#define GET_Color4iv(disp) ((disp)->Color4iv)
+#define SET_Color4iv(disp, fn) ((disp)->Color4iv = fn)
+#define CALL_Color4s(disp, parameters) (*((disp)->Color4s)) parameters
+#define GET_Color4s(disp) ((disp)->Color4s)
+#define SET_Color4s(disp, fn) ((disp)->Color4s = fn)
+#define CALL_Color4sv(disp, parameters) (*((disp)->Color4sv)) parameters
+#define GET_Color4sv(disp) ((disp)->Color4sv)
+#define SET_Color4sv(disp, fn) ((disp)->Color4sv = fn)
+#define CALL_Color4ub(disp, parameters) (*((disp)->Color4ub)) parameters
+#define GET_Color4ub(disp) ((disp)->Color4ub)
+#define SET_Color4ub(disp, fn) ((disp)->Color4ub = fn)
+#define CALL_Color4ubv(disp, parameters) (*((disp)->Color4ubv)) parameters
+#define GET_Color4ubv(disp) ((disp)->Color4ubv)
+#define SET_Color4ubv(disp, fn) ((disp)->Color4ubv = fn)
+#define CALL_Color4ui(disp, parameters) (*((disp)->Color4ui)) parameters
+#define GET_Color4ui(disp) ((disp)->Color4ui)
+#define SET_Color4ui(disp, fn) ((disp)->Color4ui = fn)
+#define CALL_Color4uiv(disp, parameters) (*((disp)->Color4uiv)) parameters
+#define GET_Color4uiv(disp) ((disp)->Color4uiv)
+#define SET_Color4uiv(disp, fn) ((disp)->Color4uiv = fn)
+#define CALL_Color4us(disp, parameters) (*((disp)->Color4us)) parameters
+#define GET_Color4us(disp) ((disp)->Color4us)
+#define SET_Color4us(disp, fn) ((disp)->Color4us = fn)
+#define CALL_Color4usv(disp, parameters) (*((disp)->Color4usv)) parameters
+#define GET_Color4usv(disp) ((disp)->Color4usv)
+#define SET_Color4usv(disp, fn) ((disp)->Color4usv = fn)
+#define CALL_EdgeFlag(disp, parameters) (*((disp)->EdgeFlag)) parameters
+#define GET_EdgeFlag(disp) ((disp)->EdgeFlag)
+#define SET_EdgeFlag(disp, fn) ((disp)->EdgeFlag = fn)
+#define CALL_EdgeFlagv(disp, parameters) (*((disp)->EdgeFlagv)) parameters
+#define GET_EdgeFlagv(disp) ((disp)->EdgeFlagv)
+#define SET_EdgeFlagv(disp, fn) ((disp)->EdgeFlagv = fn)
+#define CALL_End(disp, parameters) (*((disp)->End)) parameters
+#define GET_End(disp) ((disp)->End)
+#define SET_End(disp, fn) ((disp)->End = fn)
+#define CALL_Indexd(disp, parameters) (*((disp)->Indexd)) parameters
+#define GET_Indexd(disp) ((disp)->Indexd)
+#define SET_Indexd(disp, fn) ((disp)->Indexd = fn)
+#define CALL_Indexdv(disp, parameters) (*((disp)->Indexdv)) parameters
+#define GET_Indexdv(disp) ((disp)->Indexdv)
+#define SET_Indexdv(disp, fn) ((disp)->Indexdv = fn)
+#define CALL_Indexf(disp, parameters) (*((disp)->Indexf)) parameters
+#define GET_Indexf(disp) ((disp)->Indexf)
+#define SET_Indexf(disp, fn) ((disp)->Indexf = fn)
+#define CALL_Indexfv(disp, parameters) (*((disp)->Indexfv)) parameters
+#define GET_Indexfv(disp) ((disp)->Indexfv)
+#define SET_Indexfv(disp, fn) ((disp)->Indexfv = fn)
+#define CALL_Indexi(disp, parameters) (*((disp)->Indexi)) parameters
+#define GET_Indexi(disp) ((disp)->Indexi)
+#define SET_Indexi(disp, fn) ((disp)->Indexi = fn)
+#define CALL_Indexiv(disp, parameters) (*((disp)->Indexiv)) parameters
+#define GET_Indexiv(disp) ((disp)->Indexiv)
+#define SET_Indexiv(disp, fn) ((disp)->Indexiv = fn)
+#define CALL_Indexs(disp, parameters) (*((disp)->Indexs)) parameters
+#define GET_Indexs(disp) ((disp)->Indexs)
+#define SET_Indexs(disp, fn) ((disp)->Indexs = fn)
+#define CALL_Indexsv(disp, parameters) (*((disp)->Indexsv)) parameters
+#define GET_Indexsv(disp) ((disp)->Indexsv)
+#define SET_Indexsv(disp, fn) ((disp)->Indexsv = fn)
+#define CALL_Normal3b(disp, parameters) (*((disp)->Normal3b)) parameters
+#define GET_Normal3b(disp) ((disp)->Normal3b)
+#define SET_Normal3b(disp, fn) ((disp)->Normal3b = fn)
+#define CALL_Normal3bv(disp, parameters) (*((disp)->Normal3bv)) parameters
+#define GET_Normal3bv(disp) ((disp)->Normal3bv)
+#define SET_Normal3bv(disp, fn) ((disp)->Normal3bv = fn)
+#define CALL_Normal3d(disp, parameters) (*((disp)->Normal3d)) parameters
+#define GET_Normal3d(disp) ((disp)->Normal3d)
+#define SET_Normal3d(disp, fn) ((disp)->Normal3d = fn)
+#define CALL_Normal3dv(disp, parameters) (*((disp)->Normal3dv)) parameters
+#define GET_Normal3dv(disp) ((disp)->Normal3dv)
+#define SET_Normal3dv(disp, fn) ((disp)->Normal3dv = fn)
+#define CALL_Normal3f(disp, parameters) (*((disp)->Normal3f)) parameters
+#define GET_Normal3f(disp) ((disp)->Normal3f)
+#define SET_Normal3f(disp, fn) ((disp)->Normal3f = fn)
+#define CALL_Normal3fv(disp, parameters) (*((disp)->Normal3fv)) parameters
+#define GET_Normal3fv(disp) ((disp)->Normal3fv)
+#define SET_Normal3fv(disp, fn) ((disp)->Normal3fv = fn)
+#define CALL_Normal3i(disp, parameters) (*((disp)->Normal3i)) parameters
+#define GET_Normal3i(disp) ((disp)->Normal3i)
+#define SET_Normal3i(disp, fn) ((disp)->Normal3i = fn)
+#define CALL_Normal3iv(disp, parameters) (*((disp)->Normal3iv)) parameters
+#define GET_Normal3iv(disp) ((disp)->Normal3iv)
+#define SET_Normal3iv(disp, fn) ((disp)->Normal3iv = fn)
+#define CALL_Normal3s(disp, parameters) (*((disp)->Normal3s)) parameters
+#define GET_Normal3s(disp) ((disp)->Normal3s)
+#define SET_Normal3s(disp, fn) ((disp)->Normal3s = fn)
+#define CALL_Normal3sv(disp, parameters) (*((disp)->Normal3sv)) parameters
+#define GET_Normal3sv(disp) ((disp)->Normal3sv)
+#define SET_Normal3sv(disp, fn) ((disp)->Normal3sv = fn)
+#define CALL_RasterPos2d(disp, parameters) (*((disp)->RasterPos2d)) parameters
+#define GET_RasterPos2d(disp) ((disp)->RasterPos2d)
+#define SET_RasterPos2d(disp, fn) ((disp)->RasterPos2d = fn)
+#define CALL_RasterPos2dv(disp, parameters) (*((disp)->RasterPos2dv)) parameters
+#define GET_RasterPos2dv(disp) ((disp)->RasterPos2dv)
+#define SET_RasterPos2dv(disp, fn) ((disp)->RasterPos2dv = fn)
+#define CALL_RasterPos2f(disp, parameters) (*((disp)->RasterPos2f)) parameters
+#define GET_RasterPos2f(disp) ((disp)->RasterPos2f)
+#define SET_RasterPos2f(disp, fn) ((disp)->RasterPos2f = fn)
+#define CALL_RasterPos2fv(disp, parameters) (*((disp)->RasterPos2fv)) parameters
+#define GET_RasterPos2fv(disp) ((disp)->RasterPos2fv)
+#define SET_RasterPos2fv(disp, fn) ((disp)->RasterPos2fv = fn)
+#define CALL_RasterPos2i(disp, parameters) (*((disp)->RasterPos2i)) parameters
+#define GET_RasterPos2i(disp) ((disp)->RasterPos2i)
+#define SET_RasterPos2i(disp, fn) ((disp)->RasterPos2i = fn)
+#define CALL_RasterPos2iv(disp, parameters) (*((disp)->RasterPos2iv)) parameters
+#define GET_RasterPos2iv(disp) ((disp)->RasterPos2iv)
+#define SET_RasterPos2iv(disp, fn) ((disp)->RasterPos2iv = fn)
+#define CALL_RasterPos2s(disp, parameters) (*((disp)->RasterPos2s)) parameters
+#define GET_RasterPos2s(disp) ((disp)->RasterPos2s)
+#define SET_RasterPos2s(disp, fn) ((disp)->RasterPos2s = fn)
+#define CALL_RasterPos2sv(disp, parameters) (*((disp)->RasterPos2sv)) parameters
+#define GET_RasterPos2sv(disp) ((disp)->RasterPos2sv)
+#define SET_RasterPos2sv(disp, fn) ((disp)->RasterPos2sv = fn)
+#define CALL_RasterPos3d(disp, parameters) (*((disp)->RasterPos3d)) parameters
+#define GET_RasterPos3d(disp) ((disp)->RasterPos3d)
+#define SET_RasterPos3d(disp, fn) ((disp)->RasterPos3d = fn)
+#define CALL_RasterPos3dv(disp, parameters) (*((disp)->RasterPos3dv)) parameters
+#define GET_RasterPos3dv(disp) ((disp)->RasterPos3dv)
+#define SET_RasterPos3dv(disp, fn) ((disp)->RasterPos3dv = fn)
+#define CALL_RasterPos3f(disp, parameters) (*((disp)->RasterPos3f)) parameters
+#define GET_RasterPos3f(disp) ((disp)->RasterPos3f)
+#define SET_RasterPos3f(disp, fn) ((disp)->RasterPos3f = fn)
+#define CALL_RasterPos3fv(disp, parameters) (*((disp)->RasterPos3fv)) parameters
+#define GET_RasterPos3fv(disp) ((disp)->RasterPos3fv)
+#define SET_RasterPos3fv(disp, fn) ((disp)->RasterPos3fv = fn)
+#define CALL_RasterPos3i(disp, parameters) (*((disp)->RasterPos3i)) parameters
+#define GET_RasterPos3i(disp) ((disp)->RasterPos3i)
+#define SET_RasterPos3i(disp, fn) ((disp)->RasterPos3i = fn)
+#define CALL_RasterPos3iv(disp, parameters) (*((disp)->RasterPos3iv)) parameters
+#define GET_RasterPos3iv(disp) ((disp)->RasterPos3iv)
+#define SET_RasterPos3iv(disp, fn) ((disp)->RasterPos3iv = fn)
+#define CALL_RasterPos3s(disp, parameters) (*((disp)->RasterPos3s)) parameters
+#define GET_RasterPos3s(disp) ((disp)->RasterPos3s)
+#define SET_RasterPos3s(disp, fn) ((disp)->RasterPos3s = fn)
+#define CALL_RasterPos3sv(disp, parameters) (*((disp)->RasterPos3sv)) parameters
+#define GET_RasterPos3sv(disp) ((disp)->RasterPos3sv)
+#define SET_RasterPos3sv(disp, fn) ((disp)->RasterPos3sv = fn)
+#define CALL_RasterPos4d(disp, parameters) (*((disp)->RasterPos4d)) parameters
+#define GET_RasterPos4d(disp) ((disp)->RasterPos4d)
+#define SET_RasterPos4d(disp, fn) ((disp)->RasterPos4d = fn)
+#define CALL_RasterPos4dv(disp, parameters) (*((disp)->RasterPos4dv)) parameters
+#define GET_RasterPos4dv(disp) ((disp)->RasterPos4dv)
+#define SET_RasterPos4dv(disp, fn) ((disp)->RasterPos4dv = fn)
+#define CALL_RasterPos4f(disp, parameters) (*((disp)->RasterPos4f)) parameters
+#define GET_RasterPos4f(disp) ((disp)->RasterPos4f)
+#define SET_RasterPos4f(disp, fn) ((disp)->RasterPos4f = fn)
+#define CALL_RasterPos4fv(disp, parameters) (*((disp)->RasterPos4fv)) parameters
+#define GET_RasterPos4fv(disp) ((disp)->RasterPos4fv)
+#define SET_RasterPos4fv(disp, fn) ((disp)->RasterPos4fv = fn)
+#define CALL_RasterPos4i(disp, parameters) (*((disp)->RasterPos4i)) parameters
+#define GET_RasterPos4i(disp) ((disp)->RasterPos4i)
+#define SET_RasterPos4i(disp, fn) ((disp)->RasterPos4i = fn)
+#define CALL_RasterPos4iv(disp, parameters) (*((disp)->RasterPos4iv)) parameters
+#define GET_RasterPos4iv(disp) ((disp)->RasterPos4iv)
+#define SET_RasterPos4iv(disp, fn) ((disp)->RasterPos4iv = fn)
+#define CALL_RasterPos4s(disp, parameters) (*((disp)->RasterPos4s)) parameters
+#define GET_RasterPos4s(disp) ((disp)->RasterPos4s)
+#define SET_RasterPos4s(disp, fn) ((disp)->RasterPos4s = fn)
+#define CALL_RasterPos4sv(disp, parameters) (*((disp)->RasterPos4sv)) parameters
+#define GET_RasterPos4sv(disp) ((disp)->RasterPos4sv)
+#define SET_RasterPos4sv(disp, fn) ((disp)->RasterPos4sv = fn)
+#define CALL_Rectd(disp, parameters) (*((disp)->Rectd)) parameters
+#define GET_Rectd(disp) ((disp)->Rectd)
+#define SET_Rectd(disp, fn) ((disp)->Rectd = fn)
+#define CALL_Rectdv(disp, parameters) (*((disp)->Rectdv)) parameters
+#define GET_Rectdv(disp) ((disp)->Rectdv)
+#define SET_Rectdv(disp, fn) ((disp)->Rectdv = fn)
+#define CALL_Rectf(disp, parameters) (*((disp)->Rectf)) parameters
+#define GET_Rectf(disp) ((disp)->Rectf)
+#define SET_Rectf(disp, fn) ((disp)->Rectf = fn)
+#define CALL_Rectfv(disp, parameters) (*((disp)->Rectfv)) parameters
+#define GET_Rectfv(disp) ((disp)->Rectfv)
+#define SET_Rectfv(disp, fn) ((disp)->Rectfv = fn)
+#define CALL_Recti(disp, parameters) (*((disp)->Recti)) parameters
+#define GET_Recti(disp) ((disp)->Recti)
+#define SET_Recti(disp, fn) ((disp)->Recti = fn)
+#define CALL_Rectiv(disp, parameters) (*((disp)->Rectiv)) parameters
+#define GET_Rectiv(disp) ((disp)->Rectiv)
+#define SET_Rectiv(disp, fn) ((disp)->Rectiv = fn)
+#define CALL_Rects(disp, parameters) (*((disp)->Rects)) parameters
+#define GET_Rects(disp) ((disp)->Rects)
+#define SET_Rects(disp, fn) ((disp)->Rects = fn)
+#define CALL_Rectsv(disp, parameters) (*((disp)->Rectsv)) parameters
+#define GET_Rectsv(disp) ((disp)->Rectsv)
+#define SET_Rectsv(disp, fn) ((disp)->Rectsv = fn)
+#define CALL_TexCoord1d(disp, parameters) (*((disp)->TexCoord1d)) parameters
+#define GET_TexCoord1d(disp) ((disp)->TexCoord1d)
+#define SET_TexCoord1d(disp, fn) ((disp)->TexCoord1d = fn)
+#define CALL_TexCoord1dv(disp, parameters) (*((disp)->TexCoord1dv)) parameters
+#define GET_TexCoord1dv(disp) ((disp)->TexCoord1dv)
+#define SET_TexCoord1dv(disp, fn) ((disp)->TexCoord1dv = fn)
+#define CALL_TexCoord1f(disp, parameters) (*((disp)->TexCoord1f)) parameters
+#define GET_TexCoord1f(disp) ((disp)->TexCoord1f)
+#define SET_TexCoord1f(disp, fn) ((disp)->TexCoord1f = fn)
+#define CALL_TexCoord1fv(disp, parameters) (*((disp)->TexCoord1fv)) parameters
+#define GET_TexCoord1fv(disp) ((disp)->TexCoord1fv)
+#define SET_TexCoord1fv(disp, fn) ((disp)->TexCoord1fv = fn)
+#define CALL_TexCoord1i(disp, parameters) (*((disp)->TexCoord1i)) parameters
+#define GET_TexCoord1i(disp) ((disp)->TexCoord1i)
+#define SET_TexCoord1i(disp, fn) ((disp)->TexCoord1i = fn)
+#define CALL_TexCoord1iv(disp, parameters) (*((disp)->TexCoord1iv)) parameters
+#define GET_TexCoord1iv(disp) ((disp)->TexCoord1iv)
+#define SET_TexCoord1iv(disp, fn) ((disp)->TexCoord1iv = fn)
+#define CALL_TexCoord1s(disp, parameters) (*((disp)->TexCoord1s)) parameters
+#define GET_TexCoord1s(disp) ((disp)->TexCoord1s)
+#define SET_TexCoord1s(disp, fn) ((disp)->TexCoord1s = fn)
+#define CALL_TexCoord1sv(disp, parameters) (*((disp)->TexCoord1sv)) parameters
+#define GET_TexCoord1sv(disp) ((disp)->TexCoord1sv)
+#define SET_TexCoord1sv(disp, fn) ((disp)->TexCoord1sv = fn)
+#define CALL_TexCoord2d(disp, parameters) (*((disp)->TexCoord2d)) parameters
+#define GET_TexCoord2d(disp) ((disp)->TexCoord2d)
+#define SET_TexCoord2d(disp, fn) ((disp)->TexCoord2d = fn)
+#define CALL_TexCoord2dv(disp, parameters) (*((disp)->TexCoord2dv)) parameters
+#define GET_TexCoord2dv(disp) ((disp)->TexCoord2dv)
+#define SET_TexCoord2dv(disp, fn) ((disp)->TexCoord2dv = fn)
+#define CALL_TexCoord2f(disp, parameters) (*((disp)->TexCoord2f)) parameters
+#define GET_TexCoord2f(disp) ((disp)->TexCoord2f)
+#define SET_TexCoord2f(disp, fn) ((disp)->TexCoord2f = fn)
+#define CALL_TexCoord2fv(disp, parameters) (*((disp)->TexCoord2fv)) parameters
+#define GET_TexCoord2fv(disp) ((disp)->TexCoord2fv)
+#define SET_TexCoord2fv(disp, fn) ((disp)->TexCoord2fv = fn)
+#define CALL_TexCoord2i(disp, parameters) (*((disp)->TexCoord2i)) parameters
+#define GET_TexCoord2i(disp) ((disp)->TexCoord2i)
+#define SET_TexCoord2i(disp, fn) ((disp)->TexCoord2i = fn)
+#define CALL_TexCoord2iv(disp, parameters) (*((disp)->TexCoord2iv)) parameters
+#define GET_TexCoord2iv(disp) ((disp)->TexCoord2iv)
+#define SET_TexCoord2iv(disp, fn) ((disp)->TexCoord2iv = fn)
+#define CALL_TexCoord2s(disp, parameters) (*((disp)->TexCoord2s)) parameters
+#define GET_TexCoord2s(disp) ((disp)->TexCoord2s)
+#define SET_TexCoord2s(disp, fn) ((disp)->TexCoord2s = fn)
+#define CALL_TexCoord2sv(disp, parameters) (*((disp)->TexCoord2sv)) parameters
+#define GET_TexCoord2sv(disp) ((disp)->TexCoord2sv)
+#define SET_TexCoord2sv(disp, fn) ((disp)->TexCoord2sv = fn)
+#define CALL_TexCoord3d(disp, parameters) (*((disp)->TexCoord3d)) parameters
+#define GET_TexCoord3d(disp) ((disp)->TexCoord3d)
+#define SET_TexCoord3d(disp, fn) ((disp)->TexCoord3d = fn)
+#define CALL_TexCoord3dv(disp, parameters) (*((disp)->TexCoord3dv)) parameters
+#define GET_TexCoord3dv(disp) ((disp)->TexCoord3dv)
+#define SET_TexCoord3dv(disp, fn) ((disp)->TexCoord3dv = fn)
+#define CALL_TexCoord3f(disp, parameters) (*((disp)->TexCoord3f)) parameters
+#define GET_TexCoord3f(disp) ((disp)->TexCoord3f)
+#define SET_TexCoord3f(disp, fn) ((disp)->TexCoord3f = fn)
+#define CALL_TexCoord3fv(disp, parameters) (*((disp)->TexCoord3fv)) parameters
+#define GET_TexCoord3fv(disp) ((disp)->TexCoord3fv)
+#define SET_TexCoord3fv(disp, fn) ((disp)->TexCoord3fv = fn)
+#define CALL_TexCoord3i(disp, parameters) (*((disp)->TexCoord3i)) parameters
+#define GET_TexCoord3i(disp) ((disp)->TexCoord3i)
+#define SET_TexCoord3i(disp, fn) ((disp)->TexCoord3i = fn)
+#define CALL_TexCoord3iv(disp, parameters) (*((disp)->TexCoord3iv)) parameters
+#define GET_TexCoord3iv(disp) ((disp)->TexCoord3iv)
+#define SET_TexCoord3iv(disp, fn) ((disp)->TexCoord3iv = fn)
+#define CALL_TexCoord3s(disp, parameters) (*((disp)->TexCoord3s)) parameters
+#define GET_TexCoord3s(disp) ((disp)->TexCoord3s)
+#define SET_TexCoord3s(disp, fn) ((disp)->TexCoord3s = fn)
+#define CALL_TexCoord3sv(disp, parameters) (*((disp)->TexCoord3sv)) parameters
+#define GET_TexCoord3sv(disp) ((disp)->TexCoord3sv)
+#define SET_TexCoord3sv(disp, fn) ((disp)->TexCoord3sv = fn)
+#define CALL_TexCoord4d(disp, parameters) (*((disp)->TexCoord4d)) parameters
+#define GET_TexCoord4d(disp) ((disp)->TexCoord4d)
+#define SET_TexCoord4d(disp, fn) ((disp)->TexCoord4d = fn)
+#define CALL_TexCoord4dv(disp, parameters) (*((disp)->TexCoord4dv)) parameters
+#define GET_TexCoord4dv(disp) ((disp)->TexCoord4dv)
+#define SET_TexCoord4dv(disp, fn) ((disp)->TexCoord4dv = fn)
+#define CALL_TexCoord4f(disp, parameters) (*((disp)->TexCoord4f)) parameters
+#define GET_TexCoord4f(disp) ((disp)->TexCoord4f)
+#define SET_TexCoord4f(disp, fn) ((disp)->TexCoord4f = fn)
+#define CALL_TexCoord4fv(disp, parameters) (*((disp)->TexCoord4fv)) parameters
+#define GET_TexCoord4fv(disp) ((disp)->TexCoord4fv)
+#define SET_TexCoord4fv(disp, fn) ((disp)->TexCoord4fv = fn)
+#define CALL_TexCoord4i(disp, parameters) (*((disp)->TexCoord4i)) parameters
+#define GET_TexCoord4i(disp) ((disp)->TexCoord4i)
+#define SET_TexCoord4i(disp, fn) ((disp)->TexCoord4i = fn)
+#define CALL_TexCoord4iv(disp, parameters) (*((disp)->TexCoord4iv)) parameters
+#define GET_TexCoord4iv(disp) ((disp)->TexCoord4iv)
+#define SET_TexCoord4iv(disp, fn) ((disp)->TexCoord4iv = fn)
+#define CALL_TexCoord4s(disp, parameters) (*((disp)->TexCoord4s)) parameters
+#define GET_TexCoord4s(disp) ((disp)->TexCoord4s)
+#define SET_TexCoord4s(disp, fn) ((disp)->TexCoord4s = fn)
+#define CALL_TexCoord4sv(disp, parameters) (*((disp)->TexCoord4sv)) parameters
+#define GET_TexCoord4sv(disp) ((disp)->TexCoord4sv)
+#define SET_TexCoord4sv(disp, fn) ((disp)->TexCoord4sv = fn)
+#define CALL_Vertex2d(disp, parameters) (*((disp)->Vertex2d)) parameters
+#define GET_Vertex2d(disp) ((disp)->Vertex2d)
+#define SET_Vertex2d(disp, fn) ((disp)->Vertex2d = fn)
+#define CALL_Vertex2dv(disp, parameters) (*((disp)->Vertex2dv)) parameters
+#define GET_Vertex2dv(disp) ((disp)->Vertex2dv)
+#define SET_Vertex2dv(disp, fn) ((disp)->Vertex2dv = fn)
+#define CALL_Vertex2f(disp, parameters) (*((disp)->Vertex2f)) parameters
+#define GET_Vertex2f(disp) ((disp)->Vertex2f)
+#define SET_Vertex2f(disp, fn) ((disp)->Vertex2f = fn)
+#define CALL_Vertex2fv(disp, parameters) (*((disp)->Vertex2fv)) parameters
+#define GET_Vertex2fv(disp) ((disp)->Vertex2fv)
+#define SET_Vertex2fv(disp, fn) ((disp)->Vertex2fv = fn)
+#define CALL_Vertex2i(disp, parameters) (*((disp)->Vertex2i)) parameters
+#define GET_Vertex2i(disp) ((disp)->Vertex2i)
+#define SET_Vertex2i(disp, fn) ((disp)->Vertex2i = fn)
+#define CALL_Vertex2iv(disp, parameters) (*((disp)->Vertex2iv)) parameters
+#define GET_Vertex2iv(disp) ((disp)->Vertex2iv)
+#define SET_Vertex2iv(disp, fn) ((disp)->Vertex2iv = fn)
+#define CALL_Vertex2s(disp, parameters) (*((disp)->Vertex2s)) parameters
+#define GET_Vertex2s(disp) ((disp)->Vertex2s)
+#define SET_Vertex2s(disp, fn) ((disp)->Vertex2s = fn)
+#define CALL_Vertex2sv(disp, parameters) (*((disp)->Vertex2sv)) parameters
+#define GET_Vertex2sv(disp) ((disp)->Vertex2sv)
+#define SET_Vertex2sv(disp, fn) ((disp)->Vertex2sv = fn)
+#define CALL_Vertex3d(disp, parameters) (*((disp)->Vertex3d)) parameters
+#define GET_Vertex3d(disp) ((disp)->Vertex3d)
+#define SET_Vertex3d(disp, fn) ((disp)->Vertex3d = fn)
+#define CALL_Vertex3dv(disp, parameters) (*((disp)->Vertex3dv)) parameters
+#define GET_Vertex3dv(disp) ((disp)->Vertex3dv)
+#define SET_Vertex3dv(disp, fn) ((disp)->Vertex3dv = fn)
+#define CALL_Vertex3f(disp, parameters) (*((disp)->Vertex3f)) parameters
+#define GET_Vertex3f(disp) ((disp)->Vertex3f)
+#define SET_Vertex3f(disp, fn) ((disp)->Vertex3f = fn)
+#define CALL_Vertex3fv(disp, parameters) (*((disp)->Vertex3fv)) parameters
+#define GET_Vertex3fv(disp) ((disp)->Vertex3fv)
+#define SET_Vertex3fv(disp, fn) ((disp)->Vertex3fv = fn)
+#define CALL_Vertex3i(disp, parameters) (*((disp)->Vertex3i)) parameters
+#define GET_Vertex3i(disp) ((disp)->Vertex3i)
+#define SET_Vertex3i(disp, fn) ((disp)->Vertex3i = fn)
+#define CALL_Vertex3iv(disp, parameters) (*((disp)->Vertex3iv)) parameters
+#define GET_Vertex3iv(disp) ((disp)->Vertex3iv)
+#define SET_Vertex3iv(disp, fn) ((disp)->Vertex3iv = fn)
+#define CALL_Vertex3s(disp, parameters) (*((disp)->Vertex3s)) parameters
+#define GET_Vertex3s(disp) ((disp)->Vertex3s)
+#define SET_Vertex3s(disp, fn) ((disp)->Vertex3s = fn)
+#define CALL_Vertex3sv(disp, parameters) (*((disp)->Vertex3sv)) parameters
+#define GET_Vertex3sv(disp) ((disp)->Vertex3sv)
+#define SET_Vertex3sv(disp, fn) ((disp)->Vertex3sv = fn)
+#define CALL_Vertex4d(disp, parameters) (*((disp)->Vertex4d)) parameters
+#define GET_Vertex4d(disp) ((disp)->Vertex4d)
+#define SET_Vertex4d(disp, fn) ((disp)->Vertex4d = fn)
+#define CALL_Vertex4dv(disp, parameters) (*((disp)->Vertex4dv)) parameters
+#define GET_Vertex4dv(disp) ((disp)->Vertex4dv)
+#define SET_Vertex4dv(disp, fn) ((disp)->Vertex4dv = fn)
+#define CALL_Vertex4f(disp, parameters) (*((disp)->Vertex4f)) parameters
+#define GET_Vertex4f(disp) ((disp)->Vertex4f)
+#define SET_Vertex4f(disp, fn) ((disp)->Vertex4f = fn)
+#define CALL_Vertex4fv(disp, parameters) (*((disp)->Vertex4fv)) parameters
+#define GET_Vertex4fv(disp) ((disp)->Vertex4fv)
+#define SET_Vertex4fv(disp, fn) ((disp)->Vertex4fv = fn)
+#define CALL_Vertex4i(disp, parameters) (*((disp)->Vertex4i)) parameters
+#define GET_Vertex4i(disp) ((disp)->Vertex4i)
+#define SET_Vertex4i(disp, fn) ((disp)->Vertex4i = fn)
+#define CALL_Vertex4iv(disp, parameters) (*((disp)->Vertex4iv)) parameters
+#define GET_Vertex4iv(disp) ((disp)->Vertex4iv)
+#define SET_Vertex4iv(disp, fn) ((disp)->Vertex4iv = fn)
+#define CALL_Vertex4s(disp, parameters) (*((disp)->Vertex4s)) parameters
+#define GET_Vertex4s(disp) ((disp)->Vertex4s)
+#define SET_Vertex4s(disp, fn) ((disp)->Vertex4s = fn)
+#define CALL_Vertex4sv(disp, parameters) (*((disp)->Vertex4sv)) parameters
+#define GET_Vertex4sv(disp) ((disp)->Vertex4sv)
+#define SET_Vertex4sv(disp, fn) ((disp)->Vertex4sv = fn)
+#define CALL_ClipPlane(disp, parameters) (*((disp)->ClipPlane)) parameters
+#define GET_ClipPlane(disp) ((disp)->ClipPlane)
+#define SET_ClipPlane(disp, fn) ((disp)->ClipPlane = fn)
+#define CALL_ColorMaterial(disp, parameters) (*((disp)->ColorMaterial)) parameters
+#define GET_ColorMaterial(disp) ((disp)->ColorMaterial)
+#define SET_ColorMaterial(disp, fn) ((disp)->ColorMaterial = fn)
+#define CALL_CullFace(disp, parameters) (*((disp)->CullFace)) parameters
+#define GET_CullFace(disp) ((disp)->CullFace)
+#define SET_CullFace(disp, fn) ((disp)->CullFace = fn)
+#define CALL_Fogf(disp, parameters) (*((disp)->Fogf)) parameters
+#define GET_Fogf(disp) ((disp)->Fogf)
+#define SET_Fogf(disp, fn) ((disp)->Fogf = fn)
+#define CALL_Fogfv(disp, parameters) (*((disp)->Fogfv)) parameters
+#define GET_Fogfv(disp) ((disp)->Fogfv)
+#define SET_Fogfv(disp, fn) ((disp)->Fogfv = fn)
+#define CALL_Fogi(disp, parameters) (*((disp)->Fogi)) parameters
+#define GET_Fogi(disp) ((disp)->Fogi)
+#define SET_Fogi(disp, fn) ((disp)->Fogi = fn)
+#define CALL_Fogiv(disp, parameters) (*((disp)->Fogiv)) parameters
+#define GET_Fogiv(disp) ((disp)->Fogiv)
+#define SET_Fogiv(disp, fn) ((disp)->Fogiv = fn)
+#define CALL_FrontFace(disp, parameters) (*((disp)->FrontFace)) parameters
+#define GET_FrontFace(disp) ((disp)->FrontFace)
+#define SET_FrontFace(disp, fn) ((disp)->FrontFace = fn)
+#define CALL_Hint(disp, parameters) (*((disp)->Hint)) parameters
+#define GET_Hint(disp) ((disp)->Hint)
+#define SET_Hint(disp, fn) ((disp)->Hint = fn)
+#define CALL_Lightf(disp, parameters) (*((disp)->Lightf)) parameters
+#define GET_Lightf(disp) ((disp)->Lightf)
+#define SET_Lightf(disp, fn) ((disp)->Lightf = fn)
+#define CALL_Lightfv(disp, parameters) (*((disp)->Lightfv)) parameters
+#define GET_Lightfv(disp) ((disp)->Lightfv)
+#define SET_Lightfv(disp, fn) ((disp)->Lightfv = fn)
+#define CALL_Lighti(disp, parameters) (*((disp)->Lighti)) parameters
+#define GET_Lighti(disp) ((disp)->Lighti)
+#define SET_Lighti(disp, fn) ((disp)->Lighti = fn)
+#define CALL_Lightiv(disp, parameters) (*((disp)->Lightiv)) parameters
+#define GET_Lightiv(disp) ((disp)->Lightiv)
+#define SET_Lightiv(disp, fn) ((disp)->Lightiv = fn)
+#define CALL_LightModelf(disp, parameters) (*((disp)->LightModelf)) parameters
+#define GET_LightModelf(disp) ((disp)->LightModelf)
+#define SET_LightModelf(disp, fn) ((disp)->LightModelf = fn)
+#define CALL_LightModelfv(disp, parameters) (*((disp)->LightModelfv)) parameters
+#define GET_LightModelfv(disp) ((disp)->LightModelfv)
+#define SET_LightModelfv(disp, fn) ((disp)->LightModelfv = fn)
+#define CALL_LightModeli(disp, parameters) (*((disp)->LightModeli)) parameters
+#define GET_LightModeli(disp) ((disp)->LightModeli)
+#define SET_LightModeli(disp, fn) ((disp)->LightModeli = fn)
+#define CALL_LightModeliv(disp, parameters) (*((disp)->LightModeliv)) parameters
+#define GET_LightModeliv(disp) ((disp)->LightModeliv)
+#define SET_LightModeliv(disp, fn) ((disp)->LightModeliv = fn)
+#define CALL_LineStipple(disp, parameters) (*((disp)->LineStipple)) parameters
+#define GET_LineStipple(disp) ((disp)->LineStipple)
+#define SET_LineStipple(disp, fn) ((disp)->LineStipple = fn)
+#define CALL_LineWidth(disp, parameters) (*((disp)->LineWidth)) parameters
+#define GET_LineWidth(disp) ((disp)->LineWidth)
+#define SET_LineWidth(disp, fn) ((disp)->LineWidth = fn)
+#define CALL_Materialf(disp, parameters) (*((disp)->Materialf)) parameters
+#define GET_Materialf(disp) ((disp)->Materialf)
+#define SET_Materialf(disp, fn) ((disp)->Materialf = fn)
+#define CALL_Materialfv(disp, parameters) (*((disp)->Materialfv)) parameters
+#define GET_Materialfv(disp) ((disp)->Materialfv)
+#define SET_Materialfv(disp, fn) ((disp)->Materialfv = fn)
+#define CALL_Materiali(disp, parameters) (*((disp)->Materiali)) parameters
+#define GET_Materiali(disp) ((disp)->Materiali)
+#define SET_Materiali(disp, fn) ((disp)->Materiali = fn)
+#define CALL_Materialiv(disp, parameters) (*((disp)->Materialiv)) parameters
+#define GET_Materialiv(disp) ((disp)->Materialiv)
+#define SET_Materialiv(disp, fn) ((disp)->Materialiv = fn)
+#define CALL_PointSize(disp, parameters) (*((disp)->PointSize)) parameters
+#define GET_PointSize(disp) ((disp)->PointSize)
+#define SET_PointSize(disp, fn) ((disp)->PointSize = fn)
+#define CALL_PolygonMode(disp, parameters) (*((disp)->PolygonMode)) parameters
+#define GET_PolygonMode(disp) ((disp)->PolygonMode)
+#define SET_PolygonMode(disp, fn) ((disp)->PolygonMode = fn)
+#define CALL_PolygonStipple(disp, parameters) (*((disp)->PolygonStipple)) parameters
+#define GET_PolygonStipple(disp) ((disp)->PolygonStipple)
+#define SET_PolygonStipple(disp, fn) ((disp)->PolygonStipple = fn)
+#define CALL_Scissor(disp, parameters) (*((disp)->Scissor)) parameters
+#define GET_Scissor(disp) ((disp)->Scissor)
+#define SET_Scissor(disp, fn) ((disp)->Scissor = fn)
+#define CALL_ShadeModel(disp, parameters) (*((disp)->ShadeModel)) parameters
+#define GET_ShadeModel(disp) ((disp)->ShadeModel)
+#define SET_ShadeModel(disp, fn) ((disp)->ShadeModel = fn)
+#define CALL_TexParameterf(disp, parameters) (*((disp)->TexParameterf)) parameters
+#define GET_TexParameterf(disp) ((disp)->TexParameterf)
+#define SET_TexParameterf(disp, fn) ((disp)->TexParameterf = fn)
+#define CALL_TexParameterfv(disp, parameters) (*((disp)->TexParameterfv)) parameters
+#define GET_TexParameterfv(disp) ((disp)->TexParameterfv)
+#define SET_TexParameterfv(disp, fn) ((disp)->TexParameterfv = fn)
+#define CALL_TexParameteri(disp, parameters) (*((disp)->TexParameteri)) parameters
+#define GET_TexParameteri(disp) ((disp)->TexParameteri)
+#define SET_TexParameteri(disp, fn) ((disp)->TexParameteri = fn)
+#define CALL_TexParameteriv(disp, parameters) (*((disp)->TexParameteriv)) parameters
+#define GET_TexParameteriv(disp) ((disp)->TexParameteriv)
+#define SET_TexParameteriv(disp, fn) ((disp)->TexParameteriv = fn)
+#define CALL_TexImage1D(disp, parameters) (*((disp)->TexImage1D)) parameters
+#define GET_TexImage1D(disp) ((disp)->TexImage1D)
+#define SET_TexImage1D(disp, fn) ((disp)->TexImage1D = fn)
+#define CALL_TexImage2D(disp, parameters) (*((disp)->TexImage2D)) parameters
+#define GET_TexImage2D(disp) ((disp)->TexImage2D)
+#define SET_TexImage2D(disp, fn) ((disp)->TexImage2D = fn)
+#define CALL_TexEnvf(disp, parameters) (*((disp)->TexEnvf)) parameters
+#define GET_TexEnvf(disp) ((disp)->TexEnvf)
+#define SET_TexEnvf(disp, fn) ((disp)->TexEnvf = fn)
+#define CALL_TexEnvfv(disp, parameters) (*((disp)->TexEnvfv)) parameters
+#define GET_TexEnvfv(disp) ((disp)->TexEnvfv)
+#define SET_TexEnvfv(disp, fn) ((disp)->TexEnvfv = fn)
+#define CALL_TexEnvi(disp, parameters) (*((disp)->TexEnvi)) parameters
+#define GET_TexEnvi(disp) ((disp)->TexEnvi)
+#define SET_TexEnvi(disp, fn) ((disp)->TexEnvi = fn)
+#define CALL_TexEnviv(disp, parameters) (*((disp)->TexEnviv)) parameters
+#define GET_TexEnviv(disp) ((disp)->TexEnviv)
+#define SET_TexEnviv(disp, fn) ((disp)->TexEnviv = fn)
+#define CALL_TexGend(disp, parameters) (*((disp)->TexGend)) parameters
+#define GET_TexGend(disp) ((disp)->TexGend)
+#define SET_TexGend(disp, fn) ((disp)->TexGend = fn)
+#define CALL_TexGendv(disp, parameters) (*((disp)->TexGendv)) parameters
+#define GET_TexGendv(disp) ((disp)->TexGendv)
+#define SET_TexGendv(disp, fn) ((disp)->TexGendv = fn)
+#define CALL_TexGenf(disp, parameters) (*((disp)->TexGenf)) parameters
+#define GET_TexGenf(disp) ((disp)->TexGenf)
+#define SET_TexGenf(disp, fn) ((disp)->TexGenf = fn)
+#define CALL_TexGenfv(disp, parameters) (*((disp)->TexGenfv)) parameters
+#define GET_TexGenfv(disp) ((disp)->TexGenfv)
+#define SET_TexGenfv(disp, fn) ((disp)->TexGenfv = fn)
+#define CALL_TexGeni(disp, parameters) (*((disp)->TexGeni)) parameters
+#define GET_TexGeni(disp) ((disp)->TexGeni)
+#define SET_TexGeni(disp, fn) ((disp)->TexGeni = fn)
+#define CALL_TexGeniv(disp, parameters) (*((disp)->TexGeniv)) parameters
+#define GET_TexGeniv(disp) ((disp)->TexGeniv)
+#define SET_TexGeniv(disp, fn) ((disp)->TexGeniv = fn)
+#define CALL_FeedbackBuffer(disp, parameters) (*((disp)->FeedbackBuffer)) parameters
+#define GET_FeedbackBuffer(disp) ((disp)->FeedbackBuffer)
+#define SET_FeedbackBuffer(disp, fn) ((disp)->FeedbackBuffer = fn)
+#define CALL_SelectBuffer(disp, parameters) (*((disp)->SelectBuffer)) parameters
+#define GET_SelectBuffer(disp) ((disp)->SelectBuffer)
+#define SET_SelectBuffer(disp, fn) ((disp)->SelectBuffer = fn)
+#define CALL_RenderMode(disp, parameters) (*((disp)->RenderMode)) parameters
+#define GET_RenderMode(disp) ((disp)->RenderMode)
+#define SET_RenderMode(disp, fn) ((disp)->RenderMode = fn)
+#define CALL_InitNames(disp, parameters) (*((disp)->InitNames)) parameters
+#define GET_InitNames(disp) ((disp)->InitNames)
+#define SET_InitNames(disp, fn) ((disp)->InitNames = fn)
+#define CALL_LoadName(disp, parameters) (*((disp)->LoadName)) parameters
+#define GET_LoadName(disp) ((disp)->LoadName)
+#define SET_LoadName(disp, fn) ((disp)->LoadName = fn)
+#define CALL_PassThrough(disp, parameters) (*((disp)->PassThrough)) parameters
+#define GET_PassThrough(disp) ((disp)->PassThrough)
+#define SET_PassThrough(disp, fn) ((disp)->PassThrough = fn)
+#define CALL_PopName(disp, parameters) (*((disp)->PopName)) parameters
+#define GET_PopName(disp) ((disp)->PopName)
+#define SET_PopName(disp, fn) ((disp)->PopName = fn)
+#define CALL_PushName(disp, parameters) (*((disp)->PushName)) parameters
+#define GET_PushName(disp) ((disp)->PushName)
+#define SET_PushName(disp, fn) ((disp)->PushName = fn)
+#define CALL_DrawBuffer(disp, parameters) (*((disp)->DrawBuffer)) parameters
+#define GET_DrawBuffer(disp) ((disp)->DrawBuffer)
+#define SET_DrawBuffer(disp, fn) ((disp)->DrawBuffer = fn)
+#define CALL_Clear(disp, parameters) (*((disp)->Clear)) parameters
+#define GET_Clear(disp) ((disp)->Clear)
+#define SET_Clear(disp, fn) ((disp)->Clear = fn)
+#define CALL_ClearAccum(disp, parameters) (*((disp)->ClearAccum)) parameters
+#define GET_ClearAccum(disp) ((disp)->ClearAccum)
+#define SET_ClearAccum(disp, fn) ((disp)->ClearAccum = fn)
+#define CALL_ClearIndex(disp, parameters) (*((disp)->ClearIndex)) parameters
+#define GET_ClearIndex(disp) ((disp)->ClearIndex)
+#define SET_ClearIndex(disp, fn) ((disp)->ClearIndex = fn)
+#define CALL_ClearColor(disp, parameters) (*((disp)->ClearColor)) parameters
+#define GET_ClearColor(disp) ((disp)->ClearColor)
+#define SET_ClearColor(disp, fn) ((disp)->ClearColor = fn)
+#define CALL_ClearStencil(disp, parameters) (*((disp)->ClearStencil)) parameters
+#define GET_ClearStencil(disp) ((disp)->ClearStencil)
+#define SET_ClearStencil(disp, fn) ((disp)->ClearStencil = fn)
+#define CALL_ClearDepth(disp, parameters) (*((disp)->ClearDepth)) parameters
+#define GET_ClearDepth(disp) ((disp)->ClearDepth)
+#define SET_ClearDepth(disp, fn) ((disp)->ClearDepth = fn)
+#define CALL_StencilMask(disp, parameters) (*((disp)->StencilMask)) parameters
+#define GET_StencilMask(disp) ((disp)->StencilMask)
+#define SET_StencilMask(disp, fn) ((disp)->StencilMask = fn)
+#define CALL_ColorMask(disp, parameters) (*((disp)->ColorMask)) parameters
+#define GET_ColorMask(disp) ((disp)->ColorMask)
+#define SET_ColorMask(disp, fn) ((disp)->ColorMask = fn)
+#define CALL_DepthMask(disp, parameters) (*((disp)->DepthMask)) parameters
+#define GET_DepthMask(disp) ((disp)->DepthMask)
+#define SET_DepthMask(disp, fn) ((disp)->DepthMask = fn)
+#define CALL_IndexMask(disp, parameters) (*((disp)->IndexMask)) parameters
+#define GET_IndexMask(disp) ((disp)->IndexMask)
+#define SET_IndexMask(disp, fn) ((disp)->IndexMask = fn)
+#define CALL_Accum(disp, parameters) (*((disp)->Accum)) parameters
+#define GET_Accum(disp) ((disp)->Accum)
+#define SET_Accum(disp, fn) ((disp)->Accum = fn)
+#define CALL_Disable(disp, parameters) (*((disp)->Disable)) parameters
+#define GET_Disable(disp) ((disp)->Disable)
+#define SET_Disable(disp, fn) ((disp)->Disable = fn)
+#define CALL_Enable(disp, parameters) (*((disp)->Enable)) parameters
+#define GET_Enable(disp) ((disp)->Enable)
+#define SET_Enable(disp, fn) ((disp)->Enable = fn)
+#define CALL_Finish(disp, parameters) (*((disp)->Finish)) parameters
+#define GET_Finish(disp) ((disp)->Finish)
+#define SET_Finish(disp, fn) ((disp)->Finish = fn)
+#define CALL_Flush(disp, parameters) (*((disp)->Flush)) parameters
+#define GET_Flush(disp) ((disp)->Flush)
+#define SET_Flush(disp, fn) ((disp)->Flush = fn)
+#define CALL_PopAttrib(disp, parameters) (*((disp)->PopAttrib)) parameters
+#define GET_PopAttrib(disp) ((disp)->PopAttrib)
+#define SET_PopAttrib(disp, fn) ((disp)->PopAttrib = fn)
+#define CALL_PushAttrib(disp, parameters) (*((disp)->PushAttrib)) parameters
+#define GET_PushAttrib(disp) ((disp)->PushAttrib)
+#define SET_PushAttrib(disp, fn) ((disp)->PushAttrib = fn)
+#define CALL_Map1d(disp, parameters) (*((disp)->Map1d)) parameters
+#define GET_Map1d(disp) ((disp)->Map1d)
+#define SET_Map1d(disp, fn) ((disp)->Map1d = fn)
+#define CALL_Map1f(disp, parameters) (*((disp)->Map1f)) parameters
+#define GET_Map1f(disp) ((disp)->Map1f)
+#define SET_Map1f(disp, fn) ((disp)->Map1f = fn)
+#define CALL_Map2d(disp, parameters) (*((disp)->Map2d)) parameters
+#define GET_Map2d(disp) ((disp)->Map2d)
+#define SET_Map2d(disp, fn) ((disp)->Map2d = fn)
+#define CALL_Map2f(disp, parameters) (*((disp)->Map2f)) parameters
+#define GET_Map2f(disp) ((disp)->Map2f)
+#define SET_Map2f(disp, fn) ((disp)->Map2f = fn)
+#define CALL_MapGrid1d(disp, parameters) (*((disp)->MapGrid1d)) parameters
+#define GET_MapGrid1d(disp) ((disp)->MapGrid1d)
+#define SET_MapGrid1d(disp, fn) ((disp)->MapGrid1d = fn)
+#define CALL_MapGrid1f(disp, parameters) (*((disp)->MapGrid1f)) parameters
+#define GET_MapGrid1f(disp) ((disp)->MapGrid1f)
+#define SET_MapGrid1f(disp, fn) ((disp)->MapGrid1f = fn)
+#define CALL_MapGrid2d(disp, parameters) (*((disp)->MapGrid2d)) parameters
+#define GET_MapGrid2d(disp) ((disp)->MapGrid2d)
+#define SET_MapGrid2d(disp, fn) ((disp)->MapGrid2d = fn)
+#define CALL_MapGrid2f(disp, parameters) (*((disp)->MapGrid2f)) parameters
+#define GET_MapGrid2f(disp) ((disp)->MapGrid2f)
+#define SET_MapGrid2f(disp, fn) ((disp)->MapGrid2f = fn)
+#define CALL_EvalCoord1d(disp, parameters) (*((disp)->EvalCoord1d)) parameters
+#define GET_EvalCoord1d(disp) ((disp)->EvalCoord1d)
+#define SET_EvalCoord1d(disp, fn) ((disp)->EvalCoord1d = fn)
+#define CALL_EvalCoord1dv(disp, parameters) (*((disp)->EvalCoord1dv)) parameters
+#define GET_EvalCoord1dv(disp) ((disp)->EvalCoord1dv)
+#define SET_EvalCoord1dv(disp, fn) ((disp)->EvalCoord1dv = fn)
+#define CALL_EvalCoord1f(disp, parameters) (*((disp)->EvalCoord1f)) parameters
+#define GET_EvalCoord1f(disp) ((disp)->EvalCoord1f)
+#define SET_EvalCoord1f(disp, fn) ((disp)->EvalCoord1f = fn)
+#define CALL_EvalCoord1fv(disp, parameters) (*((disp)->EvalCoord1fv)) parameters
+#define GET_EvalCoord1fv(disp) ((disp)->EvalCoord1fv)
+#define SET_EvalCoord1fv(disp, fn) ((disp)->EvalCoord1fv = fn)
+#define CALL_EvalCoord2d(disp, parameters) (*((disp)->EvalCoord2d)) parameters
+#define GET_EvalCoord2d(disp) ((disp)->EvalCoord2d)
+#define SET_EvalCoord2d(disp, fn) ((disp)->EvalCoord2d = fn)
+#define CALL_EvalCoord2dv(disp, parameters) (*((disp)->EvalCoord2dv)) parameters
+#define GET_EvalCoord2dv(disp) ((disp)->EvalCoord2dv)
+#define SET_EvalCoord2dv(disp, fn) ((disp)->EvalCoord2dv = fn)
+#define CALL_EvalCoord2f(disp, parameters) (*((disp)->EvalCoord2f)) parameters
+#define GET_EvalCoord2f(disp) ((disp)->EvalCoord2f)
+#define SET_EvalCoord2f(disp, fn) ((disp)->EvalCoord2f = fn)
+#define CALL_EvalCoord2fv(disp, parameters) (*((disp)->EvalCoord2fv)) parameters
+#define GET_EvalCoord2fv(disp) ((disp)->EvalCoord2fv)
+#define SET_EvalCoord2fv(disp, fn) ((disp)->EvalCoord2fv = fn)
+#define CALL_EvalMesh1(disp, parameters) (*((disp)->EvalMesh1)) parameters
+#define GET_EvalMesh1(disp) ((disp)->EvalMesh1)
+#define SET_EvalMesh1(disp, fn) ((disp)->EvalMesh1 = fn)
+#define CALL_EvalPoint1(disp, parameters) (*((disp)->EvalPoint1)) parameters
+#define GET_EvalPoint1(disp) ((disp)->EvalPoint1)
+#define SET_EvalPoint1(disp, fn) ((disp)->EvalPoint1 = fn)
+#define CALL_EvalMesh2(disp, parameters) (*((disp)->EvalMesh2)) parameters
+#define GET_EvalMesh2(disp) ((disp)->EvalMesh2)
+#define SET_EvalMesh2(disp, fn) ((disp)->EvalMesh2 = fn)
+#define CALL_EvalPoint2(disp, parameters) (*((disp)->EvalPoint2)) parameters
+#define GET_EvalPoint2(disp) ((disp)->EvalPoint2)
+#define SET_EvalPoint2(disp, fn) ((disp)->EvalPoint2 = fn)
+#define CALL_AlphaFunc(disp, parameters) (*((disp)->AlphaFunc)) parameters
+#define GET_AlphaFunc(disp) ((disp)->AlphaFunc)
+#define SET_AlphaFunc(disp, fn) ((disp)->AlphaFunc = fn)
+#define CALL_BlendFunc(disp, parameters) (*((disp)->BlendFunc)) parameters
+#define GET_BlendFunc(disp) ((disp)->BlendFunc)
+#define SET_BlendFunc(disp, fn) ((disp)->BlendFunc = fn)
+#define CALL_LogicOp(disp, parameters) (*((disp)->LogicOp)) parameters
+#define GET_LogicOp(disp) ((disp)->LogicOp)
+#define SET_LogicOp(disp, fn) ((disp)->LogicOp = fn)
+#define CALL_StencilFunc(disp, parameters) (*((disp)->StencilFunc)) parameters
+#define GET_StencilFunc(disp) ((disp)->StencilFunc)
+#define SET_StencilFunc(disp, fn) ((disp)->StencilFunc = fn)
+#define CALL_StencilOp(disp, parameters) (*((disp)->StencilOp)) parameters
+#define GET_StencilOp(disp) ((disp)->StencilOp)
+#define SET_StencilOp(disp, fn) ((disp)->StencilOp = fn)
+#define CALL_DepthFunc(disp, parameters) (*((disp)->DepthFunc)) parameters
+#define GET_DepthFunc(disp) ((disp)->DepthFunc)
+#define SET_DepthFunc(disp, fn) ((disp)->DepthFunc = fn)
+#define CALL_PixelZoom(disp, parameters) (*((disp)->PixelZoom)) parameters
+#define GET_PixelZoom(disp) ((disp)->PixelZoom)
+#define SET_PixelZoom(disp, fn) ((disp)->PixelZoom = fn)
+#define CALL_PixelTransferf(disp, parameters) (*((disp)->PixelTransferf)) parameters
+#define GET_PixelTransferf(disp) ((disp)->PixelTransferf)
+#define SET_PixelTransferf(disp, fn) ((disp)->PixelTransferf = fn)
+#define CALL_PixelTransferi(disp, parameters) (*((disp)->PixelTransferi)) parameters
+#define GET_PixelTransferi(disp) ((disp)->PixelTransferi)
+#define SET_PixelTransferi(disp, fn) ((disp)->PixelTransferi = fn)
+#define CALL_PixelStoref(disp, parameters) (*((disp)->PixelStoref)) parameters
+#define GET_PixelStoref(disp) ((disp)->PixelStoref)
+#define SET_PixelStoref(disp, fn) ((disp)->PixelStoref = fn)
+#define CALL_PixelStorei(disp, parameters) (*((disp)->PixelStorei)) parameters
+#define GET_PixelStorei(disp) ((disp)->PixelStorei)
+#define SET_PixelStorei(disp, fn) ((disp)->PixelStorei = fn)
+#define CALL_PixelMapfv(disp, parameters) (*((disp)->PixelMapfv)) parameters
+#define GET_PixelMapfv(disp) ((disp)->PixelMapfv)
+#define SET_PixelMapfv(disp, fn) ((disp)->PixelMapfv = fn)
+#define CALL_PixelMapuiv(disp, parameters) (*((disp)->PixelMapuiv)) parameters
+#define GET_PixelMapuiv(disp) ((disp)->PixelMapuiv)
+#define SET_PixelMapuiv(disp, fn) ((disp)->PixelMapuiv = fn)
+#define CALL_PixelMapusv(disp, parameters) (*((disp)->PixelMapusv)) parameters
+#define GET_PixelMapusv(disp) ((disp)->PixelMapusv)
+#define SET_PixelMapusv(disp, fn) ((disp)->PixelMapusv = fn)
+#define CALL_ReadBuffer(disp, parameters) (*((disp)->ReadBuffer)) parameters
+#define GET_ReadBuffer(disp) ((disp)->ReadBuffer)
+#define SET_ReadBuffer(disp, fn) ((disp)->ReadBuffer = fn)
+#define CALL_CopyPixels(disp, parameters) (*((disp)->CopyPixels)) parameters
+#define GET_CopyPixels(disp) ((disp)->CopyPixels)
+#define SET_CopyPixels(disp, fn) ((disp)->CopyPixels = fn)
+#define CALL_ReadPixels(disp, parameters) (*((disp)->ReadPixels)) parameters
+#define GET_ReadPixels(disp) ((disp)->ReadPixels)
+#define SET_ReadPixels(disp, fn) ((disp)->ReadPixels = fn)
+#define CALL_DrawPixels(disp, parameters) (*((disp)->DrawPixels)) parameters
+#define GET_DrawPixels(disp) ((disp)->DrawPixels)
+#define SET_DrawPixels(disp, fn) ((disp)->DrawPixels = fn)
+#define CALL_GetBooleanv(disp, parameters) (*((disp)->GetBooleanv)) parameters
+#define GET_GetBooleanv(disp) ((disp)->GetBooleanv)
+#define SET_GetBooleanv(disp, fn) ((disp)->GetBooleanv = fn)
+#define CALL_GetClipPlane(disp, parameters) (*((disp)->GetClipPlane)) parameters
+#define GET_GetClipPlane(disp) ((disp)->GetClipPlane)
+#define SET_GetClipPlane(disp, fn) ((disp)->GetClipPlane = fn)
+#define CALL_GetDoublev(disp, parameters) (*((disp)->GetDoublev)) parameters
+#define GET_GetDoublev(disp) ((disp)->GetDoublev)
+#define SET_GetDoublev(disp, fn) ((disp)->GetDoublev = fn)
+#define CALL_GetError(disp, parameters) (*((disp)->GetError)) parameters
+#define GET_GetError(disp) ((disp)->GetError)
+#define SET_GetError(disp, fn) ((disp)->GetError = fn)
+#define CALL_GetFloatv(disp, parameters) (*((disp)->GetFloatv)) parameters
+#define GET_GetFloatv(disp) ((disp)->GetFloatv)
+#define SET_GetFloatv(disp, fn) ((disp)->GetFloatv = fn)
+#define CALL_GetIntegerv(disp, parameters) (*((disp)->GetIntegerv)) parameters
+#define GET_GetIntegerv(disp) ((disp)->GetIntegerv)
+#define SET_GetIntegerv(disp, fn) ((disp)->GetIntegerv = fn)
+#define CALL_GetLightfv(disp, parameters) (*((disp)->GetLightfv)) parameters
+#define GET_GetLightfv(disp) ((disp)->GetLightfv)
+#define SET_GetLightfv(disp, fn) ((disp)->GetLightfv = fn)
+#define CALL_GetLightiv(disp, parameters) (*((disp)->GetLightiv)) parameters
+#define GET_GetLightiv(disp) ((disp)->GetLightiv)
+#define SET_GetLightiv(disp, fn) ((disp)->GetLightiv = fn)
+#define CALL_GetMapdv(disp, parameters) (*((disp)->GetMapdv)) parameters
+#define GET_GetMapdv(disp) ((disp)->GetMapdv)
+#define SET_GetMapdv(disp, fn) ((disp)->GetMapdv = fn)
+#define CALL_GetMapfv(disp, parameters) (*((disp)->GetMapfv)) parameters
+#define GET_GetMapfv(disp) ((disp)->GetMapfv)
+#define SET_GetMapfv(disp, fn) ((disp)->GetMapfv = fn)
+#define CALL_GetMapiv(disp, parameters) (*((disp)->GetMapiv)) parameters
+#define GET_GetMapiv(disp) ((disp)->GetMapiv)
+#define SET_GetMapiv(disp, fn) ((disp)->GetMapiv = fn)
+#define CALL_GetMaterialfv(disp, parameters) (*((disp)->GetMaterialfv)) parameters
+#define GET_GetMaterialfv(disp) ((disp)->GetMaterialfv)
+#define SET_GetMaterialfv(disp, fn) ((disp)->GetMaterialfv = fn)
+#define CALL_GetMaterialiv(disp, parameters) (*((disp)->GetMaterialiv)) parameters
+#define GET_GetMaterialiv(disp) ((disp)->GetMaterialiv)
+#define SET_GetMaterialiv(disp, fn) ((disp)->GetMaterialiv = fn)
+#define CALL_GetPixelMapfv(disp, parameters) (*((disp)->GetPixelMapfv)) parameters
+#define GET_GetPixelMapfv(disp) ((disp)->GetPixelMapfv)
+#define SET_GetPixelMapfv(disp, fn) ((disp)->GetPixelMapfv = fn)
+#define CALL_GetPixelMapuiv(disp, parameters) (*((disp)->GetPixelMapuiv)) parameters
+#define GET_GetPixelMapuiv(disp) ((disp)->GetPixelMapuiv)
+#define SET_GetPixelMapuiv(disp, fn) ((disp)->GetPixelMapuiv = fn)
+#define CALL_GetPixelMapusv(disp, parameters) (*((disp)->GetPixelMapusv)) parameters
+#define GET_GetPixelMapusv(disp) ((disp)->GetPixelMapusv)
+#define SET_GetPixelMapusv(disp, fn) ((disp)->GetPixelMapusv = fn)
+#define CALL_GetPolygonStipple(disp, parameters) (*((disp)->GetPolygonStipple)) parameters
+#define GET_GetPolygonStipple(disp) ((disp)->GetPolygonStipple)
+#define SET_GetPolygonStipple(disp, fn) ((disp)->GetPolygonStipple = fn)
+#define CALL_GetString(disp, parameters) (*((disp)->GetString)) parameters
+#define GET_GetString(disp) ((disp)->GetString)
+#define SET_GetString(disp, fn) ((disp)->GetString = fn)
+#define CALL_GetTexEnvfv(disp, parameters) (*((disp)->GetTexEnvfv)) parameters
+#define GET_GetTexEnvfv(disp) ((disp)->GetTexEnvfv)
+#define SET_GetTexEnvfv(disp, fn) ((disp)->GetTexEnvfv = fn)
+#define CALL_GetTexEnviv(disp, parameters) (*((disp)->GetTexEnviv)) parameters
+#define GET_GetTexEnviv(disp) ((disp)->GetTexEnviv)
+#define SET_GetTexEnviv(disp, fn) ((disp)->GetTexEnviv = fn)
+#define CALL_GetTexGendv(disp, parameters) (*((disp)->GetTexGendv)) parameters
+#define GET_GetTexGendv(disp) ((disp)->GetTexGendv)
+#define SET_GetTexGendv(disp, fn) ((disp)->GetTexGendv = fn)
+#define CALL_GetTexGenfv(disp, parameters) (*((disp)->GetTexGenfv)) parameters
+#define GET_GetTexGenfv(disp) ((disp)->GetTexGenfv)
+#define SET_GetTexGenfv(disp, fn) ((disp)->GetTexGenfv = fn)
+#define CALL_GetTexGeniv(disp, parameters) (*((disp)->GetTexGeniv)) parameters
+#define GET_GetTexGeniv(disp) ((disp)->GetTexGeniv)
+#define SET_GetTexGeniv(disp, fn) ((disp)->GetTexGeniv = fn)
+#define CALL_GetTexImage(disp, parameters) (*((disp)->GetTexImage)) parameters
+#define GET_GetTexImage(disp) ((disp)->GetTexImage)
+#define SET_GetTexImage(disp, fn) ((disp)->GetTexImage = fn)
+#define CALL_GetTexParameterfv(disp, parameters) (*((disp)->GetTexParameterfv)) parameters
+#define GET_GetTexParameterfv(disp) ((disp)->GetTexParameterfv)
+#define SET_GetTexParameterfv(disp, fn) ((disp)->GetTexParameterfv = fn)
+#define CALL_GetTexParameteriv(disp, parameters) (*((disp)->GetTexParameteriv)) parameters
+#define GET_GetTexParameteriv(disp) ((disp)->GetTexParameteriv)
+#define SET_GetTexParameteriv(disp, fn) ((disp)->GetTexParameteriv = fn)
+#define CALL_GetTexLevelParameterfv(disp, parameters) (*((disp)->GetTexLevelParameterfv)) parameters
+#define GET_GetTexLevelParameterfv(disp) ((disp)->GetTexLevelParameterfv)
+#define SET_GetTexLevelParameterfv(disp, fn) ((disp)->GetTexLevelParameterfv = fn)
+#define CALL_GetTexLevelParameteriv(disp, parameters) (*((disp)->GetTexLevelParameteriv)) parameters
+#define GET_GetTexLevelParameteriv(disp) ((disp)->GetTexLevelParameteriv)
+#define SET_GetTexLevelParameteriv(disp, fn) ((disp)->GetTexLevelParameteriv = fn)
+#define CALL_IsEnabled(disp, parameters) (*((disp)->IsEnabled)) parameters
+#define GET_IsEnabled(disp) ((disp)->IsEnabled)
+#define SET_IsEnabled(disp, fn) ((disp)->IsEnabled = fn)
+#define CALL_IsList(disp, parameters) (*((disp)->IsList)) parameters
+#define GET_IsList(disp) ((disp)->IsList)
+#define SET_IsList(disp, fn) ((disp)->IsList = fn)
+#define CALL_DepthRange(disp, parameters) (*((disp)->DepthRange)) parameters
+#define GET_DepthRange(disp) ((disp)->DepthRange)
+#define SET_DepthRange(disp, fn) ((disp)->DepthRange = fn)
+#define CALL_Frustum(disp, parameters) (*((disp)->Frustum)) parameters
+#define GET_Frustum(disp) ((disp)->Frustum)
+#define SET_Frustum(disp, fn) ((disp)->Frustum = fn)
+#define CALL_LoadIdentity(disp, parameters) (*((disp)->LoadIdentity)) parameters
+#define GET_LoadIdentity(disp) ((disp)->LoadIdentity)
+#define SET_LoadIdentity(disp, fn) ((disp)->LoadIdentity = fn)
+#define CALL_LoadMatrixf(disp, parameters) (*((disp)->LoadMatrixf)) parameters
+#define GET_LoadMatrixf(disp) ((disp)->LoadMatrixf)
+#define SET_LoadMatrixf(disp, fn) ((disp)->LoadMatrixf = fn)
+#define CALL_LoadMatrixd(disp, parameters) (*((disp)->LoadMatrixd)) parameters
+#define GET_LoadMatrixd(disp) ((disp)->LoadMatrixd)
+#define SET_LoadMatrixd(disp, fn) ((disp)->LoadMatrixd = fn)
+#define CALL_MatrixMode(disp, parameters) (*((disp)->MatrixMode)) parameters
+#define GET_MatrixMode(disp) ((disp)->MatrixMode)
+#define SET_MatrixMode(disp, fn) ((disp)->MatrixMode = fn)
+#define CALL_MultMatrixf(disp, parameters) (*((disp)->MultMatrixf)) parameters
+#define GET_MultMatrixf(disp) ((disp)->MultMatrixf)
+#define SET_MultMatrixf(disp, fn) ((disp)->MultMatrixf = fn)
+#define CALL_MultMatrixd(disp, parameters) (*((disp)->MultMatrixd)) parameters
+#define GET_MultMatrixd(disp) ((disp)->MultMatrixd)
+#define SET_MultMatrixd(disp, fn) ((disp)->MultMatrixd = fn)
+#define CALL_Ortho(disp, parameters) (*((disp)->Ortho)) parameters
+#define GET_Ortho(disp) ((disp)->Ortho)
+#define SET_Ortho(disp, fn) ((disp)->Ortho = fn)
+#define CALL_PopMatrix(disp, parameters) (*((disp)->PopMatrix)) parameters
+#define GET_PopMatrix(disp) ((disp)->PopMatrix)
+#define SET_PopMatrix(disp, fn) ((disp)->PopMatrix = fn)
+#define CALL_PushMatrix(disp, parameters) (*((disp)->PushMatrix)) parameters
+#define GET_PushMatrix(disp) ((disp)->PushMatrix)
+#define SET_PushMatrix(disp, fn) ((disp)->PushMatrix = fn)
+#define CALL_Rotated(disp, parameters) (*((disp)->Rotated)) parameters
+#define GET_Rotated(disp) ((disp)->Rotated)
+#define SET_Rotated(disp, fn) ((disp)->Rotated = fn)
+#define CALL_Rotatef(disp, parameters) (*((disp)->Rotatef)) parameters
+#define GET_Rotatef(disp) ((disp)->Rotatef)
+#define SET_Rotatef(disp, fn) ((disp)->Rotatef = fn)
+#define CALL_Scaled(disp, parameters) (*((disp)->Scaled)) parameters
+#define GET_Scaled(disp) ((disp)->Scaled)
+#define SET_Scaled(disp, fn) ((disp)->Scaled = fn)
+#define CALL_Scalef(disp, parameters) (*((disp)->Scalef)) parameters
+#define GET_Scalef(disp) ((disp)->Scalef)
+#define SET_Scalef(disp, fn) ((disp)->Scalef = fn)
+#define CALL_Translated(disp, parameters) (*((disp)->Translated)) parameters
+#define GET_Translated(disp) ((disp)->Translated)
+#define SET_Translated(disp, fn) ((disp)->Translated = fn)
+#define CALL_Translatef(disp, parameters) (*((disp)->Translatef)) parameters
+#define GET_Translatef(disp) ((disp)->Translatef)
+#define SET_Translatef(disp, fn) ((disp)->Translatef = fn)
+#define CALL_Viewport(disp, parameters) (*((disp)->Viewport)) parameters
+#define GET_Viewport(disp) ((disp)->Viewport)
+#define SET_Viewport(disp, fn) ((disp)->Viewport = fn)
+#define CALL_ArrayElement(disp, parameters) (*((disp)->ArrayElement)) parameters
+#define GET_ArrayElement(disp) ((disp)->ArrayElement)
+#define SET_ArrayElement(disp, fn) ((disp)->ArrayElement = fn)
+#define CALL_BindTexture(disp, parameters) (*((disp)->BindTexture)) parameters
+#define GET_BindTexture(disp) ((disp)->BindTexture)
+#define SET_BindTexture(disp, fn) ((disp)->BindTexture = fn)
+#define CALL_ColorPointer(disp, parameters) (*((disp)->ColorPointer)) parameters
+#define GET_ColorPointer(disp) ((disp)->ColorPointer)
+#define SET_ColorPointer(disp, fn) ((disp)->ColorPointer = fn)
+#define CALL_DisableClientState(disp, parameters) (*((disp)->DisableClientState)) parameters
+#define GET_DisableClientState(disp) ((disp)->DisableClientState)
+#define SET_DisableClientState(disp, fn) ((disp)->DisableClientState = fn)
+#define CALL_DrawArrays(disp, parameters) (*((disp)->DrawArrays)) parameters
+#define GET_DrawArrays(disp) ((disp)->DrawArrays)
+#define SET_DrawArrays(disp, fn) ((disp)->DrawArrays = fn)
+#define CALL_DrawElements(disp, parameters) (*((disp)->DrawElements)) parameters
+#define GET_DrawElements(disp) ((disp)->DrawElements)
+#define SET_DrawElements(disp, fn) ((disp)->DrawElements = fn)
+#define CALL_EdgeFlagPointer(disp, parameters) (*((disp)->EdgeFlagPointer)) parameters
+#define GET_EdgeFlagPointer(disp) ((disp)->EdgeFlagPointer)
+#define SET_EdgeFlagPointer(disp, fn) ((disp)->EdgeFlagPointer = fn)
+#define CALL_EnableClientState(disp, parameters) (*((disp)->EnableClientState)) parameters
+#define GET_EnableClientState(disp) ((disp)->EnableClientState)
+#define SET_EnableClientState(disp, fn) ((disp)->EnableClientState = fn)
+#define CALL_IndexPointer(disp, parameters) (*((disp)->IndexPointer)) parameters
+#define GET_IndexPointer(disp) ((disp)->IndexPointer)
+#define SET_IndexPointer(disp, fn) ((disp)->IndexPointer = fn)
+#define CALL_Indexub(disp, parameters) (*((disp)->Indexub)) parameters
+#define GET_Indexub(disp) ((disp)->Indexub)
+#define SET_Indexub(disp, fn) ((disp)->Indexub = fn)
+#define CALL_Indexubv(disp, parameters) (*((disp)->Indexubv)) parameters
+#define GET_Indexubv(disp) ((disp)->Indexubv)
+#define SET_Indexubv(disp, fn) ((disp)->Indexubv = fn)
+#define CALL_InterleavedArrays(disp, parameters) (*((disp)->InterleavedArrays)) parameters
+#define GET_InterleavedArrays(disp) ((disp)->InterleavedArrays)
+#define SET_InterleavedArrays(disp, fn) ((disp)->InterleavedArrays = fn)
+#define CALL_NormalPointer(disp, parameters) (*((disp)->NormalPointer)) parameters
+#define GET_NormalPointer(disp) ((disp)->NormalPointer)
+#define SET_NormalPointer(disp, fn) ((disp)->NormalPointer = fn)
+#define CALL_PolygonOffset(disp, parameters) (*((disp)->PolygonOffset)) parameters
+#define GET_PolygonOffset(disp) ((disp)->PolygonOffset)
+#define SET_PolygonOffset(disp, fn) ((disp)->PolygonOffset = fn)
+#define CALL_TexCoordPointer(disp, parameters) (*((disp)->TexCoordPointer)) parameters
+#define GET_TexCoordPointer(disp) ((disp)->TexCoordPointer)
+#define SET_TexCoordPointer(disp, fn) ((disp)->TexCoordPointer = fn)
+#define CALL_VertexPointer(disp, parameters) (*((disp)->VertexPointer)) parameters
+#define GET_VertexPointer(disp) ((disp)->VertexPointer)
+#define SET_VertexPointer(disp, fn) ((disp)->VertexPointer = fn)
+#define CALL_AreTexturesResident(disp, parameters) (*((disp)->AreTexturesResident)) parameters
+#define GET_AreTexturesResident(disp) ((disp)->AreTexturesResident)
+#define SET_AreTexturesResident(disp, fn) ((disp)->AreTexturesResident = fn)
+#define CALL_CopyTexImage1D(disp, parameters) (*((disp)->CopyTexImage1D)) parameters
+#define GET_CopyTexImage1D(disp) ((disp)->CopyTexImage1D)
+#define SET_CopyTexImage1D(disp, fn) ((disp)->CopyTexImage1D = fn)
+#define CALL_CopyTexImage2D(disp, parameters) (*((disp)->CopyTexImage2D)) parameters
+#define GET_CopyTexImage2D(disp) ((disp)->CopyTexImage2D)
+#define SET_CopyTexImage2D(disp, fn) ((disp)->CopyTexImage2D = fn)
+#define CALL_CopyTexSubImage1D(disp, parameters) (*((disp)->CopyTexSubImage1D)) parameters
+#define GET_CopyTexSubImage1D(disp) ((disp)->CopyTexSubImage1D)
+#define SET_CopyTexSubImage1D(disp, fn) ((disp)->CopyTexSubImage1D = fn)
+#define CALL_CopyTexSubImage2D(disp, parameters) (*((disp)->CopyTexSubImage2D)) parameters
+#define GET_CopyTexSubImage2D(disp) ((disp)->CopyTexSubImage2D)
+#define SET_CopyTexSubImage2D(disp, fn) ((disp)->CopyTexSubImage2D = fn)
+#define CALL_DeleteTextures(disp, parameters) (*((disp)->DeleteTextures)) parameters
+#define GET_DeleteTextures(disp) ((disp)->DeleteTextures)
+#define SET_DeleteTextures(disp, fn) ((disp)->DeleteTextures = fn)
+#define CALL_GenTextures(disp, parameters) (*((disp)->GenTextures)) parameters
+#define GET_GenTextures(disp) ((disp)->GenTextures)
+#define SET_GenTextures(disp, fn) ((disp)->GenTextures = fn)
+#define CALL_GetPointerv(disp, parameters) (*((disp)->GetPointerv)) parameters
+#define GET_GetPointerv(disp) ((disp)->GetPointerv)
+#define SET_GetPointerv(disp, fn) ((disp)->GetPointerv = fn)
+#define CALL_IsTexture(disp, parameters) (*((disp)->IsTexture)) parameters
+#define GET_IsTexture(disp) ((disp)->IsTexture)
+#define SET_IsTexture(disp, fn) ((disp)->IsTexture = fn)
+#define CALL_PrioritizeTextures(disp, parameters) (*((disp)->PrioritizeTextures)) parameters
+#define GET_PrioritizeTextures(disp) ((disp)->PrioritizeTextures)
+#define SET_PrioritizeTextures(disp, fn) ((disp)->PrioritizeTextures = fn)
+#define CALL_TexSubImage1D(disp, parameters) (*((disp)->TexSubImage1D)) parameters
+#define GET_TexSubImage1D(disp) ((disp)->TexSubImage1D)
+#define SET_TexSubImage1D(disp, fn) ((disp)->TexSubImage1D = fn)
+#define CALL_TexSubImage2D(disp, parameters) (*((disp)->TexSubImage2D)) parameters
+#define GET_TexSubImage2D(disp) ((disp)->TexSubImage2D)
+#define SET_TexSubImage2D(disp, fn) ((disp)->TexSubImage2D = fn)
+#define CALL_PopClientAttrib(disp, parameters) (*((disp)->PopClientAttrib)) parameters
+#define GET_PopClientAttrib(disp) ((disp)->PopClientAttrib)
+#define SET_PopClientAttrib(disp, fn) ((disp)->PopClientAttrib = fn)
+#define CALL_PushClientAttrib(disp, parameters) (*((disp)->PushClientAttrib)) parameters
+#define GET_PushClientAttrib(disp) ((disp)->PushClientAttrib)
+#define SET_PushClientAttrib(disp, fn) ((disp)->PushClientAttrib = fn)
+#define CALL_BlendColor(disp, parameters) (*((disp)->BlendColor)) parameters
+#define GET_BlendColor(disp) ((disp)->BlendColor)
+#define SET_BlendColor(disp, fn) ((disp)->BlendColor = fn)
+#define CALL_BlendEquation(disp, parameters) (*((disp)->BlendEquation)) parameters
+#define GET_BlendEquation(disp) ((disp)->BlendEquation)
+#define SET_BlendEquation(disp, fn) ((disp)->BlendEquation = fn)
+#define CALL_DrawRangeElements(disp, parameters) (*((disp)->DrawRangeElements)) parameters
+#define GET_DrawRangeElements(disp) ((disp)->DrawRangeElements)
+#define SET_DrawRangeElements(disp, fn) ((disp)->DrawRangeElements = fn)
+#define CALL_ColorTable(disp, parameters) (*((disp)->ColorTable)) parameters
+#define GET_ColorTable(disp) ((disp)->ColorTable)
+#define SET_ColorTable(disp, fn) ((disp)->ColorTable = fn)
+#define CALL_ColorTableParameterfv(disp, parameters) (*((disp)->ColorTableParameterfv)) parameters
+#define GET_ColorTableParameterfv(disp) ((disp)->ColorTableParameterfv)
+#define SET_ColorTableParameterfv(disp, fn) ((disp)->ColorTableParameterfv = fn)
+#define CALL_ColorTableParameteriv(disp, parameters) (*((disp)->ColorTableParameteriv)) parameters
+#define GET_ColorTableParameteriv(disp) ((disp)->ColorTableParameteriv)
+#define SET_ColorTableParameteriv(disp, fn) ((disp)->ColorTableParameteriv = fn)
+#define CALL_CopyColorTable(disp, parameters) (*((disp)->CopyColorTable)) parameters
+#define GET_CopyColorTable(disp) ((disp)->CopyColorTable)
+#define SET_CopyColorTable(disp, fn) ((disp)->CopyColorTable = fn)
+#define CALL_GetColorTable(disp, parameters) (*((disp)->GetColorTable)) parameters
+#define GET_GetColorTable(disp) ((disp)->GetColorTable)
+#define SET_GetColorTable(disp, fn) ((disp)->GetColorTable = fn)
+#define CALL_GetColorTableParameterfv(disp, parameters) (*((disp)->GetColorTableParameterfv)) parameters
+#define GET_GetColorTableParameterfv(disp) ((disp)->GetColorTableParameterfv)
+#define SET_GetColorTableParameterfv(disp, fn) ((disp)->GetColorTableParameterfv = fn)
+#define CALL_GetColorTableParameteriv(disp, parameters) (*((disp)->GetColorTableParameteriv)) parameters
+#define GET_GetColorTableParameteriv(disp) ((disp)->GetColorTableParameteriv)
+#define SET_GetColorTableParameteriv(disp, fn) ((disp)->GetColorTableParameteriv = fn)
+#define CALL_ColorSubTable(disp, parameters) (*((disp)->ColorSubTable)) parameters
+#define GET_ColorSubTable(disp) ((disp)->ColorSubTable)
+#define SET_ColorSubTable(disp, fn) ((disp)->ColorSubTable = fn)
+#define CALL_CopyColorSubTable(disp, parameters) (*((disp)->CopyColorSubTable)) parameters
+#define GET_CopyColorSubTable(disp) ((disp)->CopyColorSubTable)
+#define SET_CopyColorSubTable(disp, fn) ((disp)->CopyColorSubTable = fn)
+#define CALL_ConvolutionFilter1D(disp, parameters) (*((disp)->ConvolutionFilter1D)) parameters
+#define GET_ConvolutionFilter1D(disp) ((disp)->ConvolutionFilter1D)
+#define SET_ConvolutionFilter1D(disp, fn) ((disp)->ConvolutionFilter1D = fn)
+#define CALL_ConvolutionFilter2D(disp, parameters) (*((disp)->ConvolutionFilter2D)) parameters
+#define GET_ConvolutionFilter2D(disp) ((disp)->ConvolutionFilter2D)
+#define SET_ConvolutionFilter2D(disp, fn) ((disp)->ConvolutionFilter2D = fn)
+#define CALL_ConvolutionParameterf(disp, parameters) (*((disp)->ConvolutionParameterf)) parameters
+#define GET_ConvolutionParameterf(disp) ((disp)->ConvolutionParameterf)
+#define SET_ConvolutionParameterf(disp, fn) ((disp)->ConvolutionParameterf = fn)
+#define CALL_ConvolutionParameterfv(disp, parameters) (*((disp)->ConvolutionParameterfv)) parameters
+#define GET_ConvolutionParameterfv(disp) ((disp)->ConvolutionParameterfv)
+#define SET_ConvolutionParameterfv(disp, fn) ((disp)->ConvolutionParameterfv = fn)
+#define CALL_ConvolutionParameteri(disp, parameters) (*((disp)->ConvolutionParameteri)) parameters
+#define GET_ConvolutionParameteri(disp) ((disp)->ConvolutionParameteri)
+#define SET_ConvolutionParameteri(disp, fn) ((disp)->ConvolutionParameteri = fn)
+#define CALL_ConvolutionParameteriv(disp, parameters) (*((disp)->ConvolutionParameteriv)) parameters
+#define GET_ConvolutionParameteriv(disp) ((disp)->ConvolutionParameteriv)
+#define SET_ConvolutionParameteriv(disp, fn) ((disp)->ConvolutionParameteriv = fn)
+#define CALL_CopyConvolutionFilter1D(disp, parameters) (*((disp)->CopyConvolutionFilter1D)) parameters
+#define GET_CopyConvolutionFilter1D(disp) ((disp)->CopyConvolutionFilter1D)
+#define SET_CopyConvolutionFilter1D(disp, fn) ((disp)->CopyConvolutionFilter1D = fn)
+#define CALL_CopyConvolutionFilter2D(disp, parameters) (*((disp)->CopyConvolutionFilter2D)) parameters
+#define GET_CopyConvolutionFilter2D(disp) ((disp)->CopyConvolutionFilter2D)
+#define SET_CopyConvolutionFilter2D(disp, fn) ((disp)->CopyConvolutionFilter2D = fn)
+#define CALL_GetConvolutionFilter(disp, parameters) (*((disp)->GetConvolutionFilter)) parameters
+#define GET_GetConvolutionFilter(disp) ((disp)->GetConvolutionFilter)
+#define SET_GetConvolutionFilter(disp, fn) ((disp)->GetConvolutionFilter = fn)
+#define CALL_GetConvolutionParameterfv(disp, parameters) (*((disp)->GetConvolutionParameterfv)) parameters
+#define GET_GetConvolutionParameterfv(disp) ((disp)->GetConvolutionParameterfv)
+#define SET_GetConvolutionParameterfv(disp, fn) ((disp)->GetConvolutionParameterfv = fn)
+#define CALL_GetConvolutionParameteriv(disp, parameters) (*((disp)->GetConvolutionParameteriv)) parameters
+#define GET_GetConvolutionParameteriv(disp) ((disp)->GetConvolutionParameteriv)
+#define SET_GetConvolutionParameteriv(disp, fn) ((disp)->GetConvolutionParameteriv = fn)
+#define CALL_GetSeparableFilter(disp, parameters) (*((disp)->GetSeparableFilter)) parameters
+#define GET_GetSeparableFilter(disp) ((disp)->GetSeparableFilter)
+#define SET_GetSeparableFilter(disp, fn) ((disp)->GetSeparableFilter = fn)
+#define CALL_SeparableFilter2D(disp, parameters) (*((disp)->SeparableFilter2D)) parameters
+#define GET_SeparableFilter2D(disp) ((disp)->SeparableFilter2D)
+#define SET_SeparableFilter2D(disp, fn) ((disp)->SeparableFilter2D = fn)
+#define CALL_GetHistogram(disp, parameters) (*((disp)->GetHistogram)) parameters
+#define GET_GetHistogram(disp) ((disp)->GetHistogram)
+#define SET_GetHistogram(disp, fn) ((disp)->GetHistogram = fn)
+#define CALL_GetHistogramParameterfv(disp, parameters) (*((disp)->GetHistogramParameterfv)) parameters
+#define GET_GetHistogramParameterfv(disp) ((disp)->GetHistogramParameterfv)
+#define SET_GetHistogramParameterfv(disp, fn) ((disp)->GetHistogramParameterfv = fn)
+#define CALL_GetHistogramParameteriv(disp, parameters) (*((disp)->GetHistogramParameteriv)) parameters
+#define GET_GetHistogramParameteriv(disp) ((disp)->GetHistogramParameteriv)
+#define SET_GetHistogramParameteriv(disp, fn) ((disp)->GetHistogramParameteriv = fn)
+#define CALL_GetMinmax(disp, parameters) (*((disp)->GetMinmax)) parameters
+#define GET_GetMinmax(disp) ((disp)->GetMinmax)
+#define SET_GetMinmax(disp, fn) ((disp)->GetMinmax = fn)
+#define CALL_GetMinmaxParameterfv(disp, parameters) (*((disp)->GetMinmaxParameterfv)) parameters
+#define GET_GetMinmaxParameterfv(disp) ((disp)->GetMinmaxParameterfv)
+#define SET_GetMinmaxParameterfv(disp, fn) ((disp)->GetMinmaxParameterfv = fn)
+#define CALL_GetMinmaxParameteriv(disp, parameters) (*((disp)->GetMinmaxParameteriv)) parameters
+#define GET_GetMinmaxParameteriv(disp) ((disp)->GetMinmaxParameteriv)
+#define SET_GetMinmaxParameteriv(disp, fn) ((disp)->GetMinmaxParameteriv = fn)
+#define CALL_Histogram(disp, parameters) (*((disp)->Histogram)) parameters
+#define GET_Histogram(disp) ((disp)->Histogram)
+#define SET_Histogram(disp, fn) ((disp)->Histogram = fn)
+#define CALL_Minmax(disp, parameters) (*((disp)->Minmax)) parameters
+#define GET_Minmax(disp) ((disp)->Minmax)
+#define SET_Minmax(disp, fn) ((disp)->Minmax = fn)
+#define CALL_ResetHistogram(disp, parameters) (*((disp)->ResetHistogram)) parameters
+#define GET_ResetHistogram(disp) ((disp)->ResetHistogram)
+#define SET_ResetHistogram(disp, fn) ((disp)->ResetHistogram = fn)
+#define CALL_ResetMinmax(disp, parameters) (*((disp)->ResetMinmax)) parameters
+#define GET_ResetMinmax(disp) ((disp)->ResetMinmax)
+#define SET_ResetMinmax(disp, fn) ((disp)->ResetMinmax = fn)
+#define CALL_TexImage3D(disp, parameters) (*((disp)->TexImage3D)) parameters
+#define GET_TexImage3D(disp) ((disp)->TexImage3D)
+#define SET_TexImage3D(disp, fn) ((disp)->TexImage3D = fn)
+#define CALL_TexSubImage3D(disp, parameters) (*((disp)->TexSubImage3D)) parameters
+#define GET_TexSubImage3D(disp) ((disp)->TexSubImage3D)
+#define SET_TexSubImage3D(disp, fn) ((disp)->TexSubImage3D = fn)
+#define CALL_CopyTexSubImage3D(disp, parameters) (*((disp)->CopyTexSubImage3D)) parameters
+#define GET_CopyTexSubImage3D(disp) ((disp)->CopyTexSubImage3D)
+#define SET_CopyTexSubImage3D(disp, fn) ((disp)->CopyTexSubImage3D = fn)
+#define CALL_ActiveTextureARB(disp, parameters) (*((disp)->ActiveTextureARB)) parameters
+#define GET_ActiveTextureARB(disp) ((disp)->ActiveTextureARB)
+#define SET_ActiveTextureARB(disp, fn) ((disp)->ActiveTextureARB = fn)
+#define CALL_ClientActiveTextureARB(disp, parameters) (*((disp)->ClientActiveTextureARB)) parameters
+#define GET_ClientActiveTextureARB(disp) ((disp)->ClientActiveTextureARB)
+#define SET_ClientActiveTextureARB(disp, fn) ((disp)->ClientActiveTextureARB = fn)
+#define CALL_MultiTexCoord1dARB(disp, parameters) (*((disp)->MultiTexCoord1dARB)) parameters
+#define GET_MultiTexCoord1dARB(disp) ((disp)->MultiTexCoord1dARB)
+#define SET_MultiTexCoord1dARB(disp, fn) ((disp)->MultiTexCoord1dARB = fn)
+#define CALL_MultiTexCoord1dvARB(disp, parameters) (*((disp)->MultiTexCoord1dvARB)) parameters
+#define GET_MultiTexCoord1dvARB(disp) ((disp)->MultiTexCoord1dvARB)
+#define SET_MultiTexCoord1dvARB(disp, fn) ((disp)->MultiTexCoord1dvARB = fn)
+#define CALL_MultiTexCoord1fARB(disp, parameters) (*((disp)->MultiTexCoord1fARB)) parameters
+#define GET_MultiTexCoord1fARB(disp) ((disp)->MultiTexCoord1fARB)
+#define SET_MultiTexCoord1fARB(disp, fn) ((disp)->MultiTexCoord1fARB = fn)
+#define CALL_MultiTexCoord1fvARB(disp, parameters) (*((disp)->MultiTexCoord1fvARB)) parameters
+#define GET_MultiTexCoord1fvARB(disp) ((disp)->MultiTexCoord1fvARB)
+#define SET_MultiTexCoord1fvARB(disp, fn) ((disp)->MultiTexCoord1fvARB = fn)
+#define CALL_MultiTexCoord1iARB(disp, parameters) (*((disp)->MultiTexCoord1iARB)) parameters
+#define GET_MultiTexCoord1iARB(disp) ((disp)->MultiTexCoord1iARB)
+#define SET_MultiTexCoord1iARB(disp, fn) ((disp)->MultiTexCoord1iARB = fn)
+#define CALL_MultiTexCoord1ivARB(disp, parameters) (*((disp)->MultiTexCoord1ivARB)) parameters
+#define GET_MultiTexCoord1ivARB(disp) ((disp)->MultiTexCoord1ivARB)
+#define SET_MultiTexCoord1ivARB(disp, fn) ((disp)->MultiTexCoord1ivARB = fn)
+#define CALL_MultiTexCoord1sARB(disp, parameters) (*((disp)->MultiTexCoord1sARB)) parameters
+#define GET_MultiTexCoord1sARB(disp) ((disp)->MultiTexCoord1sARB)
+#define SET_MultiTexCoord1sARB(disp, fn) ((disp)->MultiTexCoord1sARB = fn)
+#define CALL_MultiTexCoord1svARB(disp, parameters) (*((disp)->MultiTexCoord1svARB)) parameters
+#define GET_MultiTexCoord1svARB(disp) ((disp)->MultiTexCoord1svARB)
+#define SET_MultiTexCoord1svARB(disp, fn) ((disp)->MultiTexCoord1svARB = fn)
+#define CALL_MultiTexCoord2dARB(disp, parameters) (*((disp)->MultiTexCoord2dARB)) parameters
+#define GET_MultiTexCoord2dARB(disp) ((disp)->MultiTexCoord2dARB)
+#define SET_MultiTexCoord2dARB(disp, fn) ((disp)->MultiTexCoord2dARB = fn)
+#define CALL_MultiTexCoord2dvARB(disp, parameters) (*((disp)->MultiTexCoord2dvARB)) parameters
+#define GET_MultiTexCoord2dvARB(disp) ((disp)->MultiTexCoord2dvARB)
+#define SET_MultiTexCoord2dvARB(disp, fn) ((disp)->MultiTexCoord2dvARB = fn)
+#define CALL_MultiTexCoord2fARB(disp, parameters) (*((disp)->MultiTexCoord2fARB)) parameters
+#define GET_MultiTexCoord2fARB(disp) ((disp)->MultiTexCoord2fARB)
+#define SET_MultiTexCoord2fARB(disp, fn) ((disp)->MultiTexCoord2fARB = fn)
+#define CALL_MultiTexCoord2fvARB(disp, parameters) (*((disp)->MultiTexCoord2fvARB)) parameters
+#define GET_MultiTexCoord2fvARB(disp) ((disp)->MultiTexCoord2fvARB)
+#define SET_MultiTexCoord2fvARB(disp, fn) ((disp)->MultiTexCoord2fvARB = fn)
+#define CALL_MultiTexCoord2iARB(disp, parameters) (*((disp)->MultiTexCoord2iARB)) parameters
+#define GET_MultiTexCoord2iARB(disp) ((disp)->MultiTexCoord2iARB)
+#define SET_MultiTexCoord2iARB(disp, fn) ((disp)->MultiTexCoord2iARB = fn)
+#define CALL_MultiTexCoord2ivARB(disp, parameters) (*((disp)->MultiTexCoord2ivARB)) parameters
+#define GET_MultiTexCoord2ivARB(disp) ((disp)->MultiTexCoord2ivARB)
+#define SET_MultiTexCoord2ivARB(disp, fn) ((disp)->MultiTexCoord2ivARB = fn)
+#define CALL_MultiTexCoord2sARB(disp, parameters) (*((disp)->MultiTexCoord2sARB)) parameters
+#define GET_MultiTexCoord2sARB(disp) ((disp)->MultiTexCoord2sARB)
+#define SET_MultiTexCoord2sARB(disp, fn) ((disp)->MultiTexCoord2sARB = fn)
+#define CALL_MultiTexCoord2svARB(disp, parameters) (*((disp)->MultiTexCoord2svARB)) parameters
+#define GET_MultiTexCoord2svARB(disp) ((disp)->MultiTexCoord2svARB)
+#define SET_MultiTexCoord2svARB(disp, fn) ((disp)->MultiTexCoord2svARB = fn)
+#define CALL_MultiTexCoord3dARB(disp, parameters) (*((disp)->MultiTexCoord3dARB)) parameters
+#define GET_MultiTexCoord3dARB(disp) ((disp)->MultiTexCoord3dARB)
+#define SET_MultiTexCoord3dARB(disp, fn) ((disp)->MultiTexCoord3dARB = fn)
+#define CALL_MultiTexCoord3dvARB(disp, parameters) (*((disp)->MultiTexCoord3dvARB)) parameters
+#define GET_MultiTexCoord3dvARB(disp) ((disp)->MultiTexCoord3dvARB)
+#define SET_MultiTexCoord3dvARB(disp, fn) ((disp)->MultiTexCoord3dvARB = fn)
+#define CALL_MultiTexCoord3fARB(disp, parameters) (*((disp)->MultiTexCoord3fARB)) parameters
+#define GET_MultiTexCoord3fARB(disp) ((disp)->MultiTexCoord3fARB)
+#define SET_MultiTexCoord3fARB(disp, fn) ((disp)->MultiTexCoord3fARB = fn)
+#define CALL_MultiTexCoord3fvARB(disp, parameters) (*((disp)->MultiTexCoord3fvARB)) parameters
+#define GET_MultiTexCoord3fvARB(disp) ((disp)->MultiTexCoord3fvARB)
+#define SET_MultiTexCoord3fvARB(disp, fn) ((disp)->MultiTexCoord3fvARB = fn)
+#define CALL_MultiTexCoord3iARB(disp, parameters) (*((disp)->MultiTexCoord3iARB)) parameters
+#define GET_MultiTexCoord3iARB(disp) ((disp)->MultiTexCoord3iARB)
+#define SET_MultiTexCoord3iARB(disp, fn) ((disp)->MultiTexCoord3iARB = fn)
+#define CALL_MultiTexCoord3ivARB(disp, parameters) (*((disp)->MultiTexCoord3ivARB)) parameters
+#define GET_MultiTexCoord3ivARB(disp) ((disp)->MultiTexCoord3ivARB)
+#define SET_MultiTexCoord3ivARB(disp, fn) ((disp)->MultiTexCoord3ivARB = fn)
+#define CALL_MultiTexCoord3sARB(disp, parameters) (*((disp)->MultiTexCoord3sARB)) parameters
+#define GET_MultiTexCoord3sARB(disp) ((disp)->MultiTexCoord3sARB)
+#define SET_MultiTexCoord3sARB(disp, fn) ((disp)->MultiTexCoord3sARB = fn)
+#define CALL_MultiTexCoord3svARB(disp, parameters) (*((disp)->MultiTexCoord3svARB)) parameters
+#define GET_MultiTexCoord3svARB(disp) ((disp)->MultiTexCoord3svARB)
+#define SET_MultiTexCoord3svARB(disp, fn) ((disp)->MultiTexCoord3svARB = fn)
+#define CALL_MultiTexCoord4dARB(disp, parameters) (*((disp)->MultiTexCoord4dARB)) parameters
+#define GET_MultiTexCoord4dARB(disp) ((disp)->MultiTexCoord4dARB)
+#define SET_MultiTexCoord4dARB(disp, fn) ((disp)->MultiTexCoord4dARB = fn)
+#define CALL_MultiTexCoord4dvARB(disp, parameters) (*((disp)->MultiTexCoord4dvARB)) parameters
+#define GET_MultiTexCoord4dvARB(disp) ((disp)->MultiTexCoord4dvARB)
+#define SET_MultiTexCoord4dvARB(disp, fn) ((disp)->MultiTexCoord4dvARB = fn)
+#define CALL_MultiTexCoord4fARB(disp, parameters) (*((disp)->MultiTexCoord4fARB)) parameters
+#define GET_MultiTexCoord4fARB(disp) ((disp)->MultiTexCoord4fARB)
+#define SET_MultiTexCoord4fARB(disp, fn) ((disp)->MultiTexCoord4fARB = fn)
+#define CALL_MultiTexCoord4fvARB(disp, parameters) (*((disp)->MultiTexCoord4fvARB)) parameters
+#define GET_MultiTexCoord4fvARB(disp) ((disp)->MultiTexCoord4fvARB)
+#define SET_MultiTexCoord4fvARB(disp, fn) ((disp)->MultiTexCoord4fvARB = fn)
+#define CALL_MultiTexCoord4iARB(disp, parameters) (*((disp)->MultiTexCoord4iARB)) parameters
+#define GET_MultiTexCoord4iARB(disp) ((disp)->MultiTexCoord4iARB)
+#define SET_MultiTexCoord4iARB(disp, fn) ((disp)->MultiTexCoord4iARB = fn)
+#define CALL_MultiTexCoord4ivARB(disp, parameters) (*((disp)->MultiTexCoord4ivARB)) parameters
+#define GET_MultiTexCoord4ivARB(disp) ((disp)->MultiTexCoord4ivARB)
+#define SET_MultiTexCoord4ivARB(disp, fn) ((disp)->MultiTexCoord4ivARB = fn)
+#define CALL_MultiTexCoord4sARB(disp, parameters) (*((disp)->MultiTexCoord4sARB)) parameters
+#define GET_MultiTexCoord4sARB(disp) ((disp)->MultiTexCoord4sARB)
+#define SET_MultiTexCoord4sARB(disp, fn) ((disp)->MultiTexCoord4sARB = fn)
+#define CALL_MultiTexCoord4svARB(disp, parameters) (*((disp)->MultiTexCoord4svARB)) parameters
+#define GET_MultiTexCoord4svARB(disp) ((disp)->MultiTexCoord4svARB)
+#define SET_MultiTexCoord4svARB(disp, fn) ((disp)->MultiTexCoord4svARB = fn)
+
+#if !defined(_GLAPI_USE_REMAP_TABLE)
+
+#define CALL_AttachShader(disp, parameters) (*((disp)->AttachShader)) parameters
+#define GET_AttachShader(disp) ((disp)->AttachShader)
+#define SET_AttachShader(disp, fn) ((disp)->AttachShader = fn)
+#define CALL_CreateProgram(disp, parameters) (*((disp)->CreateProgram)) parameters
+#define GET_CreateProgram(disp) ((disp)->CreateProgram)
+#define SET_CreateProgram(disp, fn) ((disp)->CreateProgram = fn)
+#define CALL_CreateShader(disp, parameters) (*((disp)->CreateShader)) parameters
+#define GET_CreateShader(disp) ((disp)->CreateShader)
+#define SET_CreateShader(disp, fn) ((disp)->CreateShader = fn)
+#define CALL_DeleteProgram(disp, parameters) (*((disp)->DeleteProgram)) parameters
+#define GET_DeleteProgram(disp) ((disp)->DeleteProgram)
+#define SET_DeleteProgram(disp, fn) ((disp)->DeleteProgram = fn)
+#define CALL_DeleteShader(disp, parameters) (*((disp)->DeleteShader)) parameters
+#define GET_DeleteShader(disp) ((disp)->DeleteShader)
+#define SET_DeleteShader(disp, fn) ((disp)->DeleteShader = fn)
+#define CALL_DetachShader(disp, parameters) (*((disp)->DetachShader)) parameters
+#define GET_DetachShader(disp) ((disp)->DetachShader)
+#define SET_DetachShader(disp, fn) ((disp)->DetachShader = fn)
+#define CALL_GetAttachedShaders(disp, parameters) (*((disp)->GetAttachedShaders)) parameters
+#define GET_GetAttachedShaders(disp) ((disp)->GetAttachedShaders)
+#define SET_GetAttachedShaders(disp, fn) ((disp)->GetAttachedShaders = fn)
+#define CALL_GetProgramInfoLog(disp, parameters) (*((disp)->GetProgramInfoLog)) parameters
+#define GET_GetProgramInfoLog(disp) ((disp)->GetProgramInfoLog)
+#define SET_GetProgramInfoLog(disp, fn) ((disp)->GetProgramInfoLog = fn)
+#define CALL_GetProgramiv(disp, parameters) (*((disp)->GetProgramiv)) parameters
+#define GET_GetProgramiv(disp) ((disp)->GetProgramiv)
+#define SET_GetProgramiv(disp, fn) ((disp)->GetProgramiv = fn)
+#define CALL_GetShaderInfoLog(disp, parameters) (*((disp)->GetShaderInfoLog)) parameters
+#define GET_GetShaderInfoLog(disp) ((disp)->GetShaderInfoLog)
+#define SET_GetShaderInfoLog(disp, fn) ((disp)->GetShaderInfoLog = fn)
+#define CALL_GetShaderiv(disp, parameters) (*((disp)->GetShaderiv)) parameters
+#define GET_GetShaderiv(disp) ((disp)->GetShaderiv)
+#define SET_GetShaderiv(disp, fn) ((disp)->GetShaderiv = fn)
+#define CALL_IsProgram(disp, parameters) (*((disp)->IsProgram)) parameters
+#define GET_IsProgram(disp) ((disp)->IsProgram)
+#define SET_IsProgram(disp, fn) ((disp)->IsProgram = fn)
+#define CALL_IsShader(disp, parameters) (*((disp)->IsShader)) parameters
+#define GET_IsShader(disp) ((disp)->IsShader)
+#define SET_IsShader(disp, fn) ((disp)->IsShader = fn)
+#define CALL_StencilFuncSeparate(disp, parameters) (*((disp)->StencilFuncSeparate)) parameters
+#define GET_StencilFuncSeparate(disp) ((disp)->StencilFuncSeparate)
+#define SET_StencilFuncSeparate(disp, fn) ((disp)->StencilFuncSeparate = fn)
+#define CALL_StencilMaskSeparate(disp, parameters) (*((disp)->StencilMaskSeparate)) parameters
+#define GET_StencilMaskSeparate(disp) ((disp)->StencilMaskSeparate)
+#define SET_StencilMaskSeparate(disp, fn) ((disp)->StencilMaskSeparate = fn)
+#define CALL_StencilOpSeparate(disp, parameters) (*((disp)->StencilOpSeparate)) parameters
+#define GET_StencilOpSeparate(disp) ((disp)->StencilOpSeparate)
+#define SET_StencilOpSeparate(disp, fn) ((disp)->StencilOpSeparate = fn)
+#define CALL_UniformMatrix2x3fv(disp, parameters) (*((disp)->UniformMatrix2x3fv)) parameters
+#define GET_UniformMatrix2x3fv(disp) ((disp)->UniformMatrix2x3fv)
+#define SET_UniformMatrix2x3fv(disp, fn) ((disp)->UniformMatrix2x3fv = fn)
+#define CALL_UniformMatrix2x4fv(disp, parameters) (*((disp)->UniformMatrix2x4fv)) parameters
+#define GET_UniformMatrix2x4fv(disp) ((disp)->UniformMatrix2x4fv)
+#define SET_UniformMatrix2x4fv(disp, fn) ((disp)->UniformMatrix2x4fv = fn)
+#define CALL_UniformMatrix3x2fv(disp, parameters) (*((disp)->UniformMatrix3x2fv)) parameters
+#define GET_UniformMatrix3x2fv(disp) ((disp)->UniformMatrix3x2fv)
+#define SET_UniformMatrix3x2fv(disp, fn) ((disp)->UniformMatrix3x2fv = fn)
+#define CALL_UniformMatrix3x4fv(disp, parameters) (*((disp)->UniformMatrix3x4fv)) parameters
+#define GET_UniformMatrix3x4fv(disp) ((disp)->UniformMatrix3x4fv)
+#define SET_UniformMatrix3x4fv(disp, fn) ((disp)->UniformMatrix3x4fv = fn)
+#define CALL_UniformMatrix4x2fv(disp, parameters) (*((disp)->UniformMatrix4x2fv)) parameters
+#define GET_UniformMatrix4x2fv(disp) ((disp)->UniformMatrix4x2fv)
+#define SET_UniformMatrix4x2fv(disp, fn) ((disp)->UniformMatrix4x2fv = fn)
+#define CALL_UniformMatrix4x3fv(disp, parameters) (*((disp)->UniformMatrix4x3fv)) parameters
+#define GET_UniformMatrix4x3fv(disp) ((disp)->UniformMatrix4x3fv)
+#define SET_UniformMatrix4x3fv(disp, fn) ((disp)->UniformMatrix4x3fv = fn)
+#define CALL_DrawArraysInstanced(disp, parameters) (*((disp)->DrawArraysInstanced)) parameters
+#define GET_DrawArraysInstanced(disp) ((disp)->DrawArraysInstanced)
+#define SET_DrawArraysInstanced(disp, fn) ((disp)->DrawArraysInstanced = fn)
+#define CALL_DrawElementsInstanced(disp, parameters) (*((disp)->DrawElementsInstanced)) parameters
+#define GET_DrawElementsInstanced(disp) ((disp)->DrawElementsInstanced)
+#define SET_DrawElementsInstanced(disp, fn) ((disp)->DrawElementsInstanced = fn)
+#define CALL_LoadTransposeMatrixdARB(disp, parameters) (*((disp)->LoadTransposeMatrixdARB)) parameters
+#define GET_LoadTransposeMatrixdARB(disp) ((disp)->LoadTransposeMatrixdARB)
+#define SET_LoadTransposeMatrixdARB(disp, fn) ((disp)->LoadTransposeMatrixdARB = fn)
+#define CALL_LoadTransposeMatrixfARB(disp, parameters) (*((disp)->LoadTransposeMatrixfARB)) parameters
+#define GET_LoadTransposeMatrixfARB(disp) ((disp)->LoadTransposeMatrixfARB)
+#define SET_LoadTransposeMatrixfARB(disp, fn) ((disp)->LoadTransposeMatrixfARB = fn)
+#define CALL_MultTransposeMatrixdARB(disp, parameters) (*((disp)->MultTransposeMatrixdARB)) parameters
+#define GET_MultTransposeMatrixdARB(disp) ((disp)->MultTransposeMatrixdARB)
+#define SET_MultTransposeMatrixdARB(disp, fn) ((disp)->MultTransposeMatrixdARB = fn)
+#define CALL_MultTransposeMatrixfARB(disp, parameters) (*((disp)->MultTransposeMatrixfARB)) parameters
+#define GET_MultTransposeMatrixfARB(disp) ((disp)->MultTransposeMatrixfARB)
+#define SET_MultTransposeMatrixfARB(disp, fn) ((disp)->MultTransposeMatrixfARB = fn)
+#define CALL_SampleCoverageARB(disp, parameters) (*((disp)->SampleCoverageARB)) parameters
+#define GET_SampleCoverageARB(disp) ((disp)->SampleCoverageARB)
+#define SET_SampleCoverageARB(disp, fn) ((disp)->SampleCoverageARB = fn)
+#define CALL_CompressedTexImage1DARB(disp, parameters) (*((disp)->CompressedTexImage1DARB)) parameters
+#define GET_CompressedTexImage1DARB(disp) ((disp)->CompressedTexImage1DARB)
+#define SET_CompressedTexImage1DARB(disp, fn) ((disp)->CompressedTexImage1DARB = fn)
+#define CALL_CompressedTexImage2DARB(disp, parameters) (*((disp)->CompressedTexImage2DARB)) parameters
+#define GET_CompressedTexImage2DARB(disp) ((disp)->CompressedTexImage2DARB)
+#define SET_CompressedTexImage2DARB(disp, fn) ((disp)->CompressedTexImage2DARB = fn)
+#define CALL_CompressedTexImage3DARB(disp, parameters) (*((disp)->CompressedTexImage3DARB)) parameters
+#define GET_CompressedTexImage3DARB(disp) ((disp)->CompressedTexImage3DARB)
+#define SET_CompressedTexImage3DARB(disp, fn) ((disp)->CompressedTexImage3DARB = fn)
+#define CALL_CompressedTexSubImage1DARB(disp, parameters) (*((disp)->CompressedTexSubImage1DARB)) parameters
+#define GET_CompressedTexSubImage1DARB(disp) ((disp)->CompressedTexSubImage1DARB)
+#define SET_CompressedTexSubImage1DARB(disp, fn) ((disp)->CompressedTexSubImage1DARB = fn)
+#define CALL_CompressedTexSubImage2DARB(disp, parameters) (*((disp)->CompressedTexSubImage2DARB)) parameters
+#define GET_CompressedTexSubImage2DARB(disp) ((disp)->CompressedTexSubImage2DARB)
+#define SET_CompressedTexSubImage2DARB(disp, fn) ((disp)->CompressedTexSubImage2DARB = fn)
+#define CALL_CompressedTexSubImage3DARB(disp, parameters) (*((disp)->CompressedTexSubImage3DARB)) parameters
+#define GET_CompressedTexSubImage3DARB(disp) ((disp)->CompressedTexSubImage3DARB)
+#define SET_CompressedTexSubImage3DARB(disp, fn) ((disp)->CompressedTexSubImage3DARB = fn)
+#define CALL_GetCompressedTexImageARB(disp, parameters) (*((disp)->GetCompressedTexImageARB)) parameters
+#define GET_GetCompressedTexImageARB(disp) ((disp)->GetCompressedTexImageARB)
+#define SET_GetCompressedTexImageARB(disp, fn) ((disp)->GetCompressedTexImageARB = fn)
+#define CALL_DisableVertexAttribArrayARB(disp, parameters) (*((disp)->DisableVertexAttribArrayARB)) parameters
+#define GET_DisableVertexAttribArrayARB(disp) ((disp)->DisableVertexAttribArrayARB)
+#define SET_DisableVertexAttribArrayARB(disp, fn) ((disp)->DisableVertexAttribArrayARB = fn)
+#define CALL_EnableVertexAttribArrayARB(disp, parameters) (*((disp)->EnableVertexAttribArrayARB)) parameters
+#define GET_EnableVertexAttribArrayARB(disp) ((disp)->EnableVertexAttribArrayARB)
+#define SET_EnableVertexAttribArrayARB(disp, fn) ((disp)->EnableVertexAttribArrayARB = fn)
+#define CALL_GetProgramEnvParameterdvARB(disp, parameters) (*((disp)->GetProgramEnvParameterdvARB)) parameters
+#define GET_GetProgramEnvParameterdvARB(disp) ((disp)->GetProgramEnvParameterdvARB)
+#define SET_GetProgramEnvParameterdvARB(disp, fn) ((disp)->GetProgramEnvParameterdvARB = fn)
+#define CALL_GetProgramEnvParameterfvARB(disp, parameters) (*((disp)->GetProgramEnvParameterfvARB)) parameters
+#define GET_GetProgramEnvParameterfvARB(disp) ((disp)->GetProgramEnvParameterfvARB)
+#define SET_GetProgramEnvParameterfvARB(disp, fn) ((disp)->GetProgramEnvParameterfvARB = fn)
+#define CALL_GetProgramLocalParameterdvARB(disp, parameters) (*((disp)->GetProgramLocalParameterdvARB)) parameters
+#define GET_GetProgramLocalParameterdvARB(disp) ((disp)->GetProgramLocalParameterdvARB)
+#define SET_GetProgramLocalParameterdvARB(disp, fn) ((disp)->GetProgramLocalParameterdvARB = fn)
+#define CALL_GetProgramLocalParameterfvARB(disp, parameters) (*((disp)->GetProgramLocalParameterfvARB)) parameters
+#define GET_GetProgramLocalParameterfvARB(disp) ((disp)->GetProgramLocalParameterfvARB)
+#define SET_GetProgramLocalParameterfvARB(disp, fn) ((disp)->GetProgramLocalParameterfvARB = fn)
+#define CALL_GetProgramStringARB(disp, parameters) (*((disp)->GetProgramStringARB)) parameters
+#define GET_GetProgramStringARB(disp) ((disp)->GetProgramStringARB)
+#define SET_GetProgramStringARB(disp, fn) ((disp)->GetProgramStringARB = fn)
+#define CALL_GetProgramivARB(disp, parameters) (*((disp)->GetProgramivARB)) parameters
+#define GET_GetProgramivARB(disp) ((disp)->GetProgramivARB)
+#define SET_GetProgramivARB(disp, fn) ((disp)->GetProgramivARB = fn)
+#define CALL_GetVertexAttribdvARB(disp, parameters) (*((disp)->GetVertexAttribdvARB)) parameters
+#define GET_GetVertexAttribdvARB(disp) ((disp)->GetVertexAttribdvARB)
+#define SET_GetVertexAttribdvARB(disp, fn) ((disp)->GetVertexAttribdvARB = fn)
+#define CALL_GetVertexAttribfvARB(disp, parameters) (*((disp)->GetVertexAttribfvARB)) parameters
+#define GET_GetVertexAttribfvARB(disp) ((disp)->GetVertexAttribfvARB)
+#define SET_GetVertexAttribfvARB(disp, fn) ((disp)->GetVertexAttribfvARB = fn)
+#define CALL_GetVertexAttribivARB(disp, parameters) (*((disp)->GetVertexAttribivARB)) parameters
+#define GET_GetVertexAttribivARB(disp) ((disp)->GetVertexAttribivARB)
+#define SET_GetVertexAttribivARB(disp, fn) ((disp)->GetVertexAttribivARB = fn)
+#define CALL_ProgramEnvParameter4dARB(disp, parameters) (*((disp)->ProgramEnvParameter4dARB)) parameters
+#define GET_ProgramEnvParameter4dARB(disp) ((disp)->ProgramEnvParameter4dARB)
+#define SET_ProgramEnvParameter4dARB(disp, fn) ((disp)->ProgramEnvParameter4dARB = fn)
+#define CALL_ProgramEnvParameter4dvARB(disp, parameters) (*((disp)->ProgramEnvParameter4dvARB)) parameters
+#define GET_ProgramEnvParameter4dvARB(disp) ((disp)->ProgramEnvParameter4dvARB)
+#define SET_ProgramEnvParameter4dvARB(disp, fn) ((disp)->ProgramEnvParameter4dvARB = fn)
+#define CALL_ProgramEnvParameter4fARB(disp, parameters) (*((disp)->ProgramEnvParameter4fARB)) parameters
+#define GET_ProgramEnvParameter4fARB(disp) ((disp)->ProgramEnvParameter4fARB)
+#define SET_ProgramEnvParameter4fARB(disp, fn) ((disp)->ProgramEnvParameter4fARB = fn)
+#define CALL_ProgramEnvParameter4fvARB(disp, parameters) (*((disp)->ProgramEnvParameter4fvARB)) parameters
+#define GET_ProgramEnvParameter4fvARB(disp) ((disp)->ProgramEnvParameter4fvARB)
+#define SET_ProgramEnvParameter4fvARB(disp, fn) ((disp)->ProgramEnvParameter4fvARB = fn)
+#define CALL_ProgramLocalParameter4dARB(disp, parameters) (*((disp)->ProgramLocalParameter4dARB)) parameters
+#define GET_ProgramLocalParameter4dARB(disp) ((disp)->ProgramLocalParameter4dARB)
+#define SET_ProgramLocalParameter4dARB(disp, fn) ((disp)->ProgramLocalParameter4dARB = fn)
+#define CALL_ProgramLocalParameter4dvARB(disp, parameters) (*((disp)->ProgramLocalParameter4dvARB)) parameters
+#define GET_ProgramLocalParameter4dvARB(disp) ((disp)->ProgramLocalParameter4dvARB)
+#define SET_ProgramLocalParameter4dvARB(disp, fn) ((disp)->ProgramLocalParameter4dvARB = fn)
+#define CALL_ProgramLocalParameter4fARB(disp, parameters) (*((disp)->ProgramLocalParameter4fARB)) parameters
+#define GET_ProgramLocalParameter4fARB(disp) ((disp)->ProgramLocalParameter4fARB)
+#define SET_ProgramLocalParameter4fARB(disp, fn) ((disp)->ProgramLocalParameter4fARB = fn)
+#define CALL_ProgramLocalParameter4fvARB(disp, parameters) (*((disp)->ProgramLocalParameter4fvARB)) parameters
+#define GET_ProgramLocalParameter4fvARB(disp) ((disp)->ProgramLocalParameter4fvARB)
+#define SET_ProgramLocalParameter4fvARB(disp, fn) ((disp)->ProgramLocalParameter4fvARB = fn)
+#define CALL_ProgramStringARB(disp, parameters) (*((disp)->ProgramStringARB)) parameters
+#define GET_ProgramStringARB(disp) ((disp)->ProgramStringARB)
+#define SET_ProgramStringARB(disp, fn) ((disp)->ProgramStringARB = fn)
+#define CALL_VertexAttrib1dARB(disp, parameters) (*((disp)->VertexAttrib1dARB)) parameters
+#define GET_VertexAttrib1dARB(disp) ((disp)->VertexAttrib1dARB)
+#define SET_VertexAttrib1dARB(disp, fn) ((disp)->VertexAttrib1dARB = fn)
+#define CALL_VertexAttrib1dvARB(disp, parameters) (*((disp)->VertexAttrib1dvARB)) parameters
+#define GET_VertexAttrib1dvARB(disp) ((disp)->VertexAttrib1dvARB)
+#define SET_VertexAttrib1dvARB(disp, fn) ((disp)->VertexAttrib1dvARB = fn)
+#define CALL_VertexAttrib1fARB(disp, parameters) (*((disp)->VertexAttrib1fARB)) parameters
+#define GET_VertexAttrib1fARB(disp) ((disp)->VertexAttrib1fARB)
+#define SET_VertexAttrib1fARB(disp, fn) ((disp)->VertexAttrib1fARB = fn)
+#define CALL_VertexAttrib1fvARB(disp, parameters) (*((disp)->VertexAttrib1fvARB)) parameters
+#define GET_VertexAttrib1fvARB(disp) ((disp)->VertexAttrib1fvARB)
+#define SET_VertexAttrib1fvARB(disp, fn) ((disp)->VertexAttrib1fvARB = fn)
+#define CALL_VertexAttrib1sARB(disp, parameters) (*((disp)->VertexAttrib1sARB)) parameters
+#define GET_VertexAttrib1sARB(disp) ((disp)->VertexAttrib1sARB)
+#define SET_VertexAttrib1sARB(disp, fn) ((disp)->VertexAttrib1sARB = fn)
+#define CALL_VertexAttrib1svARB(disp, parameters) (*((disp)->VertexAttrib1svARB)) parameters
+#define GET_VertexAttrib1svARB(disp) ((disp)->VertexAttrib1svARB)
+#define SET_VertexAttrib1svARB(disp, fn) ((disp)->VertexAttrib1svARB = fn)
+#define CALL_VertexAttrib2dARB(disp, parameters) (*((disp)->VertexAttrib2dARB)) parameters
+#define GET_VertexAttrib2dARB(disp) ((disp)->VertexAttrib2dARB)
+#define SET_VertexAttrib2dARB(disp, fn) ((disp)->VertexAttrib2dARB = fn)
+#define CALL_VertexAttrib2dvARB(disp, parameters) (*((disp)->VertexAttrib2dvARB)) parameters
+#define GET_VertexAttrib2dvARB(disp) ((disp)->VertexAttrib2dvARB)
+#define SET_VertexAttrib2dvARB(disp, fn) ((disp)->VertexAttrib2dvARB = fn)
+#define CALL_VertexAttrib2fARB(disp, parameters) (*((disp)->VertexAttrib2fARB)) parameters
+#define GET_VertexAttrib2fARB(disp) ((disp)->VertexAttrib2fARB)
+#define SET_VertexAttrib2fARB(disp, fn) ((disp)->VertexAttrib2fARB = fn)
+#define CALL_VertexAttrib2fvARB(disp, parameters) (*((disp)->VertexAttrib2fvARB)) parameters
+#define GET_VertexAttrib2fvARB(disp) ((disp)->VertexAttrib2fvARB)
+#define SET_VertexAttrib2fvARB(disp, fn) ((disp)->VertexAttrib2fvARB = fn)
+#define CALL_VertexAttrib2sARB(disp, parameters) (*((disp)->VertexAttrib2sARB)) parameters
+#define GET_VertexAttrib2sARB(disp) ((disp)->VertexAttrib2sARB)
+#define SET_VertexAttrib2sARB(disp, fn) ((disp)->VertexAttrib2sARB = fn)
+#define CALL_VertexAttrib2svARB(disp, parameters) (*((disp)->VertexAttrib2svARB)) parameters
+#define GET_VertexAttrib2svARB(disp) ((disp)->VertexAttrib2svARB)
+#define SET_VertexAttrib2svARB(disp, fn) ((disp)->VertexAttrib2svARB = fn)
+#define CALL_VertexAttrib3dARB(disp, parameters) (*((disp)->VertexAttrib3dARB)) parameters
+#define GET_VertexAttrib3dARB(disp) ((disp)->VertexAttrib3dARB)
+#define SET_VertexAttrib3dARB(disp, fn) ((disp)->VertexAttrib3dARB = fn)
+#define CALL_VertexAttrib3dvARB(disp, parameters) (*((disp)->VertexAttrib3dvARB)) parameters
+#define GET_VertexAttrib3dvARB(disp) ((disp)->VertexAttrib3dvARB)
+#define SET_VertexAttrib3dvARB(disp, fn) ((disp)->VertexAttrib3dvARB = fn)
+#define CALL_VertexAttrib3fARB(disp, parameters) (*((disp)->VertexAttrib3fARB)) parameters
+#define GET_VertexAttrib3fARB(disp) ((disp)->VertexAttrib3fARB)
+#define SET_VertexAttrib3fARB(disp, fn) ((disp)->VertexAttrib3fARB = fn)
+#define CALL_VertexAttrib3fvARB(disp, parameters) (*((disp)->VertexAttrib3fvARB)) parameters
+#define GET_VertexAttrib3fvARB(disp) ((disp)->VertexAttrib3fvARB)
+#define SET_VertexAttrib3fvARB(disp, fn) ((disp)->VertexAttrib3fvARB = fn)
+#define CALL_VertexAttrib3sARB(disp, parameters) (*((disp)->VertexAttrib3sARB)) parameters
+#define GET_VertexAttrib3sARB(disp) ((disp)->VertexAttrib3sARB)
+#define SET_VertexAttrib3sARB(disp, fn) ((disp)->VertexAttrib3sARB = fn)
+#define CALL_VertexAttrib3svARB(disp, parameters) (*((disp)->VertexAttrib3svARB)) parameters
+#define GET_VertexAttrib3svARB(disp) ((disp)->VertexAttrib3svARB)
+#define SET_VertexAttrib3svARB(disp, fn) ((disp)->VertexAttrib3svARB = fn)
+#define CALL_VertexAttrib4NbvARB(disp, parameters) (*((disp)->VertexAttrib4NbvARB)) parameters
+#define GET_VertexAttrib4NbvARB(disp) ((disp)->VertexAttrib4NbvARB)
+#define SET_VertexAttrib4NbvARB(disp, fn) ((disp)->VertexAttrib4NbvARB = fn)
+#define CALL_VertexAttrib4NivARB(disp, parameters) (*((disp)->VertexAttrib4NivARB)) parameters
+#define GET_VertexAttrib4NivARB(disp) ((disp)->VertexAttrib4NivARB)
+#define SET_VertexAttrib4NivARB(disp, fn) ((disp)->VertexAttrib4NivARB = fn)
+#define CALL_VertexAttrib4NsvARB(disp, parameters) (*((disp)->VertexAttrib4NsvARB)) parameters
+#define GET_VertexAttrib4NsvARB(disp) ((disp)->VertexAttrib4NsvARB)
+#define SET_VertexAttrib4NsvARB(disp, fn) ((disp)->VertexAttrib4NsvARB = fn)
+#define CALL_VertexAttrib4NubARB(disp, parameters) (*((disp)->VertexAttrib4NubARB)) parameters
+#define GET_VertexAttrib4NubARB(disp) ((disp)->VertexAttrib4NubARB)
+#define SET_VertexAttrib4NubARB(disp, fn) ((disp)->VertexAttrib4NubARB = fn)
+#define CALL_VertexAttrib4NubvARB(disp, parameters) (*((disp)->VertexAttrib4NubvARB)) parameters
+#define GET_VertexAttrib4NubvARB(disp) ((disp)->VertexAttrib4NubvARB)
+#define SET_VertexAttrib4NubvARB(disp, fn) ((disp)->VertexAttrib4NubvARB = fn)
+#define CALL_VertexAttrib4NuivARB(disp, parameters) (*((disp)->VertexAttrib4NuivARB)) parameters
+#define GET_VertexAttrib4NuivARB(disp) ((disp)->VertexAttrib4NuivARB)
+#define SET_VertexAttrib4NuivARB(disp, fn) ((disp)->VertexAttrib4NuivARB = fn)
+#define CALL_VertexAttrib4NusvARB(disp, parameters) (*((disp)->VertexAttrib4NusvARB)) parameters
+#define GET_VertexAttrib4NusvARB(disp) ((disp)->VertexAttrib4NusvARB)
+#define SET_VertexAttrib4NusvARB(disp, fn) ((disp)->VertexAttrib4NusvARB = fn)
+#define CALL_VertexAttrib4bvARB(disp, parameters) (*((disp)->VertexAttrib4bvARB)) parameters
+#define GET_VertexAttrib4bvARB(disp) ((disp)->VertexAttrib4bvARB)
+#define SET_VertexAttrib4bvARB(disp, fn) ((disp)->VertexAttrib4bvARB = fn)
+#define CALL_VertexAttrib4dARB(disp, parameters) (*((disp)->VertexAttrib4dARB)) parameters
+#define GET_VertexAttrib4dARB(disp) ((disp)->VertexAttrib4dARB)
+#define SET_VertexAttrib4dARB(disp, fn) ((disp)->VertexAttrib4dARB = fn)
+#define CALL_VertexAttrib4dvARB(disp, parameters) (*((disp)->VertexAttrib4dvARB)) parameters
+#define GET_VertexAttrib4dvARB(disp) ((disp)->VertexAttrib4dvARB)
+#define SET_VertexAttrib4dvARB(disp, fn) ((disp)->VertexAttrib4dvARB = fn)
+#define CALL_VertexAttrib4fARB(disp, parameters) (*((disp)->VertexAttrib4fARB)) parameters
+#define GET_VertexAttrib4fARB(disp) ((disp)->VertexAttrib4fARB)
+#define SET_VertexAttrib4fARB(disp, fn) ((disp)->VertexAttrib4fARB = fn)
+#define CALL_VertexAttrib4fvARB(disp, parameters) (*((disp)->VertexAttrib4fvARB)) parameters
+#define GET_VertexAttrib4fvARB(disp) ((disp)->VertexAttrib4fvARB)
+#define SET_VertexAttrib4fvARB(disp, fn) ((disp)->VertexAttrib4fvARB = fn)
+#define CALL_VertexAttrib4ivARB(disp, parameters) (*((disp)->VertexAttrib4ivARB)) parameters
+#define GET_VertexAttrib4ivARB(disp) ((disp)->VertexAttrib4ivARB)
+#define SET_VertexAttrib4ivARB(disp, fn) ((disp)->VertexAttrib4ivARB = fn)
+#define CALL_VertexAttrib4sARB(disp, parameters) (*((disp)->VertexAttrib4sARB)) parameters
+#define GET_VertexAttrib4sARB(disp) ((disp)->VertexAttrib4sARB)
+#define SET_VertexAttrib4sARB(disp, fn) ((disp)->VertexAttrib4sARB = fn)
+#define CALL_VertexAttrib4svARB(disp, parameters) (*((disp)->VertexAttrib4svARB)) parameters
+#define GET_VertexAttrib4svARB(disp) ((disp)->VertexAttrib4svARB)
+#define SET_VertexAttrib4svARB(disp, fn) ((disp)->VertexAttrib4svARB = fn)
+#define CALL_VertexAttrib4ubvARB(disp, parameters) (*((disp)->VertexAttrib4ubvARB)) parameters
+#define GET_VertexAttrib4ubvARB(disp) ((disp)->VertexAttrib4ubvARB)
+#define SET_VertexAttrib4ubvARB(disp, fn) ((disp)->VertexAttrib4ubvARB = fn)
+#define CALL_VertexAttrib4uivARB(disp, parameters) (*((disp)->VertexAttrib4uivARB)) parameters
+#define GET_VertexAttrib4uivARB(disp) ((disp)->VertexAttrib4uivARB)
+#define SET_VertexAttrib4uivARB(disp, fn) ((disp)->VertexAttrib4uivARB = fn)
+#define CALL_VertexAttrib4usvARB(disp, parameters) (*((disp)->VertexAttrib4usvARB)) parameters
+#define GET_VertexAttrib4usvARB(disp) ((disp)->VertexAttrib4usvARB)
+#define SET_VertexAttrib4usvARB(disp, fn) ((disp)->VertexAttrib4usvARB = fn)
+#define CALL_VertexAttribPointerARB(disp, parameters) (*((disp)->VertexAttribPointerARB)) parameters
+#define GET_VertexAttribPointerARB(disp) ((disp)->VertexAttribPointerARB)
+#define SET_VertexAttribPointerARB(disp, fn) ((disp)->VertexAttribPointerARB = fn)
+#define CALL_BindBufferARB(disp, parameters) (*((disp)->BindBufferARB)) parameters
+#define GET_BindBufferARB(disp) ((disp)->BindBufferARB)
+#define SET_BindBufferARB(disp, fn) ((disp)->BindBufferARB = fn)
+#define CALL_BufferDataARB(disp, parameters) (*((disp)->BufferDataARB)) parameters
+#define GET_BufferDataARB(disp) ((disp)->BufferDataARB)
+#define SET_BufferDataARB(disp, fn) ((disp)->BufferDataARB = fn)
+#define CALL_BufferSubDataARB(disp, parameters) (*((disp)->BufferSubDataARB)) parameters
+#define GET_BufferSubDataARB(disp) ((disp)->BufferSubDataARB)
+#define SET_BufferSubDataARB(disp, fn) ((disp)->BufferSubDataARB = fn)
+#define CALL_DeleteBuffersARB(disp, parameters) (*((disp)->DeleteBuffersARB)) parameters
+#define GET_DeleteBuffersARB(disp) ((disp)->DeleteBuffersARB)
+#define SET_DeleteBuffersARB(disp, fn) ((disp)->DeleteBuffersARB = fn)
+#define CALL_GenBuffersARB(disp, parameters) (*((disp)->GenBuffersARB)) parameters
+#define GET_GenBuffersARB(disp) ((disp)->GenBuffersARB)
+#define SET_GenBuffersARB(disp, fn) ((disp)->GenBuffersARB = fn)
+#define CALL_GetBufferParameterivARB(disp, parameters) (*((disp)->GetBufferParameterivARB)) parameters
+#define GET_GetBufferParameterivARB(disp) ((disp)->GetBufferParameterivARB)
+#define SET_GetBufferParameterivARB(disp, fn) ((disp)->GetBufferParameterivARB = fn)
+#define CALL_GetBufferPointervARB(disp, parameters) (*((disp)->GetBufferPointervARB)) parameters
+#define GET_GetBufferPointervARB(disp) ((disp)->GetBufferPointervARB)
+#define SET_GetBufferPointervARB(disp, fn) ((disp)->GetBufferPointervARB = fn)
+#define CALL_GetBufferSubDataARB(disp, parameters) (*((disp)->GetBufferSubDataARB)) parameters
+#define GET_GetBufferSubDataARB(disp) ((disp)->GetBufferSubDataARB)
+#define SET_GetBufferSubDataARB(disp, fn) ((disp)->GetBufferSubDataARB = fn)
+#define CALL_IsBufferARB(disp, parameters) (*((disp)->IsBufferARB)) parameters
+#define GET_IsBufferARB(disp) ((disp)->IsBufferARB)
+#define SET_IsBufferARB(disp, fn) ((disp)->IsBufferARB = fn)
+#define CALL_MapBufferARB(disp, parameters) (*((disp)->MapBufferARB)) parameters
+#define GET_MapBufferARB(disp) ((disp)->MapBufferARB)
+#define SET_MapBufferARB(disp, fn) ((disp)->MapBufferARB = fn)
+#define CALL_UnmapBufferARB(disp, parameters) (*((disp)->UnmapBufferARB)) parameters
+#define GET_UnmapBufferARB(disp) ((disp)->UnmapBufferARB)
+#define SET_UnmapBufferARB(disp, fn) ((disp)->UnmapBufferARB = fn)
+#define CALL_BeginQueryARB(disp, parameters) (*((disp)->BeginQueryARB)) parameters
+#define GET_BeginQueryARB(disp) ((disp)->BeginQueryARB)
+#define SET_BeginQueryARB(disp, fn) ((disp)->BeginQueryARB = fn)
+#define CALL_DeleteQueriesARB(disp, parameters) (*((disp)->DeleteQueriesARB)) parameters
+#define GET_DeleteQueriesARB(disp) ((disp)->DeleteQueriesARB)
+#define SET_DeleteQueriesARB(disp, fn) ((disp)->DeleteQueriesARB = fn)
+#define CALL_EndQueryARB(disp, parameters) (*((disp)->EndQueryARB)) parameters
+#define GET_EndQueryARB(disp) ((disp)->EndQueryARB)
+#define SET_EndQueryARB(disp, fn) ((disp)->EndQueryARB = fn)
+#define CALL_GenQueriesARB(disp, parameters) (*((disp)->GenQueriesARB)) parameters
+#define GET_GenQueriesARB(disp) ((disp)->GenQueriesARB)
+#define SET_GenQueriesARB(disp, fn) ((disp)->GenQueriesARB = fn)
+#define CALL_GetQueryObjectivARB(disp, parameters) (*((disp)->GetQueryObjectivARB)) parameters
+#define GET_GetQueryObjectivARB(disp) ((disp)->GetQueryObjectivARB)
+#define SET_GetQueryObjectivARB(disp, fn) ((disp)->GetQueryObjectivARB = fn)
+#define CALL_GetQueryObjectuivARB(disp, parameters) (*((disp)->GetQueryObjectuivARB)) parameters
+#define GET_GetQueryObjectuivARB(disp) ((disp)->GetQueryObjectuivARB)
+#define SET_GetQueryObjectuivARB(disp, fn) ((disp)->GetQueryObjectuivARB = fn)
+#define CALL_GetQueryivARB(disp, parameters) (*((disp)->GetQueryivARB)) parameters
+#define GET_GetQueryivARB(disp) ((disp)->GetQueryivARB)
+#define SET_GetQueryivARB(disp, fn) ((disp)->GetQueryivARB = fn)
+#define CALL_IsQueryARB(disp, parameters) (*((disp)->IsQueryARB)) parameters
+#define GET_IsQueryARB(disp) ((disp)->IsQueryARB)
+#define SET_IsQueryARB(disp, fn) ((disp)->IsQueryARB = fn)
+#define CALL_AttachObjectARB(disp, parameters) (*((disp)->AttachObjectARB)) parameters
+#define GET_AttachObjectARB(disp) ((disp)->AttachObjectARB)
+#define SET_AttachObjectARB(disp, fn) ((disp)->AttachObjectARB = fn)
+#define CALL_CompileShaderARB(disp, parameters) (*((disp)->CompileShaderARB)) parameters
+#define GET_CompileShaderARB(disp) ((disp)->CompileShaderARB)
+#define SET_CompileShaderARB(disp, fn) ((disp)->CompileShaderARB = fn)
+#define CALL_CreateProgramObjectARB(disp, parameters) (*((disp)->CreateProgramObjectARB)) parameters
+#define GET_CreateProgramObjectARB(disp) ((disp)->CreateProgramObjectARB)
+#define SET_CreateProgramObjectARB(disp, fn) ((disp)->CreateProgramObjectARB = fn)
+#define CALL_CreateShaderObjectARB(disp, parameters) (*((disp)->CreateShaderObjectARB)) parameters
+#define GET_CreateShaderObjectARB(disp) ((disp)->CreateShaderObjectARB)
+#define SET_CreateShaderObjectARB(disp, fn) ((disp)->CreateShaderObjectARB = fn)
+#define CALL_DeleteObjectARB(disp, parameters) (*((disp)->DeleteObjectARB)) parameters
+#define GET_DeleteObjectARB(disp) ((disp)->DeleteObjectARB)
+#define SET_DeleteObjectARB(disp, fn) ((disp)->DeleteObjectARB = fn)
+#define CALL_DetachObjectARB(disp, parameters) (*((disp)->DetachObjectARB)) parameters
+#define GET_DetachObjectARB(disp) ((disp)->DetachObjectARB)
+#define SET_DetachObjectARB(disp, fn) ((disp)->DetachObjectARB = fn)
+#define CALL_GetActiveUniformARB(disp, parameters) (*((disp)->GetActiveUniformARB)) parameters
+#define GET_GetActiveUniformARB(disp) ((disp)->GetActiveUniformARB)
+#define SET_GetActiveUniformARB(disp, fn) ((disp)->GetActiveUniformARB = fn)
+#define CALL_GetAttachedObjectsARB(disp, parameters) (*((disp)->GetAttachedObjectsARB)) parameters
+#define GET_GetAttachedObjectsARB(disp) ((disp)->GetAttachedObjectsARB)
+#define SET_GetAttachedObjectsARB(disp, fn) ((disp)->GetAttachedObjectsARB = fn)
+#define CALL_GetHandleARB(disp, parameters) (*((disp)->GetHandleARB)) parameters
+#define GET_GetHandleARB(disp) ((disp)->GetHandleARB)
+#define SET_GetHandleARB(disp, fn) ((disp)->GetHandleARB = fn)
+#define CALL_GetInfoLogARB(disp, parameters) (*((disp)->GetInfoLogARB)) parameters
+#define GET_GetInfoLogARB(disp) ((disp)->GetInfoLogARB)
+#define SET_GetInfoLogARB(disp, fn) ((disp)->GetInfoLogARB = fn)
+#define CALL_GetObjectParameterfvARB(disp, parameters) (*((disp)->GetObjectParameterfvARB)) parameters
+#define GET_GetObjectParameterfvARB(disp) ((disp)->GetObjectParameterfvARB)
+#define SET_GetObjectParameterfvARB(disp, fn) ((disp)->GetObjectParameterfvARB = fn)
+#define CALL_GetObjectParameterivARB(disp, parameters) (*((disp)->GetObjectParameterivARB)) parameters
+#define GET_GetObjectParameterivARB(disp) ((disp)->GetObjectParameterivARB)
+#define SET_GetObjectParameterivARB(disp, fn) ((disp)->GetObjectParameterivARB = fn)
+#define CALL_GetShaderSourceARB(disp, parameters) (*((disp)->GetShaderSourceARB)) parameters
+#define GET_GetShaderSourceARB(disp) ((disp)->GetShaderSourceARB)
+#define SET_GetShaderSourceARB(disp, fn) ((disp)->GetShaderSourceARB = fn)
+#define CALL_GetUniformLocationARB(disp, parameters) (*((disp)->GetUniformLocationARB)) parameters
+#define GET_GetUniformLocationARB(disp) ((disp)->GetUniformLocationARB)
+#define SET_GetUniformLocationARB(disp, fn) ((disp)->GetUniformLocationARB = fn)
+#define CALL_GetUniformfvARB(disp, parameters) (*((disp)->GetUniformfvARB)) parameters
+#define GET_GetUniformfvARB(disp) ((disp)->GetUniformfvARB)
+#define SET_GetUniformfvARB(disp, fn) ((disp)->GetUniformfvARB = fn)
+#define CALL_GetUniformivARB(disp, parameters) (*((disp)->GetUniformivARB)) parameters
+#define GET_GetUniformivARB(disp) ((disp)->GetUniformivARB)
+#define SET_GetUniformivARB(disp, fn) ((disp)->GetUniformivARB = fn)
+#define CALL_LinkProgramARB(disp, parameters) (*((disp)->LinkProgramARB)) parameters
+#define GET_LinkProgramARB(disp) ((disp)->LinkProgramARB)
+#define SET_LinkProgramARB(disp, fn) ((disp)->LinkProgramARB = fn)
+#define CALL_ShaderSourceARB(disp, parameters) (*((disp)->ShaderSourceARB)) parameters
+#define GET_ShaderSourceARB(disp) ((disp)->ShaderSourceARB)
+#define SET_ShaderSourceARB(disp, fn) ((disp)->ShaderSourceARB = fn)
+#define CALL_Uniform1fARB(disp, parameters) (*((disp)->Uniform1fARB)) parameters
+#define GET_Uniform1fARB(disp) ((disp)->Uniform1fARB)
+#define SET_Uniform1fARB(disp, fn) ((disp)->Uniform1fARB = fn)
+#define CALL_Uniform1fvARB(disp, parameters) (*((disp)->Uniform1fvARB)) parameters
+#define GET_Uniform1fvARB(disp) ((disp)->Uniform1fvARB)
+#define SET_Uniform1fvARB(disp, fn) ((disp)->Uniform1fvARB = fn)
+#define CALL_Uniform1iARB(disp, parameters) (*((disp)->Uniform1iARB)) parameters
+#define GET_Uniform1iARB(disp) ((disp)->Uniform1iARB)
+#define SET_Uniform1iARB(disp, fn) ((disp)->Uniform1iARB = fn)
+#define CALL_Uniform1ivARB(disp, parameters) (*((disp)->Uniform1ivARB)) parameters
+#define GET_Uniform1ivARB(disp) ((disp)->Uniform1ivARB)
+#define SET_Uniform1ivARB(disp, fn) ((disp)->Uniform1ivARB = fn)
+#define CALL_Uniform2fARB(disp, parameters) (*((disp)->Uniform2fARB)) parameters
+#define GET_Uniform2fARB(disp) ((disp)->Uniform2fARB)
+#define SET_Uniform2fARB(disp, fn) ((disp)->Uniform2fARB = fn)
+#define CALL_Uniform2fvARB(disp, parameters) (*((disp)->Uniform2fvARB)) parameters
+#define GET_Uniform2fvARB(disp) ((disp)->Uniform2fvARB)
+#define SET_Uniform2fvARB(disp, fn) ((disp)->Uniform2fvARB = fn)
+#define CALL_Uniform2iARB(disp, parameters) (*((disp)->Uniform2iARB)) parameters
+#define GET_Uniform2iARB(disp) ((disp)->Uniform2iARB)
+#define SET_Uniform2iARB(disp, fn) ((disp)->Uniform2iARB = fn)
+#define CALL_Uniform2ivARB(disp, parameters) (*((disp)->Uniform2ivARB)) parameters
+#define GET_Uniform2ivARB(disp) ((disp)->Uniform2ivARB)
+#define SET_Uniform2ivARB(disp, fn) ((disp)->Uniform2ivARB = fn)
+#define CALL_Uniform3fARB(disp, parameters) (*((disp)->Uniform3fARB)) parameters
+#define GET_Uniform3fARB(disp) ((disp)->Uniform3fARB)
+#define SET_Uniform3fARB(disp, fn) ((disp)->Uniform3fARB = fn)
+#define CALL_Uniform3fvARB(disp, parameters) (*((disp)->Uniform3fvARB)) parameters
+#define GET_Uniform3fvARB(disp) ((disp)->Uniform3fvARB)
+#define SET_Uniform3fvARB(disp, fn) ((disp)->Uniform3fvARB = fn)
+#define CALL_Uniform3iARB(disp, parameters) (*((disp)->Uniform3iARB)) parameters
+#define GET_Uniform3iARB(disp) ((disp)->Uniform3iARB)
+#define SET_Uniform3iARB(disp, fn) ((disp)->Uniform3iARB = fn)
+#define CALL_Uniform3ivARB(disp, parameters) (*((disp)->Uniform3ivARB)) parameters
+#define GET_Uniform3ivARB(disp) ((disp)->Uniform3ivARB)
+#define SET_Uniform3ivARB(disp, fn) ((disp)->Uniform3ivARB = fn)
+#define CALL_Uniform4fARB(disp, parameters) (*((disp)->Uniform4fARB)) parameters
+#define GET_Uniform4fARB(disp) ((disp)->Uniform4fARB)
+#define SET_Uniform4fARB(disp, fn) ((disp)->Uniform4fARB = fn)
+#define CALL_Uniform4fvARB(disp, parameters) (*((disp)->Uniform4fvARB)) parameters
+#define GET_Uniform4fvARB(disp) ((disp)->Uniform4fvARB)
+#define SET_Uniform4fvARB(disp, fn) ((disp)->Uniform4fvARB = fn)
+#define CALL_Uniform4iARB(disp, parameters) (*((disp)->Uniform4iARB)) parameters
+#define GET_Uniform4iARB(disp) ((disp)->Uniform4iARB)
+#define SET_Uniform4iARB(disp, fn) ((disp)->Uniform4iARB = fn)
+#define CALL_Uniform4ivARB(disp, parameters) (*((disp)->Uniform4ivARB)) parameters
+#define GET_Uniform4ivARB(disp) ((disp)->Uniform4ivARB)
+#define SET_Uniform4ivARB(disp, fn) ((disp)->Uniform4ivARB = fn)
+#define CALL_UniformMatrix2fvARB(disp, parameters) (*((disp)->UniformMatrix2fvARB)) parameters
+#define GET_UniformMatrix2fvARB(disp) ((disp)->UniformMatrix2fvARB)
+#define SET_UniformMatrix2fvARB(disp, fn) ((disp)->UniformMatrix2fvARB = fn)
+#define CALL_UniformMatrix3fvARB(disp, parameters) (*((disp)->UniformMatrix3fvARB)) parameters
+#define GET_UniformMatrix3fvARB(disp) ((disp)->UniformMatrix3fvARB)
+#define SET_UniformMatrix3fvARB(disp, fn) ((disp)->UniformMatrix3fvARB = fn)
+#define CALL_UniformMatrix4fvARB(disp, parameters) (*((disp)->UniformMatrix4fvARB)) parameters
+#define GET_UniformMatrix4fvARB(disp) ((disp)->UniformMatrix4fvARB)
+#define SET_UniformMatrix4fvARB(disp, fn) ((disp)->UniformMatrix4fvARB = fn)
+#define CALL_UseProgramObjectARB(disp, parameters) (*((disp)->UseProgramObjectARB)) parameters
+#define GET_UseProgramObjectARB(disp) ((disp)->UseProgramObjectARB)
+#define SET_UseProgramObjectARB(disp, fn) ((disp)->UseProgramObjectARB = fn)
+#define CALL_ValidateProgramARB(disp, parameters) (*((disp)->ValidateProgramARB)) parameters
+#define GET_ValidateProgramARB(disp) ((disp)->ValidateProgramARB)
+#define SET_ValidateProgramARB(disp, fn) ((disp)->ValidateProgramARB = fn)
+#define CALL_BindAttribLocationARB(disp, parameters) (*((disp)->BindAttribLocationARB)) parameters
+#define GET_BindAttribLocationARB(disp) ((disp)->BindAttribLocationARB)
+#define SET_BindAttribLocationARB(disp, fn) ((disp)->BindAttribLocationARB = fn)
+#define CALL_GetActiveAttribARB(disp, parameters) (*((disp)->GetActiveAttribARB)) parameters
+#define GET_GetActiveAttribARB(disp) ((disp)->GetActiveAttribARB)
+#define SET_GetActiveAttribARB(disp, fn) ((disp)->GetActiveAttribARB = fn)
+#define CALL_GetAttribLocationARB(disp, parameters) (*((disp)->GetAttribLocationARB)) parameters
+#define GET_GetAttribLocationARB(disp) ((disp)->GetAttribLocationARB)
+#define SET_GetAttribLocationARB(disp, fn) ((disp)->GetAttribLocationARB = fn)
+#define CALL_DrawBuffersARB(disp, parameters) (*((disp)->DrawBuffersARB)) parameters
+#define GET_DrawBuffersARB(disp) ((disp)->DrawBuffersARB)
+#define SET_DrawBuffersARB(disp, fn) ((disp)->DrawBuffersARB = fn)
+#define CALL_RenderbufferStorageMultisample(disp, parameters) (*((disp)->RenderbufferStorageMultisample)) parameters
+#define GET_RenderbufferStorageMultisample(disp) ((disp)->RenderbufferStorageMultisample)
+#define SET_RenderbufferStorageMultisample(disp, fn) ((disp)->RenderbufferStorageMultisample = fn)
+#define CALL_FlushMappedBufferRange(disp, parameters) (*((disp)->FlushMappedBufferRange)) parameters
+#define GET_FlushMappedBufferRange(disp) ((disp)->FlushMappedBufferRange)
+#define SET_FlushMappedBufferRange(disp, fn) ((disp)->FlushMappedBufferRange = fn)
+#define CALL_MapBufferRange(disp, parameters) (*((disp)->MapBufferRange)) parameters
+#define GET_MapBufferRange(disp) ((disp)->MapBufferRange)
+#define SET_MapBufferRange(disp, fn) ((disp)->MapBufferRange = fn)
+#define CALL_BindVertexArray(disp, parameters) (*((disp)->BindVertexArray)) parameters
+#define GET_BindVertexArray(disp) ((disp)->BindVertexArray)
+#define SET_BindVertexArray(disp, fn) ((disp)->BindVertexArray = fn)
+#define CALL_GenVertexArrays(disp, parameters) (*((disp)->GenVertexArrays)) parameters
+#define GET_GenVertexArrays(disp) ((disp)->GenVertexArrays)
+#define SET_GenVertexArrays(disp, fn) ((disp)->GenVertexArrays = fn)
+#define CALL_CopyBufferSubData(disp, parameters) (*((disp)->CopyBufferSubData)) parameters
+#define GET_CopyBufferSubData(disp) ((disp)->CopyBufferSubData)
+#define SET_CopyBufferSubData(disp, fn) ((disp)->CopyBufferSubData = fn)
+#define CALL_ClientWaitSync(disp, parameters) (*((disp)->ClientWaitSync)) parameters
+#define GET_ClientWaitSync(disp) ((disp)->ClientWaitSync)
+#define SET_ClientWaitSync(disp, fn) ((disp)->ClientWaitSync = fn)
+#define CALL_DeleteSync(disp, parameters) (*((disp)->DeleteSync)) parameters
+#define GET_DeleteSync(disp) ((disp)->DeleteSync)
+#define SET_DeleteSync(disp, fn) ((disp)->DeleteSync = fn)
+#define CALL_FenceSync(disp, parameters) (*((disp)->FenceSync)) parameters
+#define GET_FenceSync(disp) ((disp)->FenceSync)
+#define SET_FenceSync(disp, fn) ((disp)->FenceSync = fn)
+#define CALL_GetInteger64v(disp, parameters) (*((disp)->GetInteger64v)) parameters
+#define GET_GetInteger64v(disp) ((disp)->GetInteger64v)
+#define SET_GetInteger64v(disp, fn) ((disp)->GetInteger64v = fn)
+#define CALL_GetSynciv(disp, parameters) (*((disp)->GetSynciv)) parameters
+#define GET_GetSynciv(disp) ((disp)->GetSynciv)
+#define SET_GetSynciv(disp, fn) ((disp)->GetSynciv = fn)
+#define CALL_IsSync(disp, parameters) (*((disp)->IsSync)) parameters
+#define GET_IsSync(disp) ((disp)->IsSync)
+#define SET_IsSync(disp, fn) ((disp)->IsSync = fn)
+#define CALL_WaitSync(disp, parameters) (*((disp)->WaitSync)) parameters
+#define GET_WaitSync(disp) ((disp)->WaitSync)
+#define SET_WaitSync(disp, fn) ((disp)->WaitSync = fn)
+#define CALL_DrawElementsBaseVertex(disp, parameters) (*((disp)->DrawElementsBaseVertex)) parameters
+#define GET_DrawElementsBaseVertex(disp) ((disp)->DrawElementsBaseVertex)
+#define SET_DrawElementsBaseVertex(disp, fn) ((disp)->DrawElementsBaseVertex = fn)
+#define CALL_DrawRangeElementsBaseVertex(disp, parameters) (*((disp)->DrawRangeElementsBaseVertex)) parameters
+#define GET_DrawRangeElementsBaseVertex(disp) ((disp)->DrawRangeElementsBaseVertex)
+#define SET_DrawRangeElementsBaseVertex(disp, fn) ((disp)->DrawRangeElementsBaseVertex = fn)
+#define CALL_MultiDrawElementsBaseVertex(disp, parameters) (*((disp)->MultiDrawElementsBaseVertex)) parameters
+#define GET_MultiDrawElementsBaseVertex(disp) ((disp)->MultiDrawElementsBaseVertex)
+#define SET_MultiDrawElementsBaseVertex(disp, fn) ((disp)->MultiDrawElementsBaseVertex = fn)
+#define CALL_PolygonOffsetEXT(disp, parameters) (*((disp)->PolygonOffsetEXT)) parameters
+#define GET_PolygonOffsetEXT(disp) ((disp)->PolygonOffsetEXT)
+#define SET_PolygonOffsetEXT(disp, fn) ((disp)->PolygonOffsetEXT = fn)
+#define CALL_GetPixelTexGenParameterfvSGIS(disp, parameters) (*((disp)->GetPixelTexGenParameterfvSGIS)) parameters
+#define GET_GetPixelTexGenParameterfvSGIS(disp) ((disp)->GetPixelTexGenParameterfvSGIS)
+#define SET_GetPixelTexGenParameterfvSGIS(disp, fn) ((disp)->GetPixelTexGenParameterfvSGIS = fn)
+#define CALL_GetPixelTexGenParameterivSGIS(disp, parameters) (*((disp)->GetPixelTexGenParameterivSGIS)) parameters
+#define GET_GetPixelTexGenParameterivSGIS(disp) ((disp)->GetPixelTexGenParameterivSGIS)
+#define SET_GetPixelTexGenParameterivSGIS(disp, fn) ((disp)->GetPixelTexGenParameterivSGIS = fn)
+#define CALL_PixelTexGenParameterfSGIS(disp, parameters) (*((disp)->PixelTexGenParameterfSGIS)) parameters
+#define GET_PixelTexGenParameterfSGIS(disp) ((disp)->PixelTexGenParameterfSGIS)
+#define SET_PixelTexGenParameterfSGIS(disp, fn) ((disp)->PixelTexGenParameterfSGIS = fn)
+#define CALL_PixelTexGenParameterfvSGIS(disp, parameters) (*((disp)->PixelTexGenParameterfvSGIS)) parameters
+#define GET_PixelTexGenParameterfvSGIS(disp) ((disp)->PixelTexGenParameterfvSGIS)
+#define SET_PixelTexGenParameterfvSGIS(disp, fn) ((disp)->PixelTexGenParameterfvSGIS = fn)
+#define CALL_PixelTexGenParameteriSGIS(disp, parameters) (*((disp)->PixelTexGenParameteriSGIS)) parameters
+#define GET_PixelTexGenParameteriSGIS(disp) ((disp)->PixelTexGenParameteriSGIS)
+#define SET_PixelTexGenParameteriSGIS(disp, fn) ((disp)->PixelTexGenParameteriSGIS = fn)
+#define CALL_PixelTexGenParameterivSGIS(disp, parameters) (*((disp)->PixelTexGenParameterivSGIS)) parameters
+#define GET_PixelTexGenParameterivSGIS(disp) ((disp)->PixelTexGenParameterivSGIS)
+#define SET_PixelTexGenParameterivSGIS(disp, fn) ((disp)->PixelTexGenParameterivSGIS = fn)
+#define CALL_SampleMaskSGIS(disp, parameters) (*((disp)->SampleMaskSGIS)) parameters
+#define GET_SampleMaskSGIS(disp) ((disp)->SampleMaskSGIS)
+#define SET_SampleMaskSGIS(disp, fn) ((disp)->SampleMaskSGIS = fn)
+#define CALL_SamplePatternSGIS(disp, parameters) (*((disp)->SamplePatternSGIS)) parameters
+#define GET_SamplePatternSGIS(disp) ((disp)->SamplePatternSGIS)
+#define SET_SamplePatternSGIS(disp, fn) ((disp)->SamplePatternSGIS = fn)
+#define CALL_ColorPointerEXT(disp, parameters) (*((disp)->ColorPointerEXT)) parameters
+#define GET_ColorPointerEXT(disp) ((disp)->ColorPointerEXT)
+#define SET_ColorPointerEXT(disp, fn) ((disp)->ColorPointerEXT = fn)
+#define CALL_EdgeFlagPointerEXT(disp, parameters) (*((disp)->EdgeFlagPointerEXT)) parameters
+#define GET_EdgeFlagPointerEXT(disp) ((disp)->EdgeFlagPointerEXT)
+#define SET_EdgeFlagPointerEXT(disp, fn) ((disp)->EdgeFlagPointerEXT = fn)
+#define CALL_IndexPointerEXT(disp, parameters) (*((disp)->IndexPointerEXT)) parameters
+#define GET_IndexPointerEXT(disp) ((disp)->IndexPointerEXT)
+#define SET_IndexPointerEXT(disp, fn) ((disp)->IndexPointerEXT = fn)
+#define CALL_NormalPointerEXT(disp, parameters) (*((disp)->NormalPointerEXT)) parameters
+#define GET_NormalPointerEXT(disp) ((disp)->NormalPointerEXT)
+#define SET_NormalPointerEXT(disp, fn) ((disp)->NormalPointerEXT = fn)
+#define CALL_TexCoordPointerEXT(disp, parameters) (*((disp)->TexCoordPointerEXT)) parameters
+#define GET_TexCoordPointerEXT(disp) ((disp)->TexCoordPointerEXT)
+#define SET_TexCoordPointerEXT(disp, fn) ((disp)->TexCoordPointerEXT = fn)
+#define CALL_VertexPointerEXT(disp, parameters) (*((disp)->VertexPointerEXT)) parameters
+#define GET_VertexPointerEXT(disp) ((disp)->VertexPointerEXT)
+#define SET_VertexPointerEXT(disp, fn) ((disp)->VertexPointerEXT = fn)
+#define CALL_PointParameterfEXT(disp, parameters) (*((disp)->PointParameterfEXT)) parameters
+#define GET_PointParameterfEXT(disp) ((disp)->PointParameterfEXT)
+#define SET_PointParameterfEXT(disp, fn) ((disp)->PointParameterfEXT = fn)
+#define CALL_PointParameterfvEXT(disp, parameters) (*((disp)->PointParameterfvEXT)) parameters
+#define GET_PointParameterfvEXT(disp) ((disp)->PointParameterfvEXT)
+#define SET_PointParameterfvEXT(disp, fn) ((disp)->PointParameterfvEXT = fn)
+#define CALL_LockArraysEXT(disp, parameters) (*((disp)->LockArraysEXT)) parameters
+#define GET_LockArraysEXT(disp) ((disp)->LockArraysEXT)
+#define SET_LockArraysEXT(disp, fn) ((disp)->LockArraysEXT = fn)
+#define CALL_UnlockArraysEXT(disp, parameters) (*((disp)->UnlockArraysEXT)) parameters
+#define GET_UnlockArraysEXT(disp) ((disp)->UnlockArraysEXT)
+#define SET_UnlockArraysEXT(disp, fn) ((disp)->UnlockArraysEXT = fn)
+#define CALL_CullParameterdvEXT(disp, parameters) (*((disp)->CullParameterdvEXT)) parameters
+#define GET_CullParameterdvEXT(disp) ((disp)->CullParameterdvEXT)
+#define SET_CullParameterdvEXT(disp, fn) ((disp)->CullParameterdvEXT = fn)
+#define CALL_CullParameterfvEXT(disp, parameters) (*((disp)->CullParameterfvEXT)) parameters
+#define GET_CullParameterfvEXT(disp) ((disp)->CullParameterfvEXT)
+#define SET_CullParameterfvEXT(disp, fn) ((disp)->CullParameterfvEXT = fn)
+#define CALL_SecondaryColor3bEXT(disp, parameters) (*((disp)->SecondaryColor3bEXT)) parameters
+#define GET_SecondaryColor3bEXT(disp) ((disp)->SecondaryColor3bEXT)
+#define SET_SecondaryColor3bEXT(disp, fn) ((disp)->SecondaryColor3bEXT = fn)
+#define CALL_SecondaryColor3bvEXT(disp, parameters) (*((disp)->SecondaryColor3bvEXT)) parameters
+#define GET_SecondaryColor3bvEXT(disp) ((disp)->SecondaryColor3bvEXT)
+#define SET_SecondaryColor3bvEXT(disp, fn) ((disp)->SecondaryColor3bvEXT = fn)
+#define CALL_SecondaryColor3dEXT(disp, parameters) (*((disp)->SecondaryColor3dEXT)) parameters
+#define GET_SecondaryColor3dEXT(disp) ((disp)->SecondaryColor3dEXT)
+#define SET_SecondaryColor3dEXT(disp, fn) ((disp)->SecondaryColor3dEXT = fn)
+#define CALL_SecondaryColor3dvEXT(disp, parameters) (*((disp)->SecondaryColor3dvEXT)) parameters
+#define GET_SecondaryColor3dvEXT(disp) ((disp)->SecondaryColor3dvEXT)
+#define SET_SecondaryColor3dvEXT(disp, fn) ((disp)->SecondaryColor3dvEXT = fn)
+#define CALL_SecondaryColor3fEXT(disp, parameters) (*((disp)->SecondaryColor3fEXT)) parameters
+#define GET_SecondaryColor3fEXT(disp) ((disp)->SecondaryColor3fEXT)
+#define SET_SecondaryColor3fEXT(disp, fn) ((disp)->SecondaryColor3fEXT = fn)
+#define CALL_SecondaryColor3fvEXT(disp, parameters) (*((disp)->SecondaryColor3fvEXT)) parameters
+#define GET_SecondaryColor3fvEXT(disp) ((disp)->SecondaryColor3fvEXT)
+#define SET_SecondaryColor3fvEXT(disp, fn) ((disp)->SecondaryColor3fvEXT = fn)
+#define CALL_SecondaryColor3iEXT(disp, parameters) (*((disp)->SecondaryColor3iEXT)) parameters
+#define GET_SecondaryColor3iEXT(disp) ((disp)->SecondaryColor3iEXT)
+#define SET_SecondaryColor3iEXT(disp, fn) ((disp)->SecondaryColor3iEXT = fn)
+#define CALL_SecondaryColor3ivEXT(disp, parameters) (*((disp)->SecondaryColor3ivEXT)) parameters
+#define GET_SecondaryColor3ivEXT(disp) ((disp)->SecondaryColor3ivEXT)
+#define SET_SecondaryColor3ivEXT(disp, fn) ((disp)->SecondaryColor3ivEXT = fn)
+#define CALL_SecondaryColor3sEXT(disp, parameters) (*((disp)->SecondaryColor3sEXT)) parameters
+#define GET_SecondaryColor3sEXT(disp) ((disp)->SecondaryColor3sEXT)
+#define SET_SecondaryColor3sEXT(disp, fn) ((disp)->SecondaryColor3sEXT = fn)
+#define CALL_SecondaryColor3svEXT(disp, parameters) (*((disp)->SecondaryColor3svEXT)) parameters
+#define GET_SecondaryColor3svEXT(disp) ((disp)->SecondaryColor3svEXT)
+#define SET_SecondaryColor3svEXT(disp, fn) ((disp)->SecondaryColor3svEXT = fn)
+#define CALL_SecondaryColor3ubEXT(disp, parameters) (*((disp)->SecondaryColor3ubEXT)) parameters
+#define GET_SecondaryColor3ubEXT(disp) ((disp)->SecondaryColor3ubEXT)
+#define SET_SecondaryColor3ubEXT(disp, fn) ((disp)->SecondaryColor3ubEXT = fn)
+#define CALL_SecondaryColor3ubvEXT(disp, parameters) (*((disp)->SecondaryColor3ubvEXT)) parameters
+#define GET_SecondaryColor3ubvEXT(disp) ((disp)->SecondaryColor3ubvEXT)
+#define SET_SecondaryColor3ubvEXT(disp, fn) ((disp)->SecondaryColor3ubvEXT = fn)
+#define CALL_SecondaryColor3uiEXT(disp, parameters) (*((disp)->SecondaryColor3uiEXT)) parameters
+#define GET_SecondaryColor3uiEXT(disp) ((disp)->SecondaryColor3uiEXT)
+#define SET_SecondaryColor3uiEXT(disp, fn) ((disp)->SecondaryColor3uiEXT = fn)
+#define CALL_SecondaryColor3uivEXT(disp, parameters) (*((disp)->SecondaryColor3uivEXT)) parameters
+#define GET_SecondaryColor3uivEXT(disp) ((disp)->SecondaryColor3uivEXT)
+#define SET_SecondaryColor3uivEXT(disp, fn) ((disp)->SecondaryColor3uivEXT = fn)
+#define CALL_SecondaryColor3usEXT(disp, parameters) (*((disp)->SecondaryColor3usEXT)) parameters
+#define GET_SecondaryColor3usEXT(disp) ((disp)->SecondaryColor3usEXT)
+#define SET_SecondaryColor3usEXT(disp, fn) ((disp)->SecondaryColor3usEXT = fn)
+#define CALL_SecondaryColor3usvEXT(disp, parameters) (*((disp)->SecondaryColor3usvEXT)) parameters
+#define GET_SecondaryColor3usvEXT(disp) ((disp)->SecondaryColor3usvEXT)
+#define SET_SecondaryColor3usvEXT(disp, fn) ((disp)->SecondaryColor3usvEXT = fn)
+#define CALL_SecondaryColorPointerEXT(disp, parameters) (*((disp)->SecondaryColorPointerEXT)) parameters
+#define GET_SecondaryColorPointerEXT(disp) ((disp)->SecondaryColorPointerEXT)
+#define SET_SecondaryColorPointerEXT(disp, fn) ((disp)->SecondaryColorPointerEXT = fn)
+#define CALL_MultiDrawArraysEXT(disp, parameters) (*((disp)->MultiDrawArraysEXT)) parameters
+#define GET_MultiDrawArraysEXT(disp) ((disp)->MultiDrawArraysEXT)
+#define SET_MultiDrawArraysEXT(disp, fn) ((disp)->MultiDrawArraysEXT = fn)
+#define CALL_MultiDrawElementsEXT(disp, parameters) (*((disp)->MultiDrawElementsEXT)) parameters
+#define GET_MultiDrawElementsEXT(disp) ((disp)->MultiDrawElementsEXT)
+#define SET_MultiDrawElementsEXT(disp, fn) ((disp)->MultiDrawElementsEXT = fn)
+#define CALL_FogCoordPointerEXT(disp, parameters) (*((disp)->FogCoordPointerEXT)) parameters
+#define GET_FogCoordPointerEXT(disp) ((disp)->FogCoordPointerEXT)
+#define SET_FogCoordPointerEXT(disp, fn) ((disp)->FogCoordPointerEXT = fn)
+#define CALL_FogCoorddEXT(disp, parameters) (*((disp)->FogCoorddEXT)) parameters
+#define GET_FogCoorddEXT(disp) ((disp)->FogCoorddEXT)
+#define SET_FogCoorddEXT(disp, fn) ((disp)->FogCoorddEXT = fn)
+#define CALL_FogCoorddvEXT(disp, parameters) (*((disp)->FogCoorddvEXT)) parameters
+#define GET_FogCoorddvEXT(disp) ((disp)->FogCoorddvEXT)
+#define SET_FogCoorddvEXT(disp, fn) ((disp)->FogCoorddvEXT = fn)
+#define CALL_FogCoordfEXT(disp, parameters) (*((disp)->FogCoordfEXT)) parameters
+#define GET_FogCoordfEXT(disp) ((disp)->FogCoordfEXT)
+#define SET_FogCoordfEXT(disp, fn) ((disp)->FogCoordfEXT = fn)
+#define CALL_FogCoordfvEXT(disp, parameters) (*((disp)->FogCoordfvEXT)) parameters
+#define GET_FogCoordfvEXT(disp) ((disp)->FogCoordfvEXT)
+#define SET_FogCoordfvEXT(disp, fn) ((disp)->FogCoordfvEXT = fn)
+#define CALL_PixelTexGenSGIX(disp, parameters) (*((disp)->PixelTexGenSGIX)) parameters
+#define GET_PixelTexGenSGIX(disp) ((disp)->PixelTexGenSGIX)
+#define SET_PixelTexGenSGIX(disp, fn) ((disp)->PixelTexGenSGIX = fn)
+#define CALL_BlendFuncSeparateEXT(disp, parameters) (*((disp)->BlendFuncSeparateEXT)) parameters
+#define GET_BlendFuncSeparateEXT(disp) ((disp)->BlendFuncSeparateEXT)
+#define SET_BlendFuncSeparateEXT(disp, fn) ((disp)->BlendFuncSeparateEXT = fn)
+#define CALL_FlushVertexArrayRangeNV(disp, parameters) (*((disp)->FlushVertexArrayRangeNV)) parameters
+#define GET_FlushVertexArrayRangeNV(disp) ((disp)->FlushVertexArrayRangeNV)
+#define SET_FlushVertexArrayRangeNV(disp, fn) ((disp)->FlushVertexArrayRangeNV = fn)
+#define CALL_VertexArrayRangeNV(disp, parameters) (*((disp)->VertexArrayRangeNV)) parameters
+#define GET_VertexArrayRangeNV(disp) ((disp)->VertexArrayRangeNV)
+#define SET_VertexArrayRangeNV(disp, fn) ((disp)->VertexArrayRangeNV = fn)
+#define CALL_CombinerInputNV(disp, parameters) (*((disp)->CombinerInputNV)) parameters
+#define GET_CombinerInputNV(disp) ((disp)->CombinerInputNV)
+#define SET_CombinerInputNV(disp, fn) ((disp)->CombinerInputNV = fn)
+#define CALL_CombinerOutputNV(disp, parameters) (*((disp)->CombinerOutputNV)) parameters
+#define GET_CombinerOutputNV(disp) ((disp)->CombinerOutputNV)
+#define SET_CombinerOutputNV(disp, fn) ((disp)->CombinerOutputNV = fn)
+#define CALL_CombinerParameterfNV(disp, parameters) (*((disp)->CombinerParameterfNV)) parameters
+#define GET_CombinerParameterfNV(disp) ((disp)->CombinerParameterfNV)
+#define SET_CombinerParameterfNV(disp, fn) ((disp)->CombinerParameterfNV = fn)
+#define CALL_CombinerParameterfvNV(disp, parameters) (*((disp)->CombinerParameterfvNV)) parameters
+#define GET_CombinerParameterfvNV(disp) ((disp)->CombinerParameterfvNV)
+#define SET_CombinerParameterfvNV(disp, fn) ((disp)->CombinerParameterfvNV = fn)
+#define CALL_CombinerParameteriNV(disp, parameters) (*((disp)->CombinerParameteriNV)) parameters
+#define GET_CombinerParameteriNV(disp) ((disp)->CombinerParameteriNV)
+#define SET_CombinerParameteriNV(disp, fn) ((disp)->CombinerParameteriNV = fn)
+#define CALL_CombinerParameterivNV(disp, parameters) (*((disp)->CombinerParameterivNV)) parameters
+#define GET_CombinerParameterivNV(disp) ((disp)->CombinerParameterivNV)
+#define SET_CombinerParameterivNV(disp, fn) ((disp)->CombinerParameterivNV = fn)
+#define CALL_FinalCombinerInputNV(disp, parameters) (*((disp)->FinalCombinerInputNV)) parameters
+#define GET_FinalCombinerInputNV(disp) ((disp)->FinalCombinerInputNV)
+#define SET_FinalCombinerInputNV(disp, fn) ((disp)->FinalCombinerInputNV = fn)
+#define CALL_GetCombinerInputParameterfvNV(disp, parameters) (*((disp)->GetCombinerInputParameterfvNV)) parameters
+#define GET_GetCombinerInputParameterfvNV(disp) ((disp)->GetCombinerInputParameterfvNV)
+#define SET_GetCombinerInputParameterfvNV(disp, fn) ((disp)->GetCombinerInputParameterfvNV = fn)
+#define CALL_GetCombinerInputParameterivNV(disp, parameters) (*((disp)->GetCombinerInputParameterivNV)) parameters
+#define GET_GetCombinerInputParameterivNV(disp) ((disp)->GetCombinerInputParameterivNV)
+#define SET_GetCombinerInputParameterivNV(disp, fn) ((disp)->GetCombinerInputParameterivNV = fn)
+#define CALL_GetCombinerOutputParameterfvNV(disp, parameters) (*((disp)->GetCombinerOutputParameterfvNV)) parameters
+#define GET_GetCombinerOutputParameterfvNV(disp) ((disp)->GetCombinerOutputParameterfvNV)
+#define SET_GetCombinerOutputParameterfvNV(disp, fn) ((disp)->GetCombinerOutputParameterfvNV = fn)
+#define CALL_GetCombinerOutputParameterivNV(disp, parameters) (*((disp)->GetCombinerOutputParameterivNV)) parameters
+#define GET_GetCombinerOutputParameterivNV(disp) ((disp)->GetCombinerOutputParameterivNV)
+#define SET_GetCombinerOutputParameterivNV(disp, fn) ((disp)->GetCombinerOutputParameterivNV = fn)
+#define CALL_GetFinalCombinerInputParameterfvNV(disp, parameters) (*((disp)->GetFinalCombinerInputParameterfvNV)) parameters
+#define GET_GetFinalCombinerInputParameterfvNV(disp) ((disp)->GetFinalCombinerInputParameterfvNV)
+#define SET_GetFinalCombinerInputParameterfvNV(disp, fn) ((disp)->GetFinalCombinerInputParameterfvNV = fn)
+#define CALL_GetFinalCombinerInputParameterivNV(disp, parameters) (*((disp)->GetFinalCombinerInputParameterivNV)) parameters
+#define GET_GetFinalCombinerInputParameterivNV(disp) ((disp)->GetFinalCombinerInputParameterivNV)
+#define SET_GetFinalCombinerInputParameterivNV(disp, fn) ((disp)->GetFinalCombinerInputParameterivNV = fn)
+#define CALL_ResizeBuffersMESA(disp, parameters) (*((disp)->ResizeBuffersMESA)) parameters
+#define GET_ResizeBuffersMESA(disp) ((disp)->ResizeBuffersMESA)
+#define SET_ResizeBuffersMESA(disp, fn) ((disp)->ResizeBuffersMESA = fn)
+#define CALL_WindowPos2dMESA(disp, parameters) (*((disp)->WindowPos2dMESA)) parameters
+#define GET_WindowPos2dMESA(disp) ((disp)->WindowPos2dMESA)
+#define SET_WindowPos2dMESA(disp, fn) ((disp)->WindowPos2dMESA = fn)
+#define CALL_WindowPos2dvMESA(disp, parameters) (*((disp)->WindowPos2dvMESA)) parameters
+#define GET_WindowPos2dvMESA(disp) ((disp)->WindowPos2dvMESA)
+#define SET_WindowPos2dvMESA(disp, fn) ((disp)->WindowPos2dvMESA = fn)
+#define CALL_WindowPos2fMESA(disp, parameters) (*((disp)->WindowPos2fMESA)) parameters
+#define GET_WindowPos2fMESA(disp) ((disp)->WindowPos2fMESA)
+#define SET_WindowPos2fMESA(disp, fn) ((disp)->WindowPos2fMESA = fn)
+#define CALL_WindowPos2fvMESA(disp, parameters) (*((disp)->WindowPos2fvMESA)) parameters
+#define GET_WindowPos2fvMESA(disp) ((disp)->WindowPos2fvMESA)
+#define SET_WindowPos2fvMESA(disp, fn) ((disp)->WindowPos2fvMESA = fn)
+#define CALL_WindowPos2iMESA(disp, parameters) (*((disp)->WindowPos2iMESA)) parameters
+#define GET_WindowPos2iMESA(disp) ((disp)->WindowPos2iMESA)
+#define SET_WindowPos2iMESA(disp, fn) ((disp)->WindowPos2iMESA = fn)
+#define CALL_WindowPos2ivMESA(disp, parameters) (*((disp)->WindowPos2ivMESA)) parameters
+#define GET_WindowPos2ivMESA(disp) ((disp)->WindowPos2ivMESA)
+#define SET_WindowPos2ivMESA(disp, fn) ((disp)->WindowPos2ivMESA = fn)
+#define CALL_WindowPos2sMESA(disp, parameters) (*((disp)->WindowPos2sMESA)) parameters
+#define GET_WindowPos2sMESA(disp) ((disp)->WindowPos2sMESA)
+#define SET_WindowPos2sMESA(disp, fn) ((disp)->WindowPos2sMESA = fn)
+#define CALL_WindowPos2svMESA(disp, parameters) (*((disp)->WindowPos2svMESA)) parameters
+#define GET_WindowPos2svMESA(disp) ((disp)->WindowPos2svMESA)
+#define SET_WindowPos2svMESA(disp, fn) ((disp)->WindowPos2svMESA = fn)
+#define CALL_WindowPos3dMESA(disp, parameters) (*((disp)->WindowPos3dMESA)) parameters
+#define GET_WindowPos3dMESA(disp) ((disp)->WindowPos3dMESA)
+#define SET_WindowPos3dMESA(disp, fn) ((disp)->WindowPos3dMESA = fn)
+#define CALL_WindowPos3dvMESA(disp, parameters) (*((disp)->WindowPos3dvMESA)) parameters
+#define GET_WindowPos3dvMESA(disp) ((disp)->WindowPos3dvMESA)
+#define SET_WindowPos3dvMESA(disp, fn) ((disp)->WindowPos3dvMESA = fn)
+#define CALL_WindowPos3fMESA(disp, parameters) (*((disp)->WindowPos3fMESA)) parameters
+#define GET_WindowPos3fMESA(disp) ((disp)->WindowPos3fMESA)
+#define SET_WindowPos3fMESA(disp, fn) ((disp)->WindowPos3fMESA = fn)
+#define CALL_WindowPos3fvMESA(disp, parameters) (*((disp)->WindowPos3fvMESA)) parameters
+#define GET_WindowPos3fvMESA(disp) ((disp)->WindowPos3fvMESA)
+#define SET_WindowPos3fvMESA(disp, fn) ((disp)->WindowPos3fvMESA = fn)
+#define CALL_WindowPos3iMESA(disp, parameters) (*((disp)->WindowPos3iMESA)) parameters
+#define GET_WindowPos3iMESA(disp) ((disp)->WindowPos3iMESA)
+#define SET_WindowPos3iMESA(disp, fn) ((disp)->WindowPos3iMESA = fn)
+#define CALL_WindowPos3ivMESA(disp, parameters) (*((disp)->WindowPos3ivMESA)) parameters
+#define GET_WindowPos3ivMESA(disp) ((disp)->WindowPos3ivMESA)
+#define SET_WindowPos3ivMESA(disp, fn) ((disp)->WindowPos3ivMESA = fn)
+#define CALL_WindowPos3sMESA(disp, parameters) (*((disp)->WindowPos3sMESA)) parameters
+#define GET_WindowPos3sMESA(disp) ((disp)->WindowPos3sMESA)
+#define SET_WindowPos3sMESA(disp, fn) ((disp)->WindowPos3sMESA = fn)
+#define CALL_WindowPos3svMESA(disp, parameters) (*((disp)->WindowPos3svMESA)) parameters
+#define GET_WindowPos3svMESA(disp) ((disp)->WindowPos3svMESA)
+#define SET_WindowPos3svMESA(disp, fn) ((disp)->WindowPos3svMESA = fn)
+#define CALL_WindowPos4dMESA(disp, parameters) (*((disp)->WindowPos4dMESA)) parameters
+#define GET_WindowPos4dMESA(disp) ((disp)->WindowPos4dMESA)
+#define SET_WindowPos4dMESA(disp, fn) ((disp)->WindowPos4dMESA = fn)
+#define CALL_WindowPos4dvMESA(disp, parameters) (*((disp)->WindowPos4dvMESA)) parameters
+#define GET_WindowPos4dvMESA(disp) ((disp)->WindowPos4dvMESA)
+#define SET_WindowPos4dvMESA(disp, fn) ((disp)->WindowPos4dvMESA = fn)
+#define CALL_WindowPos4fMESA(disp, parameters) (*((disp)->WindowPos4fMESA)) parameters
+#define GET_WindowPos4fMESA(disp) ((disp)->WindowPos4fMESA)
+#define SET_WindowPos4fMESA(disp, fn) ((disp)->WindowPos4fMESA = fn)
+#define CALL_WindowPos4fvMESA(disp, parameters) (*((disp)->WindowPos4fvMESA)) parameters
+#define GET_WindowPos4fvMESA(disp) ((disp)->WindowPos4fvMESA)
+#define SET_WindowPos4fvMESA(disp, fn) ((disp)->WindowPos4fvMESA = fn)
+#define CALL_WindowPos4iMESA(disp, parameters) (*((disp)->WindowPos4iMESA)) parameters
+#define GET_WindowPos4iMESA(disp) ((disp)->WindowPos4iMESA)
+#define SET_WindowPos4iMESA(disp, fn) ((disp)->WindowPos4iMESA = fn)
+#define CALL_WindowPos4ivMESA(disp, parameters) (*((disp)->WindowPos4ivMESA)) parameters
+#define GET_WindowPos4ivMESA(disp) ((disp)->WindowPos4ivMESA)
+#define SET_WindowPos4ivMESA(disp, fn) ((disp)->WindowPos4ivMESA = fn)
+#define CALL_WindowPos4sMESA(disp, parameters) (*((disp)->WindowPos4sMESA)) parameters
+#define GET_WindowPos4sMESA(disp) ((disp)->WindowPos4sMESA)
+#define SET_WindowPos4sMESA(disp, fn) ((disp)->WindowPos4sMESA = fn)
+#define CALL_WindowPos4svMESA(disp, parameters) (*((disp)->WindowPos4svMESA)) parameters
+#define GET_WindowPos4svMESA(disp) ((disp)->WindowPos4svMESA)
+#define SET_WindowPos4svMESA(disp, fn) ((disp)->WindowPos4svMESA = fn)
+#define CALL_MultiModeDrawArraysIBM(disp, parameters) (*((disp)->MultiModeDrawArraysIBM)) parameters
+#define GET_MultiModeDrawArraysIBM(disp) ((disp)->MultiModeDrawArraysIBM)
+#define SET_MultiModeDrawArraysIBM(disp, fn) ((disp)->MultiModeDrawArraysIBM = fn)
+#define CALL_MultiModeDrawElementsIBM(disp, parameters) (*((disp)->MultiModeDrawElementsIBM)) parameters
+#define GET_MultiModeDrawElementsIBM(disp) ((disp)->MultiModeDrawElementsIBM)
+#define SET_MultiModeDrawElementsIBM(disp, fn) ((disp)->MultiModeDrawElementsIBM = fn)
+#define CALL_DeleteFencesNV(disp, parameters) (*((disp)->DeleteFencesNV)) parameters
+#define GET_DeleteFencesNV(disp) ((disp)->DeleteFencesNV)
+#define SET_DeleteFencesNV(disp, fn) ((disp)->DeleteFencesNV = fn)
+#define CALL_FinishFenceNV(disp, parameters) (*((disp)->FinishFenceNV)) parameters
+#define GET_FinishFenceNV(disp) ((disp)->FinishFenceNV)
+#define SET_FinishFenceNV(disp, fn) ((disp)->FinishFenceNV = fn)
+#define CALL_GenFencesNV(disp, parameters) (*((disp)->GenFencesNV)) parameters
+#define GET_GenFencesNV(disp) ((disp)->GenFencesNV)
+#define SET_GenFencesNV(disp, fn) ((disp)->GenFencesNV = fn)
+#define CALL_GetFenceivNV(disp, parameters) (*((disp)->GetFenceivNV)) parameters
+#define GET_GetFenceivNV(disp) ((disp)->GetFenceivNV)
+#define SET_GetFenceivNV(disp, fn) ((disp)->GetFenceivNV = fn)
+#define CALL_IsFenceNV(disp, parameters) (*((disp)->IsFenceNV)) parameters
+#define GET_IsFenceNV(disp) ((disp)->IsFenceNV)
+#define SET_IsFenceNV(disp, fn) ((disp)->IsFenceNV = fn)
+#define CALL_SetFenceNV(disp, parameters) (*((disp)->SetFenceNV)) parameters
+#define GET_SetFenceNV(disp) ((disp)->SetFenceNV)
+#define SET_SetFenceNV(disp, fn) ((disp)->SetFenceNV = fn)
+#define CALL_TestFenceNV(disp, parameters) (*((disp)->TestFenceNV)) parameters
+#define GET_TestFenceNV(disp) ((disp)->TestFenceNV)
+#define SET_TestFenceNV(disp, fn) ((disp)->TestFenceNV = fn)
+#define CALL_AreProgramsResidentNV(disp, parameters) (*((disp)->AreProgramsResidentNV)) parameters
+#define GET_AreProgramsResidentNV(disp) ((disp)->AreProgramsResidentNV)
+#define SET_AreProgramsResidentNV(disp, fn) ((disp)->AreProgramsResidentNV = fn)
+#define CALL_BindProgramNV(disp, parameters) (*((disp)->BindProgramNV)) parameters
+#define GET_BindProgramNV(disp) ((disp)->BindProgramNV)
+#define SET_BindProgramNV(disp, fn) ((disp)->BindProgramNV = fn)
+#define CALL_DeleteProgramsNV(disp, parameters) (*((disp)->DeleteProgramsNV)) parameters
+#define GET_DeleteProgramsNV(disp) ((disp)->DeleteProgramsNV)
+#define SET_DeleteProgramsNV(disp, fn) ((disp)->DeleteProgramsNV = fn)
+#define CALL_ExecuteProgramNV(disp, parameters) (*((disp)->ExecuteProgramNV)) parameters
+#define GET_ExecuteProgramNV(disp) ((disp)->ExecuteProgramNV)
+#define SET_ExecuteProgramNV(disp, fn) ((disp)->ExecuteProgramNV = fn)
+#define CALL_GenProgramsNV(disp, parameters) (*((disp)->GenProgramsNV)) parameters
+#define GET_GenProgramsNV(disp) ((disp)->GenProgramsNV)
+#define SET_GenProgramsNV(disp, fn) ((disp)->GenProgramsNV = fn)
+#define CALL_GetProgramParameterdvNV(disp, parameters) (*((disp)->GetProgramParameterdvNV)) parameters
+#define GET_GetProgramParameterdvNV(disp) ((disp)->GetProgramParameterdvNV)
+#define SET_GetProgramParameterdvNV(disp, fn) ((disp)->GetProgramParameterdvNV = fn)
+#define CALL_GetProgramParameterfvNV(disp, parameters) (*((disp)->GetProgramParameterfvNV)) parameters
+#define GET_GetProgramParameterfvNV(disp) ((disp)->GetProgramParameterfvNV)
+#define SET_GetProgramParameterfvNV(disp, fn) ((disp)->GetProgramParameterfvNV = fn)
+#define CALL_GetProgramStringNV(disp, parameters) (*((disp)->GetProgramStringNV)) parameters
+#define GET_GetProgramStringNV(disp) ((disp)->GetProgramStringNV)
+#define SET_GetProgramStringNV(disp, fn) ((disp)->GetProgramStringNV = fn)
+#define CALL_GetProgramivNV(disp, parameters) (*((disp)->GetProgramivNV)) parameters
+#define GET_GetProgramivNV(disp) ((disp)->GetProgramivNV)
+#define SET_GetProgramivNV(disp, fn) ((disp)->GetProgramivNV = fn)
+#define CALL_GetTrackMatrixivNV(disp, parameters) (*((disp)->GetTrackMatrixivNV)) parameters
+#define GET_GetTrackMatrixivNV(disp) ((disp)->GetTrackMatrixivNV)
+#define SET_GetTrackMatrixivNV(disp, fn) ((disp)->GetTrackMatrixivNV = fn)
+#define CALL_GetVertexAttribPointervNV(disp, parameters) (*((disp)->GetVertexAttribPointervNV)) parameters
+#define GET_GetVertexAttribPointervNV(disp) ((disp)->GetVertexAttribPointervNV)
+#define SET_GetVertexAttribPointervNV(disp, fn) ((disp)->GetVertexAttribPointervNV = fn)
+#define CALL_GetVertexAttribdvNV(disp, parameters) (*((disp)->GetVertexAttribdvNV)) parameters
+#define GET_GetVertexAttribdvNV(disp) ((disp)->GetVertexAttribdvNV)
+#define SET_GetVertexAttribdvNV(disp, fn) ((disp)->GetVertexAttribdvNV = fn)
+#define CALL_GetVertexAttribfvNV(disp, parameters) (*((disp)->GetVertexAttribfvNV)) parameters
+#define GET_GetVertexAttribfvNV(disp) ((disp)->GetVertexAttribfvNV)
+#define SET_GetVertexAttribfvNV(disp, fn) ((disp)->GetVertexAttribfvNV = fn)
+#define CALL_GetVertexAttribivNV(disp, parameters) (*((disp)->GetVertexAttribivNV)) parameters
+#define GET_GetVertexAttribivNV(disp) ((disp)->GetVertexAttribivNV)
+#define SET_GetVertexAttribivNV(disp, fn) ((disp)->GetVertexAttribivNV = fn)
+#define CALL_IsProgramNV(disp, parameters) (*((disp)->IsProgramNV)) parameters
+#define GET_IsProgramNV(disp) ((disp)->IsProgramNV)
+#define SET_IsProgramNV(disp, fn) ((disp)->IsProgramNV = fn)
+#define CALL_LoadProgramNV(disp, parameters) (*((disp)->LoadProgramNV)) parameters
+#define GET_LoadProgramNV(disp) ((disp)->LoadProgramNV)
+#define SET_LoadProgramNV(disp, fn) ((disp)->LoadProgramNV = fn)
+#define CALL_ProgramParameters4dvNV(disp, parameters) (*((disp)->ProgramParameters4dvNV)) parameters
+#define GET_ProgramParameters4dvNV(disp) ((disp)->ProgramParameters4dvNV)
+#define SET_ProgramParameters4dvNV(disp, fn) ((disp)->ProgramParameters4dvNV = fn)
+#define CALL_ProgramParameters4fvNV(disp, parameters) (*((disp)->ProgramParameters4fvNV)) parameters
+#define GET_ProgramParameters4fvNV(disp) ((disp)->ProgramParameters4fvNV)
+#define SET_ProgramParameters4fvNV(disp, fn) ((disp)->ProgramParameters4fvNV = fn)
+#define CALL_RequestResidentProgramsNV(disp, parameters) (*((disp)->RequestResidentProgramsNV)) parameters
+#define GET_RequestResidentProgramsNV(disp) ((disp)->RequestResidentProgramsNV)
+#define SET_RequestResidentProgramsNV(disp, fn) ((disp)->RequestResidentProgramsNV = fn)
+#define CALL_TrackMatrixNV(disp, parameters) (*((disp)->TrackMatrixNV)) parameters
+#define GET_TrackMatrixNV(disp) ((disp)->TrackMatrixNV)
+#define SET_TrackMatrixNV(disp, fn) ((disp)->TrackMatrixNV = fn)
+#define CALL_VertexAttrib1dNV(disp, parameters) (*((disp)->VertexAttrib1dNV)) parameters
+#define GET_VertexAttrib1dNV(disp) ((disp)->VertexAttrib1dNV)
+#define SET_VertexAttrib1dNV(disp, fn) ((disp)->VertexAttrib1dNV = fn)
+#define CALL_VertexAttrib1dvNV(disp, parameters) (*((disp)->VertexAttrib1dvNV)) parameters
+#define GET_VertexAttrib1dvNV(disp) ((disp)->VertexAttrib1dvNV)
+#define SET_VertexAttrib1dvNV(disp, fn) ((disp)->VertexAttrib1dvNV = fn)
+#define CALL_VertexAttrib1fNV(disp, parameters) (*((disp)->VertexAttrib1fNV)) parameters
+#define GET_VertexAttrib1fNV(disp) ((disp)->VertexAttrib1fNV)
+#define SET_VertexAttrib1fNV(disp, fn) ((disp)->VertexAttrib1fNV = fn)
+#define CALL_VertexAttrib1fvNV(disp, parameters) (*((disp)->VertexAttrib1fvNV)) parameters
+#define GET_VertexAttrib1fvNV(disp) ((disp)->VertexAttrib1fvNV)
+#define SET_VertexAttrib1fvNV(disp, fn) ((disp)->VertexAttrib1fvNV = fn)
+#define CALL_VertexAttrib1sNV(disp, parameters) (*((disp)->VertexAttrib1sNV)) parameters
+#define GET_VertexAttrib1sNV(disp) ((disp)->VertexAttrib1sNV)
+#define SET_VertexAttrib1sNV(disp, fn) ((disp)->VertexAttrib1sNV = fn)
+#define CALL_VertexAttrib1svNV(disp, parameters) (*((disp)->VertexAttrib1svNV)) parameters
+#define GET_VertexAttrib1svNV(disp) ((disp)->VertexAttrib1svNV)
+#define SET_VertexAttrib1svNV(disp, fn) ((disp)->VertexAttrib1svNV = fn)
+#define CALL_VertexAttrib2dNV(disp, parameters) (*((disp)->VertexAttrib2dNV)) parameters
+#define GET_VertexAttrib2dNV(disp) ((disp)->VertexAttrib2dNV)
+#define SET_VertexAttrib2dNV(disp, fn) ((disp)->VertexAttrib2dNV = fn)
+#define CALL_VertexAttrib2dvNV(disp, parameters) (*((disp)->VertexAttrib2dvNV)) parameters
+#define GET_VertexAttrib2dvNV(disp) ((disp)->VertexAttrib2dvNV)
+#define SET_VertexAttrib2dvNV(disp, fn) ((disp)->VertexAttrib2dvNV = fn)
+#define CALL_VertexAttrib2fNV(disp, parameters) (*((disp)->VertexAttrib2fNV)) parameters
+#define GET_VertexAttrib2fNV(disp) ((disp)->VertexAttrib2fNV)
+#define SET_VertexAttrib2fNV(disp, fn) ((disp)->VertexAttrib2fNV = fn)
+#define CALL_VertexAttrib2fvNV(disp, parameters) (*((disp)->VertexAttrib2fvNV)) parameters
+#define GET_VertexAttrib2fvNV(disp) ((disp)->VertexAttrib2fvNV)
+#define SET_VertexAttrib2fvNV(disp, fn) ((disp)->VertexAttrib2fvNV = fn)
+#define CALL_VertexAttrib2sNV(disp, parameters) (*((disp)->VertexAttrib2sNV)) parameters
+#define GET_VertexAttrib2sNV(disp) ((disp)->VertexAttrib2sNV)
+#define SET_VertexAttrib2sNV(disp, fn) ((disp)->VertexAttrib2sNV = fn)
+#define CALL_VertexAttrib2svNV(disp, parameters) (*((disp)->VertexAttrib2svNV)) parameters
+#define GET_VertexAttrib2svNV(disp) ((disp)->VertexAttrib2svNV)
+#define SET_VertexAttrib2svNV(disp, fn) ((disp)->VertexAttrib2svNV = fn)
+#define CALL_VertexAttrib3dNV(disp, parameters) (*((disp)->VertexAttrib3dNV)) parameters
+#define GET_VertexAttrib3dNV(disp) ((disp)->VertexAttrib3dNV)
+#define SET_VertexAttrib3dNV(disp, fn) ((disp)->VertexAttrib3dNV = fn)
+#define CALL_VertexAttrib3dvNV(disp, parameters) (*((disp)->VertexAttrib3dvNV)) parameters
+#define GET_VertexAttrib3dvNV(disp) ((disp)->VertexAttrib3dvNV)
+#define SET_VertexAttrib3dvNV(disp, fn) ((disp)->VertexAttrib3dvNV = fn)
+#define CALL_VertexAttrib3fNV(disp, parameters) (*((disp)->VertexAttrib3fNV)) parameters
+#define GET_VertexAttrib3fNV(disp) ((disp)->VertexAttrib3fNV)
+#define SET_VertexAttrib3fNV(disp, fn) ((disp)->VertexAttrib3fNV = fn)
+#define CALL_VertexAttrib3fvNV(disp, parameters) (*((disp)->VertexAttrib3fvNV)) parameters
+#define GET_VertexAttrib3fvNV(disp) ((disp)->VertexAttrib3fvNV)
+#define SET_VertexAttrib3fvNV(disp, fn) ((disp)->VertexAttrib3fvNV = fn)
+#define CALL_VertexAttrib3sNV(disp, parameters) (*((disp)->VertexAttrib3sNV)) parameters
+#define GET_VertexAttrib3sNV(disp) ((disp)->VertexAttrib3sNV)
+#define SET_VertexAttrib3sNV(disp, fn) ((disp)->VertexAttrib3sNV = fn)
+#define CALL_VertexAttrib3svNV(disp, parameters) (*((disp)->VertexAttrib3svNV)) parameters
+#define GET_VertexAttrib3svNV(disp) ((disp)->VertexAttrib3svNV)
+#define SET_VertexAttrib3svNV(disp, fn) ((disp)->VertexAttrib3svNV = fn)
+#define CALL_VertexAttrib4dNV(disp, parameters) (*((disp)->VertexAttrib4dNV)) parameters
+#define GET_VertexAttrib4dNV(disp) ((disp)->VertexAttrib4dNV)
+#define SET_VertexAttrib4dNV(disp, fn) ((disp)->VertexAttrib4dNV = fn)
+#define CALL_VertexAttrib4dvNV(disp, parameters) (*((disp)->VertexAttrib4dvNV)) parameters
+#define GET_VertexAttrib4dvNV(disp) ((disp)->VertexAttrib4dvNV)
+#define SET_VertexAttrib4dvNV(disp, fn) ((disp)->VertexAttrib4dvNV = fn)
+#define CALL_VertexAttrib4fNV(disp, parameters) (*((disp)->VertexAttrib4fNV)) parameters
+#define GET_VertexAttrib4fNV(disp) ((disp)->VertexAttrib4fNV)
+#define SET_VertexAttrib4fNV(disp, fn) ((disp)->VertexAttrib4fNV = fn)
+#define CALL_VertexAttrib4fvNV(disp, parameters) (*((disp)->VertexAttrib4fvNV)) parameters
+#define GET_VertexAttrib4fvNV(disp) ((disp)->VertexAttrib4fvNV)
+#define SET_VertexAttrib4fvNV(disp, fn) ((disp)->VertexAttrib4fvNV = fn)
+#define CALL_VertexAttrib4sNV(disp, parameters) (*((disp)->VertexAttrib4sNV)) parameters
+#define GET_VertexAttrib4sNV(disp) ((disp)->VertexAttrib4sNV)
+#define SET_VertexAttrib4sNV(disp, fn) ((disp)->VertexAttrib4sNV = fn)
+#define CALL_VertexAttrib4svNV(disp, parameters) (*((disp)->VertexAttrib4svNV)) parameters
+#define GET_VertexAttrib4svNV(disp) ((disp)->VertexAttrib4svNV)
+#define SET_VertexAttrib4svNV(disp, fn) ((disp)->VertexAttrib4svNV = fn)
+#define CALL_VertexAttrib4ubNV(disp, parameters) (*((disp)->VertexAttrib4ubNV)) parameters
+#define GET_VertexAttrib4ubNV(disp) ((disp)->VertexAttrib4ubNV)
+#define SET_VertexAttrib4ubNV(disp, fn) ((disp)->VertexAttrib4ubNV = fn)
+#define CALL_VertexAttrib4ubvNV(disp, parameters) (*((disp)->VertexAttrib4ubvNV)) parameters
+#define GET_VertexAttrib4ubvNV(disp) ((disp)->VertexAttrib4ubvNV)
+#define SET_VertexAttrib4ubvNV(disp, fn) ((disp)->VertexAttrib4ubvNV = fn)
+#define CALL_VertexAttribPointerNV(disp, parameters) (*((disp)->VertexAttribPointerNV)) parameters
+#define GET_VertexAttribPointerNV(disp) ((disp)->VertexAttribPointerNV)
+#define SET_VertexAttribPointerNV(disp, fn) ((disp)->VertexAttribPointerNV = fn)
+#define CALL_VertexAttribs1dvNV(disp, parameters) (*((disp)->VertexAttribs1dvNV)) parameters
+#define GET_VertexAttribs1dvNV(disp) ((disp)->VertexAttribs1dvNV)
+#define SET_VertexAttribs1dvNV(disp, fn) ((disp)->VertexAttribs1dvNV = fn)
+#define CALL_VertexAttribs1fvNV(disp, parameters) (*((disp)->VertexAttribs1fvNV)) parameters
+#define GET_VertexAttribs1fvNV(disp) ((disp)->VertexAttribs1fvNV)
+#define SET_VertexAttribs1fvNV(disp, fn) ((disp)->VertexAttribs1fvNV = fn)
+#define CALL_VertexAttribs1svNV(disp, parameters) (*((disp)->VertexAttribs1svNV)) parameters
+#define GET_VertexAttribs1svNV(disp) ((disp)->VertexAttribs1svNV)
+#define SET_VertexAttribs1svNV(disp, fn) ((disp)->VertexAttribs1svNV = fn)
+#define CALL_VertexAttribs2dvNV(disp, parameters) (*((disp)->VertexAttribs2dvNV)) parameters
+#define GET_VertexAttribs2dvNV(disp) ((disp)->VertexAttribs2dvNV)
+#define SET_VertexAttribs2dvNV(disp, fn) ((disp)->VertexAttribs2dvNV = fn)
+#define CALL_VertexAttribs2fvNV(disp, parameters) (*((disp)->VertexAttribs2fvNV)) parameters
+#define GET_VertexAttribs2fvNV(disp) ((disp)->VertexAttribs2fvNV)
+#define SET_VertexAttribs2fvNV(disp, fn) ((disp)->VertexAttribs2fvNV = fn)
+#define CALL_VertexAttribs2svNV(disp, parameters) (*((disp)->VertexAttribs2svNV)) parameters
+#define GET_VertexAttribs2svNV(disp) ((disp)->VertexAttribs2svNV)
+#define SET_VertexAttribs2svNV(disp, fn) ((disp)->VertexAttribs2svNV = fn)
+#define CALL_VertexAttribs3dvNV(disp, parameters) (*((disp)->VertexAttribs3dvNV)) parameters
+#define GET_VertexAttribs3dvNV(disp) ((disp)->VertexAttribs3dvNV)
+#define SET_VertexAttribs3dvNV(disp, fn) ((disp)->VertexAttribs3dvNV = fn)
+#define CALL_VertexAttribs3fvNV(disp, parameters) (*((disp)->VertexAttribs3fvNV)) parameters
+#define GET_VertexAttribs3fvNV(disp) ((disp)->VertexAttribs3fvNV)
+#define SET_VertexAttribs3fvNV(disp, fn) ((disp)->VertexAttribs3fvNV = fn)
+#define CALL_VertexAttribs3svNV(disp, parameters) (*((disp)->VertexAttribs3svNV)) parameters
+#define GET_VertexAttribs3svNV(disp) ((disp)->VertexAttribs3svNV)
+#define SET_VertexAttribs3svNV(disp, fn) ((disp)->VertexAttribs3svNV = fn)
+#define CALL_VertexAttribs4dvNV(disp, parameters) (*((disp)->VertexAttribs4dvNV)) parameters
+#define GET_VertexAttribs4dvNV(disp) ((disp)->VertexAttribs4dvNV)
+#define SET_VertexAttribs4dvNV(disp, fn) ((disp)->VertexAttribs4dvNV = fn)
+#define CALL_VertexAttribs4fvNV(disp, parameters) (*((disp)->VertexAttribs4fvNV)) parameters
+#define GET_VertexAttribs4fvNV(disp) ((disp)->VertexAttribs4fvNV)
+#define SET_VertexAttribs4fvNV(disp, fn) ((disp)->VertexAttribs4fvNV = fn)
+#define CALL_VertexAttribs4svNV(disp, parameters) (*((disp)->VertexAttribs4svNV)) parameters
+#define GET_VertexAttribs4svNV(disp) ((disp)->VertexAttribs4svNV)
+#define SET_VertexAttribs4svNV(disp, fn) ((disp)->VertexAttribs4svNV = fn)
+#define CALL_VertexAttribs4ubvNV(disp, parameters) (*((disp)->VertexAttribs4ubvNV)) parameters
+#define GET_VertexAttribs4ubvNV(disp) ((disp)->VertexAttribs4ubvNV)
+#define SET_VertexAttribs4ubvNV(disp, fn) ((disp)->VertexAttribs4ubvNV = fn)
+#define CALL_GetTexBumpParameterfvATI(disp, parameters) (*((disp)->GetTexBumpParameterfvATI)) parameters
+#define GET_GetTexBumpParameterfvATI(disp) ((disp)->GetTexBumpParameterfvATI)
+#define SET_GetTexBumpParameterfvATI(disp, fn) ((disp)->GetTexBumpParameterfvATI = fn)
+#define CALL_GetTexBumpParameterivATI(disp, parameters) (*((disp)->GetTexBumpParameterivATI)) parameters
+#define GET_GetTexBumpParameterivATI(disp) ((disp)->GetTexBumpParameterivATI)
+#define SET_GetTexBumpParameterivATI(disp, fn) ((disp)->GetTexBumpParameterivATI = fn)
+#define CALL_TexBumpParameterfvATI(disp, parameters) (*((disp)->TexBumpParameterfvATI)) parameters
+#define GET_TexBumpParameterfvATI(disp) ((disp)->TexBumpParameterfvATI)
+#define SET_TexBumpParameterfvATI(disp, fn) ((disp)->TexBumpParameterfvATI = fn)
+#define CALL_TexBumpParameterivATI(disp, parameters) (*((disp)->TexBumpParameterivATI)) parameters
+#define GET_TexBumpParameterivATI(disp) ((disp)->TexBumpParameterivATI)
+#define SET_TexBumpParameterivATI(disp, fn) ((disp)->TexBumpParameterivATI = fn)
+#define CALL_AlphaFragmentOp1ATI(disp, parameters) (*((disp)->AlphaFragmentOp1ATI)) parameters
+#define GET_AlphaFragmentOp1ATI(disp) ((disp)->AlphaFragmentOp1ATI)
+#define SET_AlphaFragmentOp1ATI(disp, fn) ((disp)->AlphaFragmentOp1ATI = fn)
+#define CALL_AlphaFragmentOp2ATI(disp, parameters) (*((disp)->AlphaFragmentOp2ATI)) parameters
+#define GET_AlphaFragmentOp2ATI(disp) ((disp)->AlphaFragmentOp2ATI)
+#define SET_AlphaFragmentOp2ATI(disp, fn) ((disp)->AlphaFragmentOp2ATI = fn)
+#define CALL_AlphaFragmentOp3ATI(disp, parameters) (*((disp)->AlphaFragmentOp3ATI)) parameters
+#define GET_AlphaFragmentOp3ATI(disp) ((disp)->AlphaFragmentOp3ATI)
+#define SET_AlphaFragmentOp3ATI(disp, fn) ((disp)->AlphaFragmentOp3ATI = fn)
+#define CALL_BeginFragmentShaderATI(disp, parameters) (*((disp)->BeginFragmentShaderATI)) parameters
+#define GET_BeginFragmentShaderATI(disp) ((disp)->BeginFragmentShaderATI)
+#define SET_BeginFragmentShaderATI(disp, fn) ((disp)->BeginFragmentShaderATI = fn)
+#define CALL_BindFragmentShaderATI(disp, parameters) (*((disp)->BindFragmentShaderATI)) parameters
+#define GET_BindFragmentShaderATI(disp) ((disp)->BindFragmentShaderATI)
+#define SET_BindFragmentShaderATI(disp, fn) ((disp)->BindFragmentShaderATI = fn)
+#define CALL_ColorFragmentOp1ATI(disp, parameters) (*((disp)->ColorFragmentOp1ATI)) parameters
+#define GET_ColorFragmentOp1ATI(disp) ((disp)->ColorFragmentOp1ATI)
+#define SET_ColorFragmentOp1ATI(disp, fn) ((disp)->ColorFragmentOp1ATI = fn)
+#define CALL_ColorFragmentOp2ATI(disp, parameters) (*((disp)->ColorFragmentOp2ATI)) parameters
+#define GET_ColorFragmentOp2ATI(disp) ((disp)->ColorFragmentOp2ATI)
+#define SET_ColorFragmentOp2ATI(disp, fn) ((disp)->ColorFragmentOp2ATI = fn)
+#define CALL_ColorFragmentOp3ATI(disp, parameters) (*((disp)->ColorFragmentOp3ATI)) parameters
+#define GET_ColorFragmentOp3ATI(disp) ((disp)->ColorFragmentOp3ATI)
+#define SET_ColorFragmentOp3ATI(disp, fn) ((disp)->ColorFragmentOp3ATI = fn)
+#define CALL_DeleteFragmentShaderATI(disp, parameters) (*((disp)->DeleteFragmentShaderATI)) parameters
+#define GET_DeleteFragmentShaderATI(disp) ((disp)->DeleteFragmentShaderATI)
+#define SET_DeleteFragmentShaderATI(disp, fn) ((disp)->DeleteFragmentShaderATI = fn)
+#define CALL_EndFragmentShaderATI(disp, parameters) (*((disp)->EndFragmentShaderATI)) parameters
+#define GET_EndFragmentShaderATI(disp) ((disp)->EndFragmentShaderATI)
+#define SET_EndFragmentShaderATI(disp, fn) ((disp)->EndFragmentShaderATI = fn)
+#define CALL_GenFragmentShadersATI(disp, parameters) (*((disp)->GenFragmentShadersATI)) parameters
+#define GET_GenFragmentShadersATI(disp) ((disp)->GenFragmentShadersATI)
+#define SET_GenFragmentShadersATI(disp, fn) ((disp)->GenFragmentShadersATI = fn)
+#define CALL_PassTexCoordATI(disp, parameters) (*((disp)->PassTexCoordATI)) parameters
+#define GET_PassTexCoordATI(disp) ((disp)->PassTexCoordATI)
+#define SET_PassTexCoordATI(disp, fn) ((disp)->PassTexCoordATI = fn)
+#define CALL_SampleMapATI(disp, parameters) (*((disp)->SampleMapATI)) parameters
+#define GET_SampleMapATI(disp) ((disp)->SampleMapATI)
+#define SET_SampleMapATI(disp, fn) ((disp)->SampleMapATI = fn)
+#define CALL_SetFragmentShaderConstantATI(disp, parameters) (*((disp)->SetFragmentShaderConstantATI)) parameters
+#define GET_SetFragmentShaderConstantATI(disp) ((disp)->SetFragmentShaderConstantATI)
+#define SET_SetFragmentShaderConstantATI(disp, fn) ((disp)->SetFragmentShaderConstantATI = fn)
+#define CALL_PointParameteriNV(disp, parameters) (*((disp)->PointParameteriNV)) parameters
+#define GET_PointParameteriNV(disp) ((disp)->PointParameteriNV)
+#define SET_PointParameteriNV(disp, fn) ((disp)->PointParameteriNV = fn)
+#define CALL_PointParameterivNV(disp, parameters) (*((disp)->PointParameterivNV)) parameters
+#define GET_PointParameterivNV(disp) ((disp)->PointParameterivNV)
+#define SET_PointParameterivNV(disp, fn) ((disp)->PointParameterivNV = fn)
+#define CALL_ActiveStencilFaceEXT(disp, parameters) (*((disp)->ActiveStencilFaceEXT)) parameters
+#define GET_ActiveStencilFaceEXT(disp) ((disp)->ActiveStencilFaceEXT)
+#define SET_ActiveStencilFaceEXT(disp, fn) ((disp)->ActiveStencilFaceEXT = fn)
+#define CALL_BindVertexArrayAPPLE(disp, parameters) (*((disp)->BindVertexArrayAPPLE)) parameters
+#define GET_BindVertexArrayAPPLE(disp) ((disp)->BindVertexArrayAPPLE)
+#define SET_BindVertexArrayAPPLE(disp, fn) ((disp)->BindVertexArrayAPPLE = fn)
+#define CALL_DeleteVertexArraysAPPLE(disp, parameters) (*((disp)->DeleteVertexArraysAPPLE)) parameters
+#define GET_DeleteVertexArraysAPPLE(disp) ((disp)->DeleteVertexArraysAPPLE)
+#define SET_DeleteVertexArraysAPPLE(disp, fn) ((disp)->DeleteVertexArraysAPPLE = fn)
+#define CALL_GenVertexArraysAPPLE(disp, parameters) (*((disp)->GenVertexArraysAPPLE)) parameters
+#define GET_GenVertexArraysAPPLE(disp) ((disp)->GenVertexArraysAPPLE)
+#define SET_GenVertexArraysAPPLE(disp, fn) ((disp)->GenVertexArraysAPPLE = fn)
+#define CALL_IsVertexArrayAPPLE(disp, parameters) (*((disp)->IsVertexArrayAPPLE)) parameters
+#define GET_IsVertexArrayAPPLE(disp) ((disp)->IsVertexArrayAPPLE)
+#define SET_IsVertexArrayAPPLE(disp, fn) ((disp)->IsVertexArrayAPPLE = fn)
+#define CALL_GetProgramNamedParameterdvNV(disp, parameters) (*((disp)->GetProgramNamedParameterdvNV)) parameters
+#define GET_GetProgramNamedParameterdvNV(disp) ((disp)->GetProgramNamedParameterdvNV)
+#define SET_GetProgramNamedParameterdvNV(disp, fn) ((disp)->GetProgramNamedParameterdvNV = fn)
+#define CALL_GetProgramNamedParameterfvNV(disp, parameters) (*((disp)->GetProgramNamedParameterfvNV)) parameters
+#define GET_GetProgramNamedParameterfvNV(disp) ((disp)->GetProgramNamedParameterfvNV)
+#define SET_GetProgramNamedParameterfvNV(disp, fn) ((disp)->GetProgramNamedParameterfvNV = fn)
+#define CALL_ProgramNamedParameter4dNV(disp, parameters) (*((disp)->ProgramNamedParameter4dNV)) parameters
+#define GET_ProgramNamedParameter4dNV(disp) ((disp)->ProgramNamedParameter4dNV)
+#define SET_ProgramNamedParameter4dNV(disp, fn) ((disp)->ProgramNamedParameter4dNV = fn)
+#define CALL_ProgramNamedParameter4dvNV(disp, parameters) (*((disp)->ProgramNamedParameter4dvNV)) parameters
+#define GET_ProgramNamedParameter4dvNV(disp) ((disp)->ProgramNamedParameter4dvNV)
+#define SET_ProgramNamedParameter4dvNV(disp, fn) ((disp)->ProgramNamedParameter4dvNV = fn)
+#define CALL_ProgramNamedParameter4fNV(disp, parameters) (*((disp)->ProgramNamedParameter4fNV)) parameters
+#define GET_ProgramNamedParameter4fNV(disp) ((disp)->ProgramNamedParameter4fNV)
+#define SET_ProgramNamedParameter4fNV(disp, fn) ((disp)->ProgramNamedParameter4fNV = fn)
+#define CALL_ProgramNamedParameter4fvNV(disp, parameters) (*((disp)->ProgramNamedParameter4fvNV)) parameters
+#define GET_ProgramNamedParameter4fvNV(disp) ((disp)->ProgramNamedParameter4fvNV)
+#define SET_ProgramNamedParameter4fvNV(disp, fn) ((disp)->ProgramNamedParameter4fvNV = fn)
+#define CALL_DepthBoundsEXT(disp, parameters) (*((disp)->DepthBoundsEXT)) parameters
+#define GET_DepthBoundsEXT(disp) ((disp)->DepthBoundsEXT)
+#define SET_DepthBoundsEXT(disp, fn) ((disp)->DepthBoundsEXT = fn)
+#define CALL_BlendEquationSeparateEXT(disp, parameters) (*((disp)->BlendEquationSeparateEXT)) parameters
+#define GET_BlendEquationSeparateEXT(disp) ((disp)->BlendEquationSeparateEXT)
+#define SET_BlendEquationSeparateEXT(disp, fn) ((disp)->BlendEquationSeparateEXT = fn)
+#define CALL_BindFramebufferEXT(disp, parameters) (*((disp)->BindFramebufferEXT)) parameters
+#define GET_BindFramebufferEXT(disp) ((disp)->BindFramebufferEXT)
+#define SET_BindFramebufferEXT(disp, fn) ((disp)->BindFramebufferEXT = fn)
+#define CALL_BindRenderbufferEXT(disp, parameters) (*((disp)->BindRenderbufferEXT)) parameters
+#define GET_BindRenderbufferEXT(disp) ((disp)->BindRenderbufferEXT)
+#define SET_BindRenderbufferEXT(disp, fn) ((disp)->BindRenderbufferEXT = fn)
+#define CALL_CheckFramebufferStatusEXT(disp, parameters) (*((disp)->CheckFramebufferStatusEXT)) parameters
+#define GET_CheckFramebufferStatusEXT(disp) ((disp)->CheckFramebufferStatusEXT)
+#define SET_CheckFramebufferStatusEXT(disp, fn) ((disp)->CheckFramebufferStatusEXT = fn)
+#define CALL_DeleteFramebuffersEXT(disp, parameters) (*((disp)->DeleteFramebuffersEXT)) parameters
+#define GET_DeleteFramebuffersEXT(disp) ((disp)->DeleteFramebuffersEXT)
+#define SET_DeleteFramebuffersEXT(disp, fn) ((disp)->DeleteFramebuffersEXT = fn)
+#define CALL_DeleteRenderbuffersEXT(disp, parameters) (*((disp)->DeleteRenderbuffersEXT)) parameters
+#define GET_DeleteRenderbuffersEXT(disp) ((disp)->DeleteRenderbuffersEXT)
+#define SET_DeleteRenderbuffersEXT(disp, fn) ((disp)->DeleteRenderbuffersEXT = fn)
+#define CALL_FramebufferRenderbufferEXT(disp, parameters) (*((disp)->FramebufferRenderbufferEXT)) parameters
+#define GET_FramebufferRenderbufferEXT(disp) ((disp)->FramebufferRenderbufferEXT)
+#define SET_FramebufferRenderbufferEXT(disp, fn) ((disp)->FramebufferRenderbufferEXT = fn)
+#define CALL_FramebufferTexture1DEXT(disp, parameters) (*((disp)->FramebufferTexture1DEXT)) parameters
+#define GET_FramebufferTexture1DEXT(disp) ((disp)->FramebufferTexture1DEXT)
+#define SET_FramebufferTexture1DEXT(disp, fn) ((disp)->FramebufferTexture1DEXT = fn)
+#define CALL_FramebufferTexture2DEXT(disp, parameters) (*((disp)->FramebufferTexture2DEXT)) parameters
+#define GET_FramebufferTexture2DEXT(disp) ((disp)->FramebufferTexture2DEXT)
+#define SET_FramebufferTexture2DEXT(disp, fn) ((disp)->FramebufferTexture2DEXT = fn)
+#define CALL_FramebufferTexture3DEXT(disp, parameters) (*((disp)->FramebufferTexture3DEXT)) parameters
+#define GET_FramebufferTexture3DEXT(disp) ((disp)->FramebufferTexture3DEXT)
+#define SET_FramebufferTexture3DEXT(disp, fn) ((disp)->FramebufferTexture3DEXT = fn)
+#define CALL_GenFramebuffersEXT(disp, parameters) (*((disp)->GenFramebuffersEXT)) parameters
+#define GET_GenFramebuffersEXT(disp) ((disp)->GenFramebuffersEXT)
+#define SET_GenFramebuffersEXT(disp, fn) ((disp)->GenFramebuffersEXT = fn)
+#define CALL_GenRenderbuffersEXT(disp, parameters) (*((disp)->GenRenderbuffersEXT)) parameters
+#define GET_GenRenderbuffersEXT(disp) ((disp)->GenRenderbuffersEXT)
+#define SET_GenRenderbuffersEXT(disp, fn) ((disp)->GenRenderbuffersEXT = fn)
+#define CALL_GenerateMipmapEXT(disp, parameters) (*((disp)->GenerateMipmapEXT)) parameters
+#define GET_GenerateMipmapEXT(disp) ((disp)->GenerateMipmapEXT)
+#define SET_GenerateMipmapEXT(disp, fn) ((disp)->GenerateMipmapEXT = fn)
+#define CALL_GetFramebufferAttachmentParameterivEXT(disp, parameters) (*((disp)->GetFramebufferAttachmentParameterivEXT)) parameters
+#define GET_GetFramebufferAttachmentParameterivEXT(disp) ((disp)->GetFramebufferAttachmentParameterivEXT)
+#define SET_GetFramebufferAttachmentParameterivEXT(disp, fn) ((disp)->GetFramebufferAttachmentParameterivEXT = fn)
+#define CALL_GetRenderbufferParameterivEXT(disp, parameters) (*((disp)->GetRenderbufferParameterivEXT)) parameters
+#define GET_GetRenderbufferParameterivEXT(disp) ((disp)->GetRenderbufferParameterivEXT)
+#define SET_GetRenderbufferParameterivEXT(disp, fn) ((disp)->GetRenderbufferParameterivEXT = fn)
+#define CALL_IsFramebufferEXT(disp, parameters) (*((disp)->IsFramebufferEXT)) parameters
+#define GET_IsFramebufferEXT(disp) ((disp)->IsFramebufferEXT)
+#define SET_IsFramebufferEXT(disp, fn) ((disp)->IsFramebufferEXT = fn)
+#define CALL_IsRenderbufferEXT(disp, parameters) (*((disp)->IsRenderbufferEXT)) parameters
+#define GET_IsRenderbufferEXT(disp) ((disp)->IsRenderbufferEXT)
+#define SET_IsRenderbufferEXT(disp, fn) ((disp)->IsRenderbufferEXT = fn)
+#define CALL_RenderbufferStorageEXT(disp, parameters) (*((disp)->RenderbufferStorageEXT)) parameters
+#define GET_RenderbufferStorageEXT(disp) ((disp)->RenderbufferStorageEXT)
+#define SET_RenderbufferStorageEXT(disp, fn) ((disp)->RenderbufferStorageEXT = fn)
+#define CALL_BlitFramebufferEXT(disp, parameters) (*((disp)->BlitFramebufferEXT)) parameters
+#define GET_BlitFramebufferEXT(disp) ((disp)->BlitFramebufferEXT)
+#define SET_BlitFramebufferEXT(disp, fn) ((disp)->BlitFramebufferEXT = fn)
+#define CALL_BufferParameteriAPPLE(disp, parameters) (*((disp)->BufferParameteriAPPLE)) parameters
+#define GET_BufferParameteriAPPLE(disp) ((disp)->BufferParameteriAPPLE)
+#define SET_BufferParameteriAPPLE(disp, fn) ((disp)->BufferParameteriAPPLE = fn)
+#define CALL_FlushMappedBufferRangeAPPLE(disp, parameters) (*((disp)->FlushMappedBufferRangeAPPLE)) parameters
+#define GET_FlushMappedBufferRangeAPPLE(disp) ((disp)->FlushMappedBufferRangeAPPLE)
+#define SET_FlushMappedBufferRangeAPPLE(disp, fn) ((disp)->FlushMappedBufferRangeAPPLE = fn)
+#define CALL_FramebufferTextureLayerEXT(disp, parameters) (*((disp)->FramebufferTextureLayerEXT)) parameters
+#define GET_FramebufferTextureLayerEXT(disp) ((disp)->FramebufferTextureLayerEXT)
+#define SET_FramebufferTextureLayerEXT(disp, fn) ((disp)->FramebufferTextureLayerEXT = fn)
+#define CALL_ColorMaskIndexedEXT(disp, parameters) (*((disp)->ColorMaskIndexedEXT)) parameters
+#define GET_ColorMaskIndexedEXT(disp) ((disp)->ColorMaskIndexedEXT)
+#define SET_ColorMaskIndexedEXT(disp, fn) ((disp)->ColorMaskIndexedEXT = fn)
+#define CALL_DisableIndexedEXT(disp, parameters) (*((disp)->DisableIndexedEXT)) parameters
+#define GET_DisableIndexedEXT(disp) ((disp)->DisableIndexedEXT)
+#define SET_DisableIndexedEXT(disp, fn) ((disp)->DisableIndexedEXT = fn)
+#define CALL_EnableIndexedEXT(disp, parameters) (*((disp)->EnableIndexedEXT)) parameters
+#define GET_EnableIndexedEXT(disp) ((disp)->EnableIndexedEXT)
+#define SET_EnableIndexedEXT(disp, fn) ((disp)->EnableIndexedEXT = fn)
+#define CALL_GetBooleanIndexedvEXT(disp, parameters) (*((disp)->GetBooleanIndexedvEXT)) parameters
+#define GET_GetBooleanIndexedvEXT(disp) ((disp)->GetBooleanIndexedvEXT)
+#define SET_GetBooleanIndexedvEXT(disp, fn) ((disp)->GetBooleanIndexedvEXT = fn)
+#define CALL_GetIntegerIndexedvEXT(disp, parameters) (*((disp)->GetIntegerIndexedvEXT)) parameters
+#define GET_GetIntegerIndexedvEXT(disp) ((disp)->GetIntegerIndexedvEXT)
+#define SET_GetIntegerIndexedvEXT(disp, fn) ((disp)->GetIntegerIndexedvEXT = fn)
+#define CALL_IsEnabledIndexedEXT(disp, parameters) (*((disp)->IsEnabledIndexedEXT)) parameters
+#define GET_IsEnabledIndexedEXT(disp) ((disp)->IsEnabledIndexedEXT)
+#define SET_IsEnabledIndexedEXT(disp, fn) ((disp)->IsEnabledIndexedEXT = fn)
+#define CALL_BeginConditionalRenderNV(disp, parameters) (*((disp)->BeginConditionalRenderNV)) parameters
+#define GET_BeginConditionalRenderNV(disp) ((disp)->BeginConditionalRenderNV)
+#define SET_BeginConditionalRenderNV(disp, fn) ((disp)->BeginConditionalRenderNV = fn)
+#define CALL_EndConditionalRenderNV(disp, parameters) (*((disp)->EndConditionalRenderNV)) parameters
+#define GET_EndConditionalRenderNV(disp) ((disp)->EndConditionalRenderNV)
+#define SET_EndConditionalRenderNV(disp, fn) ((disp)->EndConditionalRenderNV = fn)
+#define CALL_BeginTransformFeedbackEXT(disp, parameters) (*((disp)->BeginTransformFeedbackEXT)) parameters
+#define GET_BeginTransformFeedbackEXT(disp) ((disp)->BeginTransformFeedbackEXT)
+#define SET_BeginTransformFeedbackEXT(disp, fn) ((disp)->BeginTransformFeedbackEXT = fn)
+#define CALL_BindBufferBaseEXT(disp, parameters) (*((disp)->BindBufferBaseEXT)) parameters
+#define GET_BindBufferBaseEXT(disp) ((disp)->BindBufferBaseEXT)
+#define SET_BindBufferBaseEXT(disp, fn) ((disp)->BindBufferBaseEXT = fn)
+#define CALL_BindBufferOffsetEXT(disp, parameters) (*((disp)->BindBufferOffsetEXT)) parameters
+#define GET_BindBufferOffsetEXT(disp) ((disp)->BindBufferOffsetEXT)
+#define SET_BindBufferOffsetEXT(disp, fn) ((disp)->BindBufferOffsetEXT = fn)
+#define CALL_BindBufferRangeEXT(disp, parameters) (*((disp)->BindBufferRangeEXT)) parameters
+#define GET_BindBufferRangeEXT(disp) ((disp)->BindBufferRangeEXT)
+#define SET_BindBufferRangeEXT(disp, fn) ((disp)->BindBufferRangeEXT = fn)
+#define CALL_EndTransformFeedbackEXT(disp, parameters) (*((disp)->EndTransformFeedbackEXT)) parameters
+#define GET_EndTransformFeedbackEXT(disp) ((disp)->EndTransformFeedbackEXT)
+#define SET_EndTransformFeedbackEXT(disp, fn) ((disp)->EndTransformFeedbackEXT = fn)
+#define CALL_GetTransformFeedbackVaryingEXT(disp, parameters) (*((disp)->GetTransformFeedbackVaryingEXT)) parameters
+#define GET_GetTransformFeedbackVaryingEXT(disp) ((disp)->GetTransformFeedbackVaryingEXT)
+#define SET_GetTransformFeedbackVaryingEXT(disp, fn) ((disp)->GetTransformFeedbackVaryingEXT = fn)
+#define CALL_TransformFeedbackVaryingsEXT(disp, parameters) (*((disp)->TransformFeedbackVaryingsEXT)) parameters
+#define GET_TransformFeedbackVaryingsEXT(disp) ((disp)->TransformFeedbackVaryingsEXT)
+#define SET_TransformFeedbackVaryingsEXT(disp, fn) ((disp)->TransformFeedbackVaryingsEXT = fn)
+#define CALL_ProvokingVertexEXT(disp, parameters) (*((disp)->ProvokingVertexEXT)) parameters
+#define GET_ProvokingVertexEXT(disp) ((disp)->ProvokingVertexEXT)
+#define SET_ProvokingVertexEXT(disp, fn) ((disp)->ProvokingVertexEXT = fn)
+#define CALL_GetTexParameterPointervAPPLE(disp, parameters) (*((disp)->GetTexParameterPointervAPPLE)) parameters
+#define GET_GetTexParameterPointervAPPLE(disp) ((disp)->GetTexParameterPointervAPPLE)
+#define SET_GetTexParameterPointervAPPLE(disp, fn) ((disp)->GetTexParameterPointervAPPLE = fn)
+#define CALL_TextureRangeAPPLE(disp, parameters) (*((disp)->TextureRangeAPPLE)) parameters
+#define GET_TextureRangeAPPLE(disp) ((disp)->TextureRangeAPPLE)
+#define SET_TextureRangeAPPLE(disp, fn) ((disp)->TextureRangeAPPLE = fn)
+#define CALL_GetObjectParameterivAPPLE(disp, parameters) (*((disp)->GetObjectParameterivAPPLE)) parameters
+#define GET_GetObjectParameterivAPPLE(disp) ((disp)->GetObjectParameterivAPPLE)
+#define SET_GetObjectParameterivAPPLE(disp, fn) ((disp)->GetObjectParameterivAPPLE = fn)
+#define CALL_ObjectPurgeableAPPLE(disp, parameters) (*((disp)->ObjectPurgeableAPPLE)) parameters
+#define GET_ObjectPurgeableAPPLE(disp) ((disp)->ObjectPurgeableAPPLE)
+#define SET_ObjectPurgeableAPPLE(disp, fn) ((disp)->ObjectPurgeableAPPLE = fn)
+#define CALL_ObjectUnpurgeableAPPLE(disp, parameters) (*((disp)->ObjectUnpurgeableAPPLE)) parameters
+#define GET_ObjectUnpurgeableAPPLE(disp) ((disp)->ObjectUnpurgeableAPPLE)
+#define SET_ObjectUnpurgeableAPPLE(disp, fn) ((disp)->ObjectUnpurgeableAPPLE = fn)
+#define CALL_StencilFuncSeparateATI(disp, parameters) (*((disp)->StencilFuncSeparateATI)) parameters
+#define GET_StencilFuncSeparateATI(disp) ((disp)->StencilFuncSeparateATI)
+#define SET_StencilFuncSeparateATI(disp, fn) ((disp)->StencilFuncSeparateATI = fn)
+#define CALL_ProgramEnvParameters4fvEXT(disp, parameters) (*((disp)->ProgramEnvParameters4fvEXT)) parameters
+#define GET_ProgramEnvParameters4fvEXT(disp) ((disp)->ProgramEnvParameters4fvEXT)
+#define SET_ProgramEnvParameters4fvEXT(disp, fn) ((disp)->ProgramEnvParameters4fvEXT = fn)
+#define CALL_ProgramLocalParameters4fvEXT(disp, parameters) (*((disp)->ProgramLocalParameters4fvEXT)) parameters
+#define GET_ProgramLocalParameters4fvEXT(disp) ((disp)->ProgramLocalParameters4fvEXT)
+#define SET_ProgramLocalParameters4fvEXT(disp, fn) ((disp)->ProgramLocalParameters4fvEXT = fn)
+#define CALL_GetQueryObjecti64vEXT(disp, parameters) (*((disp)->GetQueryObjecti64vEXT)) parameters
+#define GET_GetQueryObjecti64vEXT(disp) ((disp)->GetQueryObjecti64vEXT)
+#define SET_GetQueryObjecti64vEXT(disp, fn) ((disp)->GetQueryObjecti64vEXT = fn)
+#define CALL_GetQueryObjectui64vEXT(disp, parameters) (*((disp)->GetQueryObjectui64vEXT)) parameters
+#define GET_GetQueryObjectui64vEXT(disp) ((disp)->GetQueryObjectui64vEXT)
+#define SET_GetQueryObjectui64vEXT(disp, fn) ((disp)->GetQueryObjectui64vEXT = fn)
+#define CALL_EGLImageTargetRenderbufferStorageOES(disp, parameters) (*((disp)->EGLImageTargetRenderbufferStorageOES)) parameters
+#define GET_EGLImageTargetRenderbufferStorageOES(disp) ((disp)->EGLImageTargetRenderbufferStorageOES)
+#define SET_EGLImageTargetRenderbufferStorageOES(disp, fn) ((disp)->EGLImageTargetRenderbufferStorageOES = fn)
+#define CALL_EGLImageTargetTexture2DOES(disp, parameters) (*((disp)->EGLImageTargetTexture2DOES)) parameters
+#define GET_EGLImageTargetTexture2DOES(disp) ((disp)->EGLImageTargetTexture2DOES)
+#define SET_EGLImageTargetTexture2DOES(disp, fn) ((disp)->EGLImageTargetTexture2DOES = fn)
+
+#else
+
+#define driDispatchRemapTable_size 409
+extern int driDispatchRemapTable[ driDispatchRemapTable_size ];
+
+#define AttachShader_remap_index 0
+#define CreateProgram_remap_index 1
+#define CreateShader_remap_index 2
+#define DeleteProgram_remap_index 3
+#define DeleteShader_remap_index 4
+#define DetachShader_remap_index 5
+#define GetAttachedShaders_remap_index 6
+#define GetProgramInfoLog_remap_index 7
+#define GetProgramiv_remap_index 8
+#define GetShaderInfoLog_remap_index 9
+#define GetShaderiv_remap_index 10
+#define IsProgram_remap_index 11
+#define IsShader_remap_index 12
+#define StencilFuncSeparate_remap_index 13
+#define StencilMaskSeparate_remap_index 14
+#define StencilOpSeparate_remap_index 15
+#define UniformMatrix2x3fv_remap_index 16
+#define UniformMatrix2x4fv_remap_index 17
+#define UniformMatrix3x2fv_remap_index 18
+#define UniformMatrix3x4fv_remap_index 19
+#define UniformMatrix4x2fv_remap_index 20
+#define UniformMatrix4x3fv_remap_index 21
+#define DrawArraysInstanced_remap_index 22
+#define DrawElementsInstanced_remap_index 23
+#define LoadTransposeMatrixdARB_remap_index 24
+#define LoadTransposeMatrixfARB_remap_index 25
+#define MultTransposeMatrixdARB_remap_index 26
+#define MultTransposeMatrixfARB_remap_index 27
+#define SampleCoverageARB_remap_index 28
+#define CompressedTexImage1DARB_remap_index 29
+#define CompressedTexImage2DARB_remap_index 30
+#define CompressedTexImage3DARB_remap_index 31
+#define CompressedTexSubImage1DARB_remap_index 32
+#define CompressedTexSubImage2DARB_remap_index 33
+#define CompressedTexSubImage3DARB_remap_index 34
+#define GetCompressedTexImageARB_remap_index 35
+#define DisableVertexAttribArrayARB_remap_index 36
+#define EnableVertexAttribArrayARB_remap_index 37
+#define GetProgramEnvParameterdvARB_remap_index 38
+#define GetProgramEnvParameterfvARB_remap_index 39
+#define GetProgramLocalParameterdvARB_remap_index 40
+#define GetProgramLocalParameterfvARB_remap_index 41
+#define GetProgramStringARB_remap_index 42
+#define GetProgramivARB_remap_index 43
+#define GetVertexAttribdvARB_remap_index 44
+#define GetVertexAttribfvARB_remap_index 45
+#define GetVertexAttribivARB_remap_index 46
+#define ProgramEnvParameter4dARB_remap_index 47
+#define ProgramEnvParameter4dvARB_remap_index 48
+#define ProgramEnvParameter4fARB_remap_index 49
+#define ProgramEnvParameter4fvARB_remap_index 50
+#define ProgramLocalParameter4dARB_remap_index 51
+#define ProgramLocalParameter4dvARB_remap_index 52
+#define ProgramLocalParameter4fARB_remap_index 53
+#define ProgramLocalParameter4fvARB_remap_index 54
+#define ProgramStringARB_remap_index 55
+#define VertexAttrib1dARB_remap_index 56
+#define VertexAttrib1dvARB_remap_index 57
+#define VertexAttrib1fARB_remap_index 58
+#define VertexAttrib1fvARB_remap_index 59
+#define VertexAttrib1sARB_remap_index 60
+#define VertexAttrib1svARB_remap_index 61
+#define VertexAttrib2dARB_remap_index 62
+#define VertexAttrib2dvARB_remap_index 63
+#define VertexAttrib2fARB_remap_index 64
+#define VertexAttrib2fvARB_remap_index 65
+#define VertexAttrib2sARB_remap_index 66
+#define VertexAttrib2svARB_remap_index 67
+#define VertexAttrib3dARB_remap_index 68
+#define VertexAttrib3dvARB_remap_index 69
+#define VertexAttrib3fARB_remap_index 70
+#define VertexAttrib3fvARB_remap_index 71
+#define VertexAttrib3sARB_remap_index 72
+#define VertexAttrib3svARB_remap_index 73
+#define VertexAttrib4NbvARB_remap_index 74
+#define VertexAttrib4NivARB_remap_index 75
+#define VertexAttrib4NsvARB_remap_index 76
+#define VertexAttrib4NubARB_remap_index 77
+#define VertexAttrib4NubvARB_remap_index 78
+#define VertexAttrib4NuivARB_remap_index 79
+#define VertexAttrib4NusvARB_remap_index 80
+#define VertexAttrib4bvARB_remap_index 81
+#define VertexAttrib4dARB_remap_index 82
+#define VertexAttrib4dvARB_remap_index 83
+#define VertexAttrib4fARB_remap_index 84
+#define VertexAttrib4fvARB_remap_index 85
+#define VertexAttrib4ivARB_remap_index 86
+#define VertexAttrib4sARB_remap_index 87
+#define VertexAttrib4svARB_remap_index 88
+#define VertexAttrib4ubvARB_remap_index 89
+#define VertexAttrib4uivARB_remap_index 90
+#define VertexAttrib4usvARB_remap_index 91
+#define VertexAttribPointerARB_remap_index 92
+#define BindBufferARB_remap_index 93
+#define BufferDataARB_remap_index 94
+#define BufferSubDataARB_remap_index 95
+#define DeleteBuffersARB_remap_index 96
+#define GenBuffersARB_remap_index 97
+#define GetBufferParameterivARB_remap_index 98
+#define GetBufferPointervARB_remap_index 99
+#define GetBufferSubDataARB_remap_index 100
+#define IsBufferARB_remap_index 101
+#define MapBufferARB_remap_index 102
+#define UnmapBufferARB_remap_index 103
+#define BeginQueryARB_remap_index 104
+#define DeleteQueriesARB_remap_index 105
+#define EndQueryARB_remap_index 106
+#define GenQueriesARB_remap_index 107
+#define GetQueryObjectivARB_remap_index 108
+#define GetQueryObjectuivARB_remap_index 109
+#define GetQueryivARB_remap_index 110
+#define IsQueryARB_remap_index 111
+#define AttachObjectARB_remap_index 112
+#define CompileShaderARB_remap_index 113
+#define CreateProgramObjectARB_remap_index 114
+#define CreateShaderObjectARB_remap_index 115
+#define DeleteObjectARB_remap_index 116
+#define DetachObjectARB_remap_index 117
+#define GetActiveUniformARB_remap_index 118
+#define GetAttachedObjectsARB_remap_index 119
+#define GetHandleARB_remap_index 120
+#define GetInfoLogARB_remap_index 121
+#define GetObjectParameterfvARB_remap_index 122
+#define GetObjectParameterivARB_remap_index 123
+#define GetShaderSourceARB_remap_index 124
+#define GetUniformLocationARB_remap_index 125
+#define GetUniformfvARB_remap_index 126
+#define GetUniformivARB_remap_index 127
+#define LinkProgramARB_remap_index 128
+#define ShaderSourceARB_remap_index 129
+#define Uniform1fARB_remap_index 130
+#define Uniform1fvARB_remap_index 131
+#define Uniform1iARB_remap_index 132
+#define Uniform1ivARB_remap_index 133
+#define Uniform2fARB_remap_index 134
+#define Uniform2fvARB_remap_index 135
+#define Uniform2iARB_remap_index 136
+#define Uniform2ivARB_remap_index 137
+#define Uniform3fARB_remap_index 138
+#define Uniform3fvARB_remap_index 139
+#define Uniform3iARB_remap_index 140
+#define Uniform3ivARB_remap_index 141
+#define Uniform4fARB_remap_index 142
+#define Uniform4fvARB_remap_index 143
+#define Uniform4iARB_remap_index 144
+#define Uniform4ivARB_remap_index 145
+#define UniformMatrix2fvARB_remap_index 146
+#define UniformMatrix3fvARB_remap_index 147
+#define UniformMatrix4fvARB_remap_index 148
+#define UseProgramObjectARB_remap_index 149
+#define ValidateProgramARB_remap_index 150
+#define BindAttribLocationARB_remap_index 151
+#define GetActiveAttribARB_remap_index 152
+#define GetAttribLocationARB_remap_index 153
+#define DrawBuffersARB_remap_index 154
+#define RenderbufferStorageMultisample_remap_index 155
+#define FlushMappedBufferRange_remap_index 156
+#define MapBufferRange_remap_index 157
+#define BindVertexArray_remap_index 158
+#define GenVertexArrays_remap_index 159
+#define CopyBufferSubData_remap_index 160
+#define ClientWaitSync_remap_index 161
+#define DeleteSync_remap_index 162
+#define FenceSync_remap_index 163
+#define GetInteger64v_remap_index 164
+#define GetSynciv_remap_index 165
+#define IsSync_remap_index 166
+#define WaitSync_remap_index 167
+#define DrawElementsBaseVertex_remap_index 168
+#define DrawRangeElementsBaseVertex_remap_index 169
+#define MultiDrawElementsBaseVertex_remap_index 170
+#define PolygonOffsetEXT_remap_index 171
+#define GetPixelTexGenParameterfvSGIS_remap_index 172
+#define GetPixelTexGenParameterivSGIS_remap_index 173
+#define PixelTexGenParameterfSGIS_remap_index 174
+#define PixelTexGenParameterfvSGIS_remap_index 175
+#define PixelTexGenParameteriSGIS_remap_index 176
+#define PixelTexGenParameterivSGIS_remap_index 177
+#define SampleMaskSGIS_remap_index 178
+#define SamplePatternSGIS_remap_index 179
+#define ColorPointerEXT_remap_index 180
+#define EdgeFlagPointerEXT_remap_index 181
+#define IndexPointerEXT_remap_index 182
+#define NormalPointerEXT_remap_index 183
+#define TexCoordPointerEXT_remap_index 184
+#define VertexPointerEXT_remap_index 185
+#define PointParameterfEXT_remap_index 186
+#define PointParameterfvEXT_remap_index 187
+#define LockArraysEXT_remap_index 188
+#define UnlockArraysEXT_remap_index 189
+#define CullParameterdvEXT_remap_index 190
+#define CullParameterfvEXT_remap_index 191
+#define SecondaryColor3bEXT_remap_index 192
+#define SecondaryColor3bvEXT_remap_index 193
+#define SecondaryColor3dEXT_remap_index 194
+#define SecondaryColor3dvEXT_remap_index 195
+#define SecondaryColor3fEXT_remap_index 196
+#define SecondaryColor3fvEXT_remap_index 197
+#define SecondaryColor3iEXT_remap_index 198
+#define SecondaryColor3ivEXT_remap_index 199
+#define SecondaryColor3sEXT_remap_index 200
+#define SecondaryColor3svEXT_remap_index 201
+#define SecondaryColor3ubEXT_remap_index 202
+#define SecondaryColor3ubvEXT_remap_index 203
+#define SecondaryColor3uiEXT_remap_index 204
+#define SecondaryColor3uivEXT_remap_index 205
+#define SecondaryColor3usEXT_remap_index 206
+#define SecondaryColor3usvEXT_remap_index 207
+#define SecondaryColorPointerEXT_remap_index 208
+#define MultiDrawArraysEXT_remap_index 209
+#define MultiDrawElementsEXT_remap_index 210
+#define FogCoordPointerEXT_remap_index 211
+#define FogCoorddEXT_remap_index 212
+#define FogCoorddvEXT_remap_index 213
+#define FogCoordfEXT_remap_index 214
+#define FogCoordfvEXT_remap_index 215
+#define PixelTexGenSGIX_remap_index 216
+#define BlendFuncSeparateEXT_remap_index 217
+#define FlushVertexArrayRangeNV_remap_index 218
+#define VertexArrayRangeNV_remap_index 219
+#define CombinerInputNV_remap_index 220
+#define CombinerOutputNV_remap_index 221
+#define CombinerParameterfNV_remap_index 222
+#define CombinerParameterfvNV_remap_index 223
+#define CombinerParameteriNV_remap_index 224
+#define CombinerParameterivNV_remap_index 225
+#define FinalCombinerInputNV_remap_index 226
+#define GetCombinerInputParameterfvNV_remap_index 227
+#define GetCombinerInputParameterivNV_remap_index 228
+#define GetCombinerOutputParameterfvNV_remap_index 229
+#define GetCombinerOutputParameterivNV_remap_index 230
+#define GetFinalCombinerInputParameterfvNV_remap_index 231
+#define GetFinalCombinerInputParameterivNV_remap_index 232
+#define ResizeBuffersMESA_remap_index 233
+#define WindowPos2dMESA_remap_index 234
+#define WindowPos2dvMESA_remap_index 235
+#define WindowPos2fMESA_remap_index 236
+#define WindowPos2fvMESA_remap_index 237
+#define WindowPos2iMESA_remap_index 238
+#define WindowPos2ivMESA_remap_index 239
+#define WindowPos2sMESA_remap_index 240
+#define WindowPos2svMESA_remap_index 241
+#define WindowPos3dMESA_remap_index 242
+#define WindowPos3dvMESA_remap_index 243
+#define WindowPos3fMESA_remap_index 244
+#define WindowPos3fvMESA_remap_index 245
+#define WindowPos3iMESA_remap_index 246
+#define WindowPos3ivMESA_remap_index 247
+#define WindowPos3sMESA_remap_index 248
+#define WindowPos3svMESA_remap_index 249
+#define WindowPos4dMESA_remap_index 250
+#define WindowPos4dvMESA_remap_index 251
+#define WindowPos4fMESA_remap_index 252
+#define WindowPos4fvMESA_remap_index 253
+#define WindowPos4iMESA_remap_index 254
+#define WindowPos4ivMESA_remap_index 255
+#define WindowPos4sMESA_remap_index 256
+#define WindowPos4svMESA_remap_index 257
+#define MultiModeDrawArraysIBM_remap_index 258
+#define MultiModeDrawElementsIBM_remap_index 259
+#define DeleteFencesNV_remap_index 260
+#define FinishFenceNV_remap_index 261
+#define GenFencesNV_remap_index 262
+#define GetFenceivNV_remap_index 263
+#define IsFenceNV_remap_index 264
+#define SetFenceNV_remap_index 265
+#define TestFenceNV_remap_index 266
+#define AreProgramsResidentNV_remap_index 267
+#define BindProgramNV_remap_index 268
+#define DeleteProgramsNV_remap_index 269
+#define ExecuteProgramNV_remap_index 270
+#define GenProgramsNV_remap_index 271
+#define GetProgramParameterdvNV_remap_index 272
+#define GetProgramParameterfvNV_remap_index 273
+#define GetProgramStringNV_remap_index 274
+#define GetProgramivNV_remap_index 275
+#define GetTrackMatrixivNV_remap_index 276
+#define GetVertexAttribPointervNV_remap_index 277
+#define GetVertexAttribdvNV_remap_index 278
+#define GetVertexAttribfvNV_remap_index 279
+#define GetVertexAttribivNV_remap_index 280
+#define IsProgramNV_remap_index 281
+#define LoadProgramNV_remap_index 282
+#define ProgramParameters4dvNV_remap_index 283
+#define ProgramParameters4fvNV_remap_index 284
+#define RequestResidentProgramsNV_remap_index 285
+#define TrackMatrixNV_remap_index 286
+#define VertexAttrib1dNV_remap_index 287
+#define VertexAttrib1dvNV_remap_index 288
+#define VertexAttrib1fNV_remap_index 289
+#define VertexAttrib1fvNV_remap_index 290
+#define VertexAttrib1sNV_remap_index 291
+#define VertexAttrib1svNV_remap_index 292
+#define VertexAttrib2dNV_remap_index 293
+#define VertexAttrib2dvNV_remap_index 294
+#define VertexAttrib2fNV_remap_index 295
+#define VertexAttrib2fvNV_remap_index 296
+#define VertexAttrib2sNV_remap_index 297
+#define VertexAttrib2svNV_remap_index 298
+#define VertexAttrib3dNV_remap_index 299
+#define VertexAttrib3dvNV_remap_index 300
+#define VertexAttrib3fNV_remap_index 301
+#define VertexAttrib3fvNV_remap_index 302
+#define VertexAttrib3sNV_remap_index 303
+#define VertexAttrib3svNV_remap_index 304
+#define VertexAttrib4dNV_remap_index 305
+#define VertexAttrib4dvNV_remap_index 306
+#define VertexAttrib4fNV_remap_index 307
+#define VertexAttrib4fvNV_remap_index 308
+#define VertexAttrib4sNV_remap_index 309
+#define VertexAttrib4svNV_remap_index 310
+#define VertexAttrib4ubNV_remap_index 311
+#define VertexAttrib4ubvNV_remap_index 312
+#define VertexAttribPointerNV_remap_index 313
+#define VertexAttribs1dvNV_remap_index 314
+#define VertexAttribs1fvNV_remap_index 315
+#define VertexAttribs1svNV_remap_index 316
+#define VertexAttribs2dvNV_remap_index 317
+#define VertexAttribs2fvNV_remap_index 318
+#define VertexAttribs2svNV_remap_index 319
+#define VertexAttribs3dvNV_remap_index 320
+#define VertexAttribs3fvNV_remap_index 321
+#define VertexAttribs3svNV_remap_index 322
+#define VertexAttribs4dvNV_remap_index 323
+#define VertexAttribs4fvNV_remap_index 324
+#define VertexAttribs4svNV_remap_index 325
+#define VertexAttribs4ubvNV_remap_index 326
+#define GetTexBumpParameterfvATI_remap_index 327
+#define GetTexBumpParameterivATI_remap_index 328
+#define TexBumpParameterfvATI_remap_index 329
+#define TexBumpParameterivATI_remap_index 330
+#define AlphaFragmentOp1ATI_remap_index 331
+#define AlphaFragmentOp2ATI_remap_index 332
+#define AlphaFragmentOp3ATI_remap_index 333
+#define BeginFragmentShaderATI_remap_index 334
+#define BindFragmentShaderATI_remap_index 335
+#define ColorFragmentOp1ATI_remap_index 336
+#define ColorFragmentOp2ATI_remap_index 337
+#define ColorFragmentOp3ATI_remap_index 338
+#define DeleteFragmentShaderATI_remap_index 339
+#define EndFragmentShaderATI_remap_index 340
+#define GenFragmentShadersATI_remap_index 341
+#define PassTexCoordATI_remap_index 342
+#define SampleMapATI_remap_index 343
+#define SetFragmentShaderConstantATI_remap_index 344
+#define PointParameteriNV_remap_index 345
+#define PointParameterivNV_remap_index 346
+#define ActiveStencilFaceEXT_remap_index 347
+#define BindVertexArrayAPPLE_remap_index 348
+#define DeleteVertexArraysAPPLE_remap_index 349
+#define GenVertexArraysAPPLE_remap_index 350
+#define IsVertexArrayAPPLE_remap_index 351
+#define GetProgramNamedParameterdvNV_remap_index 352
+#define GetProgramNamedParameterfvNV_remap_index 353
+#define ProgramNamedParameter4dNV_remap_index 354
+#define ProgramNamedParameter4dvNV_remap_index 355
+#define ProgramNamedParameter4fNV_remap_index 356
+#define ProgramNamedParameter4fvNV_remap_index 357
+#define DepthBoundsEXT_remap_index 358
+#define BlendEquationSeparateEXT_remap_index 359
+#define BindFramebufferEXT_remap_index 360
+#define BindRenderbufferEXT_remap_index 361
+#define CheckFramebufferStatusEXT_remap_index 362
+#define DeleteFramebuffersEXT_remap_index 363
+#define DeleteRenderbuffersEXT_remap_index 364
+#define FramebufferRenderbufferEXT_remap_index 365
+#define FramebufferTexture1DEXT_remap_index 366
+#define FramebufferTexture2DEXT_remap_index 367
+#define FramebufferTexture3DEXT_remap_index 368
+#define GenFramebuffersEXT_remap_index 369
+#define GenRenderbuffersEXT_remap_index 370
+#define GenerateMipmapEXT_remap_index 371
+#define GetFramebufferAttachmentParameterivEXT_remap_index 372
+#define GetRenderbufferParameterivEXT_remap_index 373
+#define IsFramebufferEXT_remap_index 374
+#define IsRenderbufferEXT_remap_index 375
+#define RenderbufferStorageEXT_remap_index 376
+#define BlitFramebufferEXT_remap_index 377
+#define BufferParameteriAPPLE_remap_index 378
+#define FlushMappedBufferRangeAPPLE_remap_index 379
+#define FramebufferTextureLayerEXT_remap_index 380
+#define ColorMaskIndexedEXT_remap_index 381
+#define DisableIndexedEXT_remap_index 382
+#define EnableIndexedEXT_remap_index 383
+#define GetBooleanIndexedvEXT_remap_index 384
+#define GetIntegerIndexedvEXT_remap_index 385
+#define IsEnabledIndexedEXT_remap_index 386
+#define BeginConditionalRenderNV_remap_index 387
+#define EndConditionalRenderNV_remap_index 388
+#define BeginTransformFeedbackEXT_remap_index 389
+#define BindBufferBaseEXT_remap_index 390
+#define BindBufferOffsetEXT_remap_index 391
+#define BindBufferRangeEXT_remap_index 392
+#define EndTransformFeedbackEXT_remap_index 393
+#define GetTransformFeedbackVaryingEXT_remap_index 394
+#define TransformFeedbackVaryingsEXT_remap_index 395
+#define ProvokingVertexEXT_remap_index 396
+#define GetTexParameterPointervAPPLE_remap_index 397
+#define TextureRangeAPPLE_remap_index 398
+#define GetObjectParameterivAPPLE_remap_index 399
+#define ObjectPurgeableAPPLE_remap_index 400
+#define ObjectUnpurgeableAPPLE_remap_index 401
+#define StencilFuncSeparateATI_remap_index 402
+#define ProgramEnvParameters4fvEXT_remap_index 403
+#define ProgramLocalParameters4fvEXT_remap_index 404
+#define GetQueryObjecti64vEXT_remap_index 405
+#define GetQueryObjectui64vEXT_remap_index 406
+#define EGLImageTargetRenderbufferStorageOES_remap_index 407
+#define EGLImageTargetTexture2DOES_remap_index 408
+
+#define CALL_AttachShader(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint)), driDispatchRemapTable[AttachShader_remap_index], parameters)
+#define GET_AttachShader(disp) GET_by_offset(disp, driDispatchRemapTable[AttachShader_remap_index])
+#define SET_AttachShader(disp, fn) SET_by_offset(disp, driDispatchRemapTable[AttachShader_remap_index], fn)
+#define CALL_CreateProgram(disp, parameters) CALL_by_offset(disp, (GLuint (GLAPIENTRYP)(void)), driDispatchRemapTable[CreateProgram_remap_index], parameters)
+#define GET_CreateProgram(disp) GET_by_offset(disp, driDispatchRemapTable[CreateProgram_remap_index])
+#define SET_CreateProgram(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CreateProgram_remap_index], fn)
+#define CALL_CreateShader(disp, parameters) CALL_by_offset(disp, (GLuint (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[CreateShader_remap_index], parameters)
+#define GET_CreateShader(disp) GET_by_offset(disp, driDispatchRemapTable[CreateShader_remap_index])
+#define SET_CreateShader(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CreateShader_remap_index], fn)
+#define CALL_DeleteProgram(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[DeleteProgram_remap_index], parameters)
+#define GET_DeleteProgram(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteProgram_remap_index])
+#define SET_DeleteProgram(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteProgram_remap_index], fn)
+#define CALL_DeleteShader(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[DeleteShader_remap_index], parameters)
+#define GET_DeleteShader(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteShader_remap_index])
+#define SET_DeleteShader(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteShader_remap_index], fn)
+#define CALL_DetachShader(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint)), driDispatchRemapTable[DetachShader_remap_index], parameters)
+#define GET_DetachShader(disp) GET_by_offset(disp, driDispatchRemapTable[DetachShader_remap_index])
+#define SET_DetachShader(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DetachShader_remap_index], fn)
+#define CALL_GetAttachedShaders(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, GLsizei *, GLuint *)), driDispatchRemapTable[GetAttachedShaders_remap_index], parameters)
+#define GET_GetAttachedShaders(disp) GET_by_offset(disp, driDispatchRemapTable[GetAttachedShaders_remap_index])
+#define SET_GetAttachedShaders(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetAttachedShaders_remap_index], fn)
+#define CALL_GetProgramInfoLog(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, GLsizei *, GLchar *)), driDispatchRemapTable[GetProgramInfoLog_remap_index], parameters)
+#define GET_GetProgramInfoLog(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramInfoLog_remap_index])
+#define SET_GetProgramInfoLog(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramInfoLog_remap_index], fn)
+#define CALL_GetProgramiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), driDispatchRemapTable[GetProgramiv_remap_index], parameters)
+#define GET_GetProgramiv(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramiv_remap_index])
+#define SET_GetProgramiv(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramiv_remap_index], fn)
+#define CALL_GetShaderInfoLog(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, GLsizei *, GLchar *)), driDispatchRemapTable[GetShaderInfoLog_remap_index], parameters)
+#define GET_GetShaderInfoLog(disp) GET_by_offset(disp, driDispatchRemapTable[GetShaderInfoLog_remap_index])
+#define SET_GetShaderInfoLog(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetShaderInfoLog_remap_index], fn)
+#define CALL_GetShaderiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), driDispatchRemapTable[GetShaderiv_remap_index], parameters)
+#define GET_GetShaderiv(disp) GET_by_offset(disp, driDispatchRemapTable[GetShaderiv_remap_index])
+#define SET_GetShaderiv(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetShaderiv_remap_index], fn)
+#define CALL_IsProgram(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[IsProgram_remap_index], parameters)
+#define GET_IsProgram(disp) GET_by_offset(disp, driDispatchRemapTable[IsProgram_remap_index])
+#define SET_IsProgram(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsProgram_remap_index], fn)
+#define CALL_IsShader(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[IsShader_remap_index], parameters)
+#define GET_IsShader(disp) GET_by_offset(disp, driDispatchRemapTable[IsShader_remap_index])
+#define SET_IsShader(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsShader_remap_index], fn)
+#define CALL_StencilFuncSeparate(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint, GLuint)), driDispatchRemapTable[StencilFuncSeparate_remap_index], parameters)
+#define GET_StencilFuncSeparate(disp) GET_by_offset(disp, driDispatchRemapTable[StencilFuncSeparate_remap_index])
+#define SET_StencilFuncSeparate(disp, fn) SET_by_offset(disp, driDispatchRemapTable[StencilFuncSeparate_remap_index], fn)
+#define CALL_StencilMaskSeparate(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), driDispatchRemapTable[StencilMaskSeparate_remap_index], parameters)
+#define GET_StencilMaskSeparate(disp) GET_by_offset(disp, driDispatchRemapTable[StencilMaskSeparate_remap_index])
+#define SET_StencilMaskSeparate(disp, fn) SET_by_offset(disp, driDispatchRemapTable[StencilMaskSeparate_remap_index], fn)
+#define CALL_StencilOpSeparate(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLenum)), driDispatchRemapTable[StencilOpSeparate_remap_index], parameters)
+#define GET_StencilOpSeparate(disp) GET_by_offset(disp, driDispatchRemapTable[StencilOpSeparate_remap_index])
+#define SET_StencilOpSeparate(disp, fn) SET_by_offset(disp, driDispatchRemapTable[StencilOpSeparate_remap_index], fn)
+#define CALL_UniformMatrix2x3fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), driDispatchRemapTable[UniformMatrix2x3fv_remap_index], parameters)
+#define GET_UniformMatrix2x3fv(disp) GET_by_offset(disp, driDispatchRemapTable[UniformMatrix2x3fv_remap_index])
+#define SET_UniformMatrix2x3fv(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UniformMatrix2x3fv_remap_index], fn)
+#define CALL_UniformMatrix2x4fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), driDispatchRemapTable[UniformMatrix2x4fv_remap_index], parameters)
+#define GET_UniformMatrix2x4fv(disp) GET_by_offset(disp, driDispatchRemapTable[UniformMatrix2x4fv_remap_index])
+#define SET_UniformMatrix2x4fv(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UniformMatrix2x4fv_remap_index], fn)
+#define CALL_UniformMatrix3x2fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), driDispatchRemapTable[UniformMatrix3x2fv_remap_index], parameters)
+#define GET_UniformMatrix3x2fv(disp) GET_by_offset(disp, driDispatchRemapTable[UniformMatrix3x2fv_remap_index])
+#define SET_UniformMatrix3x2fv(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UniformMatrix3x2fv_remap_index], fn)
+#define CALL_UniformMatrix3x4fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), driDispatchRemapTable[UniformMatrix3x4fv_remap_index], parameters)
+#define GET_UniformMatrix3x4fv(disp) GET_by_offset(disp, driDispatchRemapTable[UniformMatrix3x4fv_remap_index])
+#define SET_UniformMatrix3x4fv(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UniformMatrix3x4fv_remap_index], fn)
+#define CALL_UniformMatrix4x2fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), driDispatchRemapTable[UniformMatrix4x2fv_remap_index], parameters)
+#define GET_UniformMatrix4x2fv(disp) GET_by_offset(disp, driDispatchRemapTable[UniformMatrix4x2fv_remap_index])
+#define SET_UniformMatrix4x2fv(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UniformMatrix4x2fv_remap_index], fn)
+#define CALL_UniformMatrix4x3fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), driDispatchRemapTable[UniformMatrix4x3fv_remap_index], parameters)
+#define GET_UniformMatrix4x3fv(disp) GET_by_offset(disp, driDispatchRemapTable[UniformMatrix4x3fv_remap_index])
+#define SET_UniformMatrix4x3fv(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UniformMatrix4x3fv_remap_index], fn)
+#define CALL_DrawArraysInstanced(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLsizei, GLsizei)), driDispatchRemapTable[DrawArraysInstanced_remap_index], parameters)
+#define GET_DrawArraysInstanced(disp) GET_by_offset(disp, driDispatchRemapTable[DrawArraysInstanced_remap_index])
+#define SET_DrawArraysInstanced(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DrawArraysInstanced_remap_index], fn)
+#define CALL_DrawElementsInstanced(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLenum, const GLvoid *, GLsizei)), driDispatchRemapTable[DrawElementsInstanced_remap_index], parameters)
+#define GET_DrawElementsInstanced(disp) GET_by_offset(disp, driDispatchRemapTable[DrawElementsInstanced_remap_index])
+#define SET_DrawElementsInstanced(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DrawElementsInstanced_remap_index], fn)
+#define CALL_LoadTransposeMatrixdARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), driDispatchRemapTable[LoadTransposeMatrixdARB_remap_index], parameters)
+#define GET_LoadTransposeMatrixdARB(disp) GET_by_offset(disp, driDispatchRemapTable[LoadTransposeMatrixdARB_remap_index])
+#define SET_LoadTransposeMatrixdARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[LoadTransposeMatrixdARB_remap_index], fn)
+#define CALL_LoadTransposeMatrixfARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), driDispatchRemapTable[LoadTransposeMatrixfARB_remap_index], parameters)
+#define GET_LoadTransposeMatrixfARB(disp) GET_by_offset(disp, driDispatchRemapTable[LoadTransposeMatrixfARB_remap_index])
+#define SET_LoadTransposeMatrixfARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[LoadTransposeMatrixfARB_remap_index], fn)
+#define CALL_MultTransposeMatrixdARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), driDispatchRemapTable[MultTransposeMatrixdARB_remap_index], parameters)
+#define GET_MultTransposeMatrixdARB(disp) GET_by_offset(disp, driDispatchRemapTable[MultTransposeMatrixdARB_remap_index])
+#define SET_MultTransposeMatrixdARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[MultTransposeMatrixdARB_remap_index], fn)
+#define CALL_MultTransposeMatrixfARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), driDispatchRemapTable[MultTransposeMatrixfARB_remap_index], parameters)
+#define GET_MultTransposeMatrixfARB(disp) GET_by_offset(disp, driDispatchRemapTable[MultTransposeMatrixfARB_remap_index])
+#define SET_MultTransposeMatrixfARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[MultTransposeMatrixfARB_remap_index], fn)
+#define CALL_SampleCoverageARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampf, GLboolean)), driDispatchRemapTable[SampleCoverageARB_remap_index], parameters)
+#define GET_SampleCoverageARB(disp) GET_by_offset(disp, driDispatchRemapTable[SampleCoverageARB_remap_index])
+#define SET_SampleCoverageARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SampleCoverageARB_remap_index], fn)
+#define CALL_CompressedTexImage1DARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const GLvoid *)), driDispatchRemapTable[CompressedTexImage1DARB_remap_index], parameters)
+#define GET_CompressedTexImage1DARB(disp) GET_by_offset(disp, driDispatchRemapTable[CompressedTexImage1DARB_remap_index])
+#define SET_CompressedTexImage1DARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CompressedTexImage1DARB_remap_index], fn)
+#define CALL_CompressedTexImage2DARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *)), driDispatchRemapTable[CompressedTexImage2DARB_remap_index], parameters)
+#define GET_CompressedTexImage2DARB(disp) GET_by_offset(disp, driDispatchRemapTable[CompressedTexImage2DARB_remap_index])
+#define SET_CompressedTexImage2DARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CompressedTexImage2DARB_remap_index], fn)
+#define CALL_CompressedTexImage3DARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *)), driDispatchRemapTable[CompressedTexImage3DARB_remap_index], parameters)
+#define GET_CompressedTexImage3DARB(disp) GET_by_offset(disp, driDispatchRemapTable[CompressedTexImage3DARB_remap_index])
+#define SET_CompressedTexImage3DARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CompressedTexImage3DARB_remap_index], fn)
+#define CALL_CompressedTexSubImage1DARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, const GLvoid *)), driDispatchRemapTable[CompressedTexSubImage1DARB_remap_index], parameters)
+#define GET_CompressedTexSubImage1DARB(disp) GET_by_offset(disp, driDispatchRemapTable[CompressedTexSubImage1DARB_remap_index])
+#define SET_CompressedTexSubImage1DARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CompressedTexSubImage1DARB_remap_index], fn)
+#define CALL_CompressedTexSubImage2DARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *)), driDispatchRemapTable[CompressedTexSubImage2DARB_remap_index], parameters)
+#define GET_CompressedTexSubImage2DARB(disp) GET_by_offset(disp, driDispatchRemapTable[CompressedTexSubImage2DARB_remap_index])
+#define SET_CompressedTexSubImage2DARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CompressedTexSubImage2DARB_remap_index], fn)
+#define CALL_CompressedTexSubImage3DARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *)), driDispatchRemapTable[CompressedTexSubImage3DARB_remap_index], parameters)
+#define GET_CompressedTexSubImage3DARB(disp) GET_by_offset(disp, driDispatchRemapTable[CompressedTexSubImage3DARB_remap_index])
+#define SET_CompressedTexSubImage3DARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CompressedTexSubImage3DARB_remap_index], fn)
+#define CALL_GetCompressedTexImageARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLvoid *)), driDispatchRemapTable[GetCompressedTexImageARB_remap_index], parameters)
+#define GET_GetCompressedTexImageARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetCompressedTexImageARB_remap_index])
+#define SET_GetCompressedTexImageARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetCompressedTexImageARB_remap_index], fn)
+#define CALL_DisableVertexAttribArrayARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[DisableVertexAttribArrayARB_remap_index], parameters)
+#define GET_DisableVertexAttribArrayARB(disp) GET_by_offset(disp, driDispatchRemapTable[DisableVertexAttribArrayARB_remap_index])
+#define SET_DisableVertexAttribArrayARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DisableVertexAttribArrayARB_remap_index], fn)
+#define CALL_EnableVertexAttribArrayARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[EnableVertexAttribArrayARB_remap_index], parameters)
+#define GET_EnableVertexAttribArrayARB(disp) GET_by_offset(disp, driDispatchRemapTable[EnableVertexAttribArrayARB_remap_index])
+#define SET_EnableVertexAttribArrayARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[EnableVertexAttribArrayARB_remap_index], fn)
+#define CALL_GetProgramEnvParameterdvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLdouble *)), driDispatchRemapTable[GetProgramEnvParameterdvARB_remap_index], parameters)
+#define GET_GetProgramEnvParameterdvARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramEnvParameterdvARB_remap_index])
+#define SET_GetProgramEnvParameterdvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramEnvParameterdvARB_remap_index], fn)
+#define CALL_GetProgramEnvParameterfvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLfloat *)), driDispatchRemapTable[GetProgramEnvParameterfvARB_remap_index], parameters)
+#define GET_GetProgramEnvParameterfvARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramEnvParameterfvARB_remap_index])
+#define SET_GetProgramEnvParameterfvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramEnvParameterfvARB_remap_index], fn)
+#define CALL_GetProgramLocalParameterdvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLdouble *)), driDispatchRemapTable[GetProgramLocalParameterdvARB_remap_index], parameters)
+#define GET_GetProgramLocalParameterdvARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramLocalParameterdvARB_remap_index])
+#define SET_GetProgramLocalParameterdvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramLocalParameterdvARB_remap_index], fn)
+#define CALL_GetProgramLocalParameterfvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLfloat *)), driDispatchRemapTable[GetProgramLocalParameterfvARB_remap_index], parameters)
+#define GET_GetProgramLocalParameterfvARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramLocalParameterfvARB_remap_index])
+#define SET_GetProgramLocalParameterfvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramLocalParameterfvARB_remap_index], fn)
+#define CALL_GetProgramStringARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLvoid *)), driDispatchRemapTable[GetProgramStringARB_remap_index], parameters)
+#define GET_GetProgramStringARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramStringARB_remap_index])
+#define SET_GetProgramStringARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramStringARB_remap_index], fn)
+#define CALL_GetProgramivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), driDispatchRemapTable[GetProgramivARB_remap_index], parameters)
+#define GET_GetProgramivARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramivARB_remap_index])
+#define SET_GetProgramivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramivARB_remap_index], fn)
+#define CALL_GetVertexAttribdvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLdouble *)), driDispatchRemapTable[GetVertexAttribdvARB_remap_index], parameters)
+#define GET_GetVertexAttribdvARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetVertexAttribdvARB_remap_index])
+#define SET_GetVertexAttribdvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetVertexAttribdvARB_remap_index], fn)
+#define CALL_GetVertexAttribfvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLfloat *)), driDispatchRemapTable[GetVertexAttribfvARB_remap_index], parameters)
+#define GET_GetVertexAttribfvARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetVertexAttribfvARB_remap_index])
+#define SET_GetVertexAttribfvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetVertexAttribfvARB_remap_index], fn)
+#define CALL_GetVertexAttribivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), driDispatchRemapTable[GetVertexAttribivARB_remap_index], parameters)
+#define GET_GetVertexAttribivARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetVertexAttribivARB_remap_index])
+#define SET_GetVertexAttribivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetVertexAttribivARB_remap_index], fn)
+#define CALL_ProgramEnvParameter4dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLdouble, GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[ProgramEnvParameter4dARB_remap_index], parameters)
+#define GET_ProgramEnvParameter4dARB(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameter4dARB_remap_index])
+#define SET_ProgramEnvParameter4dARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameter4dARB_remap_index], fn)
+#define CALL_ProgramEnvParameter4dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, const GLdouble *)), driDispatchRemapTable[ProgramEnvParameter4dvARB_remap_index], parameters)
+#define GET_ProgramEnvParameter4dvARB(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameter4dvARB_remap_index])
+#define SET_ProgramEnvParameter4dvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameter4dvARB_remap_index], fn)
+#define CALL_ProgramEnvParameter4fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLfloat, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[ProgramEnvParameter4fARB_remap_index], parameters)
+#define GET_ProgramEnvParameter4fARB(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameter4fARB_remap_index])
+#define SET_ProgramEnvParameter4fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameter4fARB_remap_index], fn)
+#define CALL_ProgramEnvParameter4fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, const GLfloat *)), driDispatchRemapTable[ProgramEnvParameter4fvARB_remap_index], parameters)
+#define GET_ProgramEnvParameter4fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameter4fvARB_remap_index])
+#define SET_ProgramEnvParameter4fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameter4fvARB_remap_index], fn)
+#define CALL_ProgramLocalParameter4dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLdouble, GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[ProgramLocalParameter4dARB_remap_index], parameters)
+#define GET_ProgramLocalParameter4dARB(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameter4dARB_remap_index])
+#define SET_ProgramLocalParameter4dARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameter4dARB_remap_index], fn)
+#define CALL_ProgramLocalParameter4dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, const GLdouble *)), driDispatchRemapTable[ProgramLocalParameter4dvARB_remap_index], parameters)
+#define GET_ProgramLocalParameter4dvARB(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameter4dvARB_remap_index])
+#define SET_ProgramLocalParameter4dvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameter4dvARB_remap_index], fn)
+#define CALL_ProgramLocalParameter4fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLfloat, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[ProgramLocalParameter4fARB_remap_index], parameters)
+#define GET_ProgramLocalParameter4fARB(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameter4fARB_remap_index])
+#define SET_ProgramLocalParameter4fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameter4fARB_remap_index], fn)
+#define CALL_ProgramLocalParameter4fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, const GLfloat *)), driDispatchRemapTable[ProgramLocalParameter4fvARB_remap_index], parameters)
+#define GET_ProgramLocalParameter4fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameter4fvARB_remap_index])
+#define SET_ProgramLocalParameter4fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameter4fvARB_remap_index], fn)
+#define CALL_ProgramStringARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLsizei, const GLvoid *)), driDispatchRemapTable[ProgramStringARB_remap_index], parameters)
+#define GET_ProgramStringARB(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramStringARB_remap_index])
+#define SET_ProgramStringARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramStringARB_remap_index], fn)
+#define CALL_VertexAttrib1dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLdouble)), driDispatchRemapTable[VertexAttrib1dARB_remap_index], parameters)
+#define GET_VertexAttrib1dARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1dARB_remap_index])
+#define SET_VertexAttrib1dARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1dARB_remap_index], fn)
+#define CALL_VertexAttrib1dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLdouble *)), driDispatchRemapTable[VertexAttrib1dvARB_remap_index], parameters)
+#define GET_VertexAttrib1dvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1dvARB_remap_index])
+#define SET_VertexAttrib1dvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1dvARB_remap_index], fn)
+#define CALL_VertexAttrib1fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat)), driDispatchRemapTable[VertexAttrib1fARB_remap_index], parameters)
+#define GET_VertexAttrib1fARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1fARB_remap_index])
+#define SET_VertexAttrib1fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1fARB_remap_index], fn)
+#define CALL_VertexAttrib1fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), driDispatchRemapTable[VertexAttrib1fvARB_remap_index], parameters)
+#define GET_VertexAttrib1fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1fvARB_remap_index])
+#define SET_VertexAttrib1fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1fvARB_remap_index], fn)
+#define CALL_VertexAttrib1sARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLshort)), driDispatchRemapTable[VertexAttrib1sARB_remap_index], parameters)
+#define GET_VertexAttrib1sARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1sARB_remap_index])
+#define SET_VertexAttrib1sARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1sARB_remap_index], fn)
+#define CALL_VertexAttrib1svARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLshort *)), driDispatchRemapTable[VertexAttrib1svARB_remap_index], parameters)
+#define GET_VertexAttrib1svARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1svARB_remap_index])
+#define SET_VertexAttrib1svARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1svARB_remap_index], fn)
+#define CALL_VertexAttrib2dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLdouble, GLdouble)), driDispatchRemapTable[VertexAttrib2dARB_remap_index], parameters)
+#define GET_VertexAttrib2dARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2dARB_remap_index])
+#define SET_VertexAttrib2dARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2dARB_remap_index], fn)
+#define CALL_VertexAttrib2dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLdouble *)), driDispatchRemapTable[VertexAttrib2dvARB_remap_index], parameters)
+#define GET_VertexAttrib2dvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2dvARB_remap_index])
+#define SET_VertexAttrib2dvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2dvARB_remap_index], fn)
+#define CALL_VertexAttrib2fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat, GLfloat)), driDispatchRemapTable[VertexAttrib2fARB_remap_index], parameters)
+#define GET_VertexAttrib2fARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2fARB_remap_index])
+#define SET_VertexAttrib2fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2fARB_remap_index], fn)
+#define CALL_VertexAttrib2fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), driDispatchRemapTable[VertexAttrib2fvARB_remap_index], parameters)
+#define GET_VertexAttrib2fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2fvARB_remap_index])
+#define SET_VertexAttrib2fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2fvARB_remap_index], fn)
+#define CALL_VertexAttrib2sARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLshort, GLshort)), driDispatchRemapTable[VertexAttrib2sARB_remap_index], parameters)
+#define GET_VertexAttrib2sARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2sARB_remap_index])
+#define SET_VertexAttrib2sARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2sARB_remap_index], fn)
+#define CALL_VertexAttrib2svARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLshort *)), driDispatchRemapTable[VertexAttrib2svARB_remap_index], parameters)
+#define GET_VertexAttrib2svARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2svARB_remap_index])
+#define SET_VertexAttrib2svARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2svARB_remap_index], fn)
+#define CALL_VertexAttrib3dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[VertexAttrib3dARB_remap_index], parameters)
+#define GET_VertexAttrib3dARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3dARB_remap_index])
+#define SET_VertexAttrib3dARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3dARB_remap_index], fn)
+#define CALL_VertexAttrib3dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLdouble *)), driDispatchRemapTable[VertexAttrib3dvARB_remap_index], parameters)
+#define GET_VertexAttrib3dvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3dvARB_remap_index])
+#define SET_VertexAttrib3dvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3dvARB_remap_index], fn)
+#define CALL_VertexAttrib3fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[VertexAttrib3fARB_remap_index], parameters)
+#define GET_VertexAttrib3fARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3fARB_remap_index])
+#define SET_VertexAttrib3fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3fARB_remap_index], fn)
+#define CALL_VertexAttrib3fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), driDispatchRemapTable[VertexAttrib3fvARB_remap_index], parameters)
+#define GET_VertexAttrib3fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3fvARB_remap_index])
+#define SET_VertexAttrib3fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3fvARB_remap_index], fn)
+#define CALL_VertexAttrib3sARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLshort, GLshort, GLshort)), driDispatchRemapTable[VertexAttrib3sARB_remap_index], parameters)
+#define GET_VertexAttrib3sARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3sARB_remap_index])
+#define SET_VertexAttrib3sARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3sARB_remap_index], fn)
+#define CALL_VertexAttrib3svARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLshort *)), driDispatchRemapTable[VertexAttrib3svARB_remap_index], parameters)
+#define GET_VertexAttrib3svARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3svARB_remap_index])
+#define SET_VertexAttrib3svARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3svARB_remap_index], fn)
+#define CALL_VertexAttrib4NbvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLbyte *)), driDispatchRemapTable[VertexAttrib4NbvARB_remap_index], parameters)
+#define GET_VertexAttrib4NbvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NbvARB_remap_index])
+#define SET_VertexAttrib4NbvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NbvARB_remap_index], fn)
+#define CALL_VertexAttrib4NivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLint *)), driDispatchRemapTable[VertexAttrib4NivARB_remap_index], parameters)
+#define GET_VertexAttrib4NivARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NivARB_remap_index])
+#define SET_VertexAttrib4NivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NivARB_remap_index], fn)
+#define CALL_VertexAttrib4NsvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLshort *)), driDispatchRemapTable[VertexAttrib4NsvARB_remap_index], parameters)
+#define GET_VertexAttrib4NsvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NsvARB_remap_index])
+#define SET_VertexAttrib4NsvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NsvARB_remap_index], fn)
+#define CALL_VertexAttrib4NubARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLubyte, GLubyte, GLubyte, GLubyte)), driDispatchRemapTable[VertexAttrib4NubARB_remap_index], parameters)
+#define GET_VertexAttrib4NubARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NubARB_remap_index])
+#define SET_VertexAttrib4NubARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NubARB_remap_index], fn)
+#define CALL_VertexAttrib4NubvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLubyte *)), driDispatchRemapTable[VertexAttrib4NubvARB_remap_index], parameters)
+#define GET_VertexAttrib4NubvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NubvARB_remap_index])
+#define SET_VertexAttrib4NubvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NubvARB_remap_index], fn)
+#define CALL_VertexAttrib4NuivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLuint *)), driDispatchRemapTable[VertexAttrib4NuivARB_remap_index], parameters)
+#define GET_VertexAttrib4NuivARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NuivARB_remap_index])
+#define SET_VertexAttrib4NuivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NuivARB_remap_index], fn)
+#define CALL_VertexAttrib4NusvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLushort *)), driDispatchRemapTable[VertexAttrib4NusvARB_remap_index], parameters)
+#define GET_VertexAttrib4NusvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NusvARB_remap_index])
+#define SET_VertexAttrib4NusvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NusvARB_remap_index], fn)
+#define CALL_VertexAttrib4bvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLbyte *)), driDispatchRemapTable[VertexAttrib4bvARB_remap_index], parameters)
+#define GET_VertexAttrib4bvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4bvARB_remap_index])
+#define SET_VertexAttrib4bvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4bvARB_remap_index], fn)
+#define CALL_VertexAttrib4dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLdouble, GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[VertexAttrib4dARB_remap_index], parameters)
+#define GET_VertexAttrib4dARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4dARB_remap_index])
+#define SET_VertexAttrib4dARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4dARB_remap_index], fn)
+#define CALL_VertexAttrib4dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLdouble *)), driDispatchRemapTable[VertexAttrib4dvARB_remap_index], parameters)
+#define GET_VertexAttrib4dvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4dvARB_remap_index])
+#define SET_VertexAttrib4dvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4dvARB_remap_index], fn)
+#define CALL_VertexAttrib4fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[VertexAttrib4fARB_remap_index], parameters)
+#define GET_VertexAttrib4fARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4fARB_remap_index])
+#define SET_VertexAttrib4fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4fARB_remap_index], fn)
+#define CALL_VertexAttrib4fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), driDispatchRemapTable[VertexAttrib4fvARB_remap_index], parameters)
+#define GET_VertexAttrib4fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4fvARB_remap_index])
+#define SET_VertexAttrib4fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4fvARB_remap_index], fn)
+#define CALL_VertexAttrib4ivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLint *)), driDispatchRemapTable[VertexAttrib4ivARB_remap_index], parameters)
+#define GET_VertexAttrib4ivARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4ivARB_remap_index])
+#define SET_VertexAttrib4ivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4ivARB_remap_index], fn)
+#define CALL_VertexAttrib4sARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLshort, GLshort, GLshort, GLshort)), driDispatchRemapTable[VertexAttrib4sARB_remap_index], parameters)
+#define GET_VertexAttrib4sARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4sARB_remap_index])
+#define SET_VertexAttrib4sARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4sARB_remap_index], fn)
+#define CALL_VertexAttrib4svARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLshort *)), driDispatchRemapTable[VertexAttrib4svARB_remap_index], parameters)
+#define GET_VertexAttrib4svARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4svARB_remap_index])
+#define SET_VertexAttrib4svARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4svARB_remap_index], fn)
+#define CALL_VertexAttrib4ubvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLubyte *)), driDispatchRemapTable[VertexAttrib4ubvARB_remap_index], parameters)
+#define GET_VertexAttrib4ubvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4ubvARB_remap_index])
+#define SET_VertexAttrib4ubvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4ubvARB_remap_index], fn)
+#define CALL_VertexAttrib4uivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLuint *)), driDispatchRemapTable[VertexAttrib4uivARB_remap_index], parameters)
+#define GET_VertexAttrib4uivARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4uivARB_remap_index])
+#define SET_VertexAttrib4uivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4uivARB_remap_index], fn)
+#define CALL_VertexAttrib4usvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLushort *)), driDispatchRemapTable[VertexAttrib4usvARB_remap_index], parameters)
+#define GET_VertexAttrib4usvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4usvARB_remap_index])
+#define SET_VertexAttrib4usvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4usvARB_remap_index], fn)
+#define CALL_VertexAttribPointerARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLint, GLenum, GLboolean, GLsizei, const GLvoid *)), driDispatchRemapTable[VertexAttribPointerARB_remap_index], parameters)
+#define GET_VertexAttribPointerARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribPointerARB_remap_index])
+#define SET_VertexAttribPointerARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribPointerARB_remap_index], fn)
+#define CALL_BindBufferARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), driDispatchRemapTable[BindBufferARB_remap_index], parameters)
+#define GET_BindBufferARB(disp) GET_by_offset(disp, driDispatchRemapTable[BindBufferARB_remap_index])
+#define SET_BindBufferARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindBufferARB_remap_index], fn)
+#define CALL_BufferDataARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizeiptrARB, const GLvoid *, GLenum)), driDispatchRemapTable[BufferDataARB_remap_index], parameters)
+#define GET_BufferDataARB(disp) GET_by_offset(disp, driDispatchRemapTable[BufferDataARB_remap_index])
+#define SET_BufferDataARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BufferDataARB_remap_index], fn)
+#define CALL_BufferSubDataARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLintptrARB, GLsizeiptrARB, const GLvoid *)), driDispatchRemapTable[BufferSubDataARB_remap_index], parameters)
+#define GET_BufferSubDataARB(disp) GET_by_offset(disp, driDispatchRemapTable[BufferSubDataARB_remap_index])
+#define SET_BufferSubDataARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BufferSubDataARB_remap_index], fn)
+#define CALL_DeleteBuffersARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), driDispatchRemapTable[DeleteBuffersARB_remap_index], parameters)
+#define GET_DeleteBuffersARB(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteBuffersARB_remap_index])
+#define SET_DeleteBuffersARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteBuffersARB_remap_index], fn)
+#define CALL_GenBuffersARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), driDispatchRemapTable[GenBuffersARB_remap_index], parameters)
+#define GET_GenBuffersARB(disp) GET_by_offset(disp, driDispatchRemapTable[GenBuffersARB_remap_index])
+#define SET_GenBuffersARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenBuffersARB_remap_index], fn)
+#define CALL_GetBufferParameterivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), driDispatchRemapTable[GetBufferParameterivARB_remap_index], parameters)
+#define GET_GetBufferParameterivARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetBufferParameterivARB_remap_index])
+#define SET_GetBufferParameterivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetBufferParameterivARB_remap_index], fn)
+#define CALL_GetBufferPointervARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLvoid **)), driDispatchRemapTable[GetBufferPointervARB_remap_index], parameters)
+#define GET_GetBufferPointervARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetBufferPointervARB_remap_index])
+#define SET_GetBufferPointervARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetBufferPointervARB_remap_index], fn)
+#define CALL_GetBufferSubDataARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLintptrARB, GLsizeiptrARB, GLvoid *)), driDispatchRemapTable[GetBufferSubDataARB_remap_index], parameters)
+#define GET_GetBufferSubDataARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetBufferSubDataARB_remap_index])
+#define SET_GetBufferSubDataARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetBufferSubDataARB_remap_index], fn)
+#define CALL_IsBufferARB(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[IsBufferARB_remap_index], parameters)
+#define GET_IsBufferARB(disp) GET_by_offset(disp, driDispatchRemapTable[IsBufferARB_remap_index])
+#define SET_IsBufferARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsBufferARB_remap_index], fn)
+#define CALL_MapBufferARB(disp, parameters) CALL_by_offset(disp, (GLvoid * (GLAPIENTRYP)(GLenum, GLenum)), driDispatchRemapTable[MapBufferARB_remap_index], parameters)
+#define GET_MapBufferARB(disp) GET_by_offset(disp, driDispatchRemapTable[MapBufferARB_remap_index])
+#define SET_MapBufferARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[MapBufferARB_remap_index], fn)
+#define CALL_UnmapBufferARB(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[UnmapBufferARB_remap_index], parameters)
+#define GET_UnmapBufferARB(disp) GET_by_offset(disp, driDispatchRemapTable[UnmapBufferARB_remap_index])
+#define SET_UnmapBufferARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UnmapBufferARB_remap_index], fn)
+#define CALL_BeginQueryARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), driDispatchRemapTable[BeginQueryARB_remap_index], parameters)
+#define GET_BeginQueryARB(disp) GET_by_offset(disp, driDispatchRemapTable[BeginQueryARB_remap_index])
+#define SET_BeginQueryARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BeginQueryARB_remap_index], fn)
+#define CALL_DeleteQueriesARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), driDispatchRemapTable[DeleteQueriesARB_remap_index], parameters)
+#define GET_DeleteQueriesARB(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteQueriesARB_remap_index])
+#define SET_DeleteQueriesARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteQueriesARB_remap_index], fn)
+#define CALL_EndQueryARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[EndQueryARB_remap_index], parameters)
+#define GET_EndQueryARB(disp) GET_by_offset(disp, driDispatchRemapTable[EndQueryARB_remap_index])
+#define SET_EndQueryARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[EndQueryARB_remap_index], fn)
+#define CALL_GenQueriesARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), driDispatchRemapTable[GenQueriesARB_remap_index], parameters)
+#define GET_GenQueriesARB(disp) GET_by_offset(disp, driDispatchRemapTable[GenQueriesARB_remap_index])
+#define SET_GenQueriesARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenQueriesARB_remap_index], fn)
+#define CALL_GetQueryObjectivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), driDispatchRemapTable[GetQueryObjectivARB_remap_index], parameters)
+#define GET_GetQueryObjectivARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetQueryObjectivARB_remap_index])
+#define SET_GetQueryObjectivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetQueryObjectivARB_remap_index], fn)
+#define CALL_GetQueryObjectuivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLuint *)), driDispatchRemapTable[GetQueryObjectuivARB_remap_index], parameters)
+#define GET_GetQueryObjectuivARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetQueryObjectuivARB_remap_index])
+#define SET_GetQueryObjectuivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetQueryObjectuivARB_remap_index], fn)
+#define CALL_GetQueryivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), driDispatchRemapTable[GetQueryivARB_remap_index], parameters)
+#define GET_GetQueryivARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetQueryivARB_remap_index])
+#define SET_GetQueryivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetQueryivARB_remap_index], fn)
+#define CALL_IsQueryARB(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[IsQueryARB_remap_index], parameters)
+#define GET_IsQueryARB(disp) GET_by_offset(disp, driDispatchRemapTable[IsQueryARB_remap_index])
+#define SET_IsQueryARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsQueryARB_remap_index], fn)
+#define CALL_AttachObjectARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLhandleARB)), driDispatchRemapTable[AttachObjectARB_remap_index], parameters)
+#define GET_AttachObjectARB(disp) GET_by_offset(disp, driDispatchRemapTable[AttachObjectARB_remap_index])
+#define SET_AttachObjectARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[AttachObjectARB_remap_index], fn)
+#define CALL_CompileShaderARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB)), driDispatchRemapTable[CompileShaderARB_remap_index], parameters)
+#define GET_CompileShaderARB(disp) GET_by_offset(disp, driDispatchRemapTable[CompileShaderARB_remap_index])
+#define SET_CompileShaderARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CompileShaderARB_remap_index], fn)
+#define CALL_CreateProgramObjectARB(disp, parameters) CALL_by_offset(disp, (GLhandleARB (GLAPIENTRYP)(void)), driDispatchRemapTable[CreateProgramObjectARB_remap_index], parameters)
+#define GET_CreateProgramObjectARB(disp) GET_by_offset(disp, driDispatchRemapTable[CreateProgramObjectARB_remap_index])
+#define SET_CreateProgramObjectARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CreateProgramObjectARB_remap_index], fn)
+#define CALL_CreateShaderObjectARB(disp, parameters) CALL_by_offset(disp, (GLhandleARB (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[CreateShaderObjectARB_remap_index], parameters)
+#define GET_CreateShaderObjectARB(disp) GET_by_offset(disp, driDispatchRemapTable[CreateShaderObjectARB_remap_index])
+#define SET_CreateShaderObjectARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CreateShaderObjectARB_remap_index], fn)
+#define CALL_DeleteObjectARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB)), driDispatchRemapTable[DeleteObjectARB_remap_index], parameters)
+#define GET_DeleteObjectARB(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteObjectARB_remap_index])
+#define SET_DeleteObjectARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteObjectARB_remap_index], fn)
+#define CALL_DetachObjectARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLhandleARB)), driDispatchRemapTable[DetachObjectARB_remap_index], parameters)
+#define GET_DetachObjectARB(disp) GET_by_offset(disp, driDispatchRemapTable[DetachObjectARB_remap_index])
+#define SET_DetachObjectARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DetachObjectARB_remap_index], fn)
+#define CALL_GetActiveUniformARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLuint, GLsizei, GLsizei *, GLint *, GLenum *, GLcharARB *)), driDispatchRemapTable[GetActiveUniformARB_remap_index], parameters)
+#define GET_GetActiveUniformARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetActiveUniformARB_remap_index])
+#define SET_GetActiveUniformARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetActiveUniformARB_remap_index], fn)
+#define CALL_GetAttachedObjectsARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLsizei, GLsizei *, GLhandleARB *)), driDispatchRemapTable[GetAttachedObjectsARB_remap_index], parameters)
+#define GET_GetAttachedObjectsARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetAttachedObjectsARB_remap_index])
+#define SET_GetAttachedObjectsARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetAttachedObjectsARB_remap_index], fn)
+#define CALL_GetHandleARB(disp, parameters) CALL_by_offset(disp, (GLhandleARB (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[GetHandleARB_remap_index], parameters)
+#define GET_GetHandleARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetHandleARB_remap_index])
+#define SET_GetHandleARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetHandleARB_remap_index], fn)
+#define CALL_GetInfoLogARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLsizei, GLsizei *, GLcharARB *)), driDispatchRemapTable[GetInfoLogARB_remap_index], parameters)
+#define GET_GetInfoLogARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetInfoLogARB_remap_index])
+#define SET_GetInfoLogARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetInfoLogARB_remap_index], fn)
+#define CALL_GetObjectParameterfvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLenum, GLfloat *)), driDispatchRemapTable[GetObjectParameterfvARB_remap_index], parameters)
+#define GET_GetObjectParameterfvARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetObjectParameterfvARB_remap_index])
+#define SET_GetObjectParameterfvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetObjectParameterfvARB_remap_index], fn)
+#define CALL_GetObjectParameterivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLenum, GLint *)), driDispatchRemapTable[GetObjectParameterivARB_remap_index], parameters)
+#define GET_GetObjectParameterivARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetObjectParameterivARB_remap_index])
+#define SET_GetObjectParameterivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetObjectParameterivARB_remap_index], fn)
+#define CALL_GetShaderSourceARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLsizei, GLsizei *, GLcharARB *)), driDispatchRemapTable[GetShaderSourceARB_remap_index], parameters)
+#define GET_GetShaderSourceARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetShaderSourceARB_remap_index])
+#define SET_GetShaderSourceARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetShaderSourceARB_remap_index], fn)
+#define CALL_GetUniformLocationARB(disp, parameters) CALL_by_offset(disp, (GLint (GLAPIENTRYP)(GLhandleARB, const GLcharARB *)), driDispatchRemapTable[GetUniformLocationARB_remap_index], parameters)
+#define GET_GetUniformLocationARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetUniformLocationARB_remap_index])
+#define SET_GetUniformLocationARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetUniformLocationARB_remap_index], fn)
+#define CALL_GetUniformfvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLint, GLfloat *)), driDispatchRemapTable[GetUniformfvARB_remap_index], parameters)
+#define GET_GetUniformfvARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetUniformfvARB_remap_index])
+#define SET_GetUniformfvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetUniformfvARB_remap_index], fn)
+#define CALL_GetUniformivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLint, GLint *)), driDispatchRemapTable[GetUniformivARB_remap_index], parameters)
+#define GET_GetUniformivARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetUniformivARB_remap_index])
+#define SET_GetUniformivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetUniformivARB_remap_index], fn)
+#define CALL_LinkProgramARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB)), driDispatchRemapTable[LinkProgramARB_remap_index], parameters)
+#define GET_LinkProgramARB(disp) GET_by_offset(disp, driDispatchRemapTable[LinkProgramARB_remap_index])
+#define SET_LinkProgramARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[LinkProgramARB_remap_index], fn)
+#define CALL_ShaderSourceARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLsizei, const GLcharARB **, const GLint *)), driDispatchRemapTable[ShaderSourceARB_remap_index], parameters)
+#define GET_ShaderSourceARB(disp) GET_by_offset(disp, driDispatchRemapTable[ShaderSourceARB_remap_index])
+#define SET_ShaderSourceARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ShaderSourceARB_remap_index], fn)
+#define CALL_Uniform1fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLfloat)), driDispatchRemapTable[Uniform1fARB_remap_index], parameters)
+#define GET_Uniform1fARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform1fARB_remap_index])
+#define SET_Uniform1fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform1fARB_remap_index], fn)
+#define CALL_Uniform1fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLfloat *)), driDispatchRemapTable[Uniform1fvARB_remap_index], parameters)
+#define GET_Uniform1fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform1fvARB_remap_index])
+#define SET_Uniform1fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform1fvARB_remap_index], fn)
+#define CALL_Uniform1iARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint)), driDispatchRemapTable[Uniform1iARB_remap_index], parameters)
+#define GET_Uniform1iARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform1iARB_remap_index])
+#define SET_Uniform1iARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform1iARB_remap_index], fn)
+#define CALL_Uniform1ivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLint *)), driDispatchRemapTable[Uniform1ivARB_remap_index], parameters)
+#define GET_Uniform1ivARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform1ivARB_remap_index])
+#define SET_Uniform1ivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform1ivARB_remap_index], fn)
+#define CALL_Uniform2fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLfloat, GLfloat)), driDispatchRemapTable[Uniform2fARB_remap_index], parameters)
+#define GET_Uniform2fARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform2fARB_remap_index])
+#define SET_Uniform2fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform2fARB_remap_index], fn)
+#define CALL_Uniform2fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLfloat *)), driDispatchRemapTable[Uniform2fvARB_remap_index], parameters)
+#define GET_Uniform2fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform2fvARB_remap_index])
+#define SET_Uniform2fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform2fvARB_remap_index], fn)
+#define CALL_Uniform2iARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint)), driDispatchRemapTable[Uniform2iARB_remap_index], parameters)
+#define GET_Uniform2iARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform2iARB_remap_index])
+#define SET_Uniform2iARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform2iARB_remap_index], fn)
+#define CALL_Uniform2ivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLint *)), driDispatchRemapTable[Uniform2ivARB_remap_index], parameters)
+#define GET_Uniform2ivARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform2ivARB_remap_index])
+#define SET_Uniform2ivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform2ivARB_remap_index], fn)
+#define CALL_Uniform3fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[Uniform3fARB_remap_index], parameters)
+#define GET_Uniform3fARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform3fARB_remap_index])
+#define SET_Uniform3fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform3fARB_remap_index], fn)
+#define CALL_Uniform3fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLfloat *)), driDispatchRemapTable[Uniform3fvARB_remap_index], parameters)
+#define GET_Uniform3fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform3fvARB_remap_index])
+#define SET_Uniform3fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform3fvARB_remap_index], fn)
+#define CALL_Uniform3iARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint)), driDispatchRemapTable[Uniform3iARB_remap_index], parameters)
+#define GET_Uniform3iARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform3iARB_remap_index])
+#define SET_Uniform3iARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform3iARB_remap_index], fn)
+#define CALL_Uniform3ivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLint *)), driDispatchRemapTable[Uniform3ivARB_remap_index], parameters)
+#define GET_Uniform3ivARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform3ivARB_remap_index])
+#define SET_Uniform3ivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform3ivARB_remap_index], fn)
+#define CALL_Uniform4fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLfloat, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[Uniform4fARB_remap_index], parameters)
+#define GET_Uniform4fARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform4fARB_remap_index])
+#define SET_Uniform4fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform4fARB_remap_index], fn)
+#define CALL_Uniform4fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLfloat *)), driDispatchRemapTable[Uniform4fvARB_remap_index], parameters)
+#define GET_Uniform4fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform4fvARB_remap_index])
+#define SET_Uniform4fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform4fvARB_remap_index], fn)
+#define CALL_Uniform4iARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint, GLint)), driDispatchRemapTable[Uniform4iARB_remap_index], parameters)
+#define GET_Uniform4iARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform4iARB_remap_index])
+#define SET_Uniform4iARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform4iARB_remap_index], fn)
+#define CALL_Uniform4ivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLint *)), driDispatchRemapTable[Uniform4ivARB_remap_index], parameters)
+#define GET_Uniform4ivARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform4ivARB_remap_index])
+#define SET_Uniform4ivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform4ivARB_remap_index], fn)
+#define CALL_UniformMatrix2fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), driDispatchRemapTable[UniformMatrix2fvARB_remap_index], parameters)
+#define GET_UniformMatrix2fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[UniformMatrix2fvARB_remap_index])
+#define SET_UniformMatrix2fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UniformMatrix2fvARB_remap_index], fn)
+#define CALL_UniformMatrix3fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), driDispatchRemapTable[UniformMatrix3fvARB_remap_index], parameters)
+#define GET_UniformMatrix3fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[UniformMatrix3fvARB_remap_index])
+#define SET_UniformMatrix3fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UniformMatrix3fvARB_remap_index], fn)
+#define CALL_UniformMatrix4fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), driDispatchRemapTable[UniformMatrix4fvARB_remap_index], parameters)
+#define GET_UniformMatrix4fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[UniformMatrix4fvARB_remap_index])
+#define SET_UniformMatrix4fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UniformMatrix4fvARB_remap_index], fn)
+#define CALL_UseProgramObjectARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB)), driDispatchRemapTable[UseProgramObjectARB_remap_index], parameters)
+#define GET_UseProgramObjectARB(disp) GET_by_offset(disp, driDispatchRemapTable[UseProgramObjectARB_remap_index])
+#define SET_UseProgramObjectARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UseProgramObjectARB_remap_index], fn)
+#define CALL_ValidateProgramARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB)), driDispatchRemapTable[ValidateProgramARB_remap_index], parameters)
+#define GET_ValidateProgramARB(disp) GET_by_offset(disp, driDispatchRemapTable[ValidateProgramARB_remap_index])
+#define SET_ValidateProgramARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ValidateProgramARB_remap_index], fn)
+#define CALL_BindAttribLocationARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLuint, const GLcharARB *)), driDispatchRemapTable[BindAttribLocationARB_remap_index], parameters)
+#define GET_BindAttribLocationARB(disp) GET_by_offset(disp, driDispatchRemapTable[BindAttribLocationARB_remap_index])
+#define SET_BindAttribLocationARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindAttribLocationARB_remap_index], fn)
+#define CALL_GetActiveAttribARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLuint, GLsizei, GLsizei *, GLint *, GLenum *, GLcharARB *)), driDispatchRemapTable[GetActiveAttribARB_remap_index], parameters)
+#define GET_GetActiveAttribARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetActiveAttribARB_remap_index])
+#define SET_GetActiveAttribARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetActiveAttribARB_remap_index], fn)
+#define CALL_GetAttribLocationARB(disp, parameters) CALL_by_offset(disp, (GLint (GLAPIENTRYP)(GLhandleARB, const GLcharARB *)), driDispatchRemapTable[GetAttribLocationARB_remap_index], parameters)
+#define GET_GetAttribLocationARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetAttribLocationARB_remap_index])
+#define SET_GetAttribLocationARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetAttribLocationARB_remap_index], fn)
+#define CALL_DrawBuffersARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLenum *)), driDispatchRemapTable[DrawBuffersARB_remap_index], parameters)
+#define GET_DrawBuffersARB(disp) GET_by_offset(disp, driDispatchRemapTable[DrawBuffersARB_remap_index])
+#define SET_DrawBuffersARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DrawBuffersARB_remap_index], fn)
+#define CALL_RenderbufferStorageMultisample(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLenum, GLsizei, GLsizei)), driDispatchRemapTable[RenderbufferStorageMultisample_remap_index], parameters)
+#define GET_RenderbufferStorageMultisample(disp) GET_by_offset(disp, driDispatchRemapTable[RenderbufferStorageMultisample_remap_index])
+#define SET_RenderbufferStorageMultisample(disp, fn) SET_by_offset(disp, driDispatchRemapTable[RenderbufferStorageMultisample_remap_index], fn)
+#define CALL_FlushMappedBufferRange(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLintptr, GLsizeiptr)), driDispatchRemapTable[FlushMappedBufferRange_remap_index], parameters)
+#define GET_FlushMappedBufferRange(disp) GET_by_offset(disp, driDispatchRemapTable[FlushMappedBufferRange_remap_index])
+#define SET_FlushMappedBufferRange(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FlushMappedBufferRange_remap_index], fn)
+#define CALL_MapBufferRange(disp, parameters) CALL_by_offset(disp, (GLvoid * (GLAPIENTRYP)(GLenum, GLintptr, GLsizeiptr, GLbitfield)), driDispatchRemapTable[MapBufferRange_remap_index], parameters)
+#define GET_MapBufferRange(disp) GET_by_offset(disp, driDispatchRemapTable[MapBufferRange_remap_index])
+#define SET_MapBufferRange(disp, fn) SET_by_offset(disp, driDispatchRemapTable[MapBufferRange_remap_index], fn)
+#define CALL_BindVertexArray(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[BindVertexArray_remap_index], parameters)
+#define GET_BindVertexArray(disp) GET_by_offset(disp, driDispatchRemapTable[BindVertexArray_remap_index])
+#define SET_BindVertexArray(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindVertexArray_remap_index], fn)
+#define CALL_GenVertexArrays(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), driDispatchRemapTable[GenVertexArrays_remap_index], parameters)
+#define GET_GenVertexArrays(disp) GET_by_offset(disp, driDispatchRemapTable[GenVertexArrays_remap_index])
+#define SET_GenVertexArrays(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenVertexArrays_remap_index], fn)
+#define CALL_CopyBufferSubData(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLintptr, GLintptr, GLsizeiptr)), driDispatchRemapTable[CopyBufferSubData_remap_index], parameters)
+#define GET_CopyBufferSubData(disp) GET_by_offset(disp, driDispatchRemapTable[CopyBufferSubData_remap_index])
+#define SET_CopyBufferSubData(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CopyBufferSubData_remap_index], fn)
+#define CALL_ClientWaitSync(disp, parameters) CALL_by_offset(disp, (GLenum (GLAPIENTRYP)(GLsync, GLbitfield, GLuint64)), driDispatchRemapTable[ClientWaitSync_remap_index], parameters)
+#define GET_ClientWaitSync(disp) GET_by_offset(disp, driDispatchRemapTable[ClientWaitSync_remap_index])
+#define SET_ClientWaitSync(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ClientWaitSync_remap_index], fn)
+#define CALL_DeleteSync(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsync)), driDispatchRemapTable[DeleteSync_remap_index], parameters)
+#define GET_DeleteSync(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteSync_remap_index])
+#define SET_DeleteSync(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteSync_remap_index], fn)
+#define CALL_FenceSync(disp, parameters) CALL_by_offset(disp, (GLsync (GLAPIENTRYP)(GLenum, GLbitfield)), driDispatchRemapTable[FenceSync_remap_index], parameters)
+#define GET_FenceSync(disp) GET_by_offset(disp, driDispatchRemapTable[FenceSync_remap_index])
+#define SET_FenceSync(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FenceSync_remap_index], fn)
+#define CALL_GetInteger64v(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint64 *)), driDispatchRemapTable[GetInteger64v_remap_index], parameters)
+#define GET_GetInteger64v(disp) GET_by_offset(disp, driDispatchRemapTable[GetInteger64v_remap_index])
+#define SET_GetInteger64v(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetInteger64v_remap_index], fn)
+#define CALL_GetSynciv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsync, GLenum, GLsizei, GLsizei *, GLint *)), driDispatchRemapTable[GetSynciv_remap_index], parameters)
+#define GET_GetSynciv(disp) GET_by_offset(disp, driDispatchRemapTable[GetSynciv_remap_index])
+#define SET_GetSynciv(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetSynciv_remap_index], fn)
+#define CALL_IsSync(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLsync)), driDispatchRemapTable[IsSync_remap_index], parameters)
+#define GET_IsSync(disp) GET_by_offset(disp, driDispatchRemapTable[IsSync_remap_index])
+#define SET_IsSync(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsSync_remap_index], fn)
+#define CALL_WaitSync(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsync, GLbitfield, GLuint64)), driDispatchRemapTable[WaitSync_remap_index], parameters)
+#define GET_WaitSync(disp) GET_by_offset(disp, driDispatchRemapTable[WaitSync_remap_index])
+#define SET_WaitSync(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WaitSync_remap_index], fn)
+#define CALL_DrawElementsBaseVertex(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLenum, const GLvoid *, GLint)), driDispatchRemapTable[DrawElementsBaseVertex_remap_index], parameters)
+#define GET_DrawElementsBaseVertex(disp) GET_by_offset(disp, driDispatchRemapTable[DrawElementsBaseVertex_remap_index])
+#define SET_DrawElementsBaseVertex(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DrawElementsBaseVertex_remap_index], fn)
+#define CALL_DrawRangeElementsBaseVertex(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLsizei, GLenum, const GLvoid *, GLint)), driDispatchRemapTable[DrawRangeElementsBaseVertex_remap_index], parameters)
+#define GET_DrawRangeElementsBaseVertex(disp) GET_by_offset(disp, driDispatchRemapTable[DrawRangeElementsBaseVertex_remap_index])
+#define SET_DrawRangeElementsBaseVertex(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DrawRangeElementsBaseVertex_remap_index], fn)
+#define CALL_MultiDrawElementsBaseVertex(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLsizei *, GLenum, const GLvoid **, GLsizei, const GLint *)), driDispatchRemapTable[MultiDrawElementsBaseVertex_remap_index], parameters)
+#define GET_MultiDrawElementsBaseVertex(disp) GET_by_offset(disp, driDispatchRemapTable[MultiDrawElementsBaseVertex_remap_index])
+#define SET_MultiDrawElementsBaseVertex(disp, fn) SET_by_offset(disp, driDispatchRemapTable[MultiDrawElementsBaseVertex_remap_index], fn)
+#define CALL_PolygonOffsetEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat)), driDispatchRemapTable[PolygonOffsetEXT_remap_index], parameters)
+#define GET_PolygonOffsetEXT(disp) GET_by_offset(disp, driDispatchRemapTable[PolygonOffsetEXT_remap_index])
+#define SET_PolygonOffsetEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PolygonOffsetEXT_remap_index], fn)
+#define CALL_GetPixelTexGenParameterfvSGIS(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat *)), driDispatchRemapTable[GetPixelTexGenParameterfvSGIS_remap_index], parameters)
+#define GET_GetPixelTexGenParameterfvSGIS(disp) GET_by_offset(disp, driDispatchRemapTable[GetPixelTexGenParameterfvSGIS_remap_index])
+#define SET_GetPixelTexGenParameterfvSGIS(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetPixelTexGenParameterfvSGIS_remap_index], fn)
+#define CALL_GetPixelTexGenParameterivSGIS(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint *)), driDispatchRemapTable[GetPixelTexGenParameterivSGIS_remap_index], parameters)
+#define GET_GetPixelTexGenParameterivSGIS(disp) GET_by_offset(disp, driDispatchRemapTable[GetPixelTexGenParameterivSGIS_remap_index])
+#define SET_GetPixelTexGenParameterivSGIS(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetPixelTexGenParameterivSGIS_remap_index], fn)
+#define CALL_PixelTexGenParameterfSGIS(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), driDispatchRemapTable[PixelTexGenParameterfSGIS_remap_index], parameters)
+#define GET_PixelTexGenParameterfSGIS(disp) GET_by_offset(disp, driDispatchRemapTable[PixelTexGenParameterfSGIS_remap_index])
+#define SET_PixelTexGenParameterfSGIS(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PixelTexGenParameterfSGIS_remap_index], fn)
+#define CALL_PixelTexGenParameterfvSGIS(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), driDispatchRemapTable[PixelTexGenParameterfvSGIS_remap_index], parameters)
+#define GET_PixelTexGenParameterfvSGIS(disp) GET_by_offset(disp, driDispatchRemapTable[PixelTexGenParameterfvSGIS_remap_index])
+#define SET_PixelTexGenParameterfvSGIS(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PixelTexGenParameterfvSGIS_remap_index], fn)
+#define CALL_PixelTexGenParameteriSGIS(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint)), driDispatchRemapTable[PixelTexGenParameteriSGIS_remap_index], parameters)
+#define GET_PixelTexGenParameteriSGIS(disp) GET_by_offset(disp, driDispatchRemapTable[PixelTexGenParameteriSGIS_remap_index])
+#define SET_PixelTexGenParameteriSGIS(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PixelTexGenParameteriSGIS_remap_index], fn)
+#define CALL_PixelTexGenParameterivSGIS(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), driDispatchRemapTable[PixelTexGenParameterivSGIS_remap_index], parameters)
+#define GET_PixelTexGenParameterivSGIS(disp) GET_by_offset(disp, driDispatchRemapTable[PixelTexGenParameterivSGIS_remap_index])
+#define SET_PixelTexGenParameterivSGIS(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PixelTexGenParameterivSGIS_remap_index], fn)
+#define CALL_SampleMaskSGIS(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampf, GLboolean)), driDispatchRemapTable[SampleMaskSGIS_remap_index], parameters)
+#define GET_SampleMaskSGIS(disp) GET_by_offset(disp, driDispatchRemapTable[SampleMaskSGIS_remap_index])
+#define SET_SampleMaskSGIS(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SampleMaskSGIS_remap_index], fn)
+#define CALL_SamplePatternSGIS(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[SamplePatternSGIS_remap_index], parameters)
+#define GET_SamplePatternSGIS(disp) GET_by_offset(disp, driDispatchRemapTable[SamplePatternSGIS_remap_index])
+#define SET_SamplePatternSGIS(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SamplePatternSGIS_remap_index], fn)
+#define CALL_ColorPointerEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLenum, GLsizei, GLsizei, const GLvoid *)), driDispatchRemapTable[ColorPointerEXT_remap_index], parameters)
+#define GET_ColorPointerEXT(disp) GET_by_offset(disp, driDispatchRemapTable[ColorPointerEXT_remap_index])
+#define SET_ColorPointerEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ColorPointerEXT_remap_index], fn)
+#define CALL_EdgeFlagPointerEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLsizei, const GLboolean *)), driDispatchRemapTable[EdgeFlagPointerEXT_remap_index], parameters)
+#define GET_EdgeFlagPointerEXT(disp) GET_by_offset(disp, driDispatchRemapTable[EdgeFlagPointerEXT_remap_index])
+#define SET_EdgeFlagPointerEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[EdgeFlagPointerEXT_remap_index], fn)
+#define CALL_IndexPointerEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLsizei, const GLvoid *)), driDispatchRemapTable[IndexPointerEXT_remap_index], parameters)
+#define GET_IndexPointerEXT(disp) GET_by_offset(disp, driDispatchRemapTable[IndexPointerEXT_remap_index])
+#define SET_IndexPointerEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IndexPointerEXT_remap_index], fn)
+#define CALL_NormalPointerEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLsizei, const GLvoid *)), driDispatchRemapTable[NormalPointerEXT_remap_index], parameters)
+#define GET_NormalPointerEXT(disp) GET_by_offset(disp, driDispatchRemapTable[NormalPointerEXT_remap_index])
+#define SET_NormalPointerEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[NormalPointerEXT_remap_index], fn)
+#define CALL_TexCoordPointerEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLenum, GLsizei, GLsizei, const GLvoid *)), driDispatchRemapTable[TexCoordPointerEXT_remap_index], parameters)
+#define GET_TexCoordPointerEXT(disp) GET_by_offset(disp, driDispatchRemapTable[TexCoordPointerEXT_remap_index])
+#define SET_TexCoordPointerEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[TexCoordPointerEXT_remap_index], fn)
+#define CALL_VertexPointerEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLenum, GLsizei, GLsizei, const GLvoid *)), driDispatchRemapTable[VertexPointerEXT_remap_index], parameters)
+#define GET_VertexPointerEXT(disp) GET_by_offset(disp, driDispatchRemapTable[VertexPointerEXT_remap_index])
+#define SET_VertexPointerEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexPointerEXT_remap_index], fn)
+#define CALL_PointParameterfEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), driDispatchRemapTable[PointParameterfEXT_remap_index], parameters)
+#define GET_PointParameterfEXT(disp) GET_by_offset(disp, driDispatchRemapTable[PointParameterfEXT_remap_index])
+#define SET_PointParameterfEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PointParameterfEXT_remap_index], fn)
+#define CALL_PointParameterfvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), driDispatchRemapTable[PointParameterfvEXT_remap_index], parameters)
+#define GET_PointParameterfvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[PointParameterfvEXT_remap_index])
+#define SET_PointParameterfvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PointParameterfvEXT_remap_index], fn)
+#define CALL_LockArraysEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei)), driDispatchRemapTable[LockArraysEXT_remap_index], parameters)
+#define GET_LockArraysEXT(disp) GET_by_offset(disp, driDispatchRemapTable[LockArraysEXT_remap_index])
+#define SET_LockArraysEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[LockArraysEXT_remap_index], fn)
+#define CALL_UnlockArraysEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), driDispatchRemapTable[UnlockArraysEXT_remap_index], parameters)
+#define GET_UnlockArraysEXT(disp) GET_by_offset(disp, driDispatchRemapTable[UnlockArraysEXT_remap_index])
+#define SET_UnlockArraysEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UnlockArraysEXT_remap_index], fn)
+#define CALL_CullParameterdvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLdouble *)), driDispatchRemapTable[CullParameterdvEXT_remap_index], parameters)
+#define GET_CullParameterdvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[CullParameterdvEXT_remap_index])
+#define SET_CullParameterdvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CullParameterdvEXT_remap_index], fn)
+#define CALL_CullParameterfvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat *)), driDispatchRemapTable[CullParameterfvEXT_remap_index], parameters)
+#define GET_CullParameterfvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[CullParameterfvEXT_remap_index])
+#define SET_CullParameterfvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CullParameterfvEXT_remap_index], fn)
+#define CALL_SecondaryColor3bEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLbyte, GLbyte, GLbyte)), driDispatchRemapTable[SecondaryColor3bEXT_remap_index], parameters)
+#define GET_SecondaryColor3bEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3bEXT_remap_index])
+#define SET_SecondaryColor3bEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3bEXT_remap_index], fn)
+#define CALL_SecondaryColor3bvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLbyte *)), driDispatchRemapTable[SecondaryColor3bvEXT_remap_index], parameters)
+#define GET_SecondaryColor3bvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3bvEXT_remap_index])
+#define SET_SecondaryColor3bvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3bvEXT_remap_index], fn)
+#define CALL_SecondaryColor3dEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[SecondaryColor3dEXT_remap_index], parameters)
+#define GET_SecondaryColor3dEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3dEXT_remap_index])
+#define SET_SecondaryColor3dEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3dEXT_remap_index], fn)
+#define CALL_SecondaryColor3dvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), driDispatchRemapTable[SecondaryColor3dvEXT_remap_index], parameters)
+#define GET_SecondaryColor3dvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3dvEXT_remap_index])
+#define SET_SecondaryColor3dvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3dvEXT_remap_index], fn)
+#define CALL_SecondaryColor3fEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[SecondaryColor3fEXT_remap_index], parameters)
+#define GET_SecondaryColor3fEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3fEXT_remap_index])
+#define SET_SecondaryColor3fEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3fEXT_remap_index], fn)
+#define CALL_SecondaryColor3fvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), driDispatchRemapTable[SecondaryColor3fvEXT_remap_index], parameters)
+#define GET_SecondaryColor3fvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3fvEXT_remap_index])
+#define SET_SecondaryColor3fvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3fvEXT_remap_index], fn)
+#define CALL_SecondaryColor3iEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint)), driDispatchRemapTable[SecondaryColor3iEXT_remap_index], parameters)
+#define GET_SecondaryColor3iEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3iEXT_remap_index])
+#define SET_SecondaryColor3iEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3iEXT_remap_index], fn)
+#define CALL_SecondaryColor3ivEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), driDispatchRemapTable[SecondaryColor3ivEXT_remap_index], parameters)
+#define GET_SecondaryColor3ivEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3ivEXT_remap_index])
+#define SET_SecondaryColor3ivEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3ivEXT_remap_index], fn)
+#define CALL_SecondaryColor3sEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort)), driDispatchRemapTable[SecondaryColor3sEXT_remap_index], parameters)
+#define GET_SecondaryColor3sEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3sEXT_remap_index])
+#define SET_SecondaryColor3sEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3sEXT_remap_index], fn)
+#define CALL_SecondaryColor3svEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), driDispatchRemapTable[SecondaryColor3svEXT_remap_index], parameters)
+#define GET_SecondaryColor3svEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3svEXT_remap_index])
+#define SET_SecondaryColor3svEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3svEXT_remap_index], fn)
+#define CALL_SecondaryColor3ubEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLubyte, GLubyte, GLubyte)), driDispatchRemapTable[SecondaryColor3ubEXT_remap_index], parameters)
+#define GET_SecondaryColor3ubEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3ubEXT_remap_index])
+#define SET_SecondaryColor3ubEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3ubEXT_remap_index], fn)
+#define CALL_SecondaryColor3ubvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLubyte *)), driDispatchRemapTable[SecondaryColor3ubvEXT_remap_index], parameters)
+#define GET_SecondaryColor3ubvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3ubvEXT_remap_index])
+#define SET_SecondaryColor3ubvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3ubvEXT_remap_index], fn)
+#define CALL_SecondaryColor3uiEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint, GLuint)), driDispatchRemapTable[SecondaryColor3uiEXT_remap_index], parameters)
+#define GET_SecondaryColor3uiEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3uiEXT_remap_index])
+#define SET_SecondaryColor3uiEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3uiEXT_remap_index], fn)
+#define CALL_SecondaryColor3uivEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLuint *)), driDispatchRemapTable[SecondaryColor3uivEXT_remap_index], parameters)
+#define GET_SecondaryColor3uivEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3uivEXT_remap_index])
+#define SET_SecondaryColor3uivEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3uivEXT_remap_index], fn)
+#define CALL_SecondaryColor3usEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLushort, GLushort, GLushort)), driDispatchRemapTable[SecondaryColor3usEXT_remap_index], parameters)
+#define GET_SecondaryColor3usEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3usEXT_remap_index])
+#define SET_SecondaryColor3usEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3usEXT_remap_index], fn)
+#define CALL_SecondaryColor3usvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLushort *)), driDispatchRemapTable[SecondaryColor3usvEXT_remap_index], parameters)
+#define GET_SecondaryColor3usvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3usvEXT_remap_index])
+#define SET_SecondaryColor3usvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3usvEXT_remap_index], fn)
+#define CALL_SecondaryColorPointerEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLenum, GLsizei, const GLvoid *)), driDispatchRemapTable[SecondaryColorPointerEXT_remap_index], parameters)
+#define GET_SecondaryColorPointerEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColorPointerEXT_remap_index])
+#define SET_SecondaryColorPointerEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColorPointerEXT_remap_index], fn)
+#define CALL_MultiDrawArraysEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint *, GLsizei *, GLsizei)), driDispatchRemapTable[MultiDrawArraysEXT_remap_index], parameters)
+#define GET_MultiDrawArraysEXT(disp) GET_by_offset(disp, driDispatchRemapTable[MultiDrawArraysEXT_remap_index])
+#define SET_MultiDrawArraysEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[MultiDrawArraysEXT_remap_index], fn)
+#define CALL_MultiDrawElementsEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLsizei *, GLenum, const GLvoid **, GLsizei)), driDispatchRemapTable[MultiDrawElementsEXT_remap_index], parameters)
+#define GET_MultiDrawElementsEXT(disp) GET_by_offset(disp, driDispatchRemapTable[MultiDrawElementsEXT_remap_index])
+#define SET_MultiDrawElementsEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[MultiDrawElementsEXT_remap_index], fn)
+#define CALL_FogCoordPointerEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, const GLvoid *)), driDispatchRemapTable[FogCoordPointerEXT_remap_index], parameters)
+#define GET_FogCoordPointerEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FogCoordPointerEXT_remap_index])
+#define SET_FogCoordPointerEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FogCoordPointerEXT_remap_index], fn)
+#define CALL_FogCoorddEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble)), driDispatchRemapTable[FogCoorddEXT_remap_index], parameters)
+#define GET_FogCoorddEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FogCoorddEXT_remap_index])
+#define SET_FogCoorddEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FogCoorddEXT_remap_index], fn)
+#define CALL_FogCoorddvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), driDispatchRemapTable[FogCoorddvEXT_remap_index], parameters)
+#define GET_FogCoorddvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FogCoorddvEXT_remap_index])
+#define SET_FogCoorddvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FogCoorddvEXT_remap_index], fn)
+#define CALL_FogCoordfEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat)), driDispatchRemapTable[FogCoordfEXT_remap_index], parameters)
+#define GET_FogCoordfEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FogCoordfEXT_remap_index])
+#define SET_FogCoordfEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FogCoordfEXT_remap_index], fn)
+#define CALL_FogCoordfvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), driDispatchRemapTable[FogCoordfvEXT_remap_index], parameters)
+#define GET_FogCoordfvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FogCoordfvEXT_remap_index])
+#define SET_FogCoordfvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FogCoordfvEXT_remap_index], fn)
+#define CALL_PixelTexGenSGIX(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[PixelTexGenSGIX_remap_index], parameters)
+#define GET_PixelTexGenSGIX(disp) GET_by_offset(disp, driDispatchRemapTable[PixelTexGenSGIX_remap_index])
+#define SET_PixelTexGenSGIX(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PixelTexGenSGIX_remap_index], fn)
+#define CALL_BlendFuncSeparateEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLenum)), driDispatchRemapTable[BlendFuncSeparateEXT_remap_index], parameters)
+#define GET_BlendFuncSeparateEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BlendFuncSeparateEXT_remap_index])
+#define SET_BlendFuncSeparateEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BlendFuncSeparateEXT_remap_index], fn)
+#define CALL_FlushVertexArrayRangeNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), driDispatchRemapTable[FlushVertexArrayRangeNV_remap_index], parameters)
+#define GET_FlushVertexArrayRangeNV(disp) GET_by_offset(disp, driDispatchRemapTable[FlushVertexArrayRangeNV_remap_index])
+#define SET_FlushVertexArrayRangeNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FlushVertexArrayRangeNV_remap_index], fn)
+#define CALL_VertexArrayRangeNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLvoid *)), driDispatchRemapTable[VertexArrayRangeNV_remap_index], parameters)
+#define GET_VertexArrayRangeNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexArrayRangeNV_remap_index])
+#define SET_VertexArrayRangeNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexArrayRangeNV_remap_index], fn)
+#define CALL_CombinerInputNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLenum, GLenum, GLenum)), driDispatchRemapTable[CombinerInputNV_remap_index], parameters)
+#define GET_CombinerInputNV(disp) GET_by_offset(disp, driDispatchRemapTable[CombinerInputNV_remap_index])
+#define SET_CombinerInputNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CombinerInputNV_remap_index], fn)
+#define CALL_CombinerOutputNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLenum, GLenum, GLenum, GLenum, GLboolean, GLboolean, GLboolean)), driDispatchRemapTable[CombinerOutputNV_remap_index], parameters)
+#define GET_CombinerOutputNV(disp) GET_by_offset(disp, driDispatchRemapTable[CombinerOutputNV_remap_index])
+#define SET_CombinerOutputNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CombinerOutputNV_remap_index], fn)
+#define CALL_CombinerParameterfNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), driDispatchRemapTable[CombinerParameterfNV_remap_index], parameters)
+#define GET_CombinerParameterfNV(disp) GET_by_offset(disp, driDispatchRemapTable[CombinerParameterfNV_remap_index])
+#define SET_CombinerParameterfNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CombinerParameterfNV_remap_index], fn)
+#define CALL_CombinerParameterfvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), driDispatchRemapTable[CombinerParameterfvNV_remap_index], parameters)
+#define GET_CombinerParameterfvNV(disp) GET_by_offset(disp, driDispatchRemapTable[CombinerParameterfvNV_remap_index])
+#define SET_CombinerParameterfvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CombinerParameterfvNV_remap_index], fn)
+#define CALL_CombinerParameteriNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint)), driDispatchRemapTable[CombinerParameteriNV_remap_index], parameters)
+#define GET_CombinerParameteriNV(disp) GET_by_offset(disp, driDispatchRemapTable[CombinerParameteriNV_remap_index])
+#define SET_CombinerParameteriNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CombinerParameteriNV_remap_index], fn)
+#define CALL_CombinerParameterivNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), driDispatchRemapTable[CombinerParameterivNV_remap_index], parameters)
+#define GET_CombinerParameterivNV(disp) GET_by_offset(disp, driDispatchRemapTable[CombinerParameterivNV_remap_index])
+#define SET_CombinerParameterivNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CombinerParameterivNV_remap_index], fn)
+#define CALL_FinalCombinerInputNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLenum)), driDispatchRemapTable[FinalCombinerInputNV_remap_index], parameters)
+#define GET_FinalCombinerInputNV(disp) GET_by_offset(disp, driDispatchRemapTable[FinalCombinerInputNV_remap_index])
+#define SET_FinalCombinerInputNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FinalCombinerInputNV_remap_index], fn)
+#define CALL_GetCombinerInputParameterfvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLenum, GLfloat *)), driDispatchRemapTable[GetCombinerInputParameterfvNV_remap_index], parameters)
+#define GET_GetCombinerInputParameterfvNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetCombinerInputParameterfvNV_remap_index])
+#define SET_GetCombinerInputParameterfvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetCombinerInputParameterfvNV_remap_index], fn)
+#define CALL_GetCombinerInputParameterivNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLenum, GLint *)), driDispatchRemapTable[GetCombinerInputParameterivNV_remap_index], parameters)
+#define GET_GetCombinerInputParameterivNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetCombinerInputParameterivNV_remap_index])
+#define SET_GetCombinerInputParameterivNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetCombinerInputParameterivNV_remap_index], fn)
+#define CALL_GetCombinerOutputParameterfvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLfloat *)), driDispatchRemapTable[GetCombinerOutputParameterfvNV_remap_index], parameters)
+#define GET_GetCombinerOutputParameterfvNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetCombinerOutputParameterfvNV_remap_index])
+#define SET_GetCombinerOutputParameterfvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetCombinerOutputParameterfvNV_remap_index], fn)
+#define CALL_GetCombinerOutputParameterivNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLint *)), driDispatchRemapTable[GetCombinerOutputParameterivNV_remap_index], parameters)
+#define GET_GetCombinerOutputParameterivNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetCombinerOutputParameterivNV_remap_index])
+#define SET_GetCombinerOutputParameterivNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetCombinerOutputParameterivNV_remap_index], fn)
+#define CALL_GetFinalCombinerInputParameterfvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), driDispatchRemapTable[GetFinalCombinerInputParameterfvNV_remap_index], parameters)
+#define GET_GetFinalCombinerInputParameterfvNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetFinalCombinerInputParameterfvNV_remap_index])
+#define SET_GetFinalCombinerInputParameterfvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetFinalCombinerInputParameterfvNV_remap_index], fn)
+#define CALL_GetFinalCombinerInputParameterivNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), driDispatchRemapTable[GetFinalCombinerInputParameterivNV_remap_index], parameters)
+#define GET_GetFinalCombinerInputParameterivNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetFinalCombinerInputParameterivNV_remap_index])
+#define SET_GetFinalCombinerInputParameterivNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetFinalCombinerInputParameterivNV_remap_index], fn)
+#define CALL_ResizeBuffersMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), driDispatchRemapTable[ResizeBuffersMESA_remap_index], parameters)
+#define GET_ResizeBuffersMESA(disp) GET_by_offset(disp, driDispatchRemapTable[ResizeBuffersMESA_remap_index])
+#define SET_ResizeBuffersMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ResizeBuffersMESA_remap_index], fn)
+#define CALL_WindowPos2dMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble)), driDispatchRemapTable[WindowPos2dMESA_remap_index], parameters)
+#define GET_WindowPos2dMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos2dMESA_remap_index])
+#define SET_WindowPos2dMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos2dMESA_remap_index], fn)
+#define CALL_WindowPos2dvMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), driDispatchRemapTable[WindowPos2dvMESA_remap_index], parameters)
+#define GET_WindowPos2dvMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos2dvMESA_remap_index])
+#define SET_WindowPos2dvMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos2dvMESA_remap_index], fn)
+#define CALL_WindowPos2fMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat)), driDispatchRemapTable[WindowPos2fMESA_remap_index], parameters)
+#define GET_WindowPos2fMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos2fMESA_remap_index])
+#define SET_WindowPos2fMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos2fMESA_remap_index], fn)
+#define CALL_WindowPos2fvMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), driDispatchRemapTable[WindowPos2fvMESA_remap_index], parameters)
+#define GET_WindowPos2fvMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos2fvMESA_remap_index])
+#define SET_WindowPos2fvMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos2fvMESA_remap_index], fn)
+#define CALL_WindowPos2iMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint)), driDispatchRemapTable[WindowPos2iMESA_remap_index], parameters)
+#define GET_WindowPos2iMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos2iMESA_remap_index])
+#define SET_WindowPos2iMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos2iMESA_remap_index], fn)
+#define CALL_WindowPos2ivMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), driDispatchRemapTable[WindowPos2ivMESA_remap_index], parameters)
+#define GET_WindowPos2ivMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos2ivMESA_remap_index])
+#define SET_WindowPos2ivMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos2ivMESA_remap_index], fn)
+#define CALL_WindowPos2sMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort)), driDispatchRemapTable[WindowPos2sMESA_remap_index], parameters)
+#define GET_WindowPos2sMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos2sMESA_remap_index])
+#define SET_WindowPos2sMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos2sMESA_remap_index], fn)
+#define CALL_WindowPos2svMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), driDispatchRemapTable[WindowPos2svMESA_remap_index], parameters)
+#define GET_WindowPos2svMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos2svMESA_remap_index])
+#define SET_WindowPos2svMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos2svMESA_remap_index], fn)
+#define CALL_WindowPos3dMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[WindowPos3dMESA_remap_index], parameters)
+#define GET_WindowPos3dMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos3dMESA_remap_index])
+#define SET_WindowPos3dMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos3dMESA_remap_index], fn)
+#define CALL_WindowPos3dvMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), driDispatchRemapTable[WindowPos3dvMESA_remap_index], parameters)
+#define GET_WindowPos3dvMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos3dvMESA_remap_index])
+#define SET_WindowPos3dvMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos3dvMESA_remap_index], fn)
+#define CALL_WindowPos3fMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[WindowPos3fMESA_remap_index], parameters)
+#define GET_WindowPos3fMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos3fMESA_remap_index])
+#define SET_WindowPos3fMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos3fMESA_remap_index], fn)
+#define CALL_WindowPos3fvMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), driDispatchRemapTable[WindowPos3fvMESA_remap_index], parameters)
+#define GET_WindowPos3fvMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos3fvMESA_remap_index])
+#define SET_WindowPos3fvMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos3fvMESA_remap_index], fn)
+#define CALL_WindowPos3iMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint)), driDispatchRemapTable[WindowPos3iMESA_remap_index], parameters)
+#define GET_WindowPos3iMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos3iMESA_remap_index])
+#define SET_WindowPos3iMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos3iMESA_remap_index], fn)
+#define CALL_WindowPos3ivMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), driDispatchRemapTable[WindowPos3ivMESA_remap_index], parameters)
+#define GET_WindowPos3ivMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos3ivMESA_remap_index])
+#define SET_WindowPos3ivMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos3ivMESA_remap_index], fn)
+#define CALL_WindowPos3sMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort)), driDispatchRemapTable[WindowPos3sMESA_remap_index], parameters)
+#define GET_WindowPos3sMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos3sMESA_remap_index])
+#define SET_WindowPos3sMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos3sMESA_remap_index], fn)
+#define CALL_WindowPos3svMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), driDispatchRemapTable[WindowPos3svMESA_remap_index], parameters)
+#define GET_WindowPos3svMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos3svMESA_remap_index])
+#define SET_WindowPos3svMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos3svMESA_remap_index], fn)
+#define CALL_WindowPos4dMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[WindowPos4dMESA_remap_index], parameters)
+#define GET_WindowPos4dMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos4dMESA_remap_index])
+#define SET_WindowPos4dMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos4dMESA_remap_index], fn)
+#define CALL_WindowPos4dvMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), driDispatchRemapTable[WindowPos4dvMESA_remap_index], parameters)
+#define GET_WindowPos4dvMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos4dvMESA_remap_index])
+#define SET_WindowPos4dvMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos4dvMESA_remap_index], fn)
+#define CALL_WindowPos4fMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[WindowPos4fMESA_remap_index], parameters)
+#define GET_WindowPos4fMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos4fMESA_remap_index])
+#define SET_WindowPos4fMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos4fMESA_remap_index], fn)
+#define CALL_WindowPos4fvMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), driDispatchRemapTable[WindowPos4fvMESA_remap_index], parameters)
+#define GET_WindowPos4fvMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos4fvMESA_remap_index])
+#define SET_WindowPos4fvMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos4fvMESA_remap_index], fn)
+#define CALL_WindowPos4iMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint)), driDispatchRemapTable[WindowPos4iMESA_remap_index], parameters)
+#define GET_WindowPos4iMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos4iMESA_remap_index])
+#define SET_WindowPos4iMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos4iMESA_remap_index], fn)
+#define CALL_WindowPos4ivMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), driDispatchRemapTable[WindowPos4ivMESA_remap_index], parameters)
+#define GET_WindowPos4ivMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos4ivMESA_remap_index])
+#define SET_WindowPos4ivMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos4ivMESA_remap_index], fn)
+#define CALL_WindowPos4sMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort, GLshort)), driDispatchRemapTable[WindowPos4sMESA_remap_index], parameters)
+#define GET_WindowPos4sMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos4sMESA_remap_index])
+#define SET_WindowPos4sMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos4sMESA_remap_index], fn)
+#define CALL_WindowPos4svMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), driDispatchRemapTable[WindowPos4svMESA_remap_index], parameters)
+#define GET_WindowPos4svMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos4svMESA_remap_index])
+#define SET_WindowPos4svMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos4svMESA_remap_index], fn)
+#define CALL_MultiModeDrawArraysIBM(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLenum *, const GLint *, const GLsizei *, GLsizei, GLint)), driDispatchRemapTable[MultiModeDrawArraysIBM_remap_index], parameters)
+#define GET_MultiModeDrawArraysIBM(disp) GET_by_offset(disp, driDispatchRemapTable[MultiModeDrawArraysIBM_remap_index])
+#define SET_MultiModeDrawArraysIBM(disp, fn) SET_by_offset(disp, driDispatchRemapTable[MultiModeDrawArraysIBM_remap_index], fn)
+#define CALL_MultiModeDrawElementsIBM(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLenum *, const GLsizei *, GLenum, const GLvoid * const *, GLsizei, GLint)), driDispatchRemapTable[MultiModeDrawElementsIBM_remap_index], parameters)
+#define GET_MultiModeDrawElementsIBM(disp) GET_by_offset(disp, driDispatchRemapTable[MultiModeDrawElementsIBM_remap_index])
+#define SET_MultiModeDrawElementsIBM(disp, fn) SET_by_offset(disp, driDispatchRemapTable[MultiModeDrawElementsIBM_remap_index], fn)
+#define CALL_DeleteFencesNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), driDispatchRemapTable[DeleteFencesNV_remap_index], parameters)
+#define GET_DeleteFencesNV(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteFencesNV_remap_index])
+#define SET_DeleteFencesNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteFencesNV_remap_index], fn)
+#define CALL_FinishFenceNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[FinishFenceNV_remap_index], parameters)
+#define GET_FinishFenceNV(disp) GET_by_offset(disp, driDispatchRemapTable[FinishFenceNV_remap_index])
+#define SET_FinishFenceNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FinishFenceNV_remap_index], fn)
+#define CALL_GenFencesNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), driDispatchRemapTable[GenFencesNV_remap_index], parameters)
+#define GET_GenFencesNV(disp) GET_by_offset(disp, driDispatchRemapTable[GenFencesNV_remap_index])
+#define SET_GenFencesNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenFencesNV_remap_index], fn)
+#define CALL_GetFenceivNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), driDispatchRemapTable[GetFenceivNV_remap_index], parameters)
+#define GET_GetFenceivNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetFenceivNV_remap_index])
+#define SET_GetFenceivNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetFenceivNV_remap_index], fn)
+#define CALL_IsFenceNV(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[IsFenceNV_remap_index], parameters)
+#define GET_IsFenceNV(disp) GET_by_offset(disp, driDispatchRemapTable[IsFenceNV_remap_index])
+#define SET_IsFenceNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsFenceNV_remap_index], fn)
+#define CALL_SetFenceNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum)), driDispatchRemapTable[SetFenceNV_remap_index], parameters)
+#define GET_SetFenceNV(disp) GET_by_offset(disp, driDispatchRemapTable[SetFenceNV_remap_index])
+#define SET_SetFenceNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SetFenceNV_remap_index], fn)
+#define CALL_TestFenceNV(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[TestFenceNV_remap_index], parameters)
+#define GET_TestFenceNV(disp) GET_by_offset(disp, driDispatchRemapTable[TestFenceNV_remap_index])
+#define SET_TestFenceNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[TestFenceNV_remap_index], fn)
+#define CALL_AreProgramsResidentNV(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLsizei, const GLuint *, GLboolean *)), driDispatchRemapTable[AreProgramsResidentNV_remap_index], parameters)
+#define GET_AreProgramsResidentNV(disp) GET_by_offset(disp, driDispatchRemapTable[AreProgramsResidentNV_remap_index])
+#define SET_AreProgramsResidentNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[AreProgramsResidentNV_remap_index], fn)
+#define CALL_BindProgramNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), driDispatchRemapTable[BindProgramNV_remap_index], parameters)
+#define GET_BindProgramNV(disp) GET_by_offset(disp, driDispatchRemapTable[BindProgramNV_remap_index])
+#define SET_BindProgramNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindProgramNV_remap_index], fn)
+#define CALL_DeleteProgramsNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), driDispatchRemapTable[DeleteProgramsNV_remap_index], parameters)
+#define GET_DeleteProgramsNV(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteProgramsNV_remap_index])
+#define SET_DeleteProgramsNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteProgramsNV_remap_index], fn)
+#define CALL_ExecuteProgramNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, const GLfloat *)), driDispatchRemapTable[ExecuteProgramNV_remap_index], parameters)
+#define GET_ExecuteProgramNV(disp) GET_by_offset(disp, driDispatchRemapTable[ExecuteProgramNV_remap_index])
+#define SET_ExecuteProgramNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ExecuteProgramNV_remap_index], fn)
+#define CALL_GenProgramsNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), driDispatchRemapTable[GenProgramsNV_remap_index], parameters)
+#define GET_GenProgramsNV(disp) GET_by_offset(disp, driDispatchRemapTable[GenProgramsNV_remap_index])
+#define SET_GenProgramsNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenProgramsNV_remap_index], fn)
+#define CALL_GetProgramParameterdvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLenum, GLdouble *)), driDispatchRemapTable[GetProgramParameterdvNV_remap_index], parameters)
+#define GET_GetProgramParameterdvNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramParameterdvNV_remap_index])
+#define SET_GetProgramParameterdvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramParameterdvNV_remap_index], fn)
+#define CALL_GetProgramParameterfvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLenum, GLfloat *)), driDispatchRemapTable[GetProgramParameterfvNV_remap_index], parameters)
+#define GET_GetProgramParameterfvNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramParameterfvNV_remap_index])
+#define SET_GetProgramParameterfvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramParameterfvNV_remap_index], fn)
+#define CALL_GetProgramStringNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLubyte *)), driDispatchRemapTable[GetProgramStringNV_remap_index], parameters)
+#define GET_GetProgramStringNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramStringNV_remap_index])
+#define SET_GetProgramStringNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramStringNV_remap_index], fn)
+#define CALL_GetProgramivNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), driDispatchRemapTable[GetProgramivNV_remap_index], parameters)
+#define GET_GetProgramivNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramivNV_remap_index])
+#define SET_GetProgramivNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramivNV_remap_index], fn)
+#define CALL_GetTrackMatrixivNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLenum, GLint *)), driDispatchRemapTable[GetTrackMatrixivNV_remap_index], parameters)
+#define GET_GetTrackMatrixivNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetTrackMatrixivNV_remap_index])
+#define SET_GetTrackMatrixivNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetTrackMatrixivNV_remap_index], fn)
+#define CALL_GetVertexAttribPointervNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLvoid **)), driDispatchRemapTable[GetVertexAttribPointervNV_remap_index], parameters)
+#define GET_GetVertexAttribPointervNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetVertexAttribPointervNV_remap_index])
+#define SET_GetVertexAttribPointervNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetVertexAttribPointervNV_remap_index], fn)
+#define CALL_GetVertexAttribdvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLdouble *)), driDispatchRemapTable[GetVertexAttribdvNV_remap_index], parameters)
+#define GET_GetVertexAttribdvNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetVertexAttribdvNV_remap_index])
+#define SET_GetVertexAttribdvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetVertexAttribdvNV_remap_index], fn)
+#define CALL_GetVertexAttribfvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLfloat *)), driDispatchRemapTable[GetVertexAttribfvNV_remap_index], parameters)
+#define GET_GetVertexAttribfvNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetVertexAttribfvNV_remap_index])
+#define SET_GetVertexAttribfvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetVertexAttribfvNV_remap_index], fn)
+#define CALL_GetVertexAttribivNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), driDispatchRemapTable[GetVertexAttribivNV_remap_index], parameters)
+#define GET_GetVertexAttribivNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetVertexAttribivNV_remap_index])
+#define SET_GetVertexAttribivNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetVertexAttribivNV_remap_index], fn)
+#define CALL_IsProgramNV(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[IsProgramNV_remap_index], parameters)
+#define GET_IsProgramNV(disp) GET_by_offset(disp, driDispatchRemapTable[IsProgramNV_remap_index])
+#define SET_IsProgramNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsProgramNV_remap_index], fn)
+#define CALL_LoadProgramNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLsizei, const GLubyte *)), driDispatchRemapTable[LoadProgramNV_remap_index], parameters)
+#define GET_LoadProgramNV(disp) GET_by_offset(disp, driDispatchRemapTable[LoadProgramNV_remap_index])
+#define SET_LoadProgramNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[LoadProgramNV_remap_index], fn)
+#define CALL_ProgramParameters4dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, const GLdouble *)), driDispatchRemapTable[ProgramParameters4dvNV_remap_index], parameters)
+#define GET_ProgramParameters4dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramParameters4dvNV_remap_index])
+#define SET_ProgramParameters4dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramParameters4dvNV_remap_index], fn)
+#define CALL_ProgramParameters4fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, const GLfloat *)), driDispatchRemapTable[ProgramParameters4fvNV_remap_index], parameters)
+#define GET_ProgramParameters4fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramParameters4fvNV_remap_index])
+#define SET_ProgramParameters4fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramParameters4fvNV_remap_index], fn)
+#define CALL_RequestResidentProgramsNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), driDispatchRemapTable[RequestResidentProgramsNV_remap_index], parameters)
+#define GET_RequestResidentProgramsNV(disp) GET_by_offset(disp, driDispatchRemapTable[RequestResidentProgramsNV_remap_index])
+#define SET_RequestResidentProgramsNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[RequestResidentProgramsNV_remap_index], fn)
+#define CALL_TrackMatrixNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLenum, GLenum)), driDispatchRemapTable[TrackMatrixNV_remap_index], parameters)
+#define GET_TrackMatrixNV(disp) GET_by_offset(disp, driDispatchRemapTable[TrackMatrixNV_remap_index])
+#define SET_TrackMatrixNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[TrackMatrixNV_remap_index], fn)
+#define CALL_VertexAttrib1dNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLdouble)), driDispatchRemapTable[VertexAttrib1dNV_remap_index], parameters)
+#define GET_VertexAttrib1dNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1dNV_remap_index])
+#define SET_VertexAttrib1dNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1dNV_remap_index], fn)
+#define CALL_VertexAttrib1dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLdouble *)), driDispatchRemapTable[VertexAttrib1dvNV_remap_index], parameters)
+#define GET_VertexAttrib1dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1dvNV_remap_index])
+#define SET_VertexAttrib1dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1dvNV_remap_index], fn)
+#define CALL_VertexAttrib1fNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat)), driDispatchRemapTable[VertexAttrib1fNV_remap_index], parameters)
+#define GET_VertexAttrib1fNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1fNV_remap_index])
+#define SET_VertexAttrib1fNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1fNV_remap_index], fn)
+#define CALL_VertexAttrib1fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), driDispatchRemapTable[VertexAttrib1fvNV_remap_index], parameters)
+#define GET_VertexAttrib1fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1fvNV_remap_index])
+#define SET_VertexAttrib1fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1fvNV_remap_index], fn)
+#define CALL_VertexAttrib1sNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLshort)), driDispatchRemapTable[VertexAttrib1sNV_remap_index], parameters)
+#define GET_VertexAttrib1sNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1sNV_remap_index])
+#define SET_VertexAttrib1sNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1sNV_remap_index], fn)
+#define CALL_VertexAttrib1svNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLshort *)), driDispatchRemapTable[VertexAttrib1svNV_remap_index], parameters)
+#define GET_VertexAttrib1svNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1svNV_remap_index])
+#define SET_VertexAttrib1svNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1svNV_remap_index], fn)
+#define CALL_VertexAttrib2dNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLdouble, GLdouble)), driDispatchRemapTable[VertexAttrib2dNV_remap_index], parameters)
+#define GET_VertexAttrib2dNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2dNV_remap_index])
+#define SET_VertexAttrib2dNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2dNV_remap_index], fn)
+#define CALL_VertexAttrib2dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLdouble *)), driDispatchRemapTable[VertexAttrib2dvNV_remap_index], parameters)
+#define GET_VertexAttrib2dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2dvNV_remap_index])
+#define SET_VertexAttrib2dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2dvNV_remap_index], fn)
+#define CALL_VertexAttrib2fNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat, GLfloat)), driDispatchRemapTable[VertexAttrib2fNV_remap_index], parameters)
+#define GET_VertexAttrib2fNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2fNV_remap_index])
+#define SET_VertexAttrib2fNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2fNV_remap_index], fn)
+#define CALL_VertexAttrib2fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), driDispatchRemapTable[VertexAttrib2fvNV_remap_index], parameters)
+#define GET_VertexAttrib2fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2fvNV_remap_index])
+#define SET_VertexAttrib2fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2fvNV_remap_index], fn)
+#define CALL_VertexAttrib2sNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLshort, GLshort)), driDispatchRemapTable[VertexAttrib2sNV_remap_index], parameters)
+#define GET_VertexAttrib2sNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2sNV_remap_index])
+#define SET_VertexAttrib2sNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2sNV_remap_index], fn)
+#define CALL_VertexAttrib2svNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLshort *)), driDispatchRemapTable[VertexAttrib2svNV_remap_index], parameters)
+#define GET_VertexAttrib2svNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2svNV_remap_index])
+#define SET_VertexAttrib2svNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2svNV_remap_index], fn)
+#define CALL_VertexAttrib3dNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[VertexAttrib3dNV_remap_index], parameters)
+#define GET_VertexAttrib3dNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3dNV_remap_index])
+#define SET_VertexAttrib3dNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3dNV_remap_index], fn)
+#define CALL_VertexAttrib3dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLdouble *)), driDispatchRemapTable[VertexAttrib3dvNV_remap_index], parameters)
+#define GET_VertexAttrib3dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3dvNV_remap_index])
+#define SET_VertexAttrib3dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3dvNV_remap_index], fn)
+#define CALL_VertexAttrib3fNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[VertexAttrib3fNV_remap_index], parameters)
+#define GET_VertexAttrib3fNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3fNV_remap_index])
+#define SET_VertexAttrib3fNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3fNV_remap_index], fn)
+#define CALL_VertexAttrib3fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), driDispatchRemapTable[VertexAttrib3fvNV_remap_index], parameters)
+#define GET_VertexAttrib3fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3fvNV_remap_index])
+#define SET_VertexAttrib3fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3fvNV_remap_index], fn)
+#define CALL_VertexAttrib3sNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLshort, GLshort, GLshort)), driDispatchRemapTable[VertexAttrib3sNV_remap_index], parameters)
+#define GET_VertexAttrib3sNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3sNV_remap_index])
+#define SET_VertexAttrib3sNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3sNV_remap_index], fn)
+#define CALL_VertexAttrib3svNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLshort *)), driDispatchRemapTable[VertexAttrib3svNV_remap_index], parameters)
+#define GET_VertexAttrib3svNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3svNV_remap_index])
+#define SET_VertexAttrib3svNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3svNV_remap_index], fn)
+#define CALL_VertexAttrib4dNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLdouble, GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[VertexAttrib4dNV_remap_index], parameters)
+#define GET_VertexAttrib4dNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4dNV_remap_index])
+#define SET_VertexAttrib4dNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4dNV_remap_index], fn)
+#define CALL_VertexAttrib4dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLdouble *)), driDispatchRemapTable[VertexAttrib4dvNV_remap_index], parameters)
+#define GET_VertexAttrib4dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4dvNV_remap_index])
+#define SET_VertexAttrib4dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4dvNV_remap_index], fn)
+#define CALL_VertexAttrib4fNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[VertexAttrib4fNV_remap_index], parameters)
+#define GET_VertexAttrib4fNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4fNV_remap_index])
+#define SET_VertexAttrib4fNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4fNV_remap_index], fn)
+#define CALL_VertexAttrib4fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), driDispatchRemapTable[VertexAttrib4fvNV_remap_index], parameters)
+#define GET_VertexAttrib4fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4fvNV_remap_index])
+#define SET_VertexAttrib4fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4fvNV_remap_index], fn)
+#define CALL_VertexAttrib4sNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLshort, GLshort, GLshort, GLshort)), driDispatchRemapTable[VertexAttrib4sNV_remap_index], parameters)
+#define GET_VertexAttrib4sNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4sNV_remap_index])
+#define SET_VertexAttrib4sNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4sNV_remap_index], fn)
+#define CALL_VertexAttrib4svNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLshort *)), driDispatchRemapTable[VertexAttrib4svNV_remap_index], parameters)
+#define GET_VertexAttrib4svNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4svNV_remap_index])
+#define SET_VertexAttrib4svNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4svNV_remap_index], fn)
+#define CALL_VertexAttrib4ubNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLubyte, GLubyte, GLubyte, GLubyte)), driDispatchRemapTable[VertexAttrib4ubNV_remap_index], parameters)
+#define GET_VertexAttrib4ubNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4ubNV_remap_index])
+#define SET_VertexAttrib4ubNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4ubNV_remap_index], fn)
+#define CALL_VertexAttrib4ubvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLubyte *)), driDispatchRemapTable[VertexAttrib4ubvNV_remap_index], parameters)
+#define GET_VertexAttrib4ubvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4ubvNV_remap_index])
+#define SET_VertexAttrib4ubvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4ubvNV_remap_index], fn)
+#define CALL_VertexAttribPointerNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLint, GLenum, GLsizei, const GLvoid *)), driDispatchRemapTable[VertexAttribPointerNV_remap_index], parameters)
+#define GET_VertexAttribPointerNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribPointerNV_remap_index])
+#define SET_VertexAttribPointerNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribPointerNV_remap_index], fn)
+#define CALL_VertexAttribs1dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLdouble *)), driDispatchRemapTable[VertexAttribs1dvNV_remap_index], parameters)
+#define GET_VertexAttribs1dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs1dvNV_remap_index])
+#define SET_VertexAttribs1dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs1dvNV_remap_index], fn)
+#define CALL_VertexAttribs1fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLfloat *)), driDispatchRemapTable[VertexAttribs1fvNV_remap_index], parameters)
+#define GET_VertexAttribs1fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs1fvNV_remap_index])
+#define SET_VertexAttribs1fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs1fvNV_remap_index], fn)
+#define CALL_VertexAttribs1svNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLshort *)), driDispatchRemapTable[VertexAttribs1svNV_remap_index], parameters)
+#define GET_VertexAttribs1svNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs1svNV_remap_index])
+#define SET_VertexAttribs1svNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs1svNV_remap_index], fn)
+#define CALL_VertexAttribs2dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLdouble *)), driDispatchRemapTable[VertexAttribs2dvNV_remap_index], parameters)
+#define GET_VertexAttribs2dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs2dvNV_remap_index])
+#define SET_VertexAttribs2dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs2dvNV_remap_index], fn)
+#define CALL_VertexAttribs2fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLfloat *)), driDispatchRemapTable[VertexAttribs2fvNV_remap_index], parameters)
+#define GET_VertexAttribs2fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs2fvNV_remap_index])
+#define SET_VertexAttribs2fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs2fvNV_remap_index], fn)
+#define CALL_VertexAttribs2svNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLshort *)), driDispatchRemapTable[VertexAttribs2svNV_remap_index], parameters)
+#define GET_VertexAttribs2svNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs2svNV_remap_index])
+#define SET_VertexAttribs2svNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs2svNV_remap_index], fn)
+#define CALL_VertexAttribs3dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLdouble *)), driDispatchRemapTable[VertexAttribs3dvNV_remap_index], parameters)
+#define GET_VertexAttribs3dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs3dvNV_remap_index])
+#define SET_VertexAttribs3dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs3dvNV_remap_index], fn)
+#define CALL_VertexAttribs3fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLfloat *)), driDispatchRemapTable[VertexAttribs3fvNV_remap_index], parameters)
+#define GET_VertexAttribs3fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs3fvNV_remap_index])
+#define SET_VertexAttribs3fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs3fvNV_remap_index], fn)
+#define CALL_VertexAttribs3svNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLshort *)), driDispatchRemapTable[VertexAttribs3svNV_remap_index], parameters)
+#define GET_VertexAttribs3svNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs3svNV_remap_index])
+#define SET_VertexAttribs3svNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs3svNV_remap_index], fn)
+#define CALL_VertexAttribs4dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLdouble *)), driDispatchRemapTable[VertexAttribs4dvNV_remap_index], parameters)
+#define GET_VertexAttribs4dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs4dvNV_remap_index])
+#define SET_VertexAttribs4dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs4dvNV_remap_index], fn)
+#define CALL_VertexAttribs4fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLfloat *)), driDispatchRemapTable[VertexAttribs4fvNV_remap_index], parameters)
+#define GET_VertexAttribs4fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs4fvNV_remap_index])
+#define SET_VertexAttribs4fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs4fvNV_remap_index], fn)
+#define CALL_VertexAttribs4svNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLshort *)), driDispatchRemapTable[VertexAttribs4svNV_remap_index], parameters)
+#define GET_VertexAttribs4svNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs4svNV_remap_index])
+#define SET_VertexAttribs4svNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs4svNV_remap_index], fn)
+#define CALL_VertexAttribs4ubvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLubyte *)), driDispatchRemapTable[VertexAttribs4ubvNV_remap_index], parameters)
+#define GET_VertexAttribs4ubvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs4ubvNV_remap_index])
+#define SET_VertexAttribs4ubvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs4ubvNV_remap_index], fn)
+#define CALL_GetTexBumpParameterfvATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat *)), driDispatchRemapTable[GetTexBumpParameterfvATI_remap_index], parameters)
+#define GET_GetTexBumpParameterfvATI(disp) GET_by_offset(disp, driDispatchRemapTable[GetTexBumpParameterfvATI_remap_index])
+#define SET_GetTexBumpParameterfvATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetTexBumpParameterfvATI_remap_index], fn)
+#define CALL_GetTexBumpParameterivATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint *)), driDispatchRemapTable[GetTexBumpParameterivATI_remap_index], parameters)
+#define GET_GetTexBumpParameterivATI(disp) GET_by_offset(disp, driDispatchRemapTable[GetTexBumpParameterivATI_remap_index])
+#define SET_GetTexBumpParameterivATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetTexBumpParameterivATI_remap_index], fn)
+#define CALL_TexBumpParameterfvATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), driDispatchRemapTable[TexBumpParameterfvATI_remap_index], parameters)
+#define GET_TexBumpParameterfvATI(disp) GET_by_offset(disp, driDispatchRemapTable[TexBumpParameterfvATI_remap_index])
+#define SET_TexBumpParameterfvATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[TexBumpParameterfvATI_remap_index], fn)
+#define CALL_TexBumpParameterivATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), driDispatchRemapTable[TexBumpParameterivATI_remap_index], parameters)
+#define GET_TexBumpParameterivATI(disp) GET_by_offset(disp, driDispatchRemapTable[TexBumpParameterivATI_remap_index])
+#define SET_TexBumpParameterivATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[TexBumpParameterivATI_remap_index], fn)
+#define CALL_AlphaFragmentOp1ATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLuint, GLuint, GLuint)), driDispatchRemapTable[AlphaFragmentOp1ATI_remap_index], parameters)
+#define GET_AlphaFragmentOp1ATI(disp) GET_by_offset(disp, driDispatchRemapTable[AlphaFragmentOp1ATI_remap_index])
+#define SET_AlphaFragmentOp1ATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[AlphaFragmentOp1ATI_remap_index], fn)
+#define CALL_AlphaFragmentOp2ATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint)), driDispatchRemapTable[AlphaFragmentOp2ATI_remap_index], parameters)
+#define GET_AlphaFragmentOp2ATI(disp) GET_by_offset(disp, driDispatchRemapTable[AlphaFragmentOp2ATI_remap_index])
+#define SET_AlphaFragmentOp2ATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[AlphaFragmentOp2ATI_remap_index], fn)
+#define CALL_AlphaFragmentOp3ATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint)), driDispatchRemapTable[AlphaFragmentOp3ATI_remap_index], parameters)
+#define GET_AlphaFragmentOp3ATI(disp) GET_by_offset(disp, driDispatchRemapTable[AlphaFragmentOp3ATI_remap_index])
+#define SET_AlphaFragmentOp3ATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[AlphaFragmentOp3ATI_remap_index], fn)
+#define CALL_BeginFragmentShaderATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), driDispatchRemapTable[BeginFragmentShaderATI_remap_index], parameters)
+#define GET_BeginFragmentShaderATI(disp) GET_by_offset(disp, driDispatchRemapTable[BeginFragmentShaderATI_remap_index])
+#define SET_BeginFragmentShaderATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BeginFragmentShaderATI_remap_index], fn)
+#define CALL_BindFragmentShaderATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[BindFragmentShaderATI_remap_index], parameters)
+#define GET_BindFragmentShaderATI(disp) GET_by_offset(disp, driDispatchRemapTable[BindFragmentShaderATI_remap_index])
+#define SET_BindFragmentShaderATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindFragmentShaderATI_remap_index], fn)
+#define CALL_ColorFragmentOp1ATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint)), driDispatchRemapTable[ColorFragmentOp1ATI_remap_index], parameters)
+#define GET_ColorFragmentOp1ATI(disp) GET_by_offset(disp, driDispatchRemapTable[ColorFragmentOp1ATI_remap_index])
+#define SET_ColorFragmentOp1ATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ColorFragmentOp1ATI_remap_index], fn)
+#define CALL_ColorFragmentOp2ATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint)), driDispatchRemapTable[ColorFragmentOp2ATI_remap_index], parameters)
+#define GET_ColorFragmentOp2ATI(disp) GET_by_offset(disp, driDispatchRemapTable[ColorFragmentOp2ATI_remap_index])
+#define SET_ColorFragmentOp2ATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ColorFragmentOp2ATI_remap_index], fn)
+#define CALL_ColorFragmentOp3ATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint)), driDispatchRemapTable[ColorFragmentOp3ATI_remap_index], parameters)
+#define GET_ColorFragmentOp3ATI(disp) GET_by_offset(disp, driDispatchRemapTable[ColorFragmentOp3ATI_remap_index])
+#define SET_ColorFragmentOp3ATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ColorFragmentOp3ATI_remap_index], fn)
+#define CALL_DeleteFragmentShaderATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[DeleteFragmentShaderATI_remap_index], parameters)
+#define GET_DeleteFragmentShaderATI(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteFragmentShaderATI_remap_index])
+#define SET_DeleteFragmentShaderATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteFragmentShaderATI_remap_index], fn)
+#define CALL_EndFragmentShaderATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), driDispatchRemapTable[EndFragmentShaderATI_remap_index], parameters)
+#define GET_EndFragmentShaderATI(disp) GET_by_offset(disp, driDispatchRemapTable[EndFragmentShaderATI_remap_index])
+#define SET_EndFragmentShaderATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[EndFragmentShaderATI_remap_index], fn)
+#define CALL_GenFragmentShadersATI(disp, parameters) CALL_by_offset(disp, (GLuint (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[GenFragmentShadersATI_remap_index], parameters)
+#define GET_GenFragmentShadersATI(disp) GET_by_offset(disp, driDispatchRemapTable[GenFragmentShadersATI_remap_index])
+#define SET_GenFragmentShadersATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenFragmentShadersATI_remap_index], fn)
+#define CALL_PassTexCoordATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint, GLenum)), driDispatchRemapTable[PassTexCoordATI_remap_index], parameters)
+#define GET_PassTexCoordATI(disp) GET_by_offset(disp, driDispatchRemapTable[PassTexCoordATI_remap_index])
+#define SET_PassTexCoordATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PassTexCoordATI_remap_index], fn)
+#define CALL_SampleMapATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint, GLenum)), driDispatchRemapTable[SampleMapATI_remap_index], parameters)
+#define GET_SampleMapATI(disp) GET_by_offset(disp, driDispatchRemapTable[SampleMapATI_remap_index])
+#define SET_SampleMapATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SampleMapATI_remap_index], fn)
+#define CALL_SetFragmentShaderConstantATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), driDispatchRemapTable[SetFragmentShaderConstantATI_remap_index], parameters)
+#define GET_SetFragmentShaderConstantATI(disp) GET_by_offset(disp, driDispatchRemapTable[SetFragmentShaderConstantATI_remap_index])
+#define SET_SetFragmentShaderConstantATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SetFragmentShaderConstantATI_remap_index], fn)
+#define CALL_PointParameteriNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint)), driDispatchRemapTable[PointParameteriNV_remap_index], parameters)
+#define GET_PointParameteriNV(disp) GET_by_offset(disp, driDispatchRemapTable[PointParameteriNV_remap_index])
+#define SET_PointParameteriNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PointParameteriNV_remap_index], fn)
+#define CALL_PointParameterivNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), driDispatchRemapTable[PointParameterivNV_remap_index], parameters)
+#define GET_PointParameterivNV(disp) GET_by_offset(disp, driDispatchRemapTable[PointParameterivNV_remap_index])
+#define SET_PointParameterivNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PointParameterivNV_remap_index], fn)
+#define CALL_ActiveStencilFaceEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[ActiveStencilFaceEXT_remap_index], parameters)
+#define GET_ActiveStencilFaceEXT(disp) GET_by_offset(disp, driDispatchRemapTable[ActiveStencilFaceEXT_remap_index])
+#define SET_ActiveStencilFaceEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ActiveStencilFaceEXT_remap_index], fn)
+#define CALL_BindVertexArrayAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[BindVertexArrayAPPLE_remap_index], parameters)
+#define GET_BindVertexArrayAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[BindVertexArrayAPPLE_remap_index])
+#define SET_BindVertexArrayAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindVertexArrayAPPLE_remap_index], fn)
+#define CALL_DeleteVertexArraysAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), driDispatchRemapTable[DeleteVertexArraysAPPLE_remap_index], parameters)
+#define GET_DeleteVertexArraysAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteVertexArraysAPPLE_remap_index])
+#define SET_DeleteVertexArraysAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteVertexArraysAPPLE_remap_index], fn)
+#define CALL_GenVertexArraysAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), driDispatchRemapTable[GenVertexArraysAPPLE_remap_index], parameters)
+#define GET_GenVertexArraysAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[GenVertexArraysAPPLE_remap_index])
+#define SET_GenVertexArraysAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenVertexArraysAPPLE_remap_index], fn)
+#define CALL_IsVertexArrayAPPLE(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[IsVertexArrayAPPLE_remap_index], parameters)
+#define GET_IsVertexArrayAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[IsVertexArrayAPPLE_remap_index])
+#define SET_IsVertexArrayAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsVertexArrayAPPLE_remap_index], fn)
+#define CALL_GetProgramNamedParameterdvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLubyte *, GLdouble *)), driDispatchRemapTable[GetProgramNamedParameterdvNV_remap_index], parameters)
+#define GET_GetProgramNamedParameterdvNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramNamedParameterdvNV_remap_index])
+#define SET_GetProgramNamedParameterdvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramNamedParameterdvNV_remap_index], fn)
+#define CALL_GetProgramNamedParameterfvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLubyte *, GLfloat *)), driDispatchRemapTable[GetProgramNamedParameterfvNV_remap_index], parameters)
+#define GET_GetProgramNamedParameterfvNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramNamedParameterfvNV_remap_index])
+#define SET_GetProgramNamedParameterfvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramNamedParameterfvNV_remap_index], fn)
+#define CALL_ProgramNamedParameter4dNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLubyte *, GLdouble, GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[ProgramNamedParameter4dNV_remap_index], parameters)
+#define GET_ProgramNamedParameter4dNV(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramNamedParameter4dNV_remap_index])
+#define SET_ProgramNamedParameter4dNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramNamedParameter4dNV_remap_index], fn)
+#define CALL_ProgramNamedParameter4dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLubyte *, const GLdouble *)), driDispatchRemapTable[ProgramNamedParameter4dvNV_remap_index], parameters)
+#define GET_ProgramNamedParameter4dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramNamedParameter4dvNV_remap_index])
+#define SET_ProgramNamedParameter4dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramNamedParameter4dvNV_remap_index], fn)
+#define CALL_ProgramNamedParameter4fNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLubyte *, GLfloat, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[ProgramNamedParameter4fNV_remap_index], parameters)
+#define GET_ProgramNamedParameter4fNV(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramNamedParameter4fNV_remap_index])
+#define SET_ProgramNamedParameter4fNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramNamedParameter4fNV_remap_index], fn)
+#define CALL_ProgramNamedParameter4fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLubyte *, const GLfloat *)), driDispatchRemapTable[ProgramNamedParameter4fvNV_remap_index], parameters)
+#define GET_ProgramNamedParameter4fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramNamedParameter4fvNV_remap_index])
+#define SET_ProgramNamedParameter4fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramNamedParameter4fvNV_remap_index], fn)
+#define CALL_DepthBoundsEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampd, GLclampd)), driDispatchRemapTable[DepthBoundsEXT_remap_index], parameters)
+#define GET_DepthBoundsEXT(disp) GET_by_offset(disp, driDispatchRemapTable[DepthBoundsEXT_remap_index])
+#define SET_DepthBoundsEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DepthBoundsEXT_remap_index], fn)
+#define CALL_BlendEquationSeparateEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum)), driDispatchRemapTable[BlendEquationSeparateEXT_remap_index], parameters)
+#define GET_BlendEquationSeparateEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BlendEquationSeparateEXT_remap_index])
+#define SET_BlendEquationSeparateEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BlendEquationSeparateEXT_remap_index], fn)
+#define CALL_BindFramebufferEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), driDispatchRemapTable[BindFramebufferEXT_remap_index], parameters)
+#define GET_BindFramebufferEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BindFramebufferEXT_remap_index])
+#define SET_BindFramebufferEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindFramebufferEXT_remap_index], fn)
+#define CALL_BindRenderbufferEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), driDispatchRemapTable[BindRenderbufferEXT_remap_index], parameters)
+#define GET_BindRenderbufferEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BindRenderbufferEXT_remap_index])
+#define SET_BindRenderbufferEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindRenderbufferEXT_remap_index], fn)
+#define CALL_CheckFramebufferStatusEXT(disp, parameters) CALL_by_offset(disp, (GLenum (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[CheckFramebufferStatusEXT_remap_index], parameters)
+#define GET_CheckFramebufferStatusEXT(disp) GET_by_offset(disp, driDispatchRemapTable[CheckFramebufferStatusEXT_remap_index])
+#define SET_CheckFramebufferStatusEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CheckFramebufferStatusEXT_remap_index], fn)
+#define CALL_DeleteFramebuffersEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), driDispatchRemapTable[DeleteFramebuffersEXT_remap_index], parameters)
+#define GET_DeleteFramebuffersEXT(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteFramebuffersEXT_remap_index])
+#define SET_DeleteFramebuffersEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteFramebuffersEXT_remap_index], fn)
+#define CALL_DeleteRenderbuffersEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), driDispatchRemapTable[DeleteRenderbuffersEXT_remap_index], parameters)
+#define GET_DeleteRenderbuffersEXT(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteRenderbuffersEXT_remap_index])
+#define SET_DeleteRenderbuffersEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteRenderbuffersEXT_remap_index], fn)
+#define CALL_FramebufferRenderbufferEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLuint)), driDispatchRemapTable[FramebufferRenderbufferEXT_remap_index], parameters)
+#define GET_FramebufferRenderbufferEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FramebufferRenderbufferEXT_remap_index])
+#define SET_FramebufferRenderbufferEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FramebufferRenderbufferEXT_remap_index], fn)
+#define CALL_FramebufferTexture1DEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLuint, GLint)), driDispatchRemapTable[FramebufferTexture1DEXT_remap_index], parameters)
+#define GET_FramebufferTexture1DEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FramebufferTexture1DEXT_remap_index])
+#define SET_FramebufferTexture1DEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FramebufferTexture1DEXT_remap_index], fn)
+#define CALL_FramebufferTexture2DEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLuint, GLint)), driDispatchRemapTable[FramebufferTexture2DEXT_remap_index], parameters)
+#define GET_FramebufferTexture2DEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FramebufferTexture2DEXT_remap_index])
+#define SET_FramebufferTexture2DEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FramebufferTexture2DEXT_remap_index], fn)
+#define CALL_FramebufferTexture3DEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLuint, GLint, GLint)), driDispatchRemapTable[FramebufferTexture3DEXT_remap_index], parameters)
+#define GET_FramebufferTexture3DEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FramebufferTexture3DEXT_remap_index])
+#define SET_FramebufferTexture3DEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FramebufferTexture3DEXT_remap_index], fn)
+#define CALL_GenFramebuffersEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), driDispatchRemapTable[GenFramebuffersEXT_remap_index], parameters)
+#define GET_GenFramebuffersEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GenFramebuffersEXT_remap_index])
+#define SET_GenFramebuffersEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenFramebuffersEXT_remap_index], fn)
+#define CALL_GenRenderbuffersEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), driDispatchRemapTable[GenRenderbuffersEXT_remap_index], parameters)
+#define GET_GenRenderbuffersEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GenRenderbuffersEXT_remap_index])
+#define SET_GenRenderbuffersEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenRenderbuffersEXT_remap_index], fn)
+#define CALL_GenerateMipmapEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[GenerateMipmapEXT_remap_index], parameters)
+#define GET_GenerateMipmapEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GenerateMipmapEXT_remap_index])
+#define SET_GenerateMipmapEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenerateMipmapEXT_remap_index], fn)
+#define CALL_GetFramebufferAttachmentParameterivEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLint *)), driDispatchRemapTable[GetFramebufferAttachmentParameterivEXT_remap_index], parameters)
+#define GET_GetFramebufferAttachmentParameterivEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GetFramebufferAttachmentParameterivEXT_remap_index])
+#define SET_GetFramebufferAttachmentParameterivEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetFramebufferAttachmentParameterivEXT_remap_index], fn)
+#define CALL_GetRenderbufferParameterivEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), driDispatchRemapTable[GetRenderbufferParameterivEXT_remap_index], parameters)
+#define GET_GetRenderbufferParameterivEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GetRenderbufferParameterivEXT_remap_index])
+#define SET_GetRenderbufferParameterivEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetRenderbufferParameterivEXT_remap_index], fn)
+#define CALL_IsFramebufferEXT(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[IsFramebufferEXT_remap_index], parameters)
+#define GET_IsFramebufferEXT(disp) GET_by_offset(disp, driDispatchRemapTable[IsFramebufferEXT_remap_index])
+#define SET_IsFramebufferEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsFramebufferEXT_remap_index], fn)
+#define CALL_IsRenderbufferEXT(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[IsRenderbufferEXT_remap_index], parameters)
+#define GET_IsRenderbufferEXT(disp) GET_by_offset(disp, driDispatchRemapTable[IsRenderbufferEXT_remap_index])
+#define SET_IsRenderbufferEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsRenderbufferEXT_remap_index], fn)
+#define CALL_RenderbufferStorageEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLsizei, GLsizei)), driDispatchRemapTable[RenderbufferStorageEXT_remap_index], parameters)
+#define GET_RenderbufferStorageEXT(disp) GET_by_offset(disp, driDispatchRemapTable[RenderbufferStorageEXT_remap_index])
+#define SET_RenderbufferStorageEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[RenderbufferStorageEXT_remap_index], fn)
+#define CALL_BlitFramebufferEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLbitfield, GLenum)), driDispatchRemapTable[BlitFramebufferEXT_remap_index], parameters)
+#define GET_BlitFramebufferEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BlitFramebufferEXT_remap_index])
+#define SET_BlitFramebufferEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BlitFramebufferEXT_remap_index], fn)
+#define CALL_BufferParameteriAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint)), driDispatchRemapTable[BufferParameteriAPPLE_remap_index], parameters)
+#define GET_BufferParameteriAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[BufferParameteriAPPLE_remap_index])
+#define SET_BufferParameteriAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BufferParameteriAPPLE_remap_index], fn)
+#define CALL_FlushMappedBufferRangeAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLintptr, GLsizeiptr)), driDispatchRemapTable[FlushMappedBufferRangeAPPLE_remap_index], parameters)
+#define GET_FlushMappedBufferRangeAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[FlushMappedBufferRangeAPPLE_remap_index])
+#define SET_FlushMappedBufferRangeAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FlushMappedBufferRangeAPPLE_remap_index], fn)
+#define CALL_FramebufferTextureLayerEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLuint, GLint, GLint)), driDispatchRemapTable[FramebufferTextureLayerEXT_remap_index], parameters)
+#define GET_FramebufferTextureLayerEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FramebufferTextureLayerEXT_remap_index])
+#define SET_FramebufferTextureLayerEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FramebufferTextureLayerEXT_remap_index], fn)
+#define CALL_ColorMaskIndexedEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLboolean, GLboolean, GLboolean, GLboolean)), driDispatchRemapTable[ColorMaskIndexedEXT_remap_index], parameters)
+#define GET_ColorMaskIndexedEXT(disp) GET_by_offset(disp, driDispatchRemapTable[ColorMaskIndexedEXT_remap_index])
+#define SET_ColorMaskIndexedEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ColorMaskIndexedEXT_remap_index], fn)
+#define CALL_DisableIndexedEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), driDispatchRemapTable[DisableIndexedEXT_remap_index], parameters)
+#define GET_DisableIndexedEXT(disp) GET_by_offset(disp, driDispatchRemapTable[DisableIndexedEXT_remap_index])
+#define SET_DisableIndexedEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DisableIndexedEXT_remap_index], fn)
+#define CALL_EnableIndexedEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), driDispatchRemapTable[EnableIndexedEXT_remap_index], parameters)
+#define GET_EnableIndexedEXT(disp) GET_by_offset(disp, driDispatchRemapTable[EnableIndexedEXT_remap_index])
+#define SET_EnableIndexedEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[EnableIndexedEXT_remap_index], fn)
+#define CALL_GetBooleanIndexedvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLboolean *)), driDispatchRemapTable[GetBooleanIndexedvEXT_remap_index], parameters)
+#define GET_GetBooleanIndexedvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GetBooleanIndexedvEXT_remap_index])
+#define SET_GetBooleanIndexedvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetBooleanIndexedvEXT_remap_index], fn)
+#define CALL_GetIntegerIndexedvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLint *)), driDispatchRemapTable[GetIntegerIndexedvEXT_remap_index], parameters)
+#define GET_GetIntegerIndexedvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GetIntegerIndexedvEXT_remap_index])
+#define SET_GetIntegerIndexedvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetIntegerIndexedvEXT_remap_index], fn)
+#define CALL_IsEnabledIndexedEXT(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLenum, GLuint)), driDispatchRemapTable[IsEnabledIndexedEXT_remap_index], parameters)
+#define GET_IsEnabledIndexedEXT(disp) GET_by_offset(disp, driDispatchRemapTable[IsEnabledIndexedEXT_remap_index])
+#define SET_IsEnabledIndexedEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsEnabledIndexedEXT_remap_index], fn)
+#define CALL_BeginConditionalRenderNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum)), driDispatchRemapTable[BeginConditionalRenderNV_remap_index], parameters)
+#define GET_BeginConditionalRenderNV(disp) GET_by_offset(disp, driDispatchRemapTable[BeginConditionalRenderNV_remap_index])
+#define SET_BeginConditionalRenderNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BeginConditionalRenderNV_remap_index], fn)
+#define CALL_EndConditionalRenderNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), driDispatchRemapTable[EndConditionalRenderNV_remap_index], parameters)
+#define GET_EndConditionalRenderNV(disp) GET_by_offset(disp, driDispatchRemapTable[EndConditionalRenderNV_remap_index])
+#define SET_EndConditionalRenderNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[EndConditionalRenderNV_remap_index], fn)
+#define CALL_BeginTransformFeedbackEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[BeginTransformFeedbackEXT_remap_index], parameters)
+#define GET_BeginTransformFeedbackEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BeginTransformFeedbackEXT_remap_index])
+#define SET_BeginTransformFeedbackEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BeginTransformFeedbackEXT_remap_index], fn)
+#define CALL_BindBufferBaseEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint)), driDispatchRemapTable[BindBufferBaseEXT_remap_index], parameters)
+#define GET_BindBufferBaseEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BindBufferBaseEXT_remap_index])
+#define SET_BindBufferBaseEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindBufferBaseEXT_remap_index], fn)
+#define CALL_BindBufferOffsetEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLintptr)), driDispatchRemapTable[BindBufferOffsetEXT_remap_index], parameters)
+#define GET_BindBufferOffsetEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BindBufferOffsetEXT_remap_index])
+#define SET_BindBufferOffsetEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindBufferOffsetEXT_remap_index], fn)
+#define CALL_BindBufferRangeEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLintptr, GLsizeiptr)), driDispatchRemapTable[BindBufferRangeEXT_remap_index], parameters)
+#define GET_BindBufferRangeEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BindBufferRangeEXT_remap_index])
+#define SET_BindBufferRangeEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindBufferRangeEXT_remap_index], fn)
+#define CALL_EndTransformFeedbackEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), driDispatchRemapTable[EndTransformFeedbackEXT_remap_index], parameters)
+#define GET_EndTransformFeedbackEXT(disp) GET_by_offset(disp, driDispatchRemapTable[EndTransformFeedbackEXT_remap_index])
+#define SET_EndTransformFeedbackEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[EndTransformFeedbackEXT_remap_index], fn)
+#define CALL_GetTransformFeedbackVaryingEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint, GLsizei, GLsizei *, GLsizei *, GLenum *, GLchar *)), driDispatchRemapTable[GetTransformFeedbackVaryingEXT_remap_index], parameters)
+#define GET_GetTransformFeedbackVaryingEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GetTransformFeedbackVaryingEXT_remap_index])
+#define SET_GetTransformFeedbackVaryingEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetTransformFeedbackVaryingEXT_remap_index], fn)
+#define CALL_TransformFeedbackVaryingsEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const char **, GLenum)), driDispatchRemapTable[TransformFeedbackVaryingsEXT_remap_index], parameters)
+#define GET_TransformFeedbackVaryingsEXT(disp) GET_by_offset(disp, driDispatchRemapTable[TransformFeedbackVaryingsEXT_remap_index])
+#define SET_TransformFeedbackVaryingsEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[TransformFeedbackVaryingsEXT_remap_index], fn)
+#define CALL_ProvokingVertexEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[ProvokingVertexEXT_remap_index], parameters)
+#define GET_ProvokingVertexEXT(disp) GET_by_offset(disp, driDispatchRemapTable[ProvokingVertexEXT_remap_index])
+#define SET_ProvokingVertexEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProvokingVertexEXT_remap_index], fn)
+#define CALL_GetTexParameterPointervAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLvoid **)), driDispatchRemapTable[GetTexParameterPointervAPPLE_remap_index], parameters)
+#define GET_GetTexParameterPointervAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[GetTexParameterPointervAPPLE_remap_index])
+#define SET_GetTexParameterPointervAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetTexParameterPointervAPPLE_remap_index], fn)
+#define CALL_TextureRangeAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLvoid *)), driDispatchRemapTable[TextureRangeAPPLE_remap_index], parameters)
+#define GET_TextureRangeAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[TextureRangeAPPLE_remap_index])
+#define SET_TextureRangeAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[TextureRangeAPPLE_remap_index], fn)
+#define CALL_GetObjectParameterivAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLenum, GLint *)), driDispatchRemapTable[GetObjectParameterivAPPLE_remap_index], parameters)
+#define GET_GetObjectParameterivAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[GetObjectParameterivAPPLE_remap_index])
+#define SET_GetObjectParameterivAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetObjectParameterivAPPLE_remap_index], fn)
+#define CALL_ObjectPurgeableAPPLE(disp, parameters) CALL_by_offset(disp, (GLenum (GLAPIENTRYP)(GLenum, GLuint, GLenum)), driDispatchRemapTable[ObjectPurgeableAPPLE_remap_index], parameters)
+#define GET_ObjectPurgeableAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[ObjectPurgeableAPPLE_remap_index])
+#define SET_ObjectPurgeableAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ObjectPurgeableAPPLE_remap_index], fn)
+#define CALL_ObjectUnpurgeableAPPLE(disp, parameters) CALL_by_offset(disp, (GLenum (GLAPIENTRYP)(GLenum, GLuint, GLenum)), driDispatchRemapTable[ObjectUnpurgeableAPPLE_remap_index], parameters)
+#define GET_ObjectUnpurgeableAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[ObjectUnpurgeableAPPLE_remap_index])
+#define SET_ObjectUnpurgeableAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ObjectUnpurgeableAPPLE_remap_index], fn)
+#define CALL_StencilFuncSeparateATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint, GLuint)), driDispatchRemapTable[StencilFuncSeparateATI_remap_index], parameters)
+#define GET_StencilFuncSeparateATI(disp) GET_by_offset(disp, driDispatchRemapTable[StencilFuncSeparateATI_remap_index])
+#define SET_StencilFuncSeparateATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[StencilFuncSeparateATI_remap_index], fn)
+#define CALL_ProgramEnvParameters4fvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLsizei, const GLfloat *)), driDispatchRemapTable[ProgramEnvParameters4fvEXT_remap_index], parameters)
+#define GET_ProgramEnvParameters4fvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameters4fvEXT_remap_index])
+#define SET_ProgramEnvParameters4fvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameters4fvEXT_remap_index], fn)
+#define CALL_ProgramLocalParameters4fvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLsizei, const GLfloat *)), driDispatchRemapTable[ProgramLocalParameters4fvEXT_remap_index], parameters)
+#define GET_ProgramLocalParameters4fvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameters4fvEXT_remap_index])
+#define SET_ProgramLocalParameters4fvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameters4fvEXT_remap_index], fn)
+#define CALL_GetQueryObjecti64vEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint64EXT *)), driDispatchRemapTable[GetQueryObjecti64vEXT_remap_index], parameters)
+#define GET_GetQueryObjecti64vEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GetQueryObjecti64vEXT_remap_index])
+#define SET_GetQueryObjecti64vEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetQueryObjecti64vEXT_remap_index], fn)
+#define CALL_GetQueryObjectui64vEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLuint64EXT *)), driDispatchRemapTable[GetQueryObjectui64vEXT_remap_index], parameters)
+#define GET_GetQueryObjectui64vEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GetQueryObjectui64vEXT_remap_index])
+#define SET_GetQueryObjectui64vEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetQueryObjectui64vEXT_remap_index], fn)
+#define CALL_EGLImageTargetRenderbufferStorageOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLvoid *)), driDispatchRemapTable[EGLImageTargetRenderbufferStorageOES_remap_index], parameters)
+#define GET_EGLImageTargetRenderbufferStorageOES(disp) GET_by_offset(disp, driDispatchRemapTable[EGLImageTargetRenderbufferStorageOES_remap_index])
+#define SET_EGLImageTargetRenderbufferStorageOES(disp, fn) SET_by_offset(disp, driDispatchRemapTable[EGLImageTargetRenderbufferStorageOES_remap_index], fn)
+#define CALL_EGLImageTargetTexture2DOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLvoid *)), driDispatchRemapTable[EGLImageTargetTexture2DOES_remap_index], parameters)
+#define GET_EGLImageTargetTexture2DOES(disp) GET_by_offset(disp, driDispatchRemapTable[EGLImageTargetTexture2DOES_remap_index])
+#define SET_EGLImageTargetTexture2DOES(disp, fn) SET_by_offset(disp, driDispatchRemapTable[EGLImageTargetTexture2DOES_remap_index], fn)
+
+#endif /* !defined(_GLAPI_USE_REMAP_TABLE) */
+
+#endif /* !defined( _GLAPI_DISPATCH_H_ ) */
diff --git a/src/mapi/glapi/glapioffsets.h b/src/mapi/glapi/glapioffsets.h
new file mode 100644 (file)
index 0000000..a8133b4
--- /dev/null
@@ -0,0 +1,1270 @@
+/* DO NOT EDIT - This file generated automatically by gl_offsets.py (from Mesa) script */
+
+/*
+ * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
+ * (C) Copyright IBM Corporation 2004
+ * 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
+ * BRIAN PAUL, IBM,
+ * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
+ * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+#if !defined( _GLAPI_OFFSETS_H_ )
+#  define _GLAPI_OFFSETS_H_
+
+/* this file should not be included directly in mesa */
+
+#define _gloffset_NewList 0
+#define _gloffset_EndList 1
+#define _gloffset_CallList 2
+#define _gloffset_CallLists 3
+#define _gloffset_DeleteLists 4
+#define _gloffset_GenLists 5
+#define _gloffset_ListBase 6
+#define _gloffset_Begin 7
+#define _gloffset_Bitmap 8
+#define _gloffset_Color3b 9
+#define _gloffset_Color3bv 10
+#define _gloffset_Color3d 11
+#define _gloffset_Color3dv 12
+#define _gloffset_Color3f 13
+#define _gloffset_Color3fv 14
+#define _gloffset_Color3i 15
+#define _gloffset_Color3iv 16
+#define _gloffset_Color3s 17
+#define _gloffset_Color3sv 18
+#define _gloffset_Color3ub 19
+#define _gloffset_Color3ubv 20
+#define _gloffset_Color3ui 21
+#define _gloffset_Color3uiv 22
+#define _gloffset_Color3us 23
+#define _gloffset_Color3usv 24
+#define _gloffset_Color4b 25
+#define _gloffset_Color4bv 26
+#define _gloffset_Color4d 27
+#define _gloffset_Color4dv 28
+#define _gloffset_Color4f 29
+#define _gloffset_Color4fv 30
+#define _gloffset_Color4i 31
+#define _gloffset_Color4iv 32
+#define _gloffset_Color4s 33
+#define _gloffset_Color4sv 34
+#define _gloffset_Color4ub 35
+#define _gloffset_Color4ubv 36
+#define _gloffset_Color4ui 37
+#define _gloffset_Color4uiv 38
+#define _gloffset_Color4us 39
+#define _gloffset_Color4usv 40
+#define _gloffset_EdgeFlag 41
+#define _gloffset_EdgeFlagv 42
+#define _gloffset_End 43
+#define _gloffset_Indexd 44
+#define _gloffset_Indexdv 45
+#define _gloffset_Indexf 46
+#define _gloffset_Indexfv 47
+#define _gloffset_Indexi 48
+#define _gloffset_Indexiv 49
+#define _gloffset_Indexs 50
+#define _gloffset_Indexsv 51
+#define _gloffset_Normal3b 52
+#define _gloffset_Normal3bv 53
+#define _gloffset_Normal3d 54
+#define _gloffset_Normal3dv 55
+#define _gloffset_Normal3f 56
+#define _gloffset_Normal3fv 57
+#define _gloffset_Normal3i 58
+#define _gloffset_Normal3iv 59
+#define _gloffset_Normal3s 60
+#define _gloffset_Normal3sv 61
+#define _gloffset_RasterPos2d 62
+#define _gloffset_RasterPos2dv 63
+#define _gloffset_RasterPos2f 64
+#define _gloffset_RasterPos2fv 65
+#define _gloffset_RasterPos2i 66
+#define _gloffset_RasterPos2iv 67
+#define _gloffset_RasterPos2s 68
+#define _gloffset_RasterPos2sv 69
+#define _gloffset_RasterPos3d 70
+#define _gloffset_RasterPos3dv 71
+#define _gloffset_RasterPos3f 72
+#define _gloffset_RasterPos3fv 73
+#define _gloffset_RasterPos3i 74
+#define _gloffset_RasterPos3iv 75
+#define _gloffset_RasterPos3s 76
+#define _gloffset_RasterPos3sv 77
+#define _gloffset_RasterPos4d 78
+#define _gloffset_RasterPos4dv 79
+#define _gloffset_RasterPos4f 80
+#define _gloffset_RasterPos4fv 81
+#define _gloffset_RasterPos4i 82
+#define _gloffset_RasterPos4iv 83
+#define _gloffset_RasterPos4s 84
+#define _gloffset_RasterPos4sv 85
+#define _gloffset_Rectd 86
+#define _gloffset_Rectdv 87
+#define _gloffset_Rectf 88
+#define _gloffset_Rectfv 89
+#define _gloffset_Recti 90
+#define _gloffset_Rectiv 91
+#define _gloffset_Rects 92
+#define _gloffset_Rectsv 93
+#define _gloffset_TexCoord1d 94
+#define _gloffset_TexCoord1dv 95
+#define _gloffset_TexCoord1f 96
+#define _gloffset_TexCoord1fv 97
+#define _gloffset_TexCoord1i 98
+#define _gloffset_TexCoord1iv 99
+#define _gloffset_TexCoord1s 100
+#define _gloffset_TexCoord1sv 101
+#define _gloffset_TexCoord2d 102
+#define _gloffset_TexCoord2dv 103
+#define _gloffset_TexCoord2f 104
+#define _gloffset_TexCoord2fv 105
+#define _gloffset_TexCoord2i 106
+#define _gloffset_TexCoord2iv 107
+#define _gloffset_TexCoord2s 108
+#define _gloffset_TexCoord2sv 109
+#define _gloffset_TexCoord3d 110
+#define _gloffset_TexCoord3dv 111
+#define _gloffset_TexCoord3f 112
+#define _gloffset_TexCoord3fv 113
+#define _gloffset_TexCoord3i 114
+#define _gloffset_TexCoord3iv 115
+#define _gloffset_TexCoord3s 116
+#define _gloffset_TexCoord3sv 117
+#define _gloffset_TexCoord4d 118
+#define _gloffset_TexCoord4dv 119
+#define _gloffset_TexCoord4f 120
+#define _gloffset_TexCoord4fv 121
+#define _gloffset_TexCoord4i 122
+#define _gloffset_TexCoord4iv 123
+#define _gloffset_TexCoord4s 124
+#define _gloffset_TexCoord4sv 125
+#define _gloffset_Vertex2d 126
+#define _gloffset_Vertex2dv 127
+#define _gloffset_Vertex2f 128
+#define _gloffset_Vertex2fv 129
+#define _gloffset_Vertex2i 130
+#define _gloffset_Vertex2iv 131
+#define _gloffset_Vertex2s 132
+#define _gloffset_Vertex2sv 133
+#define _gloffset_Vertex3d 134
+#define _gloffset_Vertex3dv 135
+#define _gloffset_Vertex3f 136
+#define _gloffset_Vertex3fv 137
+#define _gloffset_Vertex3i 138
+#define _gloffset_Vertex3iv 139
+#define _gloffset_Vertex3s 140
+#define _gloffset_Vertex3sv 141
+#define _gloffset_Vertex4d 142
+#define _gloffset_Vertex4dv 143
+#define _gloffset_Vertex4f 144
+#define _gloffset_Vertex4fv 145
+#define _gloffset_Vertex4i 146
+#define _gloffset_Vertex4iv 147
+#define _gloffset_Vertex4s 148
+#define _gloffset_Vertex4sv 149
+#define _gloffset_ClipPlane 150
+#define _gloffset_ColorMaterial 151
+#define _gloffset_CullFace 152
+#define _gloffset_Fogf 153
+#define _gloffset_Fogfv 154
+#define _gloffset_Fogi 155
+#define _gloffset_Fogiv 156
+#define _gloffset_FrontFace 157
+#define _gloffset_Hint 158
+#define _gloffset_Lightf 159
+#define _gloffset_Lightfv 160
+#define _gloffset_Lighti 161
+#define _gloffset_Lightiv 162
+#define _gloffset_LightModelf 163
+#define _gloffset_LightModelfv 164
+#define _gloffset_LightModeli 165
+#define _gloffset_LightModeliv 166
+#define _gloffset_LineStipple 167
+#define _gloffset_LineWidth 168
+#define _gloffset_Materialf 169
+#define _gloffset_Materialfv 170
+#define _gloffset_Materiali 171
+#define _gloffset_Materialiv 172
+#define _gloffset_PointSize 173
+#define _gloffset_PolygonMode 174
+#define _gloffset_PolygonStipple 175
+#define _gloffset_Scissor 176
+#define _gloffset_ShadeModel 177
+#define _gloffset_TexParameterf 178
+#define _gloffset_TexParameterfv 179
+#define _gloffset_TexParameteri 180
+#define _gloffset_TexParameteriv 181
+#define _gloffset_TexImage1D 182
+#define _gloffset_TexImage2D 183
+#define _gloffset_TexEnvf 184
+#define _gloffset_TexEnvfv 185
+#define _gloffset_TexEnvi 186
+#define _gloffset_TexEnviv 187
+#define _gloffset_TexGend 188
+#define _gloffset_TexGendv 189
+#define _gloffset_TexGenf 190
+#define _gloffset_TexGenfv 191
+#define _gloffset_TexGeni 192
+#define _gloffset_TexGeniv 193
+#define _gloffset_FeedbackBuffer 194
+#define _gloffset_SelectBuffer 195
+#define _gloffset_RenderMode 196
+#define _gloffset_InitNames 197
+#define _gloffset_LoadName 198
+#define _gloffset_PassThrough 199
+#define _gloffset_PopName 200
+#define _gloffset_PushName 201
+#define _gloffset_DrawBuffer 202
+#define _gloffset_Clear 203
+#define _gloffset_ClearAccum 204
+#define _gloffset_ClearIndex 205
+#define _gloffset_ClearColor 206
+#define _gloffset_ClearStencil 207
+#define _gloffset_ClearDepth 208
+#define _gloffset_StencilMask 209
+#define _gloffset_ColorMask 210
+#define _gloffset_DepthMask 211
+#define _gloffset_IndexMask 212
+#define _gloffset_Accum 213
+#define _gloffset_Disable 214
+#define _gloffset_Enable 215
+#define _gloffset_Finish 216
+#define _gloffset_Flush 217
+#define _gloffset_PopAttrib 218
+#define _gloffset_PushAttrib 219
+#define _gloffset_Map1d 220
+#define _gloffset_Map1f 221
+#define _gloffset_Map2d 222
+#define _gloffset_Map2f 223
+#define _gloffset_MapGrid1d 224
+#define _gloffset_MapGrid1f 225
+#define _gloffset_MapGrid2d 226
+#define _gloffset_MapGrid2f 227
+#define _gloffset_EvalCoord1d 228
+#define _gloffset_EvalCoord1dv 229
+#define _gloffset_EvalCoord1f 230
+#define _gloffset_EvalCoord1fv 231
+#define _gloffset_EvalCoord2d 232
+#define _gloffset_EvalCoord2dv 233
+#define _gloffset_EvalCoord2f 234
+#define _gloffset_EvalCoord2fv 235
+#define _gloffset_EvalMesh1 236
+#define _gloffset_EvalPoint1 237
+#define _gloffset_EvalMesh2 238
+#define _gloffset_EvalPoint2 239
+#define _gloffset_AlphaFunc 240
+#define _gloffset_BlendFunc 241
+#define _gloffset_LogicOp 242
+#define _gloffset_StencilFunc 243
+#define _gloffset_StencilOp 244
+#define _gloffset_DepthFunc 245
+#define _gloffset_PixelZoom 246
+#define _gloffset_PixelTransferf 247
+#define _gloffset_PixelTransferi 248
+#define _gloffset_PixelStoref 249
+#define _gloffset_PixelStorei 250
+#define _gloffset_PixelMapfv 251
+#define _gloffset_PixelMapuiv 252
+#define _gloffset_PixelMapusv 253
+#define _gloffset_ReadBuffer 254
+#define _gloffset_CopyPixels 255
+#define _gloffset_ReadPixels 256
+#define _gloffset_DrawPixels 257
+#define _gloffset_GetBooleanv 258
+#define _gloffset_GetClipPlane 259
+#define _gloffset_GetDoublev 260
+#define _gloffset_GetError 261
+#define _gloffset_GetFloatv 262
+#define _gloffset_GetIntegerv 263
+#define _gloffset_GetLightfv 264
+#define _gloffset_GetLightiv 265
+#define _gloffset_GetMapdv 266
+#define _gloffset_GetMapfv 267
+#define _gloffset_GetMapiv 268
+#define _gloffset_GetMaterialfv 269
+#define _gloffset_GetMaterialiv 270
+#define _gloffset_GetPixelMapfv 271
+#define _gloffset_GetPixelMapuiv 272
+#define _gloffset_GetPixelMapusv 273
+#define _gloffset_GetPolygonStipple 274
+#define _gloffset_GetString 275
+#define _gloffset_GetTexEnvfv 276
+#define _gloffset_GetTexEnviv 277
+#define _gloffset_GetTexGendv 278
+#define _gloffset_GetTexGenfv 279
+#define _gloffset_GetTexGeniv 280
+#define _gloffset_GetTexImage 281
+#define _gloffset_GetTexParameterfv 282
+#define _gloffset_GetTexParameteriv 283
+#define _gloffset_GetTexLevelParameterfv 284
+#define _gloffset_GetTexLevelParameteriv 285
+#define _gloffset_IsEnabled 286
+#define _gloffset_IsList 287
+#define _gloffset_DepthRange 288
+#define _gloffset_Frustum 289
+#define _gloffset_LoadIdentity 290
+#define _gloffset_LoadMatrixf 291
+#define _gloffset_LoadMatrixd 292
+#define _gloffset_MatrixMode 293
+#define _gloffset_MultMatrixf 294
+#define _gloffset_MultMatrixd 295
+#define _gloffset_Ortho 296
+#define _gloffset_PopMatrix 297
+#define _gloffset_PushMatrix 298
+#define _gloffset_Rotated 299
+#define _gloffset_Rotatef 300
+#define _gloffset_Scaled 301
+#define _gloffset_Scalef 302
+#define _gloffset_Translated 303
+#define _gloffset_Translatef 304
+#define _gloffset_Viewport 305
+#define _gloffset_ArrayElement 306
+#define _gloffset_BindTexture 307
+#define _gloffset_ColorPointer 308
+#define _gloffset_DisableClientState 309
+#define _gloffset_DrawArrays 310
+#define _gloffset_DrawElements 311
+#define _gloffset_EdgeFlagPointer 312
+#define _gloffset_EnableClientState 313
+#define _gloffset_IndexPointer 314
+#define _gloffset_Indexub 315
+#define _gloffset_Indexubv 316
+#define _gloffset_InterleavedArrays 317
+#define _gloffset_NormalPointer 318
+#define _gloffset_PolygonOffset 319
+#define _gloffset_TexCoordPointer 320
+#define _gloffset_VertexPointer 321
+#define _gloffset_AreTexturesResident 322
+#define _gloffset_CopyTexImage1D 323
+#define _gloffset_CopyTexImage2D 324
+#define _gloffset_CopyTexSubImage1D 325
+#define _gloffset_CopyTexSubImage2D 326
+#define _gloffset_DeleteTextures 327
+#define _gloffset_GenTextures 328
+#define _gloffset_GetPointerv 329
+#define _gloffset_IsTexture 330
+#define _gloffset_PrioritizeTextures 331
+#define _gloffset_TexSubImage1D 332
+#define _gloffset_TexSubImage2D 333
+#define _gloffset_PopClientAttrib 334
+#define _gloffset_PushClientAttrib 335
+#define _gloffset_BlendColor 336
+#define _gloffset_BlendEquation 337
+#define _gloffset_DrawRangeElements 338
+#define _gloffset_ColorTable 339
+#define _gloffset_ColorTableParameterfv 340
+#define _gloffset_ColorTableParameteriv 341
+#define _gloffset_CopyColorTable 342
+#define _gloffset_GetColorTable 343
+#define _gloffset_GetColorTableParameterfv 344
+#define _gloffset_GetColorTableParameteriv 345
+#define _gloffset_ColorSubTable 346
+#define _gloffset_CopyColorSubTable 347
+#define _gloffset_ConvolutionFilter1D 348
+#define _gloffset_ConvolutionFilter2D 349
+#define _gloffset_ConvolutionParameterf 350
+#define _gloffset_ConvolutionParameterfv 351
+#define _gloffset_ConvolutionParameteri 352
+#define _gloffset_ConvolutionParameteriv 353
+#define _gloffset_CopyConvolutionFilter1D 354
+#define _gloffset_CopyConvolutionFilter2D 355
+#define _gloffset_GetConvolutionFilter 356
+#define _gloffset_GetConvolutionParameterfv 357
+#define _gloffset_GetConvolutionParameteriv 358
+#define _gloffset_GetSeparableFilter 359
+#define _gloffset_SeparableFilter2D 360
+#define _gloffset_GetHistogram 361
+#define _gloffset_GetHistogramParameterfv 362
+#define _gloffset_GetHistogramParameteriv 363
+#define _gloffset_GetMinmax 364
+#define _gloffset_GetMinmaxParameterfv 365
+#define _gloffset_GetMinmaxParameteriv 366
+#define _gloffset_Histogram 367
+#define _gloffset_Minmax 368
+#define _gloffset_ResetHistogram 369
+#define _gloffset_ResetMinmax 370
+#define _gloffset_TexImage3D 371
+#define _gloffset_TexSubImage3D 372
+#define _gloffset_CopyTexSubImage3D 373
+#define _gloffset_ActiveTextureARB 374
+#define _gloffset_ClientActiveTextureARB 375
+#define _gloffset_MultiTexCoord1dARB 376
+#define _gloffset_MultiTexCoord1dvARB 377
+#define _gloffset_MultiTexCoord1fARB 378
+#define _gloffset_MultiTexCoord1fvARB 379
+#define _gloffset_MultiTexCoord1iARB 380
+#define _gloffset_MultiTexCoord1ivARB 381
+#define _gloffset_MultiTexCoord1sARB 382
+#define _gloffset_MultiTexCoord1svARB 383
+#define _gloffset_MultiTexCoord2dARB 384
+#define _gloffset_MultiTexCoord2dvARB 385
+#define _gloffset_MultiTexCoord2fARB 386
+#define _gloffset_MultiTexCoord2fvARB 387
+#define _gloffset_MultiTexCoord2iARB 388
+#define _gloffset_MultiTexCoord2ivARB 389
+#define _gloffset_MultiTexCoord2sARB 390
+#define _gloffset_MultiTexCoord2svARB 391
+#define _gloffset_MultiTexCoord3dARB 392
+#define _gloffset_MultiTexCoord3dvARB 393
+#define _gloffset_MultiTexCoord3fARB 394
+#define _gloffset_MultiTexCoord3fvARB 395
+#define _gloffset_MultiTexCoord3iARB 396
+#define _gloffset_MultiTexCoord3ivARB 397
+#define _gloffset_MultiTexCoord3sARB 398
+#define _gloffset_MultiTexCoord3svARB 399
+#define _gloffset_MultiTexCoord4dARB 400
+#define _gloffset_MultiTexCoord4dvARB 401
+#define _gloffset_MultiTexCoord4fARB 402
+#define _gloffset_MultiTexCoord4fvARB 403
+#define _gloffset_MultiTexCoord4iARB 404
+#define _gloffset_MultiTexCoord4ivARB 405
+#define _gloffset_MultiTexCoord4sARB 406
+#define _gloffset_MultiTexCoord4svARB 407
+
+#if !defined(_GLAPI_USE_REMAP_TABLE)
+
+#define _gloffset_AttachShader 408
+#define _gloffset_CreateProgram 409
+#define _gloffset_CreateShader 410
+#define _gloffset_DeleteProgram 411
+#define _gloffset_DeleteShader 412
+#define _gloffset_DetachShader 413
+#define _gloffset_GetAttachedShaders 414
+#define _gloffset_GetProgramInfoLog 415
+#define _gloffset_GetProgramiv 416
+#define _gloffset_GetShaderInfoLog 417
+#define _gloffset_GetShaderiv 418
+#define _gloffset_IsProgram 419
+#define _gloffset_IsShader 420
+#define _gloffset_StencilFuncSeparate 421
+#define _gloffset_StencilMaskSeparate 422
+#define _gloffset_StencilOpSeparate 423
+#define _gloffset_UniformMatrix2x3fv 424
+#define _gloffset_UniformMatrix2x4fv 425
+#define _gloffset_UniformMatrix3x2fv 426
+#define _gloffset_UniformMatrix3x4fv 427
+#define _gloffset_UniformMatrix4x2fv 428
+#define _gloffset_UniformMatrix4x3fv 429
+#define _gloffset_DrawArraysInstanced 430
+#define _gloffset_DrawElementsInstanced 431
+#define _gloffset_LoadTransposeMatrixdARB 432
+#define _gloffset_LoadTransposeMatrixfARB 433
+#define _gloffset_MultTransposeMatrixdARB 434
+#define _gloffset_MultTransposeMatrixfARB 435
+#define _gloffset_SampleCoverageARB 436
+#define _gloffset_CompressedTexImage1DARB 437
+#define _gloffset_CompressedTexImage2DARB 438
+#define _gloffset_CompressedTexImage3DARB 439
+#define _gloffset_CompressedTexSubImage1DARB 440
+#define _gloffset_CompressedTexSubImage2DARB 441
+#define _gloffset_CompressedTexSubImage3DARB 442
+#define _gloffset_GetCompressedTexImageARB 443
+#define _gloffset_DisableVertexAttribArrayARB 444
+#define _gloffset_EnableVertexAttribArrayARB 445
+#define _gloffset_GetProgramEnvParameterdvARB 446
+#define _gloffset_GetProgramEnvParameterfvARB 447
+#define _gloffset_GetProgramLocalParameterdvARB 448
+#define _gloffset_GetProgramLocalParameterfvARB 449
+#define _gloffset_GetProgramStringARB 450
+#define _gloffset_GetProgramivARB 451
+#define _gloffset_GetVertexAttribdvARB 452
+#define _gloffset_GetVertexAttribfvARB 453
+#define _gloffset_GetVertexAttribivARB 454
+#define _gloffset_ProgramEnvParameter4dARB 455
+#define _gloffset_ProgramEnvParameter4dvARB 456
+#define _gloffset_ProgramEnvParameter4fARB 457
+#define _gloffset_ProgramEnvParameter4fvARB 458
+#define _gloffset_ProgramLocalParameter4dARB 459
+#define _gloffset_ProgramLocalParameter4dvARB 460
+#define _gloffset_ProgramLocalParameter4fARB 461
+#define _gloffset_ProgramLocalParameter4fvARB 462
+#define _gloffset_ProgramStringARB 463
+#define _gloffset_VertexAttrib1dARB 464
+#define _gloffset_VertexAttrib1dvARB 465
+#define _gloffset_VertexAttrib1fARB 466
+#define _gloffset_VertexAttrib1fvARB 467
+#define _gloffset_VertexAttrib1sARB 468
+#define _gloffset_VertexAttrib1svARB 469
+#define _gloffset_VertexAttrib2dARB 470
+#define _gloffset_VertexAttrib2dvARB 471
+#define _gloffset_VertexAttrib2fARB 472
+#define _gloffset_VertexAttrib2fvARB 473
+#define _gloffset_VertexAttrib2sARB 474
+#define _gloffset_VertexAttrib2svARB 475
+#define _gloffset_VertexAttrib3dARB 476
+#define _gloffset_VertexAttrib3dvARB 477
+#define _gloffset_VertexAttrib3fARB 478
+#define _gloffset_VertexAttrib3fvARB 479
+#define _gloffset_VertexAttrib3sARB 480
+#define _gloffset_VertexAttrib3svARB 481
+#define _gloffset_VertexAttrib4NbvARB 482
+#define _gloffset_VertexAttrib4NivARB 483
+#define _gloffset_VertexAttrib4NsvARB 484
+#define _gloffset_VertexAttrib4NubARB 485
+#define _gloffset_VertexAttrib4NubvARB 486
+#define _gloffset_VertexAttrib4NuivARB 487
+#define _gloffset_VertexAttrib4NusvARB 488
+#define _gloffset_VertexAttrib4bvARB 489
+#define _gloffset_VertexAttrib4dARB 490
+#define _gloffset_VertexAttrib4dvARB 491
+#define _gloffset_VertexAttrib4fARB 492
+#define _gloffset_VertexAttrib4fvARB 493
+#define _gloffset_VertexAttrib4ivARB 494
+#define _gloffset_VertexAttrib4sARB 495
+#define _gloffset_VertexAttrib4svARB 496
+#define _gloffset_VertexAttrib4ubvARB 497
+#define _gloffset_VertexAttrib4uivARB 498
+#define _gloffset_VertexAttrib4usvARB 499
+#define _gloffset_VertexAttribPointerARB 500
+#define _gloffset_BindBufferARB 501
+#define _gloffset_BufferDataARB 502
+#define _gloffset_BufferSubDataARB 503
+#define _gloffset_DeleteBuffersARB 504
+#define _gloffset_GenBuffersARB 505
+#define _gloffset_GetBufferParameterivARB 506
+#define _gloffset_GetBufferPointervARB 507
+#define _gloffset_GetBufferSubDataARB 508
+#define _gloffset_IsBufferARB 509
+#define _gloffset_MapBufferARB 510
+#define _gloffset_UnmapBufferARB 511
+#define _gloffset_BeginQueryARB 512
+#define _gloffset_DeleteQueriesARB 513
+#define _gloffset_EndQueryARB 514
+#define _gloffset_GenQueriesARB 515
+#define _gloffset_GetQueryObjectivARB 516
+#define _gloffset_GetQueryObjectuivARB 517
+#define _gloffset_GetQueryivARB 518
+#define _gloffset_IsQueryARB 519
+#define _gloffset_AttachObjectARB 520
+#define _gloffset_CompileShaderARB 521
+#define _gloffset_CreateProgramObjectARB 522
+#define _gloffset_CreateShaderObjectARB 523
+#define _gloffset_DeleteObjectARB 524
+#define _gloffset_DetachObjectARB 525
+#define _gloffset_GetActiveUniformARB 526
+#define _gloffset_GetAttachedObjectsARB 527
+#define _gloffset_GetHandleARB 528
+#define _gloffset_GetInfoLogARB 529
+#define _gloffset_GetObjectParameterfvARB 530
+#define _gloffset_GetObjectParameterivARB 531
+#define _gloffset_GetShaderSourceARB 532
+#define _gloffset_GetUniformLocationARB 533
+#define _gloffset_GetUniformfvARB 534
+#define _gloffset_GetUniformivARB 535
+#define _gloffset_LinkProgramARB 536
+#define _gloffset_ShaderSourceARB 537
+#define _gloffset_Uniform1fARB 538
+#define _gloffset_Uniform1fvARB 539
+#define _gloffset_Uniform1iARB 540
+#define _gloffset_Uniform1ivARB 541
+#define _gloffset_Uniform2fARB 542
+#define _gloffset_Uniform2fvARB 543
+#define _gloffset_Uniform2iARB 544
+#define _gloffset_Uniform2ivARB 545
+#define _gloffset_Uniform3fARB 546
+#define _gloffset_Uniform3fvARB 547
+#define _gloffset_Uniform3iARB 548
+#define _gloffset_Uniform3ivARB 549
+#define _gloffset_Uniform4fARB 550
+#define _gloffset_Uniform4fvARB 551
+#define _gloffset_Uniform4iARB 552
+#define _gloffset_Uniform4ivARB 553
+#define _gloffset_UniformMatrix2fvARB 554
+#define _gloffset_UniformMatrix3fvARB 555
+#define _gloffset_UniformMatrix4fvARB 556
+#define _gloffset_UseProgramObjectARB 557
+#define _gloffset_ValidateProgramARB 558
+#define _gloffset_BindAttribLocationARB 559
+#define _gloffset_GetActiveAttribARB 560
+#define _gloffset_GetAttribLocationARB 561
+#define _gloffset_DrawBuffersARB 562
+#define _gloffset_RenderbufferStorageMultisample 563
+#define _gloffset_FlushMappedBufferRange 564
+#define _gloffset_MapBufferRange 565
+#define _gloffset_BindVertexArray 566
+#define _gloffset_GenVertexArrays 567
+#define _gloffset_CopyBufferSubData 568
+#define _gloffset_ClientWaitSync 569
+#define _gloffset_DeleteSync 570
+#define _gloffset_FenceSync 571
+#define _gloffset_GetInteger64v 572
+#define _gloffset_GetSynciv 573
+#define _gloffset_IsSync 574
+#define _gloffset_WaitSync 575
+#define _gloffset_DrawElementsBaseVertex 576
+#define _gloffset_DrawRangeElementsBaseVertex 577
+#define _gloffset_MultiDrawElementsBaseVertex 578
+#define _gloffset_PolygonOffsetEXT 579
+#define _gloffset_GetPixelTexGenParameterfvSGIS 580
+#define _gloffset_GetPixelTexGenParameterivSGIS 581
+#define _gloffset_PixelTexGenParameterfSGIS 582
+#define _gloffset_PixelTexGenParameterfvSGIS 583
+#define _gloffset_PixelTexGenParameteriSGIS 584
+#define _gloffset_PixelTexGenParameterivSGIS 585
+#define _gloffset_SampleMaskSGIS 586
+#define _gloffset_SamplePatternSGIS 587
+#define _gloffset_ColorPointerEXT 588
+#define _gloffset_EdgeFlagPointerEXT 589
+#define _gloffset_IndexPointerEXT 590
+#define _gloffset_NormalPointerEXT 591
+#define _gloffset_TexCoordPointerEXT 592
+#define _gloffset_VertexPointerEXT 593
+#define _gloffset_PointParameterfEXT 594
+#define _gloffset_PointParameterfvEXT 595
+#define _gloffset_LockArraysEXT 596
+#define _gloffset_UnlockArraysEXT 597
+#define _gloffset_CullParameterdvEXT 598
+#define _gloffset_CullParameterfvEXT 599
+#define _gloffset_SecondaryColor3bEXT 600
+#define _gloffset_SecondaryColor3bvEXT 601
+#define _gloffset_SecondaryColor3dEXT 602
+#define _gloffset_SecondaryColor3dvEXT 603
+#define _gloffset_SecondaryColor3fEXT 604
+#define _gloffset_SecondaryColor3fvEXT 605
+#define _gloffset_SecondaryColor3iEXT 606
+#define _gloffset_SecondaryColor3ivEXT 607
+#define _gloffset_SecondaryColor3sEXT 608
+#define _gloffset_SecondaryColor3svEXT 609
+#define _gloffset_SecondaryColor3ubEXT 610
+#define _gloffset_SecondaryColor3ubvEXT 611
+#define _gloffset_SecondaryColor3uiEXT 612
+#define _gloffset_SecondaryColor3uivEXT 613
+#define _gloffset_SecondaryColor3usEXT 614
+#define _gloffset_SecondaryColor3usvEXT 615
+#define _gloffset_SecondaryColorPointerEXT 616
+#define _gloffset_MultiDrawArraysEXT 617
+#define _gloffset_MultiDrawElementsEXT 618
+#define _gloffset_FogCoordPointerEXT 619
+#define _gloffset_FogCoorddEXT 620
+#define _gloffset_FogCoorddvEXT 621
+#define _gloffset_FogCoordfEXT 622
+#define _gloffset_FogCoordfvEXT 623
+#define _gloffset_PixelTexGenSGIX 624
+#define _gloffset_BlendFuncSeparateEXT 625
+#define _gloffset_FlushVertexArrayRangeNV 626
+#define _gloffset_VertexArrayRangeNV 627
+#define _gloffset_CombinerInputNV 628
+#define _gloffset_CombinerOutputNV 629
+#define _gloffset_CombinerParameterfNV 630
+#define _gloffset_CombinerParameterfvNV 631
+#define _gloffset_CombinerParameteriNV 632
+#define _gloffset_CombinerParameterivNV 633
+#define _gloffset_FinalCombinerInputNV 634
+#define _gloffset_GetCombinerInputParameterfvNV 635
+#define _gloffset_GetCombinerInputParameterivNV 636
+#define _gloffset_GetCombinerOutputParameterfvNV 637
+#define _gloffset_GetCombinerOutputParameterivNV 638
+#define _gloffset_GetFinalCombinerInputParameterfvNV 639
+#define _gloffset_GetFinalCombinerInputParameterivNV 640
+#define _gloffset_ResizeBuffersMESA 641
+#define _gloffset_WindowPos2dMESA 642
+#define _gloffset_WindowPos2dvMESA 643
+#define _gloffset_WindowPos2fMESA 644
+#define _gloffset_WindowPos2fvMESA 645
+#define _gloffset_WindowPos2iMESA 646
+#define _gloffset_WindowPos2ivMESA 647
+#define _gloffset_WindowPos2sMESA 648
+#define _gloffset_WindowPos2svMESA 649
+#define _gloffset_WindowPos3dMESA 650
+#define _gloffset_WindowPos3dvMESA 651
+#define _gloffset_WindowPos3fMESA 652
+#define _gloffset_WindowPos3fvMESA 653
+#define _gloffset_WindowPos3iMESA 654
+#define _gloffset_WindowPos3ivMESA 655
+#define _gloffset_WindowPos3sMESA 656
+#define _gloffset_WindowPos3svMESA 657
+#define _gloffset_WindowPos4dMESA 658
+#define _gloffset_WindowPos4dvMESA 659
+#define _gloffset_WindowPos4fMESA 660
+#define _gloffset_WindowPos4fvMESA 661
+#define _gloffset_WindowPos4iMESA 662
+#define _gloffset_WindowPos4ivMESA 663
+#define _gloffset_WindowPos4sMESA 664
+#define _gloffset_WindowPos4svMESA 665
+#define _gloffset_MultiModeDrawArraysIBM 666
+#define _gloffset_MultiModeDrawElementsIBM 667
+#define _gloffset_DeleteFencesNV 668
+#define _gloffset_FinishFenceNV 669
+#define _gloffset_GenFencesNV 670
+#define _gloffset_GetFenceivNV 671
+#define _gloffset_IsFenceNV 672
+#define _gloffset_SetFenceNV 673
+#define _gloffset_TestFenceNV 674
+#define _gloffset_AreProgramsResidentNV 675
+#define _gloffset_BindProgramNV 676
+#define _gloffset_DeleteProgramsNV 677
+#define _gloffset_ExecuteProgramNV 678
+#define _gloffset_GenProgramsNV 679
+#define _gloffset_GetProgramParameterdvNV 680
+#define _gloffset_GetProgramParameterfvNV 681
+#define _gloffset_GetProgramStringNV 682
+#define _gloffset_GetProgramivNV 683
+#define _gloffset_GetTrackMatrixivNV 684
+#define _gloffset_GetVertexAttribPointervNV 685
+#define _gloffset_GetVertexAttribdvNV 686
+#define _gloffset_GetVertexAttribfvNV 687
+#define _gloffset_GetVertexAttribivNV 688
+#define _gloffset_IsProgramNV 689
+#define _gloffset_LoadProgramNV 690
+#define _gloffset_ProgramParameters4dvNV 691
+#define _gloffset_ProgramParameters4fvNV 692
+#define _gloffset_RequestResidentProgramsNV 693
+#define _gloffset_TrackMatrixNV 694
+#define _gloffset_VertexAttrib1dNV 695
+#define _gloffset_VertexAttrib1dvNV 696
+#define _gloffset_VertexAttrib1fNV 697
+#define _gloffset_VertexAttrib1fvNV 698
+#define _gloffset_VertexAttrib1sNV 699
+#define _gloffset_VertexAttrib1svNV 700
+#define _gloffset_VertexAttrib2dNV 701
+#define _gloffset_VertexAttrib2dvNV 702
+#define _gloffset_VertexAttrib2fNV 703
+#define _gloffset_VertexAttrib2fvNV 704
+#define _gloffset_VertexAttrib2sNV 705
+#define _gloffset_VertexAttrib2svNV 706
+#define _gloffset_VertexAttrib3dNV 707
+#define _gloffset_VertexAttrib3dvNV 708
+#define _gloffset_VertexAttrib3fNV 709
+#define _gloffset_VertexAttrib3fvNV 710
+#define _gloffset_VertexAttrib3sNV 711
+#define _gloffset_VertexAttrib3svNV 712
+#define _gloffset_VertexAttrib4dNV 713
+#define _gloffset_VertexAttrib4dvNV 714
+#define _gloffset_VertexAttrib4fNV 715
+#define _gloffset_VertexAttrib4fvNV 716
+#define _gloffset_VertexAttrib4sNV 717
+#define _gloffset_VertexAttrib4svNV 718
+#define _gloffset_VertexAttrib4ubNV 719
+#define _gloffset_VertexAttrib4ubvNV 720
+#define _gloffset_VertexAttribPointerNV 721
+#define _gloffset_VertexAttribs1dvNV 722
+#define _gloffset_VertexAttribs1fvNV 723
+#define _gloffset_VertexAttribs1svNV 724
+#define _gloffset_VertexAttribs2dvNV 725
+#define _gloffset_VertexAttribs2fvNV 726
+#define _gloffset_VertexAttribs2svNV 727
+#define _gloffset_VertexAttribs3dvNV 728
+#define _gloffset_VertexAttribs3fvNV 729
+#define _gloffset_VertexAttribs3svNV 730
+#define _gloffset_VertexAttribs4dvNV 731
+#define _gloffset_VertexAttribs4fvNV 732
+#define _gloffset_VertexAttribs4svNV 733
+#define _gloffset_VertexAttribs4ubvNV 734
+#define _gloffset_GetTexBumpParameterfvATI 735
+#define _gloffset_GetTexBumpParameterivATI 736
+#define _gloffset_TexBumpParameterfvATI 737
+#define _gloffset_TexBumpParameterivATI 738
+#define _gloffset_AlphaFragmentOp1ATI 739
+#define _gloffset_AlphaFragmentOp2ATI 740
+#define _gloffset_AlphaFragmentOp3ATI 741
+#define _gloffset_BeginFragmentShaderATI 742
+#define _gloffset_BindFragmentShaderATI 743
+#define _gloffset_ColorFragmentOp1ATI 744
+#define _gloffset_ColorFragmentOp2ATI 745
+#define _gloffset_ColorFragmentOp3ATI 746
+#define _gloffset_DeleteFragmentShaderATI 747
+#define _gloffset_EndFragmentShaderATI 748
+#define _gloffset_GenFragmentShadersATI 749
+#define _gloffset_PassTexCoordATI 750
+#define _gloffset_SampleMapATI 751
+#define _gloffset_SetFragmentShaderConstantATI 752
+#define _gloffset_PointParameteriNV 753
+#define _gloffset_PointParameterivNV 754
+#define _gloffset_ActiveStencilFaceEXT 755
+#define _gloffset_BindVertexArrayAPPLE 756
+#define _gloffset_DeleteVertexArraysAPPLE 757
+#define _gloffset_GenVertexArraysAPPLE 758
+#define _gloffset_IsVertexArrayAPPLE 759
+#define _gloffset_GetProgramNamedParameterdvNV 760
+#define _gloffset_GetProgramNamedParameterfvNV 761
+#define _gloffset_ProgramNamedParameter4dNV 762
+#define _gloffset_ProgramNamedParameter4dvNV 763
+#define _gloffset_ProgramNamedParameter4fNV 764
+#define _gloffset_ProgramNamedParameter4fvNV 765
+#define _gloffset_DepthBoundsEXT 766
+#define _gloffset_BlendEquationSeparateEXT 767
+#define _gloffset_BindFramebufferEXT 768
+#define _gloffset_BindRenderbufferEXT 769
+#define _gloffset_CheckFramebufferStatusEXT 770
+#define _gloffset_DeleteFramebuffersEXT 771
+#define _gloffset_DeleteRenderbuffersEXT 772
+#define _gloffset_FramebufferRenderbufferEXT 773
+#define _gloffset_FramebufferTexture1DEXT 774
+#define _gloffset_FramebufferTexture2DEXT 775
+#define _gloffset_FramebufferTexture3DEXT 776
+#define _gloffset_GenFramebuffersEXT 777
+#define _gloffset_GenRenderbuffersEXT 778
+#define _gloffset_GenerateMipmapEXT 779
+#define _gloffset_GetFramebufferAttachmentParameterivEXT 780
+#define _gloffset_GetRenderbufferParameterivEXT 781
+#define _gloffset_IsFramebufferEXT 782
+#define _gloffset_IsRenderbufferEXT 783
+#define _gloffset_RenderbufferStorageEXT 784
+#define _gloffset_BlitFramebufferEXT 785
+#define _gloffset_BufferParameteriAPPLE 786
+#define _gloffset_FlushMappedBufferRangeAPPLE 787
+#define _gloffset_FramebufferTextureLayerEXT 788
+#define _gloffset_ColorMaskIndexedEXT 789
+#define _gloffset_DisableIndexedEXT 790
+#define _gloffset_EnableIndexedEXT 791
+#define _gloffset_GetBooleanIndexedvEXT 792
+#define _gloffset_GetIntegerIndexedvEXT 793
+#define _gloffset_IsEnabledIndexedEXT 794
+#define _gloffset_BeginConditionalRenderNV 795
+#define _gloffset_EndConditionalRenderNV 796
+#define _gloffset_BeginTransformFeedbackEXT 797
+#define _gloffset_BindBufferBaseEXT 798
+#define _gloffset_BindBufferOffsetEXT 799
+#define _gloffset_BindBufferRangeEXT 800
+#define _gloffset_EndTransformFeedbackEXT 801
+#define _gloffset_GetTransformFeedbackVaryingEXT 802
+#define _gloffset_TransformFeedbackVaryingsEXT 803
+#define _gloffset_ProvokingVertexEXT 804
+#define _gloffset_GetTexParameterPointervAPPLE 805
+#define _gloffset_TextureRangeAPPLE 806
+#define _gloffset_GetObjectParameterivAPPLE 807
+#define _gloffset_ObjectPurgeableAPPLE 808
+#define _gloffset_ObjectUnpurgeableAPPLE 809
+#define _gloffset_StencilFuncSeparateATI 810
+#define _gloffset_ProgramEnvParameters4fvEXT 811
+#define _gloffset_ProgramLocalParameters4fvEXT 812
+#define _gloffset_GetQueryObjecti64vEXT 813
+#define _gloffset_GetQueryObjectui64vEXT 814
+#define _gloffset_EGLImageTargetRenderbufferStorageOES 815
+#define _gloffset_EGLImageTargetTexture2DOES 816
+#define _gloffset_FIRST_DYNAMIC 817
+
+#else
+
+#define _gloffset_AttachShader driDispatchRemapTable[AttachShader_remap_index]
+#define _gloffset_CreateProgram driDispatchRemapTable[CreateProgram_remap_index]
+#define _gloffset_CreateShader driDispatchRemapTable[CreateShader_remap_index]
+#define _gloffset_DeleteProgram driDispatchRemapTable[DeleteProgram_remap_index]
+#define _gloffset_DeleteShader driDispatchRemapTable[DeleteShader_remap_index]
+#define _gloffset_DetachShader driDispatchRemapTable[DetachShader_remap_index]
+#define _gloffset_GetAttachedShaders driDispatchRemapTable[GetAttachedShaders_remap_index]
+#define _gloffset_GetProgramInfoLog driDispatchRemapTable[GetProgramInfoLog_remap_index]
+#define _gloffset_GetProgramiv driDispatchRemapTable[GetProgramiv_remap_index]
+#define _gloffset_GetShaderInfoLog driDispatchRemapTable[GetShaderInfoLog_remap_index]
+#define _gloffset_GetShaderiv driDispatchRemapTable[GetShaderiv_remap_index]
+#define _gloffset_IsProgram driDispatchRemapTable[IsProgram_remap_index]
+#define _gloffset_IsShader driDispatchRemapTable[IsShader_remap_index]
+#define _gloffset_StencilFuncSeparate driDispatchRemapTable[StencilFuncSeparate_remap_index]
+#define _gloffset_StencilMaskSeparate driDispatchRemapTable[StencilMaskSeparate_remap_index]
+#define _gloffset_StencilOpSeparate driDispatchRemapTable[StencilOpSeparate_remap_index]
+#define _gloffset_UniformMatrix2x3fv driDispatchRemapTable[UniformMatrix2x3fv_remap_index]
+#define _gloffset_UniformMatrix2x4fv driDispatchRemapTable[UniformMatrix2x4fv_remap_index]
+#define _gloffset_UniformMatrix3x2fv driDispatchRemapTable[UniformMatrix3x2fv_remap_index]
+#define _gloffset_UniformMatrix3x4fv driDispatchRemapTable[UniformMatrix3x4fv_remap_index]
+#define _gloffset_UniformMatrix4x2fv driDispatchRemapTable[UniformMatrix4x2fv_remap_index]
+#define _gloffset_UniformMatrix4x3fv driDispatchRemapTable[UniformMatrix4x3fv_remap_index]
+#define _gloffset_DrawArraysInstanced driDispatchRemapTable[DrawArraysInstanced_remap_index]
+#define _gloffset_DrawElementsInstanced driDispatchRemapTable[DrawElementsInstanced_remap_index]
+#define _gloffset_LoadTransposeMatrixdARB driDispatchRemapTable[LoadTransposeMatrixdARB_remap_index]
+#define _gloffset_LoadTransposeMatrixfARB driDispatchRemapTable[LoadTransposeMatrixfARB_remap_index]
+#define _gloffset_MultTransposeMatrixdARB driDispatchRemapTable[MultTransposeMatrixdARB_remap_index]
+#define _gloffset_MultTransposeMatrixfARB driDispatchRemapTable[MultTransposeMatrixfARB_remap_index]
+#define _gloffset_SampleCoverageARB driDispatchRemapTable[SampleCoverageARB_remap_index]
+#define _gloffset_CompressedTexImage1DARB driDispatchRemapTable[CompressedTexImage1DARB_remap_index]
+#define _gloffset_CompressedTexImage2DARB driDispatchRemapTable[CompressedTexImage2DARB_remap_index]
+#define _gloffset_CompressedTexImage3DARB driDispatchRemapTable[CompressedTexImage3DARB_remap_index]
+#define _gloffset_CompressedTexSubImage1DARB driDispatchRemapTable[CompressedTexSubImage1DARB_remap_index]
+#define _gloffset_CompressedTexSubImage2DARB driDispatchRemapTable[CompressedTexSubImage2DARB_remap_index]
+#define _gloffset_CompressedTexSubImage3DARB driDispatchRemapTable[CompressedTexSubImage3DARB_remap_index]
+#define _gloffset_GetCompressedTexImageARB driDispatchRemapTable[GetCompressedTexImageARB_remap_index]
+#define _gloffset_DisableVertexAttribArrayARB driDispatchRemapTable[DisableVertexAttribArrayARB_remap_index]
+#define _gloffset_EnableVertexAttribArrayARB driDispatchRemapTable[EnableVertexAttribArrayARB_remap_index]
+#define _gloffset_GetProgramEnvParameterdvARB driDispatchRemapTable[GetProgramEnvParameterdvARB_remap_index]
+#define _gloffset_GetProgramEnvParameterfvARB driDispatchRemapTable[GetProgramEnvParameterfvARB_remap_index]
+#define _gloffset_GetProgramLocalParameterdvARB driDispatchRemapTable[GetProgramLocalParameterdvARB_remap_index]
+#define _gloffset_GetProgramLocalParameterfvARB driDispatchRemapTable[GetProgramLocalParameterfvARB_remap_index]
+#define _gloffset_GetProgramStringARB driDispatchRemapTable[GetProgramStringARB_remap_index]
+#define _gloffset_GetProgramivARB driDispatchRemapTable[GetProgramivARB_remap_index]
+#define _gloffset_GetVertexAttribdvARB driDispatchRemapTable[GetVertexAttribdvARB_remap_index]
+#define _gloffset_GetVertexAttribfvARB driDispatchRemapTable[GetVertexAttribfvARB_remap_index]
+#define _gloffset_GetVertexAttribivARB driDispatchRemapTable[GetVertexAttribivARB_remap_index]
+#define _gloffset_ProgramEnvParameter4dARB driDispatchRemapTable[ProgramEnvParameter4dARB_remap_index]
+#define _gloffset_ProgramEnvParameter4dvARB driDispatchRemapTable[ProgramEnvParameter4dvARB_remap_index]
+#define _gloffset_ProgramEnvParameter4fARB driDispatchRemapTable[ProgramEnvParameter4fARB_remap_index]
+#define _gloffset_ProgramEnvParameter4fvARB driDispatchRemapTable[ProgramEnvParameter4fvARB_remap_index]
+#define _gloffset_ProgramLocalParameter4dARB driDispatchRemapTable[ProgramLocalParameter4dARB_remap_index]
+#define _gloffset_ProgramLocalParameter4dvARB driDispatchRemapTable[ProgramLocalParameter4dvARB_remap_index]
+#define _gloffset_ProgramLocalParameter4fARB driDispatchRemapTable[ProgramLocalParameter4fARB_remap_index]
+#define _gloffset_ProgramLocalParameter4fvARB driDispatchRemapTable[ProgramLocalParameter4fvARB_remap_index]
+#define _gloffset_ProgramStringARB driDispatchRemapTable[ProgramStringARB_remap_index]
+#define _gloffset_VertexAttrib1dARB driDispatchRemapTable[VertexAttrib1dARB_remap_index]
+#define _gloffset_VertexAttrib1dvARB driDispatchRemapTable[VertexAttrib1dvARB_remap_index]
+#define _gloffset_VertexAttrib1fARB driDispatchRemapTable[VertexAttrib1fARB_remap_index]
+#define _gloffset_VertexAttrib1fvARB driDispatchRemapTable[VertexAttrib1fvARB_remap_index]
+#define _gloffset_VertexAttrib1sARB driDispatchRemapTable[VertexAttrib1sARB_remap_index]
+#define _gloffset_VertexAttrib1svARB driDispatchRemapTable[VertexAttrib1svARB_remap_index]
+#define _gloffset_VertexAttrib2dARB driDispatchRemapTable[VertexAttrib2dARB_remap_index]
+#define _gloffset_VertexAttrib2dvARB driDispatchRemapTable[VertexAttrib2dvARB_remap_index]
+#define _gloffset_VertexAttrib2fARB driDispatchRemapTable[VertexAttrib2fARB_remap_index]
+#define _gloffset_VertexAttrib2fvARB driDispatchRemapTable[VertexAttrib2fvARB_remap_index]
+#define _gloffset_VertexAttrib2sARB driDispatchRemapTable[VertexAttrib2sARB_remap_index]
+#define _gloffset_VertexAttrib2svARB driDispatchRemapTable[VertexAttrib2svARB_remap_index]
+#define _gloffset_VertexAttrib3dARB driDispatchRemapTable[VertexAttrib3dARB_remap_index]
+#define _gloffset_VertexAttrib3dvARB driDispatchRemapTable[VertexAttrib3dvARB_remap_index]
+#define _gloffset_VertexAttrib3fARB driDispatchRemapTable[VertexAttrib3fARB_remap_index]
+#define _gloffset_VertexAttrib3fvARB driDispatchRemapTable[VertexAttrib3fvARB_remap_index]
+#define _gloffset_VertexAttrib3sARB driDispatchRemapTable[VertexAttrib3sARB_remap_index]
+#define _gloffset_VertexAttrib3svARB driDispatchRemapTable[VertexAttrib3svARB_remap_index]
+#define _gloffset_VertexAttrib4NbvARB driDispatchRemapTable[VertexAttrib4NbvARB_remap_index]
+#define _gloffset_VertexAttrib4NivARB driDispatchRemapTable[VertexAttrib4NivARB_remap_index]
+#define _gloffset_VertexAttrib4NsvARB driDispatchRemapTable[VertexAttrib4NsvARB_remap_index]
+#define _gloffset_VertexAttrib4NubARB driDispatchRemapTable[VertexAttrib4NubARB_remap_index]
+#define _gloffset_VertexAttrib4NubvARB driDispatchRemapTable[VertexAttrib4NubvARB_remap_index]
+#define _gloffset_VertexAttrib4NuivARB driDispatchRemapTable[VertexAttrib4NuivARB_remap_index]
+#define _gloffset_VertexAttrib4NusvARB driDispatchRemapTable[VertexAttrib4NusvARB_remap_index]
+#define _gloffset_VertexAttrib4bvARB driDispatchRemapTable[VertexAttrib4bvARB_remap_index]
+#define _gloffset_VertexAttrib4dARB driDispatchRemapTable[VertexAttrib4dARB_remap_index]
+#define _gloffset_VertexAttrib4dvARB driDispatchRemapTable[VertexAttrib4dvARB_remap_index]
+#define _gloffset_VertexAttrib4fARB driDispatchRemapTable[VertexAttrib4fARB_remap_index]
+#define _gloffset_VertexAttrib4fvARB driDispatchRemapTable[VertexAttrib4fvARB_remap_index]
+#define _gloffset_VertexAttrib4ivARB driDispatchRemapTable[VertexAttrib4ivARB_remap_index]
+#define _gloffset_VertexAttrib4sARB driDispatchRemapTable[VertexAttrib4sARB_remap_index]
+#define _gloffset_VertexAttrib4svARB driDispatchRemapTable[VertexAttrib4svARB_remap_index]
+#define _gloffset_VertexAttrib4ubvARB driDispatchRemapTable[VertexAttrib4ubvARB_remap_index]
+#define _gloffset_VertexAttrib4uivARB driDispatchRemapTable[VertexAttrib4uivARB_remap_index]
+#define _gloffset_VertexAttrib4usvARB driDispatchRemapTable[VertexAttrib4usvARB_remap_index]
+#define _gloffset_VertexAttribPointerARB driDispatchRemapTable[VertexAttribPointerARB_remap_index]
+#define _gloffset_BindBufferARB driDispatchRemapTable[BindBufferARB_remap_index]
+#define _gloffset_BufferDataARB driDispatchRemapTable[BufferDataARB_remap_index]
+#define _gloffset_BufferSubDataARB driDispatchRemapTable[BufferSubDataARB_remap_index]
+#define _gloffset_DeleteBuffersARB driDispatchRemapTable[DeleteBuffersARB_remap_index]
+#define _gloffset_GenBuffersARB driDispatchRemapTable[GenBuffersARB_remap_index]
+#define _gloffset_GetBufferParameterivARB driDispatchRemapTable[GetBufferParameterivARB_remap_index]
+#define _gloffset_GetBufferPointervARB driDispatchRemapTable[GetBufferPointervARB_remap_index]
+#define _gloffset_GetBufferSubDataARB driDispatchRemapTable[GetBufferSubDataARB_remap_index]
+#define _gloffset_IsBufferARB driDispatchRemapTable[IsBufferARB_remap_index]
+#define _gloffset_MapBufferARB driDispatchRemapTable[MapBufferARB_remap_index]
+#define _gloffset_UnmapBufferARB driDispatchRemapTable[UnmapBufferARB_remap_index]
+#define _gloffset_BeginQueryARB driDispatchRemapTable[BeginQueryARB_remap_index]
+#define _gloffset_DeleteQueriesARB driDispatchRemapTable[DeleteQueriesARB_remap_index]
+#define _gloffset_EndQueryARB driDispatchRemapTable[EndQueryARB_remap_index]
+#define _gloffset_GenQueriesARB driDispatchRemapTable[GenQueriesARB_remap_index]
+#define _gloffset_GetQueryObjectivARB driDispatchRemapTable[GetQueryObjectivARB_remap_index]
+#define _gloffset_GetQueryObjectuivARB driDispatchRemapTable[GetQueryObjectuivARB_remap_index]
+#define _gloffset_GetQueryivARB driDispatchRemapTable[GetQueryivARB_remap_index]
+#define _gloffset_IsQueryARB driDispatchRemapTable[IsQueryARB_remap_index]
+#define _gloffset_AttachObjectARB driDispatchRemapTable[AttachObjectARB_remap_index]
+#define _gloffset_CompileShaderARB driDispatchRemapTable[CompileShaderARB_remap_index]
+#define _gloffset_CreateProgramObjectARB driDispatchRemapTable[CreateProgramObjectARB_remap_index]
+#define _gloffset_CreateShaderObjectARB driDispatchRemapTable[CreateShaderObjectARB_remap_index]
+#define _gloffset_DeleteObjectARB driDispatchRemapTable[DeleteObjectARB_remap_index]
+#define _gloffset_DetachObjectARB driDispatchRemapTable[DetachObjectARB_remap_index]
+#define _gloffset_GetActiveUniformARB driDispatchRemapTable[GetActiveUniformARB_remap_index]
+#define _gloffset_GetAttachedObjectsARB driDispatchRemapTable[GetAttachedObjectsARB_remap_index]
+#define _gloffset_GetHandleARB driDispatchRemapTable[GetHandleARB_remap_index]
+#define _gloffset_GetInfoLogARB driDispatchRemapTable[GetInfoLogARB_remap_index]
+#define _gloffset_GetObjectParameterfvARB driDispatchRemapTable[GetObjectParameterfvARB_remap_index]
+#define _gloffset_GetObjectParameterivARB driDispatchRemapTable[GetObjectParameterivARB_remap_index]
+#define _gloffset_GetShaderSourceARB driDispatchRemapTable[GetShaderSourceARB_remap_index]
+#define _gloffset_GetUniformLocationARB driDispatchRemapTable[GetUniformLocationARB_remap_index]
+#define _gloffset_GetUniformfvARB driDispatchRemapTable[GetUniformfvARB_remap_index]
+#define _gloffset_GetUniformivARB driDispatchRemapTable[GetUniformivARB_remap_index]
+#define _gloffset_LinkProgramARB driDispatchRemapTable[LinkProgramARB_remap_index]
+#define _gloffset_ShaderSourceARB driDispatchRemapTable[ShaderSourceARB_remap_index]
+#define _gloffset_Uniform1fARB driDispatchRemapTable[Uniform1fARB_remap_index]
+#define _gloffset_Uniform1fvARB driDispatchRemapTable[Uniform1fvARB_remap_index]
+#define _gloffset_Uniform1iARB driDispatchRemapTable[Uniform1iARB_remap_index]
+#define _gloffset_Uniform1ivARB driDispatchRemapTable[Uniform1ivARB_remap_index]
+#define _gloffset_Uniform2fARB driDispatchRemapTable[Uniform2fARB_remap_index]
+#define _gloffset_Uniform2fvARB driDispatchRemapTable[Uniform2fvARB_remap_index]
+#define _gloffset_Uniform2iARB driDispatchRemapTable[Uniform2iARB_remap_index]
+#define _gloffset_Uniform2ivARB driDispatchRemapTable[Uniform2ivARB_remap_index]
+#define _gloffset_Uniform3fARB driDispatchRemapTable[Uniform3fARB_remap_index]
+#define _gloffset_Uniform3fvARB driDispatchRemapTable[Uniform3fvARB_remap_index]
+#define _gloffset_Uniform3iARB driDispatchRemapTable[Uniform3iARB_remap_index]
+#define _gloffset_Uniform3ivARB driDispatchRemapTable[Uniform3ivARB_remap_index]
+#define _gloffset_Uniform4fARB driDispatchRemapTable[Uniform4fARB_remap_index]
+#define _gloffset_Uniform4fvARB driDispatchRemapTable[Uniform4fvARB_remap_index]
+#define _gloffset_Uniform4iARB driDispatchRemapTable[Uniform4iARB_remap_index]
+#define _gloffset_Uniform4ivARB driDispatchRemapTable[Uniform4ivARB_remap_index]
+#define _gloffset_UniformMatrix2fvARB driDispatchRemapTable[UniformMatrix2fvARB_remap_index]
+#define _gloffset_UniformMatrix3fvARB driDispatchRemapTable[UniformMatrix3fvARB_remap_index]
+#define _gloffset_UniformMatrix4fvARB driDispatchRemapTable[UniformMatrix4fvARB_remap_index]
+#define _gloffset_UseProgramObjectARB driDispatchRemapTable[UseProgramObjectARB_remap_index]
+#define _gloffset_ValidateProgramARB driDispatchRemapTable[ValidateProgramARB_remap_index]
+#define _gloffset_BindAttribLocationARB driDispatchRemapTable[BindAttribLocationARB_remap_index]
+#define _gloffset_GetActiveAttribARB driDispatchRemapTable[GetActiveAttribARB_remap_index]
+#define _gloffset_GetAttribLocationARB driDispatchRemapTable[GetAttribLocationARB_remap_index]
+#define _gloffset_DrawBuffersARB driDispatchRemapTable[DrawBuffersARB_remap_index]
+#define _gloffset_RenderbufferStorageMultisample driDispatchRemapTable[RenderbufferStorageMultisample_remap_index]
+#define _gloffset_FlushMappedBufferRange driDispatchRemapTable[FlushMappedBufferRange_remap_index]
+#define _gloffset_MapBufferRange driDispatchRemapTable[MapBufferRange_remap_index]
+#define _gloffset_BindVertexArray driDispatchRemapTable[BindVertexArray_remap_index]
+#define _gloffset_GenVertexArrays driDispatchRemapTable[GenVertexArrays_remap_index]
+#define _gloffset_CopyBufferSubData driDispatchRemapTable[CopyBufferSubData_remap_index]
+#define _gloffset_ClientWaitSync driDispatchRemapTable[ClientWaitSync_remap_index]
+#define _gloffset_DeleteSync driDispatchRemapTable[DeleteSync_remap_index]
+#define _gloffset_FenceSync driDispatchRemapTable[FenceSync_remap_index]
+#define _gloffset_GetInteger64v driDispatchRemapTable[GetInteger64v_remap_index]
+#define _gloffset_GetSynciv driDispatchRemapTable[GetSynciv_remap_index]
+#define _gloffset_IsSync driDispatchRemapTable[IsSync_remap_index]
+#define _gloffset_WaitSync driDispatchRemapTable[WaitSync_remap_index]
+#define _gloffset_DrawElementsBaseVertex driDispatchRemapTable[DrawElementsBaseVertex_remap_index]
+#define _gloffset_DrawRangeElementsBaseVertex driDispatchRemapTable[DrawRangeElementsBaseVertex_remap_index]
+#define _gloffset_MultiDrawElementsBaseVertex driDispatchRemapTable[MultiDrawElementsBaseVertex_remap_index]
+#define _gloffset_PolygonOffsetEXT driDispatchRemapTable[PolygonOffsetEXT_remap_index]
+#define _gloffset_GetPixelTexGenParameterfvSGIS driDispatchRemapTable[GetPixelTexGenParameterfvSGIS_remap_index]
+#define _gloffset_GetPixelTexGenParameterivSGIS driDispatchRemapTable[GetPixelTexGenParameterivSGIS_remap_index]
+#define _gloffset_PixelTexGenParameterfSGIS driDispatchRemapTable[PixelTexGenParameterfSGIS_remap_index]
+#define _gloffset_PixelTexGenParameterfvSGIS driDispatchRemapTable[PixelTexGenParameterfvSGIS_remap_index]
+#define _gloffset_PixelTexGenParameteriSGIS driDispatchRemapTable[PixelTexGenParameteriSGIS_remap_index]
+#define _gloffset_PixelTexGenParameterivSGIS driDispatchRemapTable[PixelTexGenParameterivSGIS_remap_index]
+#define _gloffset_SampleMaskSGIS driDispatchRemapTable[SampleMaskSGIS_remap_index]
+#define _gloffset_SamplePatternSGIS driDispatchRemapTable[SamplePatternSGIS_remap_index]
+#define _gloffset_ColorPointerEXT driDispatchRemapTable[ColorPointerEXT_remap_index]
+#define _gloffset_EdgeFlagPointerEXT driDispatchRemapTable[EdgeFlagPointerEXT_remap_index]
+#define _gloffset_IndexPointerEXT driDispatchRemapTable[IndexPointerEXT_remap_index]
+#define _gloffset_NormalPointerEXT driDispatchRemapTable[NormalPointerEXT_remap_index]
+#define _gloffset_TexCoordPointerEXT driDispatchRemapTable[TexCoordPointerEXT_remap_index]
+#define _gloffset_VertexPointerEXT driDispatchRemapTable[VertexPointerEXT_remap_index]
+#define _gloffset_PointParameterfEXT driDispatchRemapTable[PointParameterfEXT_remap_index]
+#define _gloffset_PointParameterfvEXT driDispatchRemapTable[PointParameterfvEXT_remap_index]
+#define _gloffset_LockArraysEXT driDispatchRemapTable[LockArraysEXT_remap_index]
+#define _gloffset_UnlockArraysEXT driDispatchRemapTable[UnlockArraysEXT_remap_index]
+#define _gloffset_CullParameterdvEXT driDispatchRemapTable[CullParameterdvEXT_remap_index]
+#define _gloffset_CullParameterfvEXT driDispatchRemapTable[CullParameterfvEXT_remap_index]
+#define _gloffset_SecondaryColor3bEXT driDispatchRemapTable[SecondaryColor3bEXT_remap_index]
+#define _gloffset_SecondaryColor3bvEXT driDispatchRemapTable[SecondaryColor3bvEXT_remap_index]
+#define _gloffset_SecondaryColor3dEXT driDispatchRemapTable[SecondaryColor3dEXT_remap_index]
+#define _gloffset_SecondaryColor3dvEXT driDispatchRemapTable[SecondaryColor3dvEXT_remap_index]
+#define _gloffset_SecondaryColor3fEXT driDispatchRemapTable[SecondaryColor3fEXT_remap_index]
+#define _gloffset_SecondaryColor3fvEXT driDispatchRemapTable[SecondaryColor3fvEXT_remap_index]
+#define _gloffset_SecondaryColor3iEXT driDispatchRemapTable[SecondaryColor3iEXT_remap_index]
+#define _gloffset_SecondaryColor3ivEXT driDispatchRemapTable[SecondaryColor3ivEXT_remap_index]
+#define _gloffset_SecondaryColor3sEXT driDispatchRemapTable[SecondaryColor3sEXT_remap_index]
+#define _gloffset_SecondaryColor3svEXT driDispatchRemapTable[SecondaryColor3svEXT_remap_index]
+#define _gloffset_SecondaryColor3ubEXT driDispatchRemapTable[SecondaryColor3ubEXT_remap_index]
+#define _gloffset_SecondaryColor3ubvEXT driDispatchRemapTable[SecondaryColor3ubvEXT_remap_index]
+#define _gloffset_SecondaryColor3uiEXT driDispatchRemapTable[SecondaryColor3uiEXT_remap_index]
+#define _gloffset_SecondaryColor3uivEXT driDispatchRemapTable[SecondaryColor3uivEXT_remap_index]
+#define _gloffset_SecondaryColor3usEXT driDispatchRemapTable[SecondaryColor3usEXT_remap_index]
+#define _gloffset_SecondaryColor3usvEXT driDispatchRemapTable[SecondaryColor3usvEXT_remap_index]
+#define _gloffset_SecondaryColorPointerEXT driDispatchRemapTable[SecondaryColorPointerEXT_remap_index]
+#define _gloffset_MultiDrawArraysEXT driDispatchRemapTable[MultiDrawArraysEXT_remap_index]
+#define _gloffset_MultiDrawElementsEXT driDispatchRemapTable[MultiDrawElementsEXT_remap_index]
+#define _gloffset_FogCoordPointerEXT driDispatchRemapTable[FogCoordPointerEXT_remap_index]
+#define _gloffset_FogCoorddEXT driDispatchRemapTable[FogCoorddEXT_remap_index]
+#define _gloffset_FogCoorddvEXT driDispatchRemapTable[FogCoorddvEXT_remap_index]
+#define _gloffset_FogCoordfEXT driDispatchRemapTable[FogCoordfEXT_remap_index]
+#define _gloffset_FogCoordfvEXT driDispatchRemapTable[FogCoordfvEXT_remap_index]
+#define _gloffset_PixelTexGenSGIX driDispatchRemapTable[PixelTexGenSGIX_remap_index]
+#define _gloffset_BlendFuncSeparateEXT driDispatchRemapTable[BlendFuncSeparateEXT_remap_index]
+#define _gloffset_FlushVertexArrayRangeNV driDispatchRemapTable[FlushVertexArrayRangeNV_remap_index]
+#define _gloffset_VertexArrayRangeNV driDispatchRemapTable[VertexArrayRangeNV_remap_index]
+#define _gloffset_CombinerInputNV driDispatchRemapTable[CombinerInputNV_remap_index]
+#define _gloffset_CombinerOutputNV driDispatchRemapTable[CombinerOutputNV_remap_index]
+#define _gloffset_CombinerParameterfNV driDispatchRemapTable[CombinerParameterfNV_remap_index]
+#define _gloffset_CombinerParameterfvNV driDispatchRemapTable[CombinerParameterfvNV_remap_index]
+#define _gloffset_CombinerParameteriNV driDispatchRemapTable[CombinerParameteriNV_remap_index]
+#define _gloffset_CombinerParameterivNV driDispatchRemapTable[CombinerParameterivNV_remap_index]
+#define _gloffset_FinalCombinerInputNV driDispatchRemapTable[FinalCombinerInputNV_remap_index]
+#define _gloffset_GetCombinerInputParameterfvNV driDispatchRemapTable[GetCombinerInputParameterfvNV_remap_index]
+#define _gloffset_GetCombinerInputParameterivNV driDispatchRemapTable[GetCombinerInputParameterivNV_remap_index]
+#define _gloffset_GetCombinerOutputParameterfvNV driDispatchRemapTable[GetCombinerOutputParameterfvNV_remap_index]
+#define _gloffset_GetCombinerOutputParameterivNV driDispatchRemapTable[GetCombinerOutputParameterivNV_remap_index]
+#define _gloffset_GetFinalCombinerInputParameterfvNV driDispatchRemapTable[GetFinalCombinerInputParameterfvNV_remap_index]
+#define _gloffset_GetFinalCombinerInputParameterivNV driDispatchRemapTable[GetFinalCombinerInputParameterivNV_remap_index]
+#define _gloffset_ResizeBuffersMESA driDispatchRemapTable[ResizeBuffersMESA_remap_index]
+#define _gloffset_WindowPos2dMESA driDispatchRemapTable[WindowPos2dMESA_remap_index]
+#define _gloffset_WindowPos2dvMESA driDispatchRemapTable[WindowPos2dvMESA_remap_index]
+#define _gloffset_WindowPos2fMESA driDispatchRemapTable[WindowPos2fMESA_remap_index]
+#define _gloffset_WindowPos2fvMESA driDispatchRemapTable[WindowPos2fvMESA_remap_index]
+#define _gloffset_WindowPos2iMESA driDispatchRemapTable[WindowPos2iMESA_remap_index]
+#define _gloffset_WindowPos2ivMESA driDispatchRemapTable[WindowPos2ivMESA_remap_index]
+#define _gloffset_WindowPos2sMESA driDispatchRemapTable[WindowPos2sMESA_remap_index]
+#define _gloffset_WindowPos2svMESA driDispatchRemapTable[WindowPos2svMESA_remap_index]
+#define _gloffset_WindowPos3dMESA driDispatchRemapTable[WindowPos3dMESA_remap_index]
+#define _gloffset_WindowPos3dvMESA driDispatchRemapTable[WindowPos3dvMESA_remap_index]
+#define _gloffset_WindowPos3fMESA driDispatchRemapTable[WindowPos3fMESA_remap_index]
+#define _gloffset_WindowPos3fvMESA driDispatchRemapTable[WindowPos3fvMESA_remap_index]
+#define _gloffset_WindowPos3iMESA driDispatchRemapTable[WindowPos3iMESA_remap_index]
+#define _gloffset_WindowPos3ivMESA driDispatchRemapTable[WindowPos3ivMESA_remap_index]
+#define _gloffset_WindowPos3sMESA driDispatchRemapTable[WindowPos3sMESA_remap_index]
+#define _gloffset_WindowPos3svMESA driDispatchRemapTable[WindowPos3svMESA_remap_index]
+#define _gloffset_WindowPos4dMESA driDispatchRemapTable[WindowPos4dMESA_remap_index]
+#define _gloffset_WindowPos4dvMESA driDispatchRemapTable[WindowPos4dvMESA_remap_index]
+#define _gloffset_WindowPos4fMESA driDispatchRemapTable[WindowPos4fMESA_remap_index]
+#define _gloffset_WindowPos4fvMESA driDispatchRemapTable[WindowPos4fvMESA_remap_index]
+#define _gloffset_WindowPos4iMESA driDispatchRemapTable[WindowPos4iMESA_remap_index]
+#define _gloffset_WindowPos4ivMESA driDispatchRemapTable[WindowPos4ivMESA_remap_index]
+#define _gloffset_WindowPos4sMESA driDispatchRemapTable[WindowPos4sMESA_remap_index]
+#define _gloffset_WindowPos4svMESA driDispatchRemapTable[WindowPos4svMESA_remap_index]
+#define _gloffset_MultiModeDrawArraysIBM driDispatchRemapTable[MultiModeDrawArraysIBM_remap_index]
+#define _gloffset_MultiModeDrawElementsIBM driDispatchRemapTable[MultiModeDrawElementsIBM_remap_index]
+#define _gloffset_DeleteFencesNV driDispatchRemapTable[DeleteFencesNV_remap_index]
+#define _gloffset_FinishFenceNV driDispatchRemapTable[FinishFenceNV_remap_index]
+#define _gloffset_GenFencesNV driDispatchRemapTable[GenFencesNV_remap_index]
+#define _gloffset_GetFenceivNV driDispatchRemapTable[GetFenceivNV_remap_index]
+#define _gloffset_IsFenceNV driDispatchRemapTable[IsFenceNV_remap_index]
+#define _gloffset_SetFenceNV driDispatchRemapTable[SetFenceNV_remap_index]
+#define _gloffset_TestFenceNV driDispatchRemapTable[TestFenceNV_remap_index]
+#define _gloffset_AreProgramsResidentNV driDispatchRemapTable[AreProgramsResidentNV_remap_index]
+#define _gloffset_BindProgramNV driDispatchRemapTable[BindProgramNV_remap_index]
+#define _gloffset_DeleteProgramsNV driDispatchRemapTable[DeleteProgramsNV_remap_index]
+#define _gloffset_ExecuteProgramNV driDispatchRemapTable[ExecuteProgramNV_remap_index]
+#define _gloffset_GenProgramsNV driDispatchRemapTable[GenProgramsNV_remap_index]
+#define _gloffset_GetProgramParameterdvNV driDispatchRemapTable[GetProgramParameterdvNV_remap_index]
+#define _gloffset_GetProgramParameterfvNV driDispatchRemapTable[GetProgramParameterfvNV_remap_index]
+#define _gloffset_GetProgramStringNV driDispatchRemapTable[GetProgramStringNV_remap_index]
+#define _gloffset_GetProgramivNV driDispatchRemapTable[GetProgramivNV_remap_index]
+#define _gloffset_GetTrackMatrixivNV driDispatchRemapTable[GetTrackMatrixivNV_remap_index]
+#define _gloffset_GetVertexAttribPointervNV driDispatchRemapTable[GetVertexAttribPointervNV_remap_index]
+#define _gloffset_GetVertexAttribdvNV driDispatchRemapTable[GetVertexAttribdvNV_remap_index]
+#define _gloffset_GetVertexAttribfvNV driDispatchRemapTable[GetVertexAttribfvNV_remap_index]
+#define _gloffset_GetVertexAttribivNV driDispatchRemapTable[GetVertexAttribivNV_remap_index]
+#define _gloffset_IsProgramNV driDispatchRemapTable[IsProgramNV_remap_index]
+#define _gloffset_LoadProgramNV driDispatchRemapTable[LoadProgramNV_remap_index]
+#define _gloffset_ProgramParameters4dvNV driDispatchRemapTable[ProgramParameters4dvNV_remap_index]
+#define _gloffset_ProgramParameters4fvNV driDispatchRemapTable[ProgramParameters4fvNV_remap_index]
+#define _gloffset_RequestResidentProgramsNV driDispatchRemapTable[RequestResidentProgramsNV_remap_index]
+#define _gloffset_TrackMatrixNV driDispatchRemapTable[TrackMatrixNV_remap_index]
+#define _gloffset_VertexAttrib1dNV driDispatchRemapTable[VertexAttrib1dNV_remap_index]
+#define _gloffset_VertexAttrib1dvNV driDispatchRemapTable[VertexAttrib1dvNV_remap_index]
+#define _gloffset_VertexAttrib1fNV driDispatchRemapTable[VertexAttrib1fNV_remap_index]
+#define _gloffset_VertexAttrib1fvNV driDispatchRemapTable[VertexAttrib1fvNV_remap_index]
+#define _gloffset_VertexAttrib1sNV driDispatchRemapTable[VertexAttrib1sNV_remap_index]
+#define _gloffset_VertexAttrib1svNV driDispatchRemapTable[VertexAttrib1svNV_remap_index]
+#define _gloffset_VertexAttrib2dNV driDispatchRemapTable[VertexAttrib2dNV_remap_index]
+#define _gloffset_VertexAttrib2dvNV driDispatchRemapTable[VertexAttrib2dvNV_remap_index]
+#define _gloffset_VertexAttrib2fNV driDispatchRemapTable[VertexAttrib2fNV_remap_index]
+#define _gloffset_VertexAttrib2fvNV driDispatchRemapTable[VertexAttrib2fvNV_remap_index]
+#define _gloffset_VertexAttrib2sNV driDispatchRemapTable[VertexAttrib2sNV_remap_index]
+#define _gloffset_VertexAttrib2svNV driDispatchRemapTable[VertexAttrib2svNV_remap_index]
+#define _gloffset_VertexAttrib3dNV driDispatchRemapTable[VertexAttrib3dNV_remap_index]
+#define _gloffset_VertexAttrib3dvNV driDispatchRemapTable[VertexAttrib3dvNV_remap_index]
+#define _gloffset_VertexAttrib3fNV driDispatchRemapTable[VertexAttrib3fNV_remap_index]
+#define _gloffset_VertexAttrib3fvNV driDispatchRemapTable[VertexAttrib3fvNV_remap_index]
+#define _gloffset_VertexAttrib3sNV driDispatchRemapTable[VertexAttrib3sNV_remap_index]
+#define _gloffset_VertexAttrib3svNV driDispatchRemapTable[VertexAttrib3svNV_remap_index]
+#define _gloffset_VertexAttrib4dNV driDispatchRemapTable[VertexAttrib4dNV_remap_index]
+#define _gloffset_VertexAttrib4dvNV driDispatchRemapTable[VertexAttrib4dvNV_remap_index]
+#define _gloffset_VertexAttrib4fNV driDispatchRemapTable[VertexAttrib4fNV_remap_index]
+#define _gloffset_VertexAttrib4fvNV driDispatchRemapTable[VertexAttrib4fvNV_remap_index]
+#define _gloffset_VertexAttrib4sNV driDispatchRemapTable[VertexAttrib4sNV_remap_index]
+#define _gloffset_VertexAttrib4svNV driDispatchRemapTable[VertexAttrib4svNV_remap_index]
+#define _gloffset_VertexAttrib4ubNV driDispatchRemapTable[VertexAttrib4ubNV_remap_index]
+#define _gloffset_VertexAttrib4ubvNV driDispatchRemapTable[VertexAttrib4ubvNV_remap_index]
+#define _gloffset_VertexAttribPointerNV driDispatchRemapTable[VertexAttribPointerNV_remap_index]
+#define _gloffset_VertexAttribs1dvNV driDispatchRemapTable[VertexAttribs1dvNV_remap_index]
+#define _gloffset_VertexAttribs1fvNV driDispatchRemapTable[VertexAttribs1fvNV_remap_index]
+#define _gloffset_VertexAttribs1svNV driDispatchRemapTable[VertexAttribs1svNV_remap_index]
+#define _gloffset_VertexAttribs2dvNV driDispatchRemapTable[VertexAttribs2dvNV_remap_index]
+#define _gloffset_VertexAttribs2fvNV driDispatchRemapTable[VertexAttribs2fvNV_remap_index]
+#define _gloffset_VertexAttribs2svNV driDispatchRemapTable[VertexAttribs2svNV_remap_index]
+#define _gloffset_VertexAttribs3dvNV driDispatchRemapTable[VertexAttribs3dvNV_remap_index]
+#define _gloffset_VertexAttribs3fvNV driDispatchRemapTable[VertexAttribs3fvNV_remap_index]
+#define _gloffset_VertexAttribs3svNV driDispatchRemapTable[VertexAttribs3svNV_remap_index]
+#define _gloffset_VertexAttribs4dvNV driDispatchRemapTable[VertexAttribs4dvNV_remap_index]
+#define _gloffset_VertexAttribs4fvNV driDispatchRemapTable[VertexAttribs4fvNV_remap_index]
+#define _gloffset_VertexAttribs4svNV driDispatchRemapTable[VertexAttribs4svNV_remap_index]
+#define _gloffset_VertexAttribs4ubvNV driDispatchRemapTable[VertexAttribs4ubvNV_remap_index]
+#define _gloffset_GetTexBumpParameterfvATI driDispatchRemapTable[GetTexBumpParameterfvATI_remap_index]
+#define _gloffset_GetTexBumpParameterivATI driDispatchRemapTable[GetTexBumpParameterivATI_remap_index]
+#define _gloffset_TexBumpParameterfvATI driDispatchRemapTable[TexBumpParameterfvATI_remap_index]
+#define _gloffset_TexBumpParameterivATI driDispatchRemapTable[TexBumpParameterivATI_remap_index]
+#define _gloffset_AlphaFragmentOp1ATI driDispatchRemapTable[AlphaFragmentOp1ATI_remap_index]
+#define _gloffset_AlphaFragmentOp2ATI driDispatchRemapTable[AlphaFragmentOp2ATI_remap_index]
+#define _gloffset_AlphaFragmentOp3ATI driDispatchRemapTable[AlphaFragmentOp3ATI_remap_index]
+#define _gloffset_BeginFragmentShaderATI driDispatchRemapTable[BeginFragmentShaderATI_remap_index]
+#define _gloffset_BindFragmentShaderATI driDispatchRemapTable[BindFragmentShaderATI_remap_index]
+#define _gloffset_ColorFragmentOp1ATI driDispatchRemapTable[ColorFragmentOp1ATI_remap_index]
+#define _gloffset_ColorFragmentOp2ATI driDispatchRemapTable[ColorFragmentOp2ATI_remap_index]
+#define _gloffset_ColorFragmentOp3ATI driDispatchRemapTable[ColorFragmentOp3ATI_remap_index]
+#define _gloffset_DeleteFragmentShaderATI driDispatchRemapTable[DeleteFragmentShaderATI_remap_index]
+#define _gloffset_EndFragmentShaderATI driDispatchRemapTable[EndFragmentShaderATI_remap_index]
+#define _gloffset_GenFragmentShadersATI driDispatchRemapTable[GenFragmentShadersATI_remap_index]
+#define _gloffset_PassTexCoordATI driDispatchRemapTable[PassTexCoordATI_remap_index]
+#define _gloffset_SampleMapATI driDispatchRemapTable[SampleMapATI_remap_index]
+#define _gloffset_SetFragmentShaderConstantATI driDispatchRemapTable[SetFragmentShaderConstantATI_remap_index]
+#define _gloffset_PointParameteriNV driDispatchRemapTable[PointParameteriNV_remap_index]
+#define _gloffset_PointParameterivNV driDispatchRemapTable[PointParameterivNV_remap_index]
+#define _gloffset_ActiveStencilFaceEXT driDispatchRemapTable[ActiveStencilFaceEXT_remap_index]
+#define _gloffset_BindVertexArrayAPPLE driDispatchRemapTable[BindVertexArrayAPPLE_remap_index]
+#define _gloffset_DeleteVertexArraysAPPLE driDispatchRemapTable[DeleteVertexArraysAPPLE_remap_index]
+#define _gloffset_GenVertexArraysAPPLE driDispatchRemapTable[GenVertexArraysAPPLE_remap_index]
+#define _gloffset_IsVertexArrayAPPLE driDispatchRemapTable[IsVertexArrayAPPLE_remap_index]
+#define _gloffset_GetProgramNamedParameterdvNV driDispatchRemapTable[GetProgramNamedParameterdvNV_remap_index]
+#define _gloffset_GetProgramNamedParameterfvNV driDispatchRemapTable[GetProgramNamedParameterfvNV_remap_index]
+#define _gloffset_ProgramNamedParameter4dNV driDispatchRemapTable[ProgramNamedParameter4dNV_remap_index]
+#define _gloffset_ProgramNamedParameter4dvNV driDispatchRemapTable[ProgramNamedParameter4dvNV_remap_index]
+#define _gloffset_ProgramNamedParameter4fNV driDispatchRemapTable[ProgramNamedParameter4fNV_remap_index]
+#define _gloffset_ProgramNamedParameter4fvNV driDispatchRemapTable[ProgramNamedParameter4fvNV_remap_index]
+#define _gloffset_DepthBoundsEXT driDispatchRemapTable[DepthBoundsEXT_remap_index]
+#define _gloffset_BlendEquationSeparateEXT driDispatchRemapTable[BlendEquationSeparateEXT_remap_index]
+#define _gloffset_BindFramebufferEXT driDispatchRemapTable[BindFramebufferEXT_remap_index]
+#define _gloffset_BindRenderbufferEXT driDispatchRemapTable[BindRenderbufferEXT_remap_index]
+#define _gloffset_CheckFramebufferStatusEXT driDispatchRemapTable[CheckFramebufferStatusEXT_remap_index]
+#define _gloffset_DeleteFramebuffersEXT driDispatchRemapTable[DeleteFramebuffersEXT_remap_index]
+#define _gloffset_DeleteRenderbuffersEXT driDispatchRemapTable[DeleteRenderbuffersEXT_remap_index]
+#define _gloffset_FramebufferRenderbufferEXT driDispatchRemapTable[FramebufferRenderbufferEXT_remap_index]
+#define _gloffset_FramebufferTexture1DEXT driDispatchRemapTable[FramebufferTexture1DEXT_remap_index]
+#define _gloffset_FramebufferTexture2DEXT driDispatchRemapTable[FramebufferTexture2DEXT_remap_index]
+#define _gloffset_FramebufferTexture3DEXT driDispatchRemapTable[FramebufferTexture3DEXT_remap_index]
+#define _gloffset_GenFramebuffersEXT driDispatchRemapTable[GenFramebuffersEXT_remap_index]
+#define _gloffset_GenRenderbuffersEXT driDispatchRemapTable[GenRenderbuffersEXT_remap_index]
+#define _gloffset_GenerateMipmapEXT driDispatchRemapTable[GenerateMipmapEXT_remap_index]
+#define _gloffset_GetFramebufferAttachmentParameterivEXT driDispatchRemapTable[GetFramebufferAttachmentParameterivEXT_remap_index]
+#define _gloffset_GetRenderbufferParameterivEXT driDispatchRemapTable[GetRenderbufferParameterivEXT_remap_index]
+#define _gloffset_IsFramebufferEXT driDispatchRemapTable[IsFramebufferEXT_remap_index]
+#define _gloffset_IsRenderbufferEXT driDispatchRemapTable[IsRenderbufferEXT_remap_index]
+#define _gloffset_RenderbufferStorageEXT driDispatchRemapTable[RenderbufferStorageEXT_remap_index]
+#define _gloffset_BlitFramebufferEXT driDispatchRemapTable[BlitFramebufferEXT_remap_index]
+#define _gloffset_BufferParameteriAPPLE driDispatchRemapTable[BufferParameteriAPPLE_remap_index]
+#define _gloffset_FlushMappedBufferRangeAPPLE driDispatchRemapTable[FlushMappedBufferRangeAPPLE_remap_index]
+#define _gloffset_FramebufferTextureLayerEXT driDispatchRemapTable[FramebufferTextureLayerEXT_remap_index]
+#define _gloffset_ColorMaskIndexedEXT driDispatchRemapTable[ColorMaskIndexedEXT_remap_index]
+#define _gloffset_DisableIndexedEXT driDispatchRemapTable[DisableIndexedEXT_remap_index]
+#define _gloffset_EnableIndexedEXT driDispatchRemapTable[EnableIndexedEXT_remap_index]
+#define _gloffset_GetBooleanIndexedvEXT driDispatchRemapTable[GetBooleanIndexedvEXT_remap_index]
+#define _gloffset_GetIntegerIndexedvEXT driDispatchRemapTable[GetIntegerIndexedvEXT_remap_index]
+#define _gloffset_IsEnabledIndexedEXT driDispatchRemapTable[IsEnabledIndexedEXT_remap_index]
+#define _gloffset_BeginConditionalRenderNV driDispatchRemapTable[BeginConditionalRenderNV_remap_index]
+#define _gloffset_EndConditionalRenderNV driDispatchRemapTable[EndConditionalRenderNV_remap_index]
+#define _gloffset_BeginTransformFeedbackEXT driDispatchRemapTable[BeginTransformFeedbackEXT_remap_index]
+#define _gloffset_BindBufferBaseEXT driDispatchRemapTable[BindBufferBaseEXT_remap_index]
+#define _gloffset_BindBufferOffsetEXT driDispatchRemapTable[BindBufferOffsetEXT_remap_index]
+#define _gloffset_BindBufferRangeEXT driDispatchRemapTable[BindBufferRangeEXT_remap_index]
+#define _gloffset_EndTransformFeedbackEXT driDispatchRemapTable[EndTransformFeedbackEXT_remap_index]
+#define _gloffset_GetTransformFeedbackVaryingEXT driDispatchRemapTable[GetTransformFeedbackVaryingEXT_remap_index]
+#define _gloffset_TransformFeedbackVaryingsEXT driDispatchRemapTable[TransformFeedbackVaryingsEXT_remap_index]
+#define _gloffset_ProvokingVertexEXT driDispatchRemapTable[ProvokingVertexEXT_remap_index]
+#define _gloffset_GetTexParameterPointervAPPLE driDispatchRemapTable[GetTexParameterPointervAPPLE_remap_index]
+#define _gloffset_TextureRangeAPPLE driDispatchRemapTable[TextureRangeAPPLE_remap_index]
+#define _gloffset_GetObjectParameterivAPPLE driDispatchRemapTable[GetObjectParameterivAPPLE_remap_index]
+#define _gloffset_ObjectPurgeableAPPLE driDispatchRemapTable[ObjectPurgeableAPPLE_remap_index]
+#define _gloffset_ObjectUnpurgeableAPPLE driDispatchRemapTable[ObjectUnpurgeableAPPLE_remap_index]
+#define _gloffset_StencilFuncSeparateATI driDispatchRemapTable[StencilFuncSeparateATI_remap_index]
+#define _gloffset_ProgramEnvParameters4fvEXT driDispatchRemapTable[ProgramEnvParameters4fvEXT_remap_index]
+#define _gloffset_ProgramLocalParameters4fvEXT driDispatchRemapTable[ProgramLocalParameters4fvEXT_remap_index]
+#define _gloffset_GetQueryObjecti64vEXT driDispatchRemapTable[GetQueryObjecti64vEXT_remap_index]
+#define _gloffset_GetQueryObjectui64vEXT driDispatchRemapTable[GetQueryObjectui64vEXT_remap_index]
+#define _gloffset_EGLImageTargetRenderbufferStorageOES driDispatchRemapTable[EGLImageTargetRenderbufferStorageOES_remap_index]
+#define _gloffset_EGLImageTargetTexture2DOES driDispatchRemapTable[EGLImageTargetTexture2DOES_remap_index]
+
+#endif /* !defined(_GLAPI_USE_REMAP_TABLE) */
+
+#endif /* !defined( _GLAPI_OFFSETS_H_ ) */
diff --git a/src/mapi/glapi/glapitable.h b/src/mapi/glapi/glapitable.h
new file mode 100644 (file)
index 0000000..faf274f
--- /dev/null
@@ -0,0 +1,862 @@
+/* DO NOT EDIT - This file generated automatically by gl_table.py (from Mesa) script */
+
+/*
+ * Copyright (C) 1999-2003  Brian Paul   All Rights Reserved.
+ * (C) Copyright IBM Corporation 2004
+ * 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
+ * BRIAN PAUL, IBM,
+ * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
+ * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+#if !defined( _GLAPI_TABLE_H_ )
+#  define _GLAPI_TABLE_H_
+
+#ifndef GLAPIENTRYP
+# ifndef GLAPIENTRY
+#  define GLAPIENTRY
+# endif
+
+# define GLAPIENTRYP GLAPIENTRY *
+#endif
+
+
+struct _glapi_table
+{
+   void (GLAPIENTRYP NewList)(GLuint list, GLenum mode); /* 0 */
+   void (GLAPIENTRYP EndList)(void); /* 1 */
+   void (GLAPIENTRYP CallList)(GLuint list); /* 2 */
+   void (GLAPIENTRYP CallLists)(GLsizei n, GLenum type, const GLvoid * lists); /* 3 */
+   void (GLAPIENTRYP DeleteLists)(GLuint list, GLsizei range); /* 4 */
+   GLuint (GLAPIENTRYP GenLists)(GLsizei range); /* 5 */
+   void (GLAPIENTRYP ListBase)(GLuint base); /* 6 */
+   void (GLAPIENTRYP Begin)(GLenum mode); /* 7 */
+   void (GLAPIENTRYP Bitmap)(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte * bitmap); /* 8 */
+   void (GLAPIENTRYP Color3b)(GLbyte red, GLbyte green, GLbyte blue); /* 9 */
+   void (GLAPIENTRYP Color3bv)(const GLbyte * v); /* 10 */
+   void (GLAPIENTRYP Color3d)(GLdouble red, GLdouble green, GLdouble blue); /* 11 */
+   void (GLAPIENTRYP Color3dv)(const GLdouble * v); /* 12 */
+   void (GLAPIENTRYP Color3f)(GLfloat red, GLfloat green, GLfloat blue); /* 13 */
+   void (GLAPIENTRYP Color3fv)(const GLfloat * v); /* 14 */
+   void (GLAPIENTRYP Color3i)(GLint red, GLint green, GLint blue); /* 15 */
+   void (GLAPIENTRYP Color3iv)(const GLint * v); /* 16 */
+   void (GLAPIENTRYP Color3s)(GLshort red, GLshort green, GLshort blue); /* 17 */
+   void (GLAPIENTRYP Color3sv)(const GLshort * v); /* 18 */
+   void (GLAPIENTRYP Color3ub)(GLubyte red, GLubyte green, GLubyte blue); /* 19 */
+   void (GLAPIENTRYP Color3ubv)(const GLubyte * v); /* 20 */
+   void (GLAPIENTRYP Color3ui)(GLuint red, GLuint green, GLuint blue); /* 21 */
+   void (GLAPIENTRYP Color3uiv)(const GLuint * v); /* 22 */
+   void (GLAPIENTRYP Color3us)(GLushort red, GLushort green, GLushort blue); /* 23 */
+   void (GLAPIENTRYP Color3usv)(const GLushort * v); /* 24 */
+   void (GLAPIENTRYP Color4b)(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha); /* 25 */
+   void (GLAPIENTRYP Color4bv)(const GLbyte * v); /* 26 */
+   void (GLAPIENTRYP Color4d)(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha); /* 27 */
+   void (GLAPIENTRYP Color4dv)(const GLdouble * v); /* 28 */
+   void (GLAPIENTRYP Color4f)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); /* 29 */
+   void (GLAPIENTRYP Color4fv)(const GLfloat * v); /* 30 */
+   void (GLAPIENTRYP Color4i)(GLint red, GLint green, GLint blue, GLint alpha); /* 31 */
+   void (GLAPIENTRYP Color4iv)(const GLint * v); /* 32 */
+   void (GLAPIENTRYP Color4s)(GLshort red, GLshort green, GLshort blue, GLshort alpha); /* 33 */
+   void (GLAPIENTRYP Color4sv)(const GLshort * v); /* 34 */
+   void (GLAPIENTRYP Color4ub)(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha); /* 35 */
+   void (GLAPIENTRYP Color4ubv)(const GLubyte * v); /* 36 */
+   void (GLAPIENTRYP Color4ui)(GLuint red, GLuint green, GLuint blue, GLuint alpha); /* 37 */
+   void (GLAPIENTRYP Color4uiv)(const GLuint * v); /* 38 */
+   void (GLAPIENTRYP Color4us)(GLushort red, GLushort green, GLushort blue, GLushort alpha); /* 39 */
+   void (GLAPIENTRYP Color4usv)(const GLushort * v); /* 40 */
+   void (GLAPIENTRYP EdgeFlag)(GLboolean flag); /* 41 */
+   void (GLAPIENTRYP EdgeFlagv)(const GLboolean * flag); /* 42 */
+   void (GLAPIENTRYP End)(void); /* 43 */
+   void (GLAPIENTRYP Indexd)(GLdouble c); /* 44 */
+   void (GLAPIENTRYP Indexdv)(const GLdouble * c); /* 45 */
+   void (GLAPIENTRYP Indexf)(GLfloat c); /* 46 */
+   void (GLAPIENTRYP Indexfv)(const GLfloat * c); /* 47 */
+   void (GLAPIENTRYP Indexi)(GLint c); /* 48 */
+   void (GLAPIENTRYP Indexiv)(const GLint * c); /* 49 */
+   void (GLAPIENTRYP Indexs)(GLshort c); /* 50 */
+   void (GLAPIENTRYP Indexsv)(const GLshort * c); /* 51 */
+   void (GLAPIENTRYP Normal3b)(GLbyte nx, GLbyte ny, GLbyte nz); /* 52 */
+   void (GLAPIENTRYP Normal3bv)(const GLbyte * v); /* 53 */
+   void (GLAPIENTRYP Normal3d)(GLdouble nx, GLdouble ny, GLdouble nz); /* 54 */
+   void (GLAPIENTRYP Normal3dv)(const GLdouble * v); /* 55 */
+   void (GLAPIENTRYP Normal3f)(GLfloat nx, GLfloat ny, GLfloat nz); /* 56 */
+   void (GLAPIENTRYP Normal3fv)(const GLfloat * v); /* 57 */
+   void (GLAPIENTRYP Normal3i)(GLint nx, GLint ny, GLint nz); /* 58 */
+   void (GLAPIENTRYP Normal3iv)(const GLint * v); /* 59 */
+   void (GLAPIENTRYP Normal3s)(GLshort nx, GLshort ny, GLshort nz); /* 60 */
+   void (GLAPIENTRYP Normal3sv)(const GLshort * v); /* 61 */
+   void (GLAPIENTRYP RasterPos2d)(GLdouble x, GLdouble y); /* 62 */
+   void (GLAPIENTRYP RasterPos2dv)(const GLdouble * v); /* 63 */
+   void (GLAPIENTRYP RasterPos2f)(GLfloat x, GLfloat y); /* 64 */
+   void (GLAPIENTRYP RasterPos2fv)(const GLfloat * v); /* 65 */
+   void (GLAPIENTRYP RasterPos2i)(GLint x, GLint y); /* 66 */
+   void (GLAPIENTRYP RasterPos2iv)(const GLint * v); /* 67 */
+   void (GLAPIENTRYP RasterPos2s)(GLshort x, GLshort y); /* 68 */
+   void (GLAPIENTRYP RasterPos2sv)(const GLshort * v); /* 69 */
+   void (GLAPIENTRYP RasterPos3d)(GLdouble x, GLdouble y, GLdouble z); /* 70 */
+   void (GLAPIENTRYP RasterPos3dv)(const GLdouble * v); /* 71 */
+   void (GLAPIENTRYP RasterPos3f)(GLfloat x, GLfloat y, GLfloat z); /* 72 */
+   void (GLAPIENTRYP RasterPos3fv)(const GLfloat * v); /* 73 */
+   void (GLAPIENTRYP RasterPos3i)(GLint x, GLint y, GLint z); /* 74 */
+   void (GLAPIENTRYP RasterPos3iv)(const GLint * v); /* 75 */
+   void (GLAPIENTRYP RasterPos3s)(GLshort x, GLshort y, GLshort z); /* 76 */
+   void (GLAPIENTRYP RasterPos3sv)(const GLshort * v); /* 77 */
+   void (GLAPIENTRYP RasterPos4d)(GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 78 */
+   void (GLAPIENTRYP RasterPos4dv)(const GLdouble * v); /* 79 */
+   void (GLAPIENTRYP RasterPos4f)(GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 80 */
+   void (GLAPIENTRYP RasterPos4fv)(const GLfloat * v); /* 81 */
+   void (GLAPIENTRYP RasterPos4i)(GLint x, GLint y, GLint z, GLint w); /* 82 */
+   void (GLAPIENTRYP RasterPos4iv)(const GLint * v); /* 83 */
+   void (GLAPIENTRYP RasterPos4s)(GLshort x, GLshort y, GLshort z, GLshort w); /* 84 */
+   void (GLAPIENTRYP RasterPos4sv)(const GLshort * v); /* 85 */
+   void (GLAPIENTRYP Rectd)(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2); /* 86 */
+   void (GLAPIENTRYP Rectdv)(const GLdouble * v1, const GLdouble * v2); /* 87 */
+   void (GLAPIENTRYP Rectf)(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2); /* 88 */
+   void (GLAPIENTRYP Rectfv)(const GLfloat * v1, const GLfloat * v2); /* 89 */
+   void (GLAPIENTRYP Recti)(GLint x1, GLint y1, GLint x2, GLint y2); /* 90 */
+   void (GLAPIENTRYP Rectiv)(const GLint * v1, const GLint * v2); /* 91 */
+   void (GLAPIENTRYP Rects)(GLshort x1, GLshort y1, GLshort x2, GLshort y2); /* 92 */
+   void (GLAPIENTRYP Rectsv)(const GLshort * v1, const GLshort * v2); /* 93 */
+   void (GLAPIENTRYP TexCoord1d)(GLdouble s); /* 94 */
+   void (GLAPIENTRYP TexCoord1dv)(const GLdouble * v); /* 95 */
+   void (GLAPIENTRYP TexCoord1f)(GLfloat s); /* 96 */
+   void (GLAPIENTRYP TexCoord1fv)(const GLfloat * v); /* 97 */
+   void (GLAPIENTRYP TexCoord1i)(GLint s); /* 98 */
+   void (GLAPIENTRYP TexCoord1iv)(const GLint * v); /* 99 */
+   void (GLAPIENTRYP TexCoord1s)(GLshort s); /* 100 */
+   void (GLAPIENTRYP TexCoord1sv)(const GLshort * v); /* 101 */
+   void (GLAPIENTRYP TexCoord2d)(GLdouble s, GLdouble t); /* 102 */
+   void (GLAPIENTRYP TexCoord2dv)(const GLdouble * v); /* 103 */
+   void (GLAPIENTRYP TexCoord2f)(GLfloat s, GLfloat t); /* 104 */
+   void (GLAPIENTRYP TexCoord2fv)(const GLfloat * v); /* 105 */
+   void (GLAPIENTRYP TexCoord2i)(GLint s, GLint t); /* 106 */
+   void (GLAPIENTRYP TexCoord2iv)(const GLint * v); /* 107 */
+   void (GLAPIENTRYP TexCoord2s)(GLshort s, GLshort t); /* 108 */
+   void (GLAPIENTRYP TexCoord2sv)(const GLshort * v); /* 109 */
+   void (GLAPIENTRYP TexCoord3d)(GLdouble s, GLdouble t, GLdouble r); /* 110 */
+   void (GLAPIENTRYP TexCoord3dv)(const GLdouble * v); /* 111 */
+   void (GLAPIENTRYP TexCoord3f)(GLfloat s, GLfloat t, GLfloat r); /* 112 */
+   void (GLAPIENTRYP TexCoord3fv)(const GLfloat * v); /* 113 */
+   void (GLAPIENTRYP TexCoord3i)(GLint s, GLint t, GLint r); /* 114 */
+   void (GLAPIENTRYP TexCoord3iv)(const GLint * v); /* 115 */
+   void (GLAPIENTRYP TexCoord3s)(GLshort s, GLshort t, GLshort r); /* 116 */
+   void (GLAPIENTRYP TexCoord3sv)(const GLshort * v); /* 117 */
+   void (GLAPIENTRYP TexCoord4d)(GLdouble s, GLdouble t, GLdouble r, GLdouble q); /* 118 */
+   void (GLAPIENTRYP TexCoord4dv)(const GLdouble * v); /* 119 */
+   void (GLAPIENTRYP TexCoord4f)(GLfloat s, GLfloat t, GLfloat r, GLfloat q); /* 120 */
+   void (GLAPIENTRYP TexCoord4fv)(const GLfloat * v); /* 121 */
+   void (GLAPIENTRYP TexCoord4i)(GLint s, GLint t, GLint r, GLint q); /* 122 */
+   void (GLAPIENTRYP TexCoord4iv)(const GLint * v); /* 123 */
+   void (GLAPIENTRYP TexCoord4s)(GLshort s, GLshort t, GLshort r, GLshort q); /* 124 */
+   void (GLAPIENTRYP TexCoord4sv)(const GLshort * v); /* 125 */
+   void (GLAPIENTRYP Vertex2d)(GLdouble x, GLdouble y); /* 126 */
+   void (GLAPIENTRYP Vertex2dv)(const GLdouble * v); /* 127 */
+   void (GLAPIENTRYP Vertex2f)(GLfloat x, GLfloat y); /* 128 */
+   void (GLAPIENTRYP Vertex2fv)(const GLfloat * v); /* 129 */
+   void (GLAPIENTRYP Vertex2i)(GLint x, GLint y); /* 130 */
+   void (GLAPIENTRYP Vertex2iv)(const GLint * v); /* 131 */
+   void (GLAPIENTRYP Vertex2s)(GLshort x, GLshort y); /* 132 */
+   void (GLAPIENTRYP Vertex2sv)(const GLshort * v); /* 133 */
+   void (GLAPIENTRYP Vertex3d)(GLdouble x, GLdouble y, GLdouble z); /* 134 */
+   void (GLAPIENTRYP Vertex3dv)(const GLdouble * v); /* 135 */
+   void (GLAPIENTRYP Vertex3f)(GLfloat x, GLfloat y, GLfloat z); /* 136 */
+   void (GLAPIENTRYP Vertex3fv)(const GLfloat * v); /* 137 */
+   void (GLAPIENTRYP Vertex3i)(GLint x, GLint y, GLint z); /* 138 */
+   void (GLAPIENTRYP Vertex3iv)(const GLint * v); /* 139 */
+   void (GLAPIENTRYP Vertex3s)(GLshort x, GLshort y, GLshort z); /* 140 */
+   void (GLAPIENTRYP Vertex3sv)(const GLshort * v); /* 141 */
+   void (GLAPIENTRYP Vertex4d)(GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 142 */
+   void (GLAPIENTRYP Vertex4dv)(const GLdouble * v); /* 143 */
+   void (GLAPIENTRYP Vertex4f)(GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 144 */
+   void (GLAPIENTRYP Vertex4fv)(const GLfloat * v); /* 145 */
+   void (GLAPIENTRYP Vertex4i)(GLint x, GLint y, GLint z, GLint w); /* 146 */
+   void (GLAPIENTRYP Vertex4iv)(const GLint * v); /* 147 */
+   void (GLAPIENTRYP Vertex4s)(GLshort x, GLshort y, GLshort z, GLshort w); /* 148 */
+   void (GLAPIENTRYP Vertex4sv)(const GLshort * v); /* 149 */
+   void (GLAPIENTRYP ClipPlane)(GLenum plane, const GLdouble * equation); /* 150 */
+   void (GLAPIENTRYP ColorMaterial)(GLenum face, GLenum mode); /* 151 */
+   void (GLAPIENTRYP CullFace)(GLenum mode); /* 152 */
+   void (GLAPIENTRYP Fogf)(GLenum pname, GLfloat param); /* 153 */
+   void (GLAPIENTRYP Fogfv)(GLenum pname, const GLfloat * params); /* 154 */
+   void (GLAPIENTRYP Fogi)(GLenum pname, GLint param); /* 155 */
+   void (GLAPIENTRYP Fogiv)(GLenum pname, const GLint * params); /* 156 */
+   void (GLAPIENTRYP FrontFace)(GLenum mode); /* 157 */
+   void (GLAPIENTRYP Hint)(GLenum target, GLenum mode); /* 158 */
+   void (GLAPIENTRYP Lightf)(GLenum light, GLenum pname, GLfloat param); /* 159 */
+   void (GLAPIENTRYP Lightfv)(GLenum light, GLenum pname, const GLfloat * params); /* 160 */
+   void (GLAPIENTRYP Lighti)(GLenum light, GLenum pname, GLint param); /* 161 */
+   void (GLAPIENTRYP Lightiv)(GLenum light, GLenum pname, const GLint * params); /* 162 */
+   void (GLAPIENTRYP LightModelf)(GLenum pname, GLfloat param); /* 163 */
+   void (GLAPIENTRYP LightModelfv)(GLenum pname, const GLfloat * params); /* 164 */
+   void (GLAPIENTRYP LightModeli)(GLenum pname, GLint param); /* 165 */
+   void (GLAPIENTRYP LightModeliv)(GLenum pname, const GLint * params); /* 166 */
+   void (GLAPIENTRYP LineStipple)(GLint factor, GLushort pattern); /* 167 */
+   void (GLAPIENTRYP LineWidth)(GLfloat width); /* 168 */
+   void (GLAPIENTRYP Materialf)(GLenum face, GLenum pname, GLfloat param); /* 169 */
+   void (GLAPIENTRYP Materialfv)(GLenum face, GLenum pname, const GLfloat * params); /* 170 */
+   void (GLAPIENTRYP Materiali)(GLenum face, GLenum pname, GLint param); /* 171 */
+   void (GLAPIENTRYP Materialiv)(GLenum face, GLenum pname, const GLint * params); /* 172 */
+   void (GLAPIENTRYP PointSize)(GLfloat size); /* 173 */
+   void (GLAPIENTRYP PolygonMode)(GLenum face, GLenum mode); /* 174 */
+   void (GLAPIENTRYP PolygonStipple)(const GLubyte * mask); /* 175 */
+   void (GLAPIENTRYP Scissor)(GLint x, GLint y, GLsizei width, GLsizei height); /* 176 */
+   void (GLAPIENTRYP ShadeModel)(GLenum mode); /* 177 */
+   void (GLAPIENTRYP TexParameterf)(GLenum target, GLenum pname, GLfloat param); /* 178 */
+   void (GLAPIENTRYP TexParameterfv)(GLenum target, GLenum pname, const GLfloat * params); /* 179 */
+   void (GLAPIENTRYP TexParameteri)(GLenum target, GLenum pname, GLint param); /* 180 */
+   void (GLAPIENTRYP TexParameteriv)(GLenum target, GLenum pname, const GLint * params); /* 181 */
+   void (GLAPIENTRYP TexImage1D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid * pixels); /* 182 */
+   void (GLAPIENTRYP TexImage2D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid * pixels); /* 183 */
+   void (GLAPIENTRYP TexEnvf)(GLenum target, GLenum pname, GLfloat param); /* 184 */
+   void (GLAPIENTRYP TexEnvfv)(GLenum target, GLenum pname, const GLfloat * params); /* 185 */
+   void (GLAPIENTRYP TexEnvi)(GLenum target, GLenum pname, GLint param); /* 186 */
+   void (GLAPIENTRYP TexEnviv)(GLenum target, GLenum pname, const GLint * params); /* 187 */
+   void (GLAPIENTRYP TexGend)(GLenum coord, GLenum pname, GLdouble param); /* 188 */
+   void (GLAPIENTRYP TexGendv)(GLenum coord, GLenum pname, const GLdouble * params); /* 189 */
+   void (GLAPIENTRYP TexGenf)(GLenum coord, GLenum pname, GLfloat param); /* 190 */
+   void (GLAPIENTRYP TexGenfv)(GLenum coord, GLenum pname, const GLfloat * params); /* 191 */
+   void (GLAPIENTRYP TexGeni)(GLenum coord, GLenum pname, GLint param); /* 192 */
+   void (GLAPIENTRYP TexGeniv)(GLenum coord, GLenum pname, const GLint * params); /* 193 */
+   void (GLAPIENTRYP FeedbackBuffer)(GLsizei size, GLenum type, GLfloat * buffer); /* 194 */
+   void (GLAPIENTRYP SelectBuffer)(GLsizei size, GLuint * buffer); /* 195 */
+   GLint (GLAPIENTRYP RenderMode)(GLenum mode); /* 196 */
+   void (GLAPIENTRYP InitNames)(void); /* 197 */
+   void (GLAPIENTRYP LoadName)(GLuint name); /* 198 */
+   void (GLAPIENTRYP PassThrough)(GLfloat token); /* 199 */
+   void (GLAPIENTRYP PopName)(void); /* 200 */
+   void (GLAPIENTRYP PushName)(GLuint name); /* 201 */
+   void (GLAPIENTRYP DrawBuffer)(GLenum mode); /* 202 */
+   void (GLAPIENTRYP Clear)(GLbitfield mask); /* 203 */
+   void (GLAPIENTRYP ClearAccum)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); /* 204 */
+   void (GLAPIENTRYP ClearIndex)(GLfloat c); /* 205 */
+   void (GLAPIENTRYP ClearColor)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); /* 206 */
+   void (GLAPIENTRYP ClearStencil)(GLint s); /* 207 */
+   void (GLAPIENTRYP ClearDepth)(GLclampd depth); /* 208 */
+   void (GLAPIENTRYP StencilMask)(GLuint mask); /* 209 */
+   void (GLAPIENTRYP ColorMask)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha); /* 210 */
+   void (GLAPIENTRYP DepthMask)(GLboolean flag); /* 211 */
+   void (GLAPIENTRYP IndexMask)(GLuint mask); /* 212 */
+   void (GLAPIENTRYP Accum)(GLenum op, GLfloat value); /* 213 */
+   void (GLAPIENTRYP Disable)(GLenum cap); /* 214 */
+   void (GLAPIENTRYP Enable)(GLenum cap); /* 215 */
+   void (GLAPIENTRYP Finish)(void); /* 216 */
+   void (GLAPIENTRYP Flush)(void); /* 217 */
+   void (GLAPIENTRYP PopAttrib)(void); /* 218 */
+   void (GLAPIENTRYP PushAttrib)(GLbitfield mask); /* 219 */
+   void (GLAPIENTRYP Map1d)(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble * points); /* 220 */
+   void (GLAPIENTRYP Map1f)(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat * points); /* 221 */
+   void (GLAPIENTRYP Map2d)(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble * points); /* 222 */
+   void (GLAPIENTRYP Map2f)(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat * points); /* 223 */
+   void (GLAPIENTRYP MapGrid1d)(GLint un, GLdouble u1, GLdouble u2); /* 224 */
+   void (GLAPIENTRYP MapGrid1f)(GLint un, GLfloat u1, GLfloat u2); /* 225 */
+   void (GLAPIENTRYP MapGrid2d)(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2); /* 226 */
+   void (GLAPIENTRYP MapGrid2f)(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2); /* 227 */
+   void (GLAPIENTRYP EvalCoord1d)(GLdouble u); /* 228 */
+   void (GLAPIENTRYP EvalCoord1dv)(const GLdouble * u); /* 229 */
+   void (GLAPIENTRYP EvalCoord1f)(GLfloat u); /* 230 */
+   void (GLAPIENTRYP EvalCoord1fv)(const GLfloat * u); /* 231 */
+   void (GLAPIENTRYP EvalCoord2d)(GLdouble u, GLdouble v); /* 232 */
+   void (GLAPIENTRYP EvalCoord2dv)(const GLdouble * u); /* 233 */
+   void (GLAPIENTRYP EvalCoord2f)(GLfloat u, GLfloat v); /* 234 */
+   void (GLAPIENTRYP EvalCoord2fv)(const GLfloat * u); /* 235 */
+   void (GLAPIENTRYP EvalMesh1)(GLenum mode, GLint i1, GLint i2); /* 236 */
+   void (GLAPIENTRYP EvalPoint1)(GLint i); /* 237 */
+   void (GLAPIENTRYP EvalMesh2)(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2); /* 238 */
+   void (GLAPIENTRYP EvalPoint2)(GLint i, GLint j); /* 239 */
+   void (GLAPIENTRYP AlphaFunc)(GLenum func, GLclampf ref); /* 240 */
+   void (GLAPIENTRYP BlendFunc)(GLenum sfactor, GLenum dfactor); /* 241 */
+   void (GLAPIENTRYP LogicOp)(GLenum opcode); /* 242 */
+   void (GLAPIENTRYP StencilFunc)(GLenum func, GLint ref, GLuint mask); /* 243 */
+   void (GLAPIENTRYP StencilOp)(GLenum fail, GLenum zfail, GLenum zpass); /* 244 */
+   void (GLAPIENTRYP DepthFunc)(GLenum func); /* 245 */
+   void (GLAPIENTRYP PixelZoom)(GLfloat xfactor, GLfloat yfactor); /* 246 */
+   void (GLAPIENTRYP PixelTransferf)(GLenum pname, GLfloat param); /* 247 */
+   void (GLAPIENTRYP PixelTransferi)(GLenum pname, GLint param); /* 248 */
+   void (GLAPIENTRYP PixelStoref)(GLenum pname, GLfloat param); /* 249 */
+   void (GLAPIENTRYP PixelStorei)(GLenum pname, GLint param); /* 250 */
+   void (GLAPIENTRYP PixelMapfv)(GLenum map, GLsizei mapsize, const GLfloat * values); /* 251 */
+   void (GLAPIENTRYP PixelMapuiv)(GLenum map, GLsizei mapsize, const GLuint * values); /* 252 */
+   void (GLAPIENTRYP PixelMapusv)(GLenum map, GLsizei mapsize, const GLushort * values); /* 253 */
+   void (GLAPIENTRYP ReadBuffer)(GLenum mode); /* 254 */
+   void (GLAPIENTRYP CopyPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type); /* 255 */
+   void (GLAPIENTRYP ReadPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid * pixels); /* 256 */
+   void (GLAPIENTRYP DrawPixels)(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels); /* 257 */
+   void (GLAPIENTRYP GetBooleanv)(GLenum pname, GLboolean * params); /* 258 */
+   void (GLAPIENTRYP GetClipPlane)(GLenum plane, GLdouble * equation); /* 259 */
+   void (GLAPIENTRYP GetDoublev)(GLenum pname, GLdouble * params); /* 260 */
+   GLenum (GLAPIENTRYP GetError)(void); /* 261 */
+   void (GLAPIENTRYP GetFloatv)(GLenum pname, GLfloat * params); /* 262 */
+   void (GLAPIENTRYP GetIntegerv)(GLenum pname, GLint * params); /* 263 */
+   void (GLAPIENTRYP GetLightfv)(GLenum light, GLenum pname, GLfloat * params); /* 264 */
+   void (GLAPIENTRYP GetLightiv)(GLenum light, GLenum pname, GLint * params); /* 265 */
+   void (GLAPIENTRYP GetMapdv)(GLenum target, GLenum query, GLdouble * v); /* 266 */
+   void (GLAPIENTRYP GetMapfv)(GLenum target, GLenum query, GLfloat * v); /* 267 */
+   void (GLAPIENTRYP GetMapiv)(GLenum target, GLenum query, GLint * v); /* 268 */
+   void (GLAPIENTRYP GetMaterialfv)(GLenum face, GLenum pname, GLfloat * params); /* 269 */
+   void (GLAPIENTRYP GetMaterialiv)(GLenum face, GLenum pname, GLint * params); /* 270 */
+   void (GLAPIENTRYP GetPixelMapfv)(GLenum map, GLfloat * values); /* 271 */
+   void (GLAPIENTRYP GetPixelMapuiv)(GLenum map, GLuint * values); /* 272 */
+   void (GLAPIENTRYP GetPixelMapusv)(GLenum map, GLushort * values); /* 273 */
+   void (GLAPIENTRYP GetPolygonStipple)(GLubyte * mask); /* 274 */
+   const GLubyte * (GLAPIENTRYP GetString)(GLenum name); /* 275 */
+   void (GLAPIENTRYP GetTexEnvfv)(GLenum target, GLenum pname, GLfloat * params); /* 276 */
+   void (GLAPIENTRYP GetTexEnviv)(GLenum target, GLenum pname, GLint * params); /* 277 */
+   void (GLAPIENTRYP GetTexGendv)(GLenum coord, GLenum pname, GLdouble * params); /* 278 */
+   void (GLAPIENTRYP GetTexGenfv)(GLenum coord, GLenum pname, GLfloat * params); /* 279 */
+   void (GLAPIENTRYP GetTexGeniv)(GLenum coord, GLenum pname, GLint * params); /* 280 */
+   void (GLAPIENTRYP GetTexImage)(GLenum target, GLint level, GLenum format, GLenum type, GLvoid * pixels); /* 281 */
+   void (GLAPIENTRYP GetTexParameterfv)(GLenum target, GLenum pname, GLfloat * params); /* 282 */
+   void (GLAPIENTRYP GetTexParameteriv)(GLenum target, GLenum pname, GLint * params); /* 283 */
+   void (GLAPIENTRYP GetTexLevelParameterfv)(GLenum target, GLint level, GLenum pname, GLfloat * params); /* 284 */
+   void (GLAPIENTRYP GetTexLevelParameteriv)(GLenum target, GLint level, GLenum pname, GLint * params); /* 285 */
+   GLboolean (GLAPIENTRYP IsEnabled)(GLenum cap); /* 286 */
+   GLboolean (GLAPIENTRYP IsList)(GLuint list); /* 287 */
+   void (GLAPIENTRYP DepthRange)(GLclampd zNear, GLclampd zFar); /* 288 */
+   void (GLAPIENTRYP Frustum)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar); /* 289 */
+   void (GLAPIENTRYP LoadIdentity)(void); /* 290 */
+   void (GLAPIENTRYP LoadMatrixf)(const GLfloat * m); /* 291 */
+   void (GLAPIENTRYP LoadMatrixd)(const GLdouble * m); /* 292 */
+   void (GLAPIENTRYP MatrixMode)(GLenum mode); /* 293 */
+   void (GLAPIENTRYP MultMatrixf)(const GLfloat * m); /* 294 */
+   void (GLAPIENTRYP MultMatrixd)(const GLdouble * m); /* 295 */
+   void (GLAPIENTRYP Ortho)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar); /* 296 */
+   void (GLAPIENTRYP PopMatrix)(void); /* 297 */
+   void (GLAPIENTRYP PushMatrix)(void); /* 298 */
+   void (GLAPIENTRYP Rotated)(GLdouble angle, GLdouble x, GLdouble y, GLdouble z); /* 299 */
+   void (GLAPIENTRYP Rotatef)(GLfloat angle, GLfloat x, GLfloat y, GLfloat z); /* 300 */
+   void (GLAPIENTRYP Scaled)(GLdouble x, GLdouble y, GLdouble z); /* 301 */
+   void (GLAPIENTRYP Scalef)(GLfloat x, GLfloat y, GLfloat z); /* 302 */
+   void (GLAPIENTRYP Translated)(GLdouble x, GLdouble y, GLdouble z); /* 303 */
+   void (GLAPIENTRYP Translatef)(GLfloat x, GLfloat y, GLfloat z); /* 304 */
+   void (GLAPIENTRYP Viewport)(GLint x, GLint y, GLsizei width, GLsizei height); /* 305 */
+   void (GLAPIENTRYP ArrayElement)(GLint i); /* 306 */
+   void (GLAPIENTRYP BindTexture)(GLenum target, GLuint texture); /* 307 */
+   void (GLAPIENTRYP ColorPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 308 */
+   void (GLAPIENTRYP DisableClientState)(GLenum array); /* 309 */
+   void (GLAPIENTRYP DrawArrays)(GLenum mode, GLint first, GLsizei count); /* 310 */
+   void (GLAPIENTRYP DrawElements)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices); /* 311 */
+   void (GLAPIENTRYP EdgeFlagPointer)(GLsizei stride, const GLvoid * pointer); /* 312 */
+   void (GLAPIENTRYP EnableClientState)(GLenum array); /* 313 */
+   void (GLAPIENTRYP IndexPointer)(GLenum type, GLsizei stride, const GLvoid * pointer); /* 314 */
+   void (GLAPIENTRYP Indexub)(GLubyte c); /* 315 */
+   void (GLAPIENTRYP Indexubv)(const GLubyte * c); /* 316 */
+   void (GLAPIENTRYP InterleavedArrays)(GLenum format, GLsizei stride, const GLvoid * pointer); /* 317 */
+   void (GLAPIENTRYP NormalPointer)(GLenum type, GLsizei stride, const GLvoid * pointer); /* 318 */
+   void (GLAPIENTRYP PolygonOffset)(GLfloat factor, GLfloat units); /* 319 */
+   void (GLAPIENTRYP TexCoordPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 320 */
+   void (GLAPIENTRYP VertexPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 321 */
+   GLboolean (GLAPIENTRYP AreTexturesResident)(GLsizei n, const GLuint * textures, GLboolean * residences); /* 322 */
+   void (GLAPIENTRYP CopyTexImage1D)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border); /* 323 */
+   void (GLAPIENTRYP CopyTexImage2D)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); /* 324 */
+   void (GLAPIENTRYP CopyTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width); /* 325 */
+   void (GLAPIENTRYP CopyTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); /* 326 */
+   void (GLAPIENTRYP DeleteTextures)(GLsizei n, const GLuint * textures); /* 327 */
+   void (GLAPIENTRYP GenTextures)(GLsizei n, GLuint * textures); /* 328 */
+   void (GLAPIENTRYP GetPointerv)(GLenum pname, GLvoid ** params); /* 329 */
+   GLboolean (GLAPIENTRYP IsTexture)(GLuint texture); /* 330 */
+   void (GLAPIENTRYP PrioritizeTextures)(GLsizei n, const GLuint * textures, const GLclampf * priorities); /* 331 */
+   void (GLAPIENTRYP TexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid * pixels); /* 332 */
+   void (GLAPIENTRYP TexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels); /* 333 */
+   void (GLAPIENTRYP PopClientAttrib)(void); /* 334 */
+   void (GLAPIENTRYP PushClientAttrib)(GLbitfield mask); /* 335 */
+   void (GLAPIENTRYP BlendColor)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); /* 336 */
+   void (GLAPIENTRYP BlendEquation)(GLenum mode); /* 337 */
+   void (GLAPIENTRYP DrawRangeElements)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid * indices); /* 338 */
+   void (GLAPIENTRYP ColorTable)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid * table); /* 339 */
+   void (GLAPIENTRYP ColorTableParameterfv)(GLenum target, GLenum pname, const GLfloat * params); /* 340 */
+   void (GLAPIENTRYP ColorTableParameteriv)(GLenum target, GLenum pname, const GLint * params); /* 341 */
+   void (GLAPIENTRYP CopyColorTable)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width); /* 342 */
+   void (GLAPIENTRYP GetColorTable)(GLenum target, GLenum format, GLenum type, GLvoid * table); /* 343 */
+   void (GLAPIENTRYP GetColorTableParameterfv)(GLenum target, GLenum pname, GLfloat * params); /* 344 */
+   void (GLAPIENTRYP GetColorTableParameteriv)(GLenum target, GLenum pname, GLint * params); /* 345 */
+   void (GLAPIENTRYP ColorSubTable)(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid * data); /* 346 */
+   void (GLAPIENTRYP CopyColorSubTable)(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width); /* 347 */
+   void (GLAPIENTRYP ConvolutionFilter1D)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid * image); /* 348 */
+   void (GLAPIENTRYP ConvolutionFilter2D)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * image); /* 349 */
+   void (GLAPIENTRYP ConvolutionParameterf)(GLenum target, GLenum pname, GLfloat params); /* 350 */
+   void (GLAPIENTRYP ConvolutionParameterfv)(GLenum target, GLenum pname, const GLfloat * params); /* 351 */
+   void (GLAPIENTRYP ConvolutionParameteri)(GLenum target, GLenum pname, GLint params); /* 352 */
+   void (GLAPIENTRYP ConvolutionParameteriv)(GLenum target, GLenum pname, const GLint * params); /* 353 */
+   void (GLAPIENTRYP CopyConvolutionFilter1D)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width); /* 354 */
+   void (GLAPIENTRYP CopyConvolutionFilter2D)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height); /* 355 */
+   void (GLAPIENTRYP GetConvolutionFilter)(GLenum target, GLenum format, GLenum type, GLvoid * image); /* 356 */
+   void (GLAPIENTRYP GetConvolutionParameterfv)(GLenum target, GLenum pname, GLfloat * params); /* 357 */
+   void (GLAPIENTRYP GetConvolutionParameteriv)(GLenum target, GLenum pname, GLint * params); /* 358 */
+   void (GLAPIENTRYP GetSeparableFilter)(GLenum target, GLenum format, GLenum type, GLvoid * row, GLvoid * column, GLvoid * span); /* 359 */
+   void (GLAPIENTRYP SeparableFilter2D)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * row, const GLvoid * column); /* 360 */
+   void (GLAPIENTRYP GetHistogram)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values); /* 361 */
+   void (GLAPIENTRYP GetHistogramParameterfv)(GLenum target, GLenum pname, GLfloat * params); /* 362 */
+   void (GLAPIENTRYP GetHistogramParameteriv)(GLenum target, GLenum pname, GLint * params); /* 363 */
+   void (GLAPIENTRYP GetMinmax)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values); /* 364 */
+   void (GLAPIENTRYP GetMinmaxParameterfv)(GLenum target, GLenum pname, GLfloat * params); /* 365 */
+   void (GLAPIENTRYP GetMinmaxParameteriv)(GLenum target, GLenum pname, GLint * params); /* 366 */
+   void (GLAPIENTRYP Histogram)(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink); /* 367 */
+   void (GLAPIENTRYP Minmax)(GLenum target, GLenum internalformat, GLboolean sink); /* 368 */
+   void (GLAPIENTRYP ResetHistogram)(GLenum target); /* 369 */
+   void (GLAPIENTRYP ResetMinmax)(GLenum target); /* 370 */
+   void (GLAPIENTRYP TexImage3D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid * pixels); /* 371 */
+   void (GLAPIENTRYP TexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid * pixels); /* 372 */
+   void (GLAPIENTRYP CopyTexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); /* 373 */
+   void (GLAPIENTRYP ActiveTextureARB)(GLenum texture); /* 374 */
+   void (GLAPIENTRYP ClientActiveTextureARB)(GLenum texture); /* 375 */
+   void (GLAPIENTRYP MultiTexCoord1dARB)(GLenum target, GLdouble s); /* 376 */
+   void (GLAPIENTRYP MultiTexCoord1dvARB)(GLenum target, const GLdouble * v); /* 377 */
+   void (GLAPIENTRYP MultiTexCoord1fARB)(GLenum target, GLfloat s); /* 378 */
+   void (GLAPIENTRYP MultiTexCoord1fvARB)(GLenum target, const GLfloat * v); /* 379 */
+   void (GLAPIENTRYP MultiTexCoord1iARB)(GLenum target, GLint s); /* 380 */
+   void (GLAPIENTRYP MultiTexCoord1ivARB)(GLenum target, const GLint * v); /* 381 */
+   void (GLAPIENTRYP MultiTexCoord1sARB)(GLenum target, GLshort s); /* 382 */
+   void (GLAPIENTRYP MultiTexCoord1svARB)(GLenum target, const GLshort * v); /* 383 */
+   void (GLAPIENTRYP MultiTexCoord2dARB)(GLenum target, GLdouble s, GLdouble t); /* 384 */
+   void (GLAPIENTRYP MultiTexCoord2dvARB)(GLenum target, const GLdouble * v); /* 385 */
+   void (GLAPIENTRYP MultiTexCoord2fARB)(GLenum target, GLfloat s, GLfloat t); /* 386 */
+   void (GLAPIENTRYP MultiTexCoord2fvARB)(GLenum target, const GLfloat * v); /* 387 */
+   void (GLAPIENTRYP MultiTexCoord2iARB)(GLenum target, GLint s, GLint t); /* 388 */
+   void (GLAPIENTRYP MultiTexCoord2ivARB)(GLenum target, const GLint * v); /* 389 */
+   void (GLAPIENTRYP MultiTexCoord2sARB)(GLenum target, GLshort s, GLshort t); /* 390 */
+   void (GLAPIENTRYP MultiTexCoord2svARB)(GLenum target, const GLshort * v); /* 391 */
+   void (GLAPIENTRYP MultiTexCoord3dARB)(GLenum target, GLdouble s, GLdouble t, GLdouble r); /* 392 */
+   void (GLAPIENTRYP MultiTexCoord3dvARB)(GLenum target, const GLdouble * v); /* 393 */
+   void (GLAPIENTRYP MultiTexCoord3fARB)(GLenum target, GLfloat s, GLfloat t, GLfloat r); /* 394 */
+   void (GLAPIENTRYP MultiTexCoord3fvARB)(GLenum target, const GLfloat * v); /* 395 */
+   void (GLAPIENTRYP MultiTexCoord3iARB)(GLenum target, GLint s, GLint t, GLint r); /* 396 */
+   void (GLAPIENTRYP MultiTexCoord3ivARB)(GLenum target, const GLint * v); /* 397 */
+   void (GLAPIENTRYP MultiTexCoord3sARB)(GLenum target, GLshort s, GLshort t, GLshort r); /* 398 */
+   void (GLAPIENTRYP MultiTexCoord3svARB)(GLenum target, const GLshort * v); /* 399 */
+   void (GLAPIENTRYP MultiTexCoord4dARB)(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); /* 400 */
+   void (GLAPIENTRYP MultiTexCoord4dvARB)(GLenum target, const GLdouble * v); /* 401 */
+   void (GLAPIENTRYP MultiTexCoord4fARB)(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); /* 402 */
+   void (GLAPIENTRYP MultiTexCoord4fvARB)(GLenum target, const GLfloat * v); /* 403 */
+   void (GLAPIENTRYP MultiTexCoord4iARB)(GLenum target, GLint s, GLint t, GLint r, GLint q); /* 404 */
+   void (GLAPIENTRYP MultiTexCoord4ivARB)(GLenum target, const GLint * v); /* 405 */
+   void (GLAPIENTRYP MultiTexCoord4sARB)(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); /* 406 */
+   void (GLAPIENTRYP MultiTexCoord4svARB)(GLenum target, const GLshort * v); /* 407 */
+   void (GLAPIENTRYP AttachShader)(GLuint program, GLuint shader); /* 408 */
+   GLuint (GLAPIENTRYP CreateProgram)(void); /* 409 */
+   GLuint (GLAPIENTRYP CreateShader)(GLenum type); /* 410 */
+   void (GLAPIENTRYP DeleteProgram)(GLuint program); /* 411 */
+   void (GLAPIENTRYP DeleteShader)(GLuint program); /* 412 */
+   void (GLAPIENTRYP DetachShader)(GLuint program, GLuint shader); /* 413 */
+   void (GLAPIENTRYP GetAttachedShaders)(GLuint program, GLsizei maxCount, GLsizei * count, GLuint * obj); /* 414 */
+   void (GLAPIENTRYP GetProgramInfoLog)(GLuint program, GLsizei bufSize, GLsizei * length, GLchar * infoLog); /* 415 */
+   void (GLAPIENTRYP GetProgramiv)(GLuint program, GLenum pname, GLint * params); /* 416 */
+   void (GLAPIENTRYP GetShaderInfoLog)(GLuint shader, GLsizei bufSize, GLsizei * length, GLchar * infoLog); /* 417 */
+   void (GLAPIENTRYP GetShaderiv)(GLuint shader, GLenum pname, GLint * params); /* 418 */
+   GLboolean (GLAPIENTRYP IsProgram)(GLuint program); /* 419 */
+   GLboolean (GLAPIENTRYP IsShader)(GLuint shader); /* 420 */
+   void (GLAPIENTRYP StencilFuncSeparate)(GLenum face, GLenum func, GLint ref, GLuint mask); /* 421 */
+   void (GLAPIENTRYP StencilMaskSeparate)(GLenum face, GLuint mask); /* 422 */
+   void (GLAPIENTRYP StencilOpSeparate)(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass); /* 423 */
+   void (GLAPIENTRYP UniformMatrix2x3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 424 */
+   void (GLAPIENTRYP UniformMatrix2x4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 425 */
+   void (GLAPIENTRYP UniformMatrix3x2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 426 */
+   void (GLAPIENTRYP UniformMatrix3x4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 427 */
+   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 DrawArraysInstanced)(GLenum mode, GLint first, GLsizei count, GLsizei primcount); /* 430 */
+   void (GLAPIENTRYP DrawElementsInstanced)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices, GLsizei primcount); /* 431 */
+   void (GLAPIENTRYP LoadTransposeMatrixdARB)(const GLdouble * m); /* 432 */
+   void (GLAPIENTRYP LoadTransposeMatrixfARB)(const GLfloat * m); /* 433 */
+   void (GLAPIENTRYP MultTransposeMatrixdARB)(const GLdouble * m); /* 434 */
+   void (GLAPIENTRYP MultTransposeMatrixfARB)(const GLfloat * m); /* 435 */
+   void (GLAPIENTRYP SampleCoverageARB)(GLclampf value, GLboolean invert); /* 436 */
+   void (GLAPIENTRYP CompressedTexImage1DARB)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid * data); /* 437 */
+   void (GLAPIENTRYP CompressedTexImage2DARB)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid * data); /* 438 */
+   void (GLAPIENTRYP CompressedTexImage3DARB)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid * data); /* 439 */
+   void (GLAPIENTRYP CompressedTexSubImage1DARB)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid * data); /* 440 */
+   void (GLAPIENTRYP CompressedTexSubImage2DARB)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid * data); /* 441 */
+   void (GLAPIENTRYP CompressedTexSubImage3DARB)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid * data); /* 442 */
+   void (GLAPIENTRYP GetCompressedTexImageARB)(GLenum target, GLint level, GLvoid * img); /* 443 */
+   void (GLAPIENTRYP DisableVertexAttribArrayARB)(GLuint index); /* 444 */
+   void (GLAPIENTRYP EnableVertexAttribArrayARB)(GLuint index); /* 445 */
+   void (GLAPIENTRYP GetProgramEnvParameterdvARB)(GLenum target, GLuint index, GLdouble * params); /* 446 */
+   void (GLAPIENTRYP GetProgramEnvParameterfvARB)(GLenum target, GLuint index, GLfloat * params); /* 447 */
+   void (GLAPIENTRYP GetProgramLocalParameterdvARB)(GLenum target, GLuint index, GLdouble * params); /* 448 */
+   void (GLAPIENTRYP GetProgramLocalParameterfvARB)(GLenum target, GLuint index, GLfloat * params); /* 449 */
+   void (GLAPIENTRYP GetProgramStringARB)(GLenum target, GLenum pname, GLvoid * string); /* 450 */
+   void (GLAPIENTRYP GetProgramivARB)(GLenum target, GLenum pname, GLint * params); /* 451 */
+   void (GLAPIENTRYP GetVertexAttribdvARB)(GLuint index, GLenum pname, GLdouble * params); /* 452 */
+   void (GLAPIENTRYP GetVertexAttribfvARB)(GLuint index, GLenum pname, GLfloat * params); /* 453 */
+   void (GLAPIENTRYP GetVertexAttribivARB)(GLuint index, GLenum pname, GLint * params); /* 454 */
+   void (GLAPIENTRYP ProgramEnvParameter4dARB)(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 455 */
+   void (GLAPIENTRYP ProgramEnvParameter4dvARB)(GLenum target, GLuint index, const GLdouble * params); /* 456 */
+   void (GLAPIENTRYP ProgramEnvParameter4fARB)(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 457 */
+   void (GLAPIENTRYP ProgramEnvParameter4fvARB)(GLenum target, GLuint index, const GLfloat * params); /* 458 */
+   void (GLAPIENTRYP ProgramLocalParameter4dARB)(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 459 */
+   void (GLAPIENTRYP ProgramLocalParameter4dvARB)(GLenum target, GLuint index, const GLdouble * params); /* 460 */
+   void (GLAPIENTRYP ProgramLocalParameter4fARB)(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 461 */
+   void (GLAPIENTRYP ProgramLocalParameter4fvARB)(GLenum target, GLuint index, const GLfloat * params); /* 462 */
+   void (GLAPIENTRYP ProgramStringARB)(GLenum target, GLenum format, GLsizei len, const GLvoid * string); /* 463 */
+   void (GLAPIENTRYP VertexAttrib1dARB)(GLuint index, GLdouble x); /* 464 */
+   void (GLAPIENTRYP VertexAttrib1dvARB)(GLuint index, const GLdouble * v); /* 465 */
+   void (GLAPIENTRYP VertexAttrib1fARB)(GLuint index, GLfloat x); /* 466 */
+   void (GLAPIENTRYP VertexAttrib1fvARB)(GLuint index, const GLfloat * v); /* 467 */
+   void (GLAPIENTRYP VertexAttrib1sARB)(GLuint index, GLshort x); /* 468 */
+   void (GLAPIENTRYP VertexAttrib1svARB)(GLuint index, const GLshort * v); /* 469 */
+   void (GLAPIENTRYP VertexAttrib2dARB)(GLuint index, GLdouble x, GLdouble y); /* 470 */
+   void (GLAPIENTRYP VertexAttrib2dvARB)(GLuint index, const GLdouble * v); /* 471 */
+   void (GLAPIENTRYP VertexAttrib2fARB)(GLuint index, GLfloat x, GLfloat y); /* 472 */
+   void (GLAPIENTRYP VertexAttrib2fvARB)(GLuint index, const GLfloat * v); /* 473 */
+   void (GLAPIENTRYP VertexAttrib2sARB)(GLuint index, GLshort x, GLshort y); /* 474 */
+   void (GLAPIENTRYP VertexAttrib2svARB)(GLuint index, const GLshort * v); /* 475 */
+   void (GLAPIENTRYP VertexAttrib3dARB)(GLuint index, GLdouble x, GLdouble y, GLdouble z); /* 476 */
+   void (GLAPIENTRYP VertexAttrib3dvARB)(GLuint index, const GLdouble * v); /* 477 */
+   void (GLAPIENTRYP VertexAttrib3fARB)(GLuint index, GLfloat x, GLfloat y, GLfloat z); /* 478 */
+   void (GLAPIENTRYP VertexAttrib3fvARB)(GLuint index, const GLfloat * v); /* 479 */
+   void (GLAPIENTRYP VertexAttrib3sARB)(GLuint index, GLshort x, GLshort y, GLshort z); /* 480 */
+   void (GLAPIENTRYP VertexAttrib3svARB)(GLuint index, const GLshort * v); /* 481 */
+   void (GLAPIENTRYP VertexAttrib4NbvARB)(GLuint index, const GLbyte * v); /* 482 */
+   void (GLAPIENTRYP VertexAttrib4NivARB)(GLuint index, const GLint * v); /* 483 */
+   void (GLAPIENTRYP VertexAttrib4NsvARB)(GLuint index, const GLshort * v); /* 484 */
+   void (GLAPIENTRYP VertexAttrib4NubARB)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); /* 485 */
+   void (GLAPIENTRYP VertexAttrib4NubvARB)(GLuint index, const GLubyte * v); /* 486 */
+   void (GLAPIENTRYP VertexAttrib4NuivARB)(GLuint index, const GLuint * v); /* 487 */
+   void (GLAPIENTRYP VertexAttrib4NusvARB)(GLuint index, const GLushort * v); /* 488 */
+   void (GLAPIENTRYP VertexAttrib4bvARB)(GLuint index, const GLbyte * v); /* 489 */
+   void (GLAPIENTRYP VertexAttrib4dARB)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 490 */
+   void (GLAPIENTRYP VertexAttrib4dvARB)(GLuint index, const GLdouble * v); /* 491 */
+   void (GLAPIENTRYP VertexAttrib4fARB)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 492 */
+   void (GLAPIENTRYP VertexAttrib4fvARB)(GLuint index, const GLfloat * v); /* 493 */
+   void (GLAPIENTRYP VertexAttrib4ivARB)(GLuint index, const GLint * v); /* 494 */
+   void (GLAPIENTRYP VertexAttrib4sARB)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); /* 495 */
+   void (GLAPIENTRYP VertexAttrib4svARB)(GLuint index, const GLshort * v); /* 496 */
+   void (GLAPIENTRYP VertexAttrib4ubvARB)(GLuint index, const GLubyte * v); /* 497 */
+   void (GLAPIENTRYP VertexAttrib4uivARB)(GLuint index, const GLuint * v); /* 498 */
+   void (GLAPIENTRYP VertexAttrib4usvARB)(GLuint index, const GLushort * v); /* 499 */
+   void (GLAPIENTRYP VertexAttribPointerARB)(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid * pointer); /* 500 */
+   void (GLAPIENTRYP BindBufferARB)(GLenum target, GLuint buffer); /* 501 */
+   void (GLAPIENTRYP BufferDataARB)(GLenum target, GLsizeiptrARB size, const GLvoid * data, GLenum usage); /* 502 */
+   void (GLAPIENTRYP BufferSubDataARB)(GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid * data); /* 503 */
+   void (GLAPIENTRYP DeleteBuffersARB)(GLsizei n, const GLuint * buffer); /* 504 */
+   void (GLAPIENTRYP GenBuffersARB)(GLsizei n, GLuint * buffer); /* 505 */
+   void (GLAPIENTRYP GetBufferParameterivARB)(GLenum target, GLenum pname, GLint * params); /* 506 */
+   void (GLAPIENTRYP GetBufferPointervARB)(GLenum target, GLenum pname, GLvoid ** params); /* 507 */
+   void (GLAPIENTRYP GetBufferSubDataARB)(GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid * data); /* 508 */
+   GLboolean (GLAPIENTRYP IsBufferARB)(GLuint buffer); /* 509 */
+   GLvoid * (GLAPIENTRYP MapBufferARB)(GLenum target, GLenum access); /* 510 */
+   GLboolean (GLAPIENTRYP UnmapBufferARB)(GLenum target); /* 511 */
+   void (GLAPIENTRYP BeginQueryARB)(GLenum target, GLuint id); /* 512 */
+   void (GLAPIENTRYP DeleteQueriesARB)(GLsizei n, const GLuint * ids); /* 513 */
+   void (GLAPIENTRYP EndQueryARB)(GLenum target); /* 514 */
+   void (GLAPIENTRYP GenQueriesARB)(GLsizei n, GLuint * ids); /* 515 */
+   void (GLAPIENTRYP GetQueryObjectivARB)(GLuint id, GLenum pname, GLint * params); /* 516 */
+   void (GLAPIENTRYP GetQueryObjectuivARB)(GLuint id, GLenum pname, GLuint * params); /* 517 */
+   void (GLAPIENTRYP GetQueryivARB)(GLenum target, GLenum pname, GLint * params); /* 518 */
+   GLboolean (GLAPIENTRYP IsQueryARB)(GLuint id); /* 519 */
+   void (GLAPIENTRYP AttachObjectARB)(GLhandleARB containerObj, GLhandleARB obj); /* 520 */
+   void (GLAPIENTRYP CompileShaderARB)(GLhandleARB shader); /* 521 */
+   GLhandleARB (GLAPIENTRYP CreateProgramObjectARB)(void); /* 522 */
+   GLhandleARB (GLAPIENTRYP CreateShaderObjectARB)(GLenum shaderType); /* 523 */
+   void (GLAPIENTRYP DeleteObjectARB)(GLhandleARB obj); /* 524 */
+   void (GLAPIENTRYP DetachObjectARB)(GLhandleARB containerObj, GLhandleARB attachedObj); /* 525 */
+   void (GLAPIENTRYP GetActiveUniformARB)(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, GLcharARB * name); /* 526 */
+   void (GLAPIENTRYP GetAttachedObjectsARB)(GLhandleARB containerObj, GLsizei maxLength, GLsizei * length, GLhandleARB * infoLog); /* 527 */
+   GLhandleARB (GLAPIENTRYP GetHandleARB)(GLenum pname); /* 528 */
+   void (GLAPIENTRYP GetInfoLogARB)(GLhandleARB obj, GLsizei maxLength, GLsizei * length, GLcharARB * infoLog); /* 529 */
+   void (GLAPIENTRYP GetObjectParameterfvARB)(GLhandleARB obj, GLenum pname, GLfloat * params); /* 530 */
+   void (GLAPIENTRYP GetObjectParameterivARB)(GLhandleARB obj, GLenum pname, GLint * params); /* 531 */
+   void (GLAPIENTRYP GetShaderSourceARB)(GLhandleARB shader, GLsizei bufSize, GLsizei * length, GLcharARB * source); /* 532 */
+   GLint (GLAPIENTRYP GetUniformLocationARB)(GLhandleARB program, const GLcharARB * name); /* 533 */
+   void (GLAPIENTRYP GetUniformfvARB)(GLhandleARB program, GLint location, GLfloat * params); /* 534 */
+   void (GLAPIENTRYP GetUniformivARB)(GLhandleARB program, GLint location, GLint * params); /* 535 */
+   void (GLAPIENTRYP LinkProgramARB)(GLhandleARB program); /* 536 */
+   void (GLAPIENTRYP ShaderSourceARB)(GLhandleARB shader, GLsizei count, const GLcharARB ** string, const GLint * length); /* 537 */
+   void (GLAPIENTRYP Uniform1fARB)(GLint location, GLfloat v0); /* 538 */
+   void (GLAPIENTRYP Uniform1fvARB)(GLint location, GLsizei count, const GLfloat * value); /* 539 */
+   void (GLAPIENTRYP Uniform1iARB)(GLint location, GLint v0); /* 540 */
+   void (GLAPIENTRYP Uniform1ivARB)(GLint location, GLsizei count, const GLint * value); /* 541 */
+   void (GLAPIENTRYP Uniform2fARB)(GLint location, GLfloat v0, GLfloat v1); /* 542 */
+   void (GLAPIENTRYP Uniform2fvARB)(GLint location, GLsizei count, const GLfloat * value); /* 543 */
+   void (GLAPIENTRYP Uniform2iARB)(GLint location, GLint v0, GLint v1); /* 544 */
+   void (GLAPIENTRYP Uniform2ivARB)(GLint location, GLsizei count, const GLint * value); /* 545 */
+   void (GLAPIENTRYP Uniform3fARB)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2); /* 546 */
+   void (GLAPIENTRYP Uniform3fvARB)(GLint location, GLsizei count, const GLfloat * value); /* 547 */
+   void (GLAPIENTRYP Uniform3iARB)(GLint location, GLint v0, GLint v1, GLint v2); /* 548 */
+   void (GLAPIENTRYP Uniform3ivARB)(GLint location, GLsizei count, const GLint * value); /* 549 */
+   void (GLAPIENTRYP Uniform4fARB)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3); /* 550 */
+   void (GLAPIENTRYP Uniform4fvARB)(GLint location, GLsizei count, const GLfloat * value); /* 551 */
+   void (GLAPIENTRYP Uniform4iARB)(GLint location, GLint v0, GLint v1, GLint v2, GLint v3); /* 552 */
+   void (GLAPIENTRYP Uniform4ivARB)(GLint location, GLsizei count, const GLint * value); /* 553 */
+   void (GLAPIENTRYP UniformMatrix2fvARB)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 554 */
+   void (GLAPIENTRYP UniformMatrix3fvARB)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 555 */
+   void (GLAPIENTRYP UniformMatrix4fvARB)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 556 */
+   void (GLAPIENTRYP UseProgramObjectARB)(GLhandleARB program); /* 557 */
+   void (GLAPIENTRYP ValidateProgramARB)(GLhandleARB program); /* 558 */
+   void (GLAPIENTRYP BindAttribLocationARB)(GLhandleARB program, GLuint index, const GLcharARB * name); /* 559 */
+   void (GLAPIENTRYP GetActiveAttribARB)(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, GLcharARB * name); /* 560 */
+   GLint (GLAPIENTRYP GetAttribLocationARB)(GLhandleARB program, const GLcharARB * name); /* 561 */
+   void (GLAPIENTRYP DrawBuffersARB)(GLsizei n, const GLenum * bufs); /* 562 */
+   void (GLAPIENTRYP RenderbufferStorageMultisample)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); /* 563 */
+   void (GLAPIENTRYP FlushMappedBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length); /* 564 */
+   GLvoid * (GLAPIENTRYP MapBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); /* 565 */
+   void (GLAPIENTRYP BindVertexArray)(GLuint array); /* 566 */
+   void (GLAPIENTRYP GenVertexArrays)(GLsizei n, GLuint * arrays); /* 567 */
+   void (GLAPIENTRYP CopyBufferSubData)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); /* 568 */
+   GLenum (GLAPIENTRYP ClientWaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout); /* 569 */
+   void (GLAPIENTRYP DeleteSync)(GLsync sync); /* 570 */
+   GLsync (GLAPIENTRYP FenceSync)(GLenum condition, GLbitfield flags); /* 571 */
+   void (GLAPIENTRYP GetInteger64v)(GLenum pname, GLint64 * params); /* 572 */
+   void (GLAPIENTRYP GetSynciv)(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei * length, GLint * values); /* 573 */
+   GLboolean (GLAPIENTRYP IsSync)(GLsync sync); /* 574 */
+   void (GLAPIENTRYP WaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout); /* 575 */
+   void (GLAPIENTRYP DrawElementsBaseVertex)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices, GLint basevertex); /* 576 */
+   void (GLAPIENTRYP DrawRangeElementsBaseVertex)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid * indices, GLint basevertex); /* 577 */
+   void (GLAPIENTRYP MultiDrawElementsBaseVertex)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount, const GLint * basevertex); /* 578 */
+   void (GLAPIENTRYP PolygonOffsetEXT)(GLfloat factor, GLfloat bias); /* 579 */
+   void (GLAPIENTRYP GetPixelTexGenParameterfvSGIS)(GLenum pname, GLfloat * params); /* 580 */
+   void (GLAPIENTRYP GetPixelTexGenParameterivSGIS)(GLenum pname, GLint * params); /* 581 */
+   void (GLAPIENTRYP PixelTexGenParameterfSGIS)(GLenum pname, GLfloat param); /* 582 */
+   void (GLAPIENTRYP PixelTexGenParameterfvSGIS)(GLenum pname, const GLfloat * params); /* 583 */
+   void (GLAPIENTRYP PixelTexGenParameteriSGIS)(GLenum pname, GLint param); /* 584 */
+   void (GLAPIENTRYP PixelTexGenParameterivSGIS)(GLenum pname, const GLint * params); /* 585 */
+   void (GLAPIENTRYP SampleMaskSGIS)(GLclampf value, GLboolean invert); /* 586 */
+   void (GLAPIENTRYP SamplePatternSGIS)(GLenum pattern); /* 587 */
+   void (GLAPIENTRYP ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 588 */
+   void (GLAPIENTRYP EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean * pointer); /* 589 */
+   void (GLAPIENTRYP IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 590 */
+   void (GLAPIENTRYP NormalPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 591 */
+   void (GLAPIENTRYP TexCoordPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 592 */
+   void (GLAPIENTRYP VertexPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 593 */
+   void (GLAPIENTRYP PointParameterfEXT)(GLenum pname, GLfloat param); /* 594 */
+   void (GLAPIENTRYP PointParameterfvEXT)(GLenum pname, const GLfloat * params); /* 595 */
+   void (GLAPIENTRYP LockArraysEXT)(GLint first, GLsizei count); /* 596 */
+   void (GLAPIENTRYP UnlockArraysEXT)(void); /* 597 */
+   void (GLAPIENTRYP CullParameterdvEXT)(GLenum pname, GLdouble * params); /* 598 */
+   void (GLAPIENTRYP CullParameterfvEXT)(GLenum pname, GLfloat * params); /* 599 */
+   void (GLAPIENTRYP SecondaryColor3bEXT)(GLbyte red, GLbyte green, GLbyte blue); /* 600 */
+   void (GLAPIENTRYP SecondaryColor3bvEXT)(const GLbyte * v); /* 601 */
+   void (GLAPIENTRYP SecondaryColor3dEXT)(GLdouble red, GLdouble green, GLdouble blue); /* 602 */
+   void (GLAPIENTRYP SecondaryColor3dvEXT)(const GLdouble * v); /* 603 */
+   void (GLAPIENTRYP SecondaryColor3fEXT)(GLfloat red, GLfloat green, GLfloat blue); /* 604 */
+   void (GLAPIENTRYP SecondaryColor3fvEXT)(const GLfloat * v); /* 605 */
+   void (GLAPIENTRYP SecondaryColor3iEXT)(GLint red, GLint green, GLint blue); /* 606 */
+   void (GLAPIENTRYP SecondaryColor3ivEXT)(const GLint * v); /* 607 */
+   void (GLAPIENTRYP SecondaryColor3sEXT)(GLshort red, GLshort green, GLshort blue); /* 608 */
+   void (GLAPIENTRYP SecondaryColor3svEXT)(const GLshort * v); /* 609 */
+   void (GLAPIENTRYP SecondaryColor3ubEXT)(GLubyte red, GLubyte green, GLubyte blue); /* 610 */
+   void (GLAPIENTRYP SecondaryColor3ubvEXT)(const GLubyte * v); /* 611 */
+   void (GLAPIENTRYP SecondaryColor3uiEXT)(GLuint red, GLuint green, GLuint blue); /* 612 */
+   void (GLAPIENTRYP SecondaryColor3uivEXT)(const GLuint * v); /* 613 */
+   void (GLAPIENTRYP SecondaryColor3usEXT)(GLushort red, GLushort green, GLushort blue); /* 614 */
+   void (GLAPIENTRYP SecondaryColor3usvEXT)(const GLushort * v); /* 615 */
+   void (GLAPIENTRYP SecondaryColorPointerEXT)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 616 */
+   void (GLAPIENTRYP MultiDrawArraysEXT)(GLenum mode, GLint * first, GLsizei * count, GLsizei primcount); /* 617 */
+   void (GLAPIENTRYP MultiDrawElementsEXT)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount); /* 618 */
+   void (GLAPIENTRYP FogCoordPointerEXT)(GLenum type, GLsizei stride, const GLvoid * pointer); /* 619 */
+   void (GLAPIENTRYP FogCoorddEXT)(GLdouble coord); /* 620 */
+   void (GLAPIENTRYP FogCoorddvEXT)(const GLdouble * coord); /* 621 */
+   void (GLAPIENTRYP FogCoordfEXT)(GLfloat coord); /* 622 */
+   void (GLAPIENTRYP FogCoordfvEXT)(const GLfloat * coord); /* 623 */
+   void (GLAPIENTRYP PixelTexGenSGIX)(GLenum mode); /* 624 */
+   void (GLAPIENTRYP BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); /* 625 */
+   void (GLAPIENTRYP FlushVertexArrayRangeNV)(void); /* 626 */
+   void (GLAPIENTRYP VertexArrayRangeNV)(GLsizei length, const GLvoid * pointer); /* 627 */
+   void (GLAPIENTRYP CombinerInputNV)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 628 */
+   void (GLAPIENTRYP CombinerOutputNV)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum); /* 629 */
+   void (GLAPIENTRYP CombinerParameterfNV)(GLenum pname, GLfloat param); /* 630 */
+   void (GLAPIENTRYP CombinerParameterfvNV)(GLenum pname, const GLfloat * params); /* 631 */
+   void (GLAPIENTRYP CombinerParameteriNV)(GLenum pname, GLint param); /* 632 */
+   void (GLAPIENTRYP CombinerParameterivNV)(GLenum pname, const GLint * params); /* 633 */
+   void (GLAPIENTRYP FinalCombinerInputNV)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 634 */
+   void (GLAPIENTRYP GetCombinerInputParameterfvNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat * params); /* 635 */
+   void (GLAPIENTRYP GetCombinerInputParameterivNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint * params); /* 636 */
+   void (GLAPIENTRYP GetCombinerOutputParameterfvNV)(GLenum stage, GLenum portion, GLenum pname, GLfloat * params); /* 637 */
+   void (GLAPIENTRYP GetCombinerOutputParameterivNV)(GLenum stage, GLenum portion, GLenum pname, GLint * params); /* 638 */
+   void (GLAPIENTRYP GetFinalCombinerInputParameterfvNV)(GLenum variable, GLenum pname, GLfloat * params); /* 639 */
+   void (GLAPIENTRYP GetFinalCombinerInputParameterivNV)(GLenum variable, GLenum pname, GLint * params); /* 640 */
+   void (GLAPIENTRYP ResizeBuffersMESA)(void); /* 641 */
+   void (GLAPIENTRYP WindowPos2dMESA)(GLdouble x, GLdouble y); /* 642 */
+   void (GLAPIENTRYP WindowPos2dvMESA)(const GLdouble * v); /* 643 */
+   void (GLAPIENTRYP WindowPos2fMESA)(GLfloat x, GLfloat y); /* 644 */
+   void (GLAPIENTRYP WindowPos2fvMESA)(const GLfloat * v); /* 645 */
+   void (GLAPIENTRYP WindowPos2iMESA)(GLint x, GLint y); /* 646 */
+   void (GLAPIENTRYP WindowPos2ivMESA)(const GLint * v); /* 647 */
+   void (GLAPIENTRYP WindowPos2sMESA)(GLshort x, GLshort y); /* 648 */
+   void (GLAPIENTRYP WindowPos2svMESA)(const GLshort * v); /* 649 */
+   void (GLAPIENTRYP WindowPos3dMESA)(GLdouble x, GLdouble y, GLdouble z); /* 650 */
+   void (GLAPIENTRYP WindowPos3dvMESA)(const GLdouble * v); /* 651 */
+   void (GLAPIENTRYP WindowPos3fMESA)(GLfloat x, GLfloat y, GLfloat z); /* 652 */
+   void (GLAPIENTRYP WindowPos3fvMESA)(const GLfloat * v); /* 653 */
+   void (GLAPIENTRYP WindowPos3iMESA)(GLint x, GLint y, GLint z); /* 654 */
+   void (GLAPIENTRYP WindowPos3ivMESA)(const GLint * v); /* 655 */
+   void (GLAPIENTRYP WindowPos3sMESA)(GLshort x, GLshort y, GLshort z); /* 656 */
+   void (GLAPIENTRYP WindowPos3svMESA)(const GLshort * v); /* 657 */
+   void (GLAPIENTRYP WindowPos4dMESA)(GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 658 */
+   void (GLAPIENTRYP WindowPos4dvMESA)(const GLdouble * v); /* 659 */
+   void (GLAPIENTRYP WindowPos4fMESA)(GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 660 */
+   void (GLAPIENTRYP WindowPos4fvMESA)(const GLfloat * v); /* 661 */
+   void (GLAPIENTRYP WindowPos4iMESA)(GLint x, GLint y, GLint z, GLint w); /* 662 */
+   void (GLAPIENTRYP WindowPos4ivMESA)(const GLint * v); /* 663 */
+   void (GLAPIENTRYP WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w); /* 664 */
+   void (GLAPIENTRYP WindowPos4svMESA)(const GLshort * v); /* 665 */
+   void (GLAPIENTRYP MultiModeDrawArraysIBM)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); /* 666 */
+   void (GLAPIENTRYP MultiModeDrawElementsIBM)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); /* 667 */
+   void (GLAPIENTRYP DeleteFencesNV)(GLsizei n, const GLuint * fences); /* 668 */
+   void (GLAPIENTRYP FinishFenceNV)(GLuint fence); /* 669 */
+   void (GLAPIENTRYP GenFencesNV)(GLsizei n, GLuint * fences); /* 670 */
+   void (GLAPIENTRYP GetFenceivNV)(GLuint fence, GLenum pname, GLint * params); /* 671 */
+   GLboolean (GLAPIENTRYP IsFenceNV)(GLuint fence); /* 672 */
+   void (GLAPIENTRYP SetFenceNV)(GLuint fence, GLenum condition); /* 673 */
+   GLboolean (GLAPIENTRYP TestFenceNV)(GLuint fence); /* 674 */
+   GLboolean (GLAPIENTRYP AreProgramsResidentNV)(GLsizei n, const GLuint * ids, GLboolean * residences); /* 675 */
+   void (GLAPIENTRYP BindProgramNV)(GLenum target, GLuint program); /* 676 */
+   void (GLAPIENTRYP DeleteProgramsNV)(GLsizei n, const GLuint * programs); /* 677 */
+   void (GLAPIENTRYP ExecuteProgramNV)(GLenum target, GLuint id, const GLfloat * params); /* 678 */
+   void (GLAPIENTRYP GenProgramsNV)(GLsizei n, GLuint * programs); /* 679 */
+   void (GLAPIENTRYP GetProgramParameterdvNV)(GLenum target, GLuint index, GLenum pname, GLdouble * params); /* 680 */
+   void (GLAPIENTRYP GetProgramParameterfvNV)(GLenum target, GLuint index, GLenum pname, GLfloat * params); /* 681 */
+   void (GLAPIENTRYP GetProgramStringNV)(GLuint id, GLenum pname, GLubyte * program); /* 682 */
+   void (GLAPIENTRYP GetProgramivNV)(GLuint id, GLenum pname, GLint * params); /* 683 */
+   void (GLAPIENTRYP GetTrackMatrixivNV)(GLenum target, GLuint address, GLenum pname, GLint * params); /* 684 */
+   void (GLAPIENTRYP GetVertexAttribPointervNV)(GLuint index, GLenum pname, GLvoid ** pointer); /* 685 */
+   void (GLAPIENTRYP GetVertexAttribdvNV)(GLuint index, GLenum pname, GLdouble * params); /* 686 */
+   void (GLAPIENTRYP GetVertexAttribfvNV)(GLuint index, GLenum pname, GLfloat * params); /* 687 */
+   void (GLAPIENTRYP GetVertexAttribivNV)(GLuint index, GLenum pname, GLint * params); /* 688 */
+   GLboolean (GLAPIENTRYP IsProgramNV)(GLuint program); /* 689 */
+   void (GLAPIENTRYP LoadProgramNV)(GLenum target, GLuint id, GLsizei len, const GLubyte * program); /* 690 */
+   void (GLAPIENTRYP ProgramParameters4dvNV)(GLenum target, GLuint index, GLuint num, const GLdouble * params); /* 691 */
+   void (GLAPIENTRYP ProgramParameters4fvNV)(GLenum target, GLuint index, GLuint num, const GLfloat * params); /* 692 */
+   void (GLAPIENTRYP RequestResidentProgramsNV)(GLsizei n, const GLuint * ids); /* 693 */
+   void (GLAPIENTRYP TrackMatrixNV)(GLenum target, GLuint address, GLenum matrix, GLenum transform); /* 694 */
+   void (GLAPIENTRYP VertexAttrib1dNV)(GLuint index, GLdouble x); /* 695 */
+   void (GLAPIENTRYP VertexAttrib1dvNV)(GLuint index, const GLdouble * v); /* 696 */
+   void (GLAPIENTRYP VertexAttrib1fNV)(GLuint index, GLfloat x); /* 697 */
+   void (GLAPIENTRYP VertexAttrib1fvNV)(GLuint index, const GLfloat * v); /* 698 */
+   void (GLAPIENTRYP VertexAttrib1sNV)(GLuint index, GLshort x); /* 699 */
+   void (GLAPIENTRYP VertexAttrib1svNV)(GLuint index, const GLshort * v); /* 700 */
+   void (GLAPIENTRYP VertexAttrib2dNV)(GLuint index, GLdouble x, GLdouble y); /* 701 */
+   void (GLAPIENTRYP VertexAttrib2dvNV)(GLuint index, const GLdouble * v); /* 702 */
+   void (GLAPIENTRYP VertexAttrib2fNV)(GLuint index, GLfloat x, GLfloat y); /* 703 */
+   void (GLAPIENTRYP VertexAttrib2fvNV)(GLuint index, const GLfloat * v); /* 704 */
+   void (GLAPIENTRYP VertexAttrib2sNV)(GLuint index, GLshort x, GLshort y); /* 705 */
+   void (GLAPIENTRYP VertexAttrib2svNV)(GLuint index, const GLshort * v); /* 706 */
+   void (GLAPIENTRYP VertexAttrib3dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z); /* 707 */
+   void (GLAPIENTRYP VertexAttrib3dvNV)(GLuint index, const GLdouble * v); /* 708 */
+   void (GLAPIENTRYP VertexAttrib3fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z); /* 709 */
+   void (GLAPIENTRYP VertexAttrib3fvNV)(GLuint index, const GLfloat * v); /* 710 */
+   void (GLAPIENTRYP VertexAttrib3sNV)(GLuint index, GLshort x, GLshort y, GLshort z); /* 711 */
+   void (GLAPIENTRYP VertexAttrib3svNV)(GLuint index, const GLshort * v); /* 712 */
+   void (GLAPIENTRYP VertexAttrib4dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 713 */
+   void (GLAPIENTRYP VertexAttrib4dvNV)(GLuint index, const GLdouble * v); /* 714 */
+   void (GLAPIENTRYP VertexAttrib4fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 715 */
+   void (GLAPIENTRYP VertexAttrib4fvNV)(GLuint index, const GLfloat * v); /* 716 */
+   void (GLAPIENTRYP VertexAttrib4sNV)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); /* 717 */
+   void (GLAPIENTRYP VertexAttrib4svNV)(GLuint index, const GLshort * v); /* 718 */
+   void (GLAPIENTRYP VertexAttrib4ubNV)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); /* 719 */
+   void (GLAPIENTRYP VertexAttrib4ubvNV)(GLuint index, const GLubyte * v); /* 720 */
+   void (GLAPIENTRYP VertexAttribPointerNV)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 721 */
+   void (GLAPIENTRYP VertexAttribs1dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 722 */
+   void (GLAPIENTRYP VertexAttribs1fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 723 */
+   void (GLAPIENTRYP VertexAttribs1svNV)(GLuint index, GLsizei n, const GLshort * v); /* 724 */
+   void (GLAPIENTRYP VertexAttribs2dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 725 */
+   void (GLAPIENTRYP VertexAttribs2fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 726 */
+   void (GLAPIENTRYP VertexAttribs2svNV)(GLuint index, GLsizei n, const GLshort * v); /* 727 */
+   void (GLAPIENTRYP VertexAttribs3dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 728 */
+   void (GLAPIENTRYP VertexAttribs3fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 729 */
+   void (GLAPIENTRYP VertexAttribs3svNV)(GLuint index, GLsizei n, const GLshort * v); /* 730 */
+   void (GLAPIENTRYP VertexAttribs4dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 731 */
+   void (GLAPIENTRYP VertexAttribs4fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 732 */
+   void (GLAPIENTRYP VertexAttribs4svNV)(GLuint index, GLsizei n, const GLshort * v); /* 733 */
+   void (GLAPIENTRYP VertexAttribs4ubvNV)(GLuint index, GLsizei n, const GLubyte * v); /* 734 */
+   void (GLAPIENTRYP GetTexBumpParameterfvATI)(GLenum pname, GLfloat * param); /* 735 */
+   void (GLAPIENTRYP GetTexBumpParameterivATI)(GLenum pname, GLint * param); /* 736 */
+   void (GLAPIENTRYP TexBumpParameterfvATI)(GLenum pname, const GLfloat * param); /* 737 */
+   void (GLAPIENTRYP TexBumpParameterivATI)(GLenum pname, const GLint * param); /* 738 */
+   void (GLAPIENTRYP AlphaFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 739 */
+   void (GLAPIENTRYP AlphaFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 740 */
+   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); /* 741 */
+   void (GLAPIENTRYP BeginFragmentShaderATI)(void); /* 742 */
+   void (GLAPIENTRYP BindFragmentShaderATI)(GLuint id); /* 743 */
+   void (GLAPIENTRYP ColorFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 744 */
+   void (GLAPIENTRYP ColorFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 745 */
+   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); /* 746 */
+   void (GLAPIENTRYP DeleteFragmentShaderATI)(GLuint id); /* 747 */
+   void (GLAPIENTRYP EndFragmentShaderATI)(void); /* 748 */
+   GLuint (GLAPIENTRYP GenFragmentShadersATI)(GLuint range); /* 749 */
+   void (GLAPIENTRYP PassTexCoordATI)(GLuint dst, GLuint coord, GLenum swizzle); /* 750 */
+   void (GLAPIENTRYP SampleMapATI)(GLuint dst, GLuint interp, GLenum swizzle); /* 751 */
+   void (GLAPIENTRYP SetFragmentShaderConstantATI)(GLuint dst, const GLfloat * value); /* 752 */
+   void (GLAPIENTRYP PointParameteriNV)(GLenum pname, GLint param); /* 753 */
+   void (GLAPIENTRYP PointParameterivNV)(GLenum pname, const GLint * params); /* 754 */
+   void (GLAPIENTRYP ActiveStencilFaceEXT)(GLenum face); /* 755 */
+   void (GLAPIENTRYP BindVertexArrayAPPLE)(GLuint array); /* 756 */
+   void (GLAPIENTRYP DeleteVertexArraysAPPLE)(GLsizei n, const GLuint * arrays); /* 757 */
+   void (GLAPIENTRYP GenVertexArraysAPPLE)(GLsizei n, GLuint * arrays); /* 758 */
+   GLboolean (GLAPIENTRYP IsVertexArrayAPPLE)(GLuint array); /* 759 */
+   void (GLAPIENTRYP GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble * params); /* 760 */
+   void (GLAPIENTRYP GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat * params); /* 761 */
+   void (GLAPIENTRYP ProgramNamedParameter4dNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 762 */
+   void (GLAPIENTRYP ProgramNamedParameter4dvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLdouble * v); /* 763 */
+   void (GLAPIENTRYP ProgramNamedParameter4fNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 764 */
+   void (GLAPIENTRYP ProgramNamedParameter4fvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLfloat * v); /* 765 */
+   void (GLAPIENTRYP DepthBoundsEXT)(GLclampd zmin, GLclampd zmax); /* 766 */
+   void (GLAPIENTRYP BlendEquationSeparateEXT)(GLenum modeRGB, GLenum modeA); /* 767 */
+   void (GLAPIENTRYP BindFramebufferEXT)(GLenum target, GLuint framebuffer); /* 768 */
+   void (GLAPIENTRYP BindRenderbufferEXT)(GLenum target, GLuint renderbuffer); /* 769 */
+   GLenum (GLAPIENTRYP CheckFramebufferStatusEXT)(GLenum target); /* 770 */
+   void (GLAPIENTRYP DeleteFramebuffersEXT)(GLsizei n, const GLuint * framebuffers); /* 771 */
+   void (GLAPIENTRYP DeleteRenderbuffersEXT)(GLsizei n, const GLuint * renderbuffers); /* 772 */
+   void (GLAPIENTRYP FramebufferRenderbufferEXT)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); /* 773 */
+   void (GLAPIENTRYP FramebufferTexture1DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 774 */
+   void (GLAPIENTRYP FramebufferTexture2DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 775 */
+   void (GLAPIENTRYP FramebufferTexture3DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); /* 776 */
+   void (GLAPIENTRYP GenFramebuffersEXT)(GLsizei n, GLuint * framebuffers); /* 777 */
+   void (GLAPIENTRYP GenRenderbuffersEXT)(GLsizei n, GLuint * renderbuffers); /* 778 */
+   void (GLAPIENTRYP GenerateMipmapEXT)(GLenum target); /* 779 */
+   void (GLAPIENTRYP GetFramebufferAttachmentParameterivEXT)(GLenum target, GLenum attachment, GLenum pname, GLint * params); /* 780 */
+   void (GLAPIENTRYP GetRenderbufferParameterivEXT)(GLenum target, GLenum pname, GLint * params); /* 781 */
+   GLboolean (GLAPIENTRYP IsFramebufferEXT)(GLuint framebuffer); /* 782 */
+   GLboolean (GLAPIENTRYP IsRenderbufferEXT)(GLuint renderbuffer); /* 783 */
+   void (GLAPIENTRYP RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); /* 784 */
+   void (GLAPIENTRYP BlitFramebufferEXT)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); /* 785 */
+   void (GLAPIENTRYP BufferParameteriAPPLE)(GLenum target, GLenum pname, GLint param); /* 786 */
+   void (GLAPIENTRYP FlushMappedBufferRangeAPPLE)(GLenum target, GLintptr offset, GLsizeiptr size); /* 787 */
+   void (GLAPIENTRYP FramebufferTextureLayerEXT)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer); /* 788 */
+   void (GLAPIENTRYP ColorMaskIndexedEXT)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a); /* 789 */
+   void (GLAPIENTRYP DisableIndexedEXT)(GLenum target, GLuint index); /* 790 */
+   void (GLAPIENTRYP EnableIndexedEXT)(GLenum target, GLuint index); /* 791 */
+   void (GLAPIENTRYP GetBooleanIndexedvEXT)(GLenum value, GLuint index, GLboolean * data); /* 792 */
+   void (GLAPIENTRYP GetIntegerIndexedvEXT)(GLenum value, GLuint index, GLint * data); /* 793 */
+   GLboolean (GLAPIENTRYP IsEnabledIndexedEXT)(GLenum target, GLuint index); /* 794 */
+   void (GLAPIENTRYP BeginConditionalRenderNV)(GLuint query, GLenum mode); /* 795 */
+   void (GLAPIENTRYP EndConditionalRenderNV)(void); /* 796 */
+   void (GLAPIENTRYP BeginTransformFeedbackEXT)(GLenum mode); /* 797 */
+   void (GLAPIENTRYP BindBufferBaseEXT)(GLenum target, GLuint index, GLuint buffer); /* 798 */
+   void (GLAPIENTRYP BindBufferOffsetEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset); /* 799 */
+   void (GLAPIENTRYP BindBufferRangeEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); /* 800 */
+   void (GLAPIENTRYP EndTransformFeedbackEXT)(void); /* 801 */
+   void (GLAPIENTRYP GetTransformFeedbackVaryingEXT)(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name); /* 802 */
+   void (GLAPIENTRYP TransformFeedbackVaryingsEXT)(GLuint program, GLsizei count, const char ** varyings, GLenum bufferMode); /* 803 */
+   void (GLAPIENTRYP ProvokingVertexEXT)(GLenum mode); /* 804 */
+   void (GLAPIENTRYP GetTexParameterPointervAPPLE)(GLenum target, GLenum pname, GLvoid ** params); /* 805 */
+   void (GLAPIENTRYP TextureRangeAPPLE)(GLenum target, GLsizei length, GLvoid * pointer); /* 806 */
+   void (GLAPIENTRYP GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint * value); /* 807 */
+   GLenum (GLAPIENTRYP ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 808 */
+   GLenum (GLAPIENTRYP ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 809 */
+   void (GLAPIENTRYP StencilFuncSeparateATI)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); /* 810 */
+   void (GLAPIENTRYP ProgramEnvParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 811 */
+   void (GLAPIENTRYP ProgramLocalParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 812 */
+   void (GLAPIENTRYP GetQueryObjecti64vEXT)(GLuint id, GLenum pname, GLint64EXT * params); /* 813 */
+   void (GLAPIENTRYP GetQueryObjectui64vEXT)(GLuint id, GLenum pname, GLuint64EXT * params); /* 814 */
+   void (GLAPIENTRYP EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid * writeOffset); /* 815 */
+   void (GLAPIENTRYP EGLImageTargetTexture2DOES)(GLenum target, GLvoid * writeOffset); /* 816 */
+};
+
+#endif /* !defined( _GLAPI_TABLE_H_ ) */
diff --git a/src/mapi/glapi/glapitemp.h b/src/mapi/glapi/glapitemp.h
new file mode 100644 (file)
index 0000000..3ed337f
--- /dev/null
@@ -0,0 +1,7144 @@
+/* DO NOT EDIT - This file generated automatically by gl_apitemp.py (from Mesa) script */
+
+/*
+ * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
+ * (C) Copyright IBM Corporation 2004
+ * 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
+ * BRIAN PAUL, IBM,
+ * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
+ * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+
+#  if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) && defined(__ELF__)
+#    define HIDDEN  __attribute__((visibility("hidden")))
+#  else
+#    define HIDDEN
+#  endif
+
+/*
+ * This file is a template which generates the OpenGL API entry point
+ * functions.  It should be included by a .c file which first defines
+ * the following macros:
+ *   KEYWORD1 - usually nothing, but might be __declspec(dllexport) on Win32
+ *   KEYWORD2 - usually nothing, but might be __stdcall on Win32
+ *   NAME(n)  - builds the final function name (usually add "gl" prefix)
+ *   DISPATCH(func, args, msg) - code to do dispatch of named function.
+ *                               msg is a printf-style debug message.
+ *   RETURN_DISPATCH(func, args, msg) - code to do dispatch with a return value
+ *
+ * Here is an example which generates the usual OpenGL functions:
+ *   #define KEYWORD1
+ *   #define KEYWORD2
+ *   #define NAME(func)  gl##func
+ *   #define DISPATCH(func, args, msg)                           \
+ *          struct _glapi_table *dispatch = CurrentDispatch;     \
+ *          (*dispatch->func) args
+ *   #define RETURN DISPATCH(func, args, msg)                    \
+ *          struct _glapi_table *dispatch = CurrentDispatch;     \
+ *          return (*dispatch->func) args
+ *
+ */
+
+
+#if defined( NAME )
+#ifndef KEYWORD1
+#define KEYWORD1
+#endif
+
+#ifndef KEYWORD1_ALT
+#define KEYWORD1_ALT HIDDEN
+#endif
+
+#ifndef KEYWORD2
+#define KEYWORD2
+#endif
+
+#ifndef DISPATCH
+#error DISPATCH must be defined
+#endif
+
+#ifndef RETURN_DISPATCH
+#error RETURN_DISPATCH must be defined
+#endif
+
+
+#ifndef _GLAPI_SKIP_NORMAL_ENTRY_POINTS
+
+KEYWORD1 void KEYWORD2 NAME(NewList)(GLuint list, GLenum mode)
+{
+   DISPATCH(NewList, (list, mode), (F, "glNewList(%d, 0x%x);\n", list, mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EndList)(void)
+{
+   DISPATCH(EndList, (), (F, "glEndList();\n"));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CallList)(GLuint list)
+{
+   DISPATCH(CallList, (list), (F, "glCallList(%d);\n", list));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CallLists)(GLsizei n, GLenum type, const GLvoid * lists)
+{
+   DISPATCH(CallLists, (n, type, lists), (F, "glCallLists(%d, 0x%x, %p);\n", n, type, (const void *) lists));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DeleteLists)(GLuint list, GLsizei range)
+{
+   DISPATCH(DeleteLists, (list, range), (F, "glDeleteLists(%d, %d);\n", list, range));
+}
+
+KEYWORD1 GLuint KEYWORD2 NAME(GenLists)(GLsizei range)
+{
+   RETURN_DISPATCH(GenLists, (range), (F, "glGenLists(%d);\n", range));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ListBase)(GLuint base)
+{
+   DISPATCH(ListBase, (base), (F, "glListBase(%d);\n", base));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Begin)(GLenum mode)
+{
+   DISPATCH(Begin, (mode), (F, "glBegin(0x%x);\n", mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Bitmap)(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte * bitmap)
+{
+   DISPATCH(Bitmap, (width, height, xorig, yorig, xmove, ymove, bitmap), (F, "glBitmap(%d, %d, %f, %f, %f, %f, %p);\n", width, height, xorig, yorig, xmove, ymove, (const void *) bitmap));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color3b)(GLbyte red, GLbyte green, GLbyte blue)
+{
+   DISPATCH(Color3b, (red, green, blue), (F, "glColor3b(%d, %d, %d);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color3bv)(const GLbyte * v)
+{
+   DISPATCH(Color3bv, (v), (F, "glColor3bv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color3d)(GLdouble red, GLdouble green, GLdouble blue)
+{
+   DISPATCH(Color3d, (red, green, blue), (F, "glColor3d(%f, %f, %f);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color3dv)(const GLdouble * v)
+{
+   DISPATCH(Color3dv, (v), (F, "glColor3dv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color3f)(GLfloat red, GLfloat green, GLfloat blue)
+{
+   DISPATCH(Color3f, (red, green, blue), (F, "glColor3f(%f, %f, %f);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color3fv)(const GLfloat * v)
+{
+   DISPATCH(Color3fv, (v), (F, "glColor3fv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color3i)(GLint red, GLint green, GLint blue)
+{
+   DISPATCH(Color3i, (red, green, blue), (F, "glColor3i(%d, %d, %d);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color3iv)(const GLint * v)
+{
+   DISPATCH(Color3iv, (v), (F, "glColor3iv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color3s)(GLshort red, GLshort green, GLshort blue)
+{
+   DISPATCH(Color3s, (red, green, blue), (F, "glColor3s(%d, %d, %d);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color3sv)(const GLshort * v)
+{
+   DISPATCH(Color3sv, (v), (F, "glColor3sv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color3ub)(GLubyte red, GLubyte green, GLubyte blue)
+{
+   DISPATCH(Color3ub, (red, green, blue), (F, "glColor3ub(%d, %d, %d);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color3ubv)(const GLubyte * v)
+{
+   DISPATCH(Color3ubv, (v), (F, "glColor3ubv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color3ui)(GLuint red, GLuint green, GLuint blue)
+{
+   DISPATCH(Color3ui, (red, green, blue), (F, "glColor3ui(%d, %d, %d);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color3uiv)(const GLuint * v)
+{
+   DISPATCH(Color3uiv, (v), (F, "glColor3uiv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color3us)(GLushort red, GLushort green, GLushort blue)
+{
+   DISPATCH(Color3us, (red, green, blue), (F, "glColor3us(%d, %d, %d);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color3usv)(const GLushort * v)
+{
+   DISPATCH(Color3usv, (v), (F, "glColor3usv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color4b)(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
+{
+   DISPATCH(Color4b, (red, green, blue, alpha), (F, "glColor4b(%d, %d, %d, %d);\n", red, green, blue, alpha));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color4bv)(const GLbyte * v)
+{
+   DISPATCH(Color4bv, (v), (F, "glColor4bv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color4d)(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
+{
+   DISPATCH(Color4d, (red, green, blue, alpha), (F, "glColor4d(%f, %f, %f, %f);\n", red, green, blue, alpha));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color4dv)(const GLdouble * v)
+{
+   DISPATCH(Color4dv, (v), (F, "glColor4dv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color4f)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+   DISPATCH(Color4f, (red, green, blue, alpha), (F, "glColor4f(%f, %f, %f, %f);\n", red, green, blue, alpha));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color4fv)(const GLfloat * v)
+{
+   DISPATCH(Color4fv, (v), (F, "glColor4fv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color4i)(GLint red, GLint green, GLint blue, GLint alpha)
+{
+   DISPATCH(Color4i, (red, green, blue, alpha), (F, "glColor4i(%d, %d, %d, %d);\n", red, green, blue, alpha));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color4iv)(const GLint * v)
+{
+   DISPATCH(Color4iv, (v), (F, "glColor4iv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color4s)(GLshort red, GLshort green, GLshort blue, GLshort alpha)
+{
+   DISPATCH(Color4s, (red, green, blue, alpha), (F, "glColor4s(%d, %d, %d, %d);\n", red, green, blue, alpha));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color4sv)(const GLshort * v)
+{
+   DISPATCH(Color4sv, (v), (F, "glColor4sv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color4ub)(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
+{
+   DISPATCH(Color4ub, (red, green, blue, alpha), (F, "glColor4ub(%d, %d, %d, %d);\n", red, green, blue, alpha));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color4ubv)(const GLubyte * v)
+{
+   DISPATCH(Color4ubv, (v), (F, "glColor4ubv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color4ui)(GLuint red, GLuint green, GLuint blue, GLuint alpha)
+{
+   DISPATCH(Color4ui, (red, green, blue, alpha), (F, "glColor4ui(%d, %d, %d, %d);\n", red, green, blue, alpha));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color4uiv)(const GLuint * v)
+{
+   DISPATCH(Color4uiv, (v), (F, "glColor4uiv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color4us)(GLushort red, GLushort green, GLushort blue, GLushort alpha)
+{
+   DISPATCH(Color4us, (red, green, blue, alpha), (F, "glColor4us(%d, %d, %d, %d);\n", red, green, blue, alpha));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Color4usv)(const GLushort * v)
+{
+   DISPATCH(Color4usv, (v), (F, "glColor4usv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EdgeFlag)(GLboolean flag)
+{
+   DISPATCH(EdgeFlag, (flag), (F, "glEdgeFlag(%d);\n", flag));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EdgeFlagv)(const GLboolean * flag)
+{
+   DISPATCH(EdgeFlagv, (flag), (F, "glEdgeFlagv(%p);\n", (const void *) flag));
+}
+
+KEYWORD1 void KEYWORD2 NAME(End)(void)
+{
+   DISPATCH(End, (), (F, "glEnd();\n"));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Indexd)(GLdouble c)
+{
+   DISPATCH(Indexd, (c), (F, "glIndexd(%f);\n", c));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Indexdv)(const GLdouble * c)
+{
+   DISPATCH(Indexdv, (c), (F, "glIndexdv(%p);\n", (const void *) c));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Indexf)(GLfloat c)
+{
+   DISPATCH(Indexf, (c), (F, "glIndexf(%f);\n", c));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Indexfv)(const GLfloat * c)
+{
+   DISPATCH(Indexfv, (c), (F, "glIndexfv(%p);\n", (const void *) c));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Indexi)(GLint c)
+{
+   DISPATCH(Indexi, (c), (F, "glIndexi(%d);\n", c));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Indexiv)(const GLint * c)
+{
+   DISPATCH(Indexiv, (c), (F, "glIndexiv(%p);\n", (const void *) c));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Indexs)(GLshort c)
+{
+   DISPATCH(Indexs, (c), (F, "glIndexs(%d);\n", c));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Indexsv)(const GLshort * c)
+{
+   DISPATCH(Indexsv, (c), (F, "glIndexsv(%p);\n", (const void *) c));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Normal3b)(GLbyte nx, GLbyte ny, GLbyte nz)
+{
+   DISPATCH(Normal3b, (nx, ny, nz), (F, "glNormal3b(%d, %d, %d);\n", nx, ny, nz));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Normal3bv)(const GLbyte * v)
+{
+   DISPATCH(Normal3bv, (v), (F, "glNormal3bv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Normal3d)(GLdouble nx, GLdouble ny, GLdouble nz)
+{
+   DISPATCH(Normal3d, (nx, ny, nz), (F, "glNormal3d(%f, %f, %f);\n", nx, ny, nz));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Normal3dv)(const GLdouble * v)
+{
+   DISPATCH(Normal3dv, (v), (F, "glNormal3dv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Normal3f)(GLfloat nx, GLfloat ny, GLfloat nz)
+{
+   DISPATCH(Normal3f, (nx, ny, nz), (F, "glNormal3f(%f, %f, %f);\n", nx, ny, nz));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Normal3fv)(const GLfloat * v)
+{
+   DISPATCH(Normal3fv, (v), (F, "glNormal3fv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Normal3i)(GLint nx, GLint ny, GLint nz)
+{
+   DISPATCH(Normal3i, (nx, ny, nz), (F, "glNormal3i(%d, %d, %d);\n", nx, ny, nz));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Normal3iv)(const GLint * v)
+{
+   DISPATCH(Normal3iv, (v), (F, "glNormal3iv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Normal3s)(GLshort nx, GLshort ny, GLshort nz)
+{
+   DISPATCH(Normal3s, (nx, ny, nz), (F, "glNormal3s(%d, %d, %d);\n", nx, ny, nz));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Normal3sv)(const GLshort * v)
+{
+   DISPATCH(Normal3sv, (v), (F, "glNormal3sv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos2d)(GLdouble x, GLdouble y)
+{
+   DISPATCH(RasterPos2d, (x, y), (F, "glRasterPos2d(%f, %f);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos2dv)(const GLdouble * v)
+{
+   DISPATCH(RasterPos2dv, (v), (F, "glRasterPos2dv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos2f)(GLfloat x, GLfloat y)
+{
+   DISPATCH(RasterPos2f, (x, y), (F, "glRasterPos2f(%f, %f);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos2fv)(const GLfloat * v)
+{
+   DISPATCH(RasterPos2fv, (v), (F, "glRasterPos2fv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos2i)(GLint x, GLint y)
+{
+   DISPATCH(RasterPos2i, (x, y), (F, "glRasterPos2i(%d, %d);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos2iv)(const GLint * v)
+{
+   DISPATCH(RasterPos2iv, (v), (F, "glRasterPos2iv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos2s)(GLshort x, GLshort y)
+{
+   DISPATCH(RasterPos2s, (x, y), (F, "glRasterPos2s(%d, %d);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos2sv)(const GLshort * v)
+{
+   DISPATCH(RasterPos2sv, (v), (F, "glRasterPos2sv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos3d)(GLdouble x, GLdouble y, GLdouble z)
+{
+   DISPATCH(RasterPos3d, (x, y, z), (F, "glRasterPos3d(%f, %f, %f);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos3dv)(const GLdouble * v)
+{
+   DISPATCH(RasterPos3dv, (v), (F, "glRasterPos3dv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos3f)(GLfloat x, GLfloat y, GLfloat z)
+{
+   DISPATCH(RasterPos3f, (x, y, z), (F, "glRasterPos3f(%f, %f, %f);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos3fv)(const GLfloat * v)
+{
+   DISPATCH(RasterPos3fv, (v), (F, "glRasterPos3fv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos3i)(GLint x, GLint y, GLint z)
+{
+   DISPATCH(RasterPos3i, (x, y, z), (F, "glRasterPos3i(%d, %d, %d);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos3iv)(const GLint * v)
+{
+   DISPATCH(RasterPos3iv, (v), (F, "glRasterPos3iv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos3s)(GLshort x, GLshort y, GLshort z)
+{
+   DISPATCH(RasterPos3s, (x, y, z), (F, "glRasterPos3s(%d, %d, %d);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos3sv)(const GLshort * v)
+{
+   DISPATCH(RasterPos3sv, (v), (F, "glRasterPos3sv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos4d)(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+   DISPATCH(RasterPos4d, (x, y, z, w), (F, "glRasterPos4d(%f, %f, %f, %f);\n", x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos4dv)(const GLdouble * v)
+{
+   DISPATCH(RasterPos4dv, (v), (F, "glRasterPos4dv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos4f)(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+   DISPATCH(RasterPos4f, (x, y, z, w), (F, "glRasterPos4f(%f, %f, %f, %f);\n", x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos4fv)(const GLfloat * v)
+{
+   DISPATCH(RasterPos4fv, (v), (F, "glRasterPos4fv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos4i)(GLint x, GLint y, GLint z, GLint w)
+{
+   DISPATCH(RasterPos4i, (x, y, z, w), (F, "glRasterPos4i(%d, %d, %d, %d);\n", x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos4iv)(const GLint * v)
+{
+   DISPATCH(RasterPos4iv, (v), (F, "glRasterPos4iv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos4s)(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+   DISPATCH(RasterPos4s, (x, y, z, w), (F, "glRasterPos4s(%d, %d, %d, %d);\n", x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RasterPos4sv)(const GLshort * v)
+{
+   DISPATCH(RasterPos4sv, (v), (F, "glRasterPos4sv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Rectd)(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
+{
+   DISPATCH(Rectd, (x1, y1, x2, y2), (F, "glRectd(%f, %f, %f, %f);\n", x1, y1, x2, y2));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Rectdv)(const GLdouble * v1, const GLdouble * v2)
+{
+   DISPATCH(Rectdv, (v1, v2), (F, "glRectdv(%p, %p);\n", (const void *) v1, (const void *) v2));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Rectf)(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+   DISPATCH(Rectf, (x1, y1, x2, y2), (F, "glRectf(%f, %f, %f, %f);\n", x1, y1, x2, y2));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Rectfv)(const GLfloat * v1, const GLfloat * v2)
+{
+   DISPATCH(Rectfv, (v1, v2), (F, "glRectfv(%p, %p);\n", (const void *) v1, (const void *) v2));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Recti)(GLint x1, GLint y1, GLint x2, GLint y2)
+{
+   DISPATCH(Recti, (x1, y1, x2, y2), (F, "glRecti(%d, %d, %d, %d);\n", x1, y1, x2, y2));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Rectiv)(const GLint * v1, const GLint * v2)
+{
+   DISPATCH(Rectiv, (v1, v2), (F, "glRectiv(%p, %p);\n", (const void *) v1, (const void *) v2));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Rects)(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
+{
+   DISPATCH(Rects, (x1, y1, x2, y2), (F, "glRects(%d, %d, %d, %d);\n", x1, y1, x2, y2));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Rectsv)(const GLshort * v1, const GLshort * v2)
+{
+   DISPATCH(Rectsv, (v1, v2), (F, "glRectsv(%p, %p);\n", (const void *) v1, (const void *) v2));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord1d)(GLdouble s)
+{
+   DISPATCH(TexCoord1d, (s), (F, "glTexCoord1d(%f);\n", s));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord1dv)(const GLdouble * v)
+{
+   DISPATCH(TexCoord1dv, (v), (F, "glTexCoord1dv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord1f)(GLfloat s)
+{
+   DISPATCH(TexCoord1f, (s), (F, "glTexCoord1f(%f);\n", s));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord1fv)(const GLfloat * v)
+{
+   DISPATCH(TexCoord1fv, (v), (F, "glTexCoord1fv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord1i)(GLint s)
+{
+   DISPATCH(TexCoord1i, (s), (F, "glTexCoord1i(%d);\n", s));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord1iv)(const GLint * v)
+{
+   DISPATCH(TexCoord1iv, (v), (F, "glTexCoord1iv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord1s)(GLshort s)
+{
+   DISPATCH(TexCoord1s, (s), (F, "glTexCoord1s(%d);\n", s));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord1sv)(const GLshort * v)
+{
+   DISPATCH(TexCoord1sv, (v), (F, "glTexCoord1sv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord2d)(GLdouble s, GLdouble t)
+{
+   DISPATCH(TexCoord2d, (s, t), (F, "glTexCoord2d(%f, %f);\n", s, t));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord2dv)(const GLdouble * v)
+{
+   DISPATCH(TexCoord2dv, (v), (F, "glTexCoord2dv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord2f)(GLfloat s, GLfloat t)
+{
+   DISPATCH(TexCoord2f, (s, t), (F, "glTexCoord2f(%f, %f);\n", s, t));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord2fv)(const GLfloat * v)
+{
+   DISPATCH(TexCoord2fv, (v), (F, "glTexCoord2fv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord2i)(GLint s, GLint t)
+{
+   DISPATCH(TexCoord2i, (s, t), (F, "glTexCoord2i(%d, %d);\n", s, t));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord2iv)(const GLint * v)
+{
+   DISPATCH(TexCoord2iv, (v), (F, "glTexCoord2iv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord2s)(GLshort s, GLshort t)
+{
+   DISPATCH(TexCoord2s, (s, t), (F, "glTexCoord2s(%d, %d);\n", s, t));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord2sv)(const GLshort * v)
+{
+   DISPATCH(TexCoord2sv, (v), (F, "glTexCoord2sv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord3d)(GLdouble s, GLdouble t, GLdouble r)
+{
+   DISPATCH(TexCoord3d, (s, t, r), (F, "glTexCoord3d(%f, %f, %f);\n", s, t, r));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord3dv)(const GLdouble * v)
+{
+   DISPATCH(TexCoord3dv, (v), (F, "glTexCoord3dv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord3f)(GLfloat s, GLfloat t, GLfloat r)
+{
+   DISPATCH(TexCoord3f, (s, t, r), (F, "glTexCoord3f(%f, %f, %f);\n", s, t, r));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord3fv)(const GLfloat * v)
+{
+   DISPATCH(TexCoord3fv, (v), (F, "glTexCoord3fv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord3i)(GLint s, GLint t, GLint r)
+{
+   DISPATCH(TexCoord3i, (s, t, r), (F, "glTexCoord3i(%d, %d, %d);\n", s, t, r));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord3iv)(const GLint * v)
+{
+   DISPATCH(TexCoord3iv, (v), (F, "glTexCoord3iv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord3s)(GLshort s, GLshort t, GLshort r)
+{
+   DISPATCH(TexCoord3s, (s, t, r), (F, "glTexCoord3s(%d, %d, %d);\n", s, t, r));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord3sv)(const GLshort * v)
+{
+   DISPATCH(TexCoord3sv, (v), (F, "glTexCoord3sv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord4d)(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+   DISPATCH(TexCoord4d, (s, t, r, q), (F, "glTexCoord4d(%f, %f, %f, %f);\n", s, t, r, q));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord4dv)(const GLdouble * v)
+{
+   DISPATCH(TexCoord4dv, (v), (F, "glTexCoord4dv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord4f)(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+   DISPATCH(TexCoord4f, (s, t, r, q), (F, "glTexCoord4f(%f, %f, %f, %f);\n", s, t, r, q));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord4fv)(const GLfloat * v)
+{
+   DISPATCH(TexCoord4fv, (v), (F, "glTexCoord4fv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord4i)(GLint s, GLint t, GLint r, GLint q)
+{
+   DISPATCH(TexCoord4i, (s, t, r, q), (F, "glTexCoord4i(%d, %d, %d, %d);\n", s, t, r, q));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord4iv)(const GLint * v)
+{
+   DISPATCH(TexCoord4iv, (v), (F, "glTexCoord4iv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord4s)(GLshort s, GLshort t, GLshort r, GLshort q)
+{
+   DISPATCH(TexCoord4s, (s, t, r, q), (F, "glTexCoord4s(%d, %d, %d, %d);\n", s, t, r, q));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoord4sv)(const GLshort * v)
+{
+   DISPATCH(TexCoord4sv, (v), (F, "glTexCoord4sv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex2d)(GLdouble x, GLdouble y)
+{
+   DISPATCH(Vertex2d, (x, y), (F, "glVertex2d(%f, %f);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex2dv)(const GLdouble * v)
+{
+   DISPATCH(Vertex2dv, (v), (F, "glVertex2dv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex2f)(GLfloat x, GLfloat y)
+{
+   DISPATCH(Vertex2f, (x, y), (F, "glVertex2f(%f, %f);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex2fv)(const GLfloat * v)
+{
+   DISPATCH(Vertex2fv, (v), (F, "glVertex2fv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex2i)(GLint x, GLint y)
+{
+   DISPATCH(Vertex2i, (x, y), (F, "glVertex2i(%d, %d);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex2iv)(const GLint * v)
+{
+   DISPATCH(Vertex2iv, (v), (F, "glVertex2iv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex2s)(GLshort x, GLshort y)
+{
+   DISPATCH(Vertex2s, (x, y), (F, "glVertex2s(%d, %d);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex2sv)(const GLshort * v)
+{
+   DISPATCH(Vertex2sv, (v), (F, "glVertex2sv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex3d)(GLdouble x, GLdouble y, GLdouble z)
+{
+   DISPATCH(Vertex3d, (x, y, z), (F, "glVertex3d(%f, %f, %f);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex3dv)(const GLdouble * v)
+{
+   DISPATCH(Vertex3dv, (v), (F, "glVertex3dv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex3f)(GLfloat x, GLfloat y, GLfloat z)
+{
+   DISPATCH(Vertex3f, (x, y, z), (F, "glVertex3f(%f, %f, %f);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex3fv)(const GLfloat * v)
+{
+   DISPATCH(Vertex3fv, (v), (F, "glVertex3fv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex3i)(GLint x, GLint y, GLint z)
+{
+   DISPATCH(Vertex3i, (x, y, z), (F, "glVertex3i(%d, %d, %d);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex3iv)(const GLint * v)
+{
+   DISPATCH(Vertex3iv, (v), (F, "glVertex3iv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex3s)(GLshort x, GLshort y, GLshort z)
+{
+   DISPATCH(Vertex3s, (x, y, z), (F, "glVertex3s(%d, %d, %d);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex3sv)(const GLshort * v)
+{
+   DISPATCH(Vertex3sv, (v), (F, "glVertex3sv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex4d)(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+   DISPATCH(Vertex4d, (x, y, z, w), (F, "glVertex4d(%f, %f, %f, %f);\n", x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex4dv)(const GLdouble * v)
+{
+   DISPATCH(Vertex4dv, (v), (F, "glVertex4dv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex4f)(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+   DISPATCH(Vertex4f, (x, y, z, w), (F, "glVertex4f(%f, %f, %f, %f);\n", x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex4fv)(const GLfloat * v)
+{
+   DISPATCH(Vertex4fv, (v), (F, "glVertex4fv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex4i)(GLint x, GLint y, GLint z, GLint w)
+{
+   DISPATCH(Vertex4i, (x, y, z, w), (F, "glVertex4i(%d, %d, %d, %d);\n", x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex4iv)(const GLint * v)
+{
+   DISPATCH(Vertex4iv, (v), (F, "glVertex4iv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex4s)(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+   DISPATCH(Vertex4s, (x, y, z, w), (F, "glVertex4s(%d, %d, %d, %d);\n", x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Vertex4sv)(const GLshort * v)
+{
+   DISPATCH(Vertex4sv, (v), (F, "glVertex4sv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ClipPlane)(GLenum plane, const GLdouble * equation)
+{
+   DISPATCH(ClipPlane, (plane, equation), (F, "glClipPlane(0x%x, %p);\n", plane, (const void *) equation));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ColorMaterial)(GLenum face, GLenum mode)
+{
+   DISPATCH(ColorMaterial, (face, mode), (F, "glColorMaterial(0x%x, 0x%x);\n", face, mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CullFace)(GLenum mode)
+{
+   DISPATCH(CullFace, (mode), (F, "glCullFace(0x%x);\n", mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Fogf)(GLenum pname, GLfloat param)
+{
+   DISPATCH(Fogf, (pname, param), (F, "glFogf(0x%x, %f);\n", pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Fogfv)(GLenum pname, const GLfloat * params)
+{
+   DISPATCH(Fogfv, (pname, params), (F, "glFogfv(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Fogi)(GLenum pname, GLint param)
+{
+   DISPATCH(Fogi, (pname, param), (F, "glFogi(0x%x, %d);\n", pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Fogiv)(GLenum pname, const GLint * params)
+{
+   DISPATCH(Fogiv, (pname, params), (F, "glFogiv(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FrontFace)(GLenum mode)
+{
+   DISPATCH(FrontFace, (mode), (F, "glFrontFace(0x%x);\n", mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Hint)(GLenum target, GLenum mode)
+{
+   DISPATCH(Hint, (target, mode), (F, "glHint(0x%x, 0x%x);\n", target, mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Lightf)(GLenum light, GLenum pname, GLfloat param)
+{
+   DISPATCH(Lightf, (light, pname, param), (F, "glLightf(0x%x, 0x%x, %f);\n", light, pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Lightfv)(GLenum light, GLenum pname, const GLfloat * params)
+{
+   DISPATCH(Lightfv, (light, pname, params), (F, "glLightfv(0x%x, 0x%x, %p);\n", light, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Lighti)(GLenum light, GLenum pname, GLint param)
+{
+   DISPATCH(Lighti, (light, pname, param), (F, "glLighti(0x%x, 0x%x, %d);\n", light, pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Lightiv)(GLenum light, GLenum pname, const GLint * params)
+{
+   DISPATCH(Lightiv, (light, pname, params), (F, "glLightiv(0x%x, 0x%x, %p);\n", light, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LightModelf)(GLenum pname, GLfloat param)
+{
+   DISPATCH(LightModelf, (pname, param), (F, "glLightModelf(0x%x, %f);\n", pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LightModelfv)(GLenum pname, const GLfloat * params)
+{
+   DISPATCH(LightModelfv, (pname, params), (F, "glLightModelfv(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LightModeli)(GLenum pname, GLint param)
+{
+   DISPATCH(LightModeli, (pname, param), (F, "glLightModeli(0x%x, %d);\n", pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LightModeliv)(GLenum pname, const GLint * params)
+{
+   DISPATCH(LightModeliv, (pname, params), (F, "glLightModeliv(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LineStipple)(GLint factor, GLushort pattern)
+{
+   DISPATCH(LineStipple, (factor, pattern), (F, "glLineStipple(%d, %d);\n", factor, pattern));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LineWidth)(GLfloat width)
+{
+   DISPATCH(LineWidth, (width), (F, "glLineWidth(%f);\n", width));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Materialf)(GLenum face, GLenum pname, GLfloat param)
+{
+   DISPATCH(Materialf, (face, pname, param), (F, "glMaterialf(0x%x, 0x%x, %f);\n", face, pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Materialfv)(GLenum face, GLenum pname, const GLfloat * params)
+{
+   DISPATCH(Materialfv, (face, pname, params), (F, "glMaterialfv(0x%x, 0x%x, %p);\n", face, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Materiali)(GLenum face, GLenum pname, GLint param)
+{
+   DISPATCH(Materiali, (face, pname, param), (F, "glMateriali(0x%x, 0x%x, %d);\n", face, pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Materialiv)(GLenum face, GLenum pname, const GLint * params)
+{
+   DISPATCH(Materialiv, (face, pname, params), (F, "glMaterialiv(0x%x, 0x%x, %p);\n", face, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PointSize)(GLfloat size)
+{
+   DISPATCH(PointSize, (size), (F, "glPointSize(%f);\n", size));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PolygonMode)(GLenum face, GLenum mode)
+{
+   DISPATCH(PolygonMode, (face, mode), (F, "glPolygonMode(0x%x, 0x%x);\n", face, mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PolygonStipple)(const GLubyte * mask)
+{
+   DISPATCH(PolygonStipple, (mask), (F, "glPolygonStipple(%p);\n", (const void *) mask));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Scissor)(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+   DISPATCH(Scissor, (x, y, width, height), (F, "glScissor(%d, %d, %d, %d);\n", x, y, width, height));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ShadeModel)(GLenum mode)
+{
+   DISPATCH(ShadeModel, (mode), (F, "glShadeModel(0x%x);\n", mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexParameterf)(GLenum target, GLenum pname, GLfloat param)
+{
+   DISPATCH(TexParameterf, (target, pname, param), (F, "glTexParameterf(0x%x, 0x%x, %f);\n", target, pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexParameterfv)(GLenum target, GLenum pname, const GLfloat * params)
+{
+   DISPATCH(TexParameterfv, (target, pname, params), (F, "glTexParameterfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexParameteri)(GLenum target, GLenum pname, GLint param)
+{
+   DISPATCH(TexParameteri, (target, pname, param), (F, "glTexParameteri(0x%x, 0x%x, %d);\n", target, pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexParameteriv)(GLenum target, GLenum pname, const GLint * params)
+{
+   DISPATCH(TexParameteriv, (target, pname, params), (F, "glTexParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexImage1D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid * pixels)
+{
+   DISPATCH(TexImage1D, (target, level, internalformat, width, border, format, type, pixels), (F, "glTexImage1D(0x%x, %d, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, internalformat, width, border, format, type, (const void *) pixels));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexImage2D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid * pixels)
+{
+   DISPATCH(TexImage2D, (target, level, internalformat, width, height, border, format, type, pixels), (F, "glTexImage2D(0x%x, %d, %d, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, internalformat, width, height, border, format, type, (const void *) pixels));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexEnvf)(GLenum target, GLenum pname, GLfloat param)
+{
+   DISPATCH(TexEnvf, (target, pname, param), (F, "glTexEnvf(0x%x, 0x%x, %f);\n", target, pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexEnvfv)(GLenum target, GLenum pname, const GLfloat * params)
+{
+   DISPATCH(TexEnvfv, (target, pname, params), (F, "glTexEnvfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexEnvi)(GLenum target, GLenum pname, GLint param)
+{
+   DISPATCH(TexEnvi, (target, pname, param), (F, "glTexEnvi(0x%x, 0x%x, %d);\n", target, pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexEnviv)(GLenum target, GLenum pname, const GLint * params)
+{
+   DISPATCH(TexEnviv, (target, pname, params), (F, "glTexEnviv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexGend)(GLenum coord, GLenum pname, GLdouble param)
+{
+   DISPATCH(TexGend, (coord, pname, param), (F, "glTexGend(0x%x, 0x%x, %f);\n", coord, pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexGendv)(GLenum coord, GLenum pname, const GLdouble * params)
+{
+   DISPATCH(TexGendv, (coord, pname, params), (F, "glTexGendv(0x%x, 0x%x, %p);\n", coord, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexGenf)(GLenum coord, GLenum pname, GLfloat param)
+{
+   DISPATCH(TexGenf, (coord, pname, param), (F, "glTexGenf(0x%x, 0x%x, %f);\n", coord, pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexGenfv)(GLenum coord, GLenum pname, const GLfloat * params)
+{
+   DISPATCH(TexGenfv, (coord, pname, params), (F, "glTexGenfv(0x%x, 0x%x, %p);\n", coord, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexGeni)(GLenum coord, GLenum pname, GLint param)
+{
+   DISPATCH(TexGeni, (coord, pname, param), (F, "glTexGeni(0x%x, 0x%x, %d);\n", coord, pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexGeniv)(GLenum coord, GLenum pname, const GLint * params)
+{
+   DISPATCH(TexGeniv, (coord, pname, params), (F, "glTexGeniv(0x%x, 0x%x, %p);\n", coord, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FeedbackBuffer)(GLsizei size, GLenum type, GLfloat * buffer)
+{
+   DISPATCH(FeedbackBuffer, (size, type, buffer), (F, "glFeedbackBuffer(%d, 0x%x, %p);\n", size, type, (const void *) buffer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SelectBuffer)(GLsizei size, GLuint * buffer)
+{
+   DISPATCH(SelectBuffer, (size, buffer), (F, "glSelectBuffer(%d, %p);\n", size, (const void *) buffer));
+}
+
+KEYWORD1 GLint KEYWORD2 NAME(RenderMode)(GLenum mode)
+{
+   RETURN_DISPATCH(RenderMode, (mode), (F, "glRenderMode(0x%x);\n", mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(InitNames)(void)
+{
+   DISPATCH(InitNames, (), (F, "glInitNames();\n"));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LoadName)(GLuint name)
+{
+   DISPATCH(LoadName, (name), (F, "glLoadName(%d);\n", name));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PassThrough)(GLfloat token)
+{
+   DISPATCH(PassThrough, (token), (F, "glPassThrough(%f);\n", token));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PopName)(void)
+{
+   DISPATCH(PopName, (), (F, "glPopName();\n"));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PushName)(GLuint name)
+{
+   DISPATCH(PushName, (name), (F, "glPushName(%d);\n", name));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DrawBuffer)(GLenum mode)
+{
+   DISPATCH(DrawBuffer, (mode), (F, "glDrawBuffer(0x%x);\n", mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Clear)(GLbitfield mask)
+{
+   DISPATCH(Clear, (mask), (F, "glClear(%d);\n", mask));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ClearAccum)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
+{
+   DISPATCH(ClearAccum, (red, green, blue, alpha), (F, "glClearAccum(%f, %f, %f, %f);\n", red, green, blue, alpha));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ClearIndex)(GLfloat c)
+{
+   DISPATCH(ClearIndex, (c), (F, "glClearIndex(%f);\n", c));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ClearColor)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
+{
+   DISPATCH(ClearColor, (red, green, blue, alpha), (F, "glClearColor(%f, %f, %f, %f);\n", red, green, blue, alpha));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ClearStencil)(GLint s)
+{
+   DISPATCH(ClearStencil, (s), (F, "glClearStencil(%d);\n", s));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ClearDepth)(GLclampd depth)
+{
+   DISPATCH(ClearDepth, (depth), (F, "glClearDepth(%f);\n", depth));
+}
+
+KEYWORD1 void KEYWORD2 NAME(StencilMask)(GLuint mask)
+{
+   DISPATCH(StencilMask, (mask), (F, "glStencilMask(%d);\n", mask));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ColorMask)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
+{
+   DISPATCH(ColorMask, (red, green, blue, alpha), (F, "glColorMask(%d, %d, %d, %d);\n", red, green, blue, alpha));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DepthMask)(GLboolean flag)
+{
+   DISPATCH(DepthMask, (flag), (F, "glDepthMask(%d);\n", flag));
+}
+
+KEYWORD1 void KEYWORD2 NAME(IndexMask)(GLuint mask)
+{
+   DISPATCH(IndexMask, (mask), (F, "glIndexMask(%d);\n", mask));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Accum)(GLenum op, GLfloat value)
+{
+   DISPATCH(Accum, (op, value), (F, "glAccum(0x%x, %f);\n", op, value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Disable)(GLenum cap)
+{
+   DISPATCH(Disable, (cap), (F, "glDisable(0x%x);\n", cap));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Enable)(GLenum cap)
+{
+   DISPATCH(Enable, (cap), (F, "glEnable(0x%x);\n", cap));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Finish)(void)
+{
+   DISPATCH(Finish, (), (F, "glFinish();\n"));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Flush)(void)
+{
+   DISPATCH(Flush, (), (F, "glFlush();\n"));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PopAttrib)(void)
+{
+   DISPATCH(PopAttrib, (), (F, "glPopAttrib();\n"));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PushAttrib)(GLbitfield mask)
+{
+   DISPATCH(PushAttrib, (mask), (F, "glPushAttrib(%d);\n", mask));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Map1d)(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble * points)
+{
+   DISPATCH(Map1d, (target, u1, u2, stride, order, points), (F, "glMap1d(0x%x, %f, %f, %d, %d, %p);\n", target, u1, u2, stride, order, (const void *) points));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Map1f)(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat * points)
+{
+   DISPATCH(Map1f, (target, u1, u2, stride, order, points), (F, "glMap1f(0x%x, %f, %f, %d, %d, %p);\n", target, u1, u2, stride, order, (const void *) points));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Map2d)(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble * points)
+{
+   DISPATCH(Map2d, (target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points), (F, "glMap2d(0x%x, %f, %f, %d, %d, %f, %f, %d, %d, %p);\n", target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, (const void *) points));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Map2f)(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat * points)
+{
+   DISPATCH(Map2f, (target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points), (F, "glMap2f(0x%x, %f, %f, %d, %d, %f, %f, %d, %d, %p);\n", target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, (const void *) points));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MapGrid1d)(GLint un, GLdouble u1, GLdouble u2)
+{
+   DISPATCH(MapGrid1d, (un, u1, u2), (F, "glMapGrid1d(%d, %f, %f);\n", un, u1, u2));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MapGrid1f)(GLint un, GLfloat u1, GLfloat u2)
+{
+   DISPATCH(MapGrid1f, (un, u1, u2), (F, "glMapGrid1f(%d, %f, %f);\n", un, u1, u2));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MapGrid2d)(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
+{
+   DISPATCH(MapGrid2d, (un, u1, u2, vn, v1, v2), (F, "glMapGrid2d(%d, %f, %f, %d, %f, %f);\n", un, u1, u2, vn, v1, v2));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MapGrid2f)(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
+{
+   DISPATCH(MapGrid2f, (un, u1, u2, vn, v1, v2), (F, "glMapGrid2f(%d, %f, %f, %d, %f, %f);\n", un, u1, u2, vn, v1, v2));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EvalCoord1d)(GLdouble u)
+{
+   DISPATCH(EvalCoord1d, (u), (F, "glEvalCoord1d(%f);\n", u));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EvalCoord1dv)(const GLdouble * u)
+{
+   DISPATCH(EvalCoord1dv, (u), (F, "glEvalCoord1dv(%p);\n", (const void *) u));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EvalCoord1f)(GLfloat u)
+{
+   DISPATCH(EvalCoord1f, (u), (F, "glEvalCoord1f(%f);\n", u));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EvalCoord1fv)(const GLfloat * u)
+{
+   DISPATCH(EvalCoord1fv, (u), (F, "glEvalCoord1fv(%p);\n", (const void *) u));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EvalCoord2d)(GLdouble u, GLdouble v)
+{
+   DISPATCH(EvalCoord2d, (u, v), (F, "glEvalCoord2d(%f, %f);\n", u, v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EvalCoord2dv)(const GLdouble * u)
+{
+   DISPATCH(EvalCoord2dv, (u), (F, "glEvalCoord2dv(%p);\n", (const void *) u));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EvalCoord2f)(GLfloat u, GLfloat v)
+{
+   DISPATCH(EvalCoord2f, (u, v), (F, "glEvalCoord2f(%f, %f);\n", u, v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EvalCoord2fv)(const GLfloat * u)
+{
+   DISPATCH(EvalCoord2fv, (u), (F, "glEvalCoord2fv(%p);\n", (const void *) u));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EvalMesh1)(GLenum mode, GLint i1, GLint i2)
+{
+   DISPATCH(EvalMesh1, (mode, i1, i2), (F, "glEvalMesh1(0x%x, %d, %d);\n", mode, i1, i2));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EvalPoint1)(GLint i)
+{
+   DISPATCH(EvalPoint1, (i), (F, "glEvalPoint1(%d);\n", i));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EvalMesh2)(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
+{
+   DISPATCH(EvalMesh2, (mode, i1, i2, j1, j2), (F, "glEvalMesh2(0x%x, %d, %d, %d, %d);\n", mode, i1, i2, j1, j2));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EvalPoint2)(GLint i, GLint j)
+{
+   DISPATCH(EvalPoint2, (i, j), (F, "glEvalPoint2(%d, %d);\n", i, j));
+}
+
+KEYWORD1 void KEYWORD2 NAME(AlphaFunc)(GLenum func, GLclampf ref)
+{
+   DISPATCH(AlphaFunc, (func, ref), (F, "glAlphaFunc(0x%x, %f);\n", func, ref));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BlendFunc)(GLenum sfactor, GLenum dfactor)
+{
+   DISPATCH(BlendFunc, (sfactor, dfactor), (F, "glBlendFunc(0x%x, 0x%x);\n", sfactor, dfactor));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LogicOp)(GLenum opcode)
+{
+   DISPATCH(LogicOp, (opcode), (F, "glLogicOp(0x%x);\n", opcode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(StencilFunc)(GLenum func, GLint ref, GLuint mask)
+{
+   DISPATCH(StencilFunc, (func, ref, mask), (F, "glStencilFunc(0x%x, %d, %d);\n", func, ref, mask));
+}
+
+KEYWORD1 void KEYWORD2 NAME(StencilOp)(GLenum fail, GLenum zfail, GLenum zpass)
+{
+   DISPATCH(StencilOp, (fail, zfail, zpass), (F, "glStencilOp(0x%x, 0x%x, 0x%x);\n", fail, zfail, zpass));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DepthFunc)(GLenum func)
+{
+   DISPATCH(DepthFunc, (func), (F, "glDepthFunc(0x%x);\n", func));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PixelZoom)(GLfloat xfactor, GLfloat yfactor)
+{
+   DISPATCH(PixelZoom, (xfactor, yfactor), (F, "glPixelZoom(%f, %f);\n", xfactor, yfactor));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PixelTransferf)(GLenum pname, GLfloat param)
+{
+   DISPATCH(PixelTransferf, (pname, param), (F, "glPixelTransferf(0x%x, %f);\n", pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PixelTransferi)(GLenum pname, GLint param)
+{
+   DISPATCH(PixelTransferi, (pname, param), (F, "glPixelTransferi(0x%x, %d);\n", pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PixelStoref)(GLenum pname, GLfloat param)
+{
+   DISPATCH(PixelStoref, (pname, param), (F, "glPixelStoref(0x%x, %f);\n", pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PixelStorei)(GLenum pname, GLint param)
+{
+   DISPATCH(PixelStorei, (pname, param), (F, "glPixelStorei(0x%x, %d);\n", pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PixelMapfv)(GLenum map, GLsizei mapsize, const GLfloat * values)
+{
+   DISPATCH(PixelMapfv, (map, mapsize, values), (F, "glPixelMapfv(0x%x, %d, %p);\n", map, mapsize, (const void *) values));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PixelMapuiv)(GLenum map, GLsizei mapsize, const GLuint * values)
+{
+   DISPATCH(PixelMapuiv, (map, mapsize, values), (F, "glPixelMapuiv(0x%x, %d, %p);\n", map, mapsize, (const void *) values));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PixelMapusv)(GLenum map, GLsizei mapsize, const GLushort * values)
+{
+   DISPATCH(PixelMapusv, (map, mapsize, values), (F, "glPixelMapusv(0x%x, %d, %p);\n", map, mapsize, (const void *) values));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ReadBuffer)(GLenum mode)
+{
+   DISPATCH(ReadBuffer, (mode), (F, "glReadBuffer(0x%x);\n", mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CopyPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
+{
+   DISPATCH(CopyPixels, (x, y, width, height, type), (F, "glCopyPixels(%d, %d, %d, %d, 0x%x);\n", x, y, width, height, type));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ReadPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid * pixels)
+{
+   DISPATCH(ReadPixels, (x, y, width, height, format, type, pixels), (F, "glReadPixels(%d, %d, %d, %d, 0x%x, 0x%x, %p);\n", x, y, width, height, format, type, (const void *) pixels));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DrawPixels)(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels)
+{
+   DISPATCH(DrawPixels, (width, height, format, type, pixels), (F, "glDrawPixels(%d, %d, 0x%x, 0x%x, %p);\n", width, height, format, type, (const void *) pixels));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetBooleanv)(GLenum pname, GLboolean * params)
+{
+   DISPATCH(GetBooleanv, (pname, params), (F, "glGetBooleanv(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetClipPlane)(GLenum plane, GLdouble * equation)
+{
+   DISPATCH(GetClipPlane, (plane, equation), (F, "glGetClipPlane(0x%x, %p);\n", plane, (const void *) equation));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetDoublev)(GLenum pname, GLdouble * params)
+{
+   DISPATCH(GetDoublev, (pname, params), (F, "glGetDoublev(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1 GLenum KEYWORD2 NAME(GetError)(void)
+{
+   RETURN_DISPATCH(GetError, (), (F, "glGetError();\n"));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetFloatv)(GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetFloatv, (pname, params), (F, "glGetFloatv(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetIntegerv)(GLenum pname, GLint * params)
+{
+   DISPATCH(GetIntegerv, (pname, params), (F, "glGetIntegerv(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetLightfv)(GLenum light, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetLightfv, (light, pname, params), (F, "glGetLightfv(0x%x, 0x%x, %p);\n", light, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetLightiv)(GLenum light, GLenum pname, GLint * params)
+{
+   DISPATCH(GetLightiv, (light, pname, params), (F, "glGetLightiv(0x%x, 0x%x, %p);\n", light, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetMapdv)(GLenum target, GLenum query, GLdouble * v)
+{
+   DISPATCH(GetMapdv, (target, query, v), (F, "glGetMapdv(0x%x, 0x%x, %p);\n", target, query, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetMapfv)(GLenum target, GLenum query, GLfloat * v)
+{
+   DISPATCH(GetMapfv, (target, query, v), (F, "glGetMapfv(0x%x, 0x%x, %p);\n", target, query, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetMapiv)(GLenum target, GLenum query, GLint * v)
+{
+   DISPATCH(GetMapiv, (target, query, v), (F, "glGetMapiv(0x%x, 0x%x, %p);\n", target, query, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetMaterialfv)(GLenum face, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetMaterialfv, (face, pname, params), (F, "glGetMaterialfv(0x%x, 0x%x, %p);\n", face, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetMaterialiv)(GLenum face, GLenum pname, GLint * params)
+{
+   DISPATCH(GetMaterialiv, (face, pname, params), (F, "glGetMaterialiv(0x%x, 0x%x, %p);\n", face, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetPixelMapfv)(GLenum map, GLfloat * values)
+{
+   DISPATCH(GetPixelMapfv, (map, values), (F, "glGetPixelMapfv(0x%x, %p);\n", map, (const void *) values));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetPixelMapuiv)(GLenum map, GLuint * values)
+{
+   DISPATCH(GetPixelMapuiv, (map, values), (F, "glGetPixelMapuiv(0x%x, %p);\n", map, (const void *) values));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetPixelMapusv)(GLenum map, GLushort * values)
+{
+   DISPATCH(GetPixelMapusv, (map, values), (F, "glGetPixelMapusv(0x%x, %p);\n", map, (const void *) values));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetPolygonStipple)(GLubyte * mask)
+{
+   DISPATCH(GetPolygonStipple, (mask), (F, "glGetPolygonStipple(%p);\n", (const void *) mask));
+}
+
+KEYWORD1 const GLubyte * KEYWORD2 NAME(GetString)(GLenum name)
+{
+   RETURN_DISPATCH(GetString, (name), (F, "glGetString(0x%x);\n", name));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetTexEnvfv)(GLenum target, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetTexEnvfv, (target, pname, params), (F, "glGetTexEnvfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetTexEnviv)(GLenum target, GLenum pname, GLint * params)
+{
+   DISPATCH(GetTexEnviv, (target, pname, params), (F, "glGetTexEnviv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetTexGendv)(GLenum coord, GLenum pname, GLdouble * params)
+{
+   DISPATCH(GetTexGendv, (coord, pname, params), (F, "glGetTexGendv(0x%x, 0x%x, %p);\n", coord, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetTexGenfv)(GLenum coord, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetTexGenfv, (coord, pname, params), (F, "glGetTexGenfv(0x%x, 0x%x, %p);\n", coord, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetTexGeniv)(GLenum coord, GLenum pname, GLint * params)
+{
+   DISPATCH(GetTexGeniv, (coord, pname, params), (F, "glGetTexGeniv(0x%x, 0x%x, %p);\n", coord, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetTexImage)(GLenum target, GLint level, GLenum format, GLenum type, GLvoid * pixels)
+{
+   DISPATCH(GetTexImage, (target, level, format, type, pixels), (F, "glGetTexImage(0x%x, %d, 0x%x, 0x%x, %p);\n", target, level, format, type, (const void *) pixels));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetTexParameterfv)(GLenum target, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetTexParameterfv, (target, pname, params), (F, "glGetTexParameterfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetTexParameteriv)(GLenum target, GLenum pname, GLint * params)
+{
+   DISPATCH(GetTexParameteriv, (target, pname, params), (F, "glGetTexParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetTexLevelParameterfv)(GLenum target, GLint level, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetTexLevelParameterfv, (target, level, pname, params), (F, "glGetTexLevelParameterfv(0x%x, %d, 0x%x, %p);\n", target, level, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetTexLevelParameteriv)(GLenum target, GLint level, GLenum pname, GLint * params)
+{
+   DISPATCH(GetTexLevelParameteriv, (target, level, pname, params), (F, "glGetTexLevelParameteriv(0x%x, %d, 0x%x, %p);\n", target, level, pname, (const void *) params));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsEnabled)(GLenum cap)
+{
+   RETURN_DISPATCH(IsEnabled, (cap), (F, "glIsEnabled(0x%x);\n", cap));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsList)(GLuint list)
+{
+   RETURN_DISPATCH(IsList, (list), (F, "glIsList(%d);\n", list));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DepthRange)(GLclampd zNear, GLclampd zFar)
+{
+   DISPATCH(DepthRange, (zNear, zFar), (F, "glDepthRange(%f, %f);\n", zNear, zFar));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Frustum)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+   DISPATCH(Frustum, (left, right, bottom, top, zNear, zFar), (F, "glFrustum(%f, %f, %f, %f, %f, %f);\n", left, right, bottom, top, zNear, zFar));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LoadIdentity)(void)
+{
+   DISPATCH(LoadIdentity, (), (F, "glLoadIdentity();\n"));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LoadMatrixf)(const GLfloat * m)
+{
+   DISPATCH(LoadMatrixf, (m), (F, "glLoadMatrixf(%p);\n", (const void *) m));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LoadMatrixd)(const GLdouble * m)
+{
+   DISPATCH(LoadMatrixd, (m), (F, "glLoadMatrixd(%p);\n", (const void *) m));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MatrixMode)(GLenum mode)
+{
+   DISPATCH(MatrixMode, (mode), (F, "glMatrixMode(0x%x);\n", mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultMatrixf)(const GLfloat * m)
+{
+   DISPATCH(MultMatrixf, (m), (F, "glMultMatrixf(%p);\n", (const void *) m));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultMatrixd)(const GLdouble * m)
+{
+   DISPATCH(MultMatrixd, (m), (F, "glMultMatrixd(%p);\n", (const void *) m));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Ortho)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
+{
+   DISPATCH(Ortho, (left, right, bottom, top, zNear, zFar), (F, "glOrtho(%f, %f, %f, %f, %f, %f);\n", left, right, bottom, top, zNear, zFar));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PopMatrix)(void)
+{
+   DISPATCH(PopMatrix, (), (F, "glPopMatrix();\n"));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PushMatrix)(void)
+{
+   DISPATCH(PushMatrix, (), (F, "glPushMatrix();\n"));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Rotated)(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
+{
+   DISPATCH(Rotated, (angle, x, y, z), (F, "glRotated(%f, %f, %f, %f);\n", angle, x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Rotatef)(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
+{
+   DISPATCH(Rotatef, (angle, x, y, z), (F, "glRotatef(%f, %f, %f, %f);\n", angle, x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Scaled)(GLdouble x, GLdouble y, GLdouble z)
+{
+   DISPATCH(Scaled, (x, y, z), (F, "glScaled(%f, %f, %f);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Scalef)(GLfloat x, GLfloat y, GLfloat z)
+{
+   DISPATCH(Scalef, (x, y, z), (F, "glScalef(%f, %f, %f);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Translated)(GLdouble x, GLdouble y, GLdouble z)
+{
+   DISPATCH(Translated, (x, y, z), (F, "glTranslated(%f, %f, %f);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Translatef)(GLfloat x, GLfloat y, GLfloat z)
+{
+   DISPATCH(Translatef, (x, y, z), (F, "glTranslatef(%f, %f, %f);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Viewport)(GLint x, GLint y, GLsizei width, GLsizei height)
+{
+   DISPATCH(Viewport, (x, y, width, height), (F, "glViewport(%d, %d, %d, %d);\n", x, y, width, height));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ArrayElement)(GLint i)
+{
+   DISPATCH(ArrayElement, (i), (F, "glArrayElement(%d);\n", i));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ArrayElementEXT)(GLint i)
+{
+   DISPATCH(ArrayElement, (i), (F, "glArrayElementEXT(%d);\n", i));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindTexture)(GLenum target, GLuint texture)
+{
+   DISPATCH(BindTexture, (target, texture), (F, "glBindTexture(0x%x, %d);\n", target, texture));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindTextureEXT)(GLenum target, GLuint texture)
+{
+   DISPATCH(BindTexture, (target, texture), (F, "glBindTextureEXT(0x%x, %d);\n", target, texture));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ColorPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer)
+{
+   DISPATCH(ColorPointer, (size, type, stride, pointer), (F, "glColorPointer(%d, 0x%x, %d, %p);\n", size, type, stride, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DisableClientState)(GLenum array)
+{
+   DISPATCH(DisableClientState, (array), (F, "glDisableClientState(0x%x);\n", array));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DrawArrays)(GLenum mode, GLint first, GLsizei count)
+{
+   DISPATCH(DrawArrays, (mode, first, count), (F, "glDrawArrays(0x%x, %d, %d);\n", mode, first, count));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DrawArraysEXT)(GLenum mode, GLint first, GLsizei count)
+{
+   DISPATCH(DrawArrays, (mode, first, count), (F, "glDrawArraysEXT(0x%x, %d, %d);\n", mode, first, count));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DrawElements)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices)
+{
+   DISPATCH(DrawElements, (mode, count, type, indices), (F, "glDrawElements(0x%x, %d, 0x%x, %p);\n", mode, count, type, (const void *) indices));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EdgeFlagPointer)(GLsizei stride, const GLvoid * pointer)
+{
+   DISPATCH(EdgeFlagPointer, (stride, pointer), (F, "glEdgeFlagPointer(%d, %p);\n", stride, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EnableClientState)(GLenum array)
+{
+   DISPATCH(EnableClientState, (array), (F, "glEnableClientState(0x%x);\n", array));
+}
+
+KEYWORD1 void KEYWORD2 NAME(IndexPointer)(GLenum type, GLsizei stride, const GLvoid * pointer)
+{
+   DISPATCH(IndexPointer, (type, stride, pointer), (F, "glIndexPointer(0x%x, %d, %p);\n", type, stride, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Indexub)(GLubyte c)
+{
+   DISPATCH(Indexub, (c), (F, "glIndexub(%d);\n", c));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Indexubv)(const GLubyte * c)
+{
+   DISPATCH(Indexubv, (c), (F, "glIndexubv(%p);\n", (const void *) c));
+}
+
+KEYWORD1 void KEYWORD2 NAME(InterleavedArrays)(GLenum format, GLsizei stride, const GLvoid * pointer)
+{
+   DISPATCH(InterleavedArrays, (format, stride, pointer), (F, "glInterleavedArrays(0x%x, %d, %p);\n", format, stride, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(NormalPointer)(GLenum type, GLsizei stride, const GLvoid * pointer)
+{
+   DISPATCH(NormalPointer, (type, stride, pointer), (F, "glNormalPointer(0x%x, %d, %p);\n", type, stride, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PolygonOffset)(GLfloat factor, GLfloat units)
+{
+   DISPATCH(PolygonOffset, (factor, units), (F, "glPolygonOffset(%f, %f);\n", factor, units));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoordPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer)
+{
+   DISPATCH(TexCoordPointer, (size, type, stride, pointer), (F, "glTexCoordPointer(%d, 0x%x, %d, %p);\n", size, type, stride, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer)
+{
+   DISPATCH(VertexPointer, (size, type, stride, pointer), (F, "glVertexPointer(%d, 0x%x, %d, %p);\n", size, type, stride, (const void *) pointer));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(AreTexturesResident)(GLsizei n, const GLuint * textures, GLboolean * residences)
+{
+   RETURN_DISPATCH(AreTexturesResident, (n, textures, residences), (F, "glAreTexturesResident(%d, %p, %p);\n", n, (const void *) textures, (const void *) residences));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CopyTexImage1D)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+   DISPATCH(CopyTexImage1D, (target, level, internalformat, x, y, width, border), (F, "glCopyTexImage1D(0x%x, %d, 0x%x, %d, %d, %d, %d);\n", target, level, internalformat, x, y, width, border));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CopyTexImage1DEXT)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
+{
+   DISPATCH(CopyTexImage1D, (target, level, internalformat, x, y, width, border), (F, "glCopyTexImage1DEXT(0x%x, %d, 0x%x, %d, %d, %d, %d);\n", target, level, internalformat, x, y, width, border));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CopyTexImage2D)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+   DISPATCH(CopyTexImage2D, (target, level, internalformat, x, y, width, height, border), (F, "glCopyTexImage2D(0x%x, %d, 0x%x, %d, %d, %d, %d, %d);\n", target, level, internalformat, x, y, width, height, border));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CopyTexImage2DEXT)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
+{
+   DISPATCH(CopyTexImage2D, (target, level, internalformat, x, y, width, height, border), (F, "glCopyTexImage2DEXT(0x%x, %d, 0x%x, %d, %d, %d, %d, %d);\n", target, level, internalformat, x, y, width, height, border));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CopyTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+   DISPATCH(CopyTexSubImage1D, (target, level, xoffset, x, y, width), (F, "glCopyTexSubImage1D(0x%x, %d, %d, %d, %d, %d);\n", target, level, xoffset, x, y, width));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CopyTexSubImage1DEXT)(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
+{
+   DISPATCH(CopyTexSubImage1D, (target, level, xoffset, x, y, width), (F, "glCopyTexSubImage1DEXT(0x%x, %d, %d, %d, %d, %d);\n", target, level, xoffset, x, y, width));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CopyTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+   DISPATCH(CopyTexSubImage2D, (target, level, xoffset, yoffset, x, y, width, height), (F, "glCopyTexSubImage2D(0x%x, %d, %d, %d, %d, %d, %d, %d);\n", target, level, xoffset, yoffset, x, y, width, height));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CopyTexSubImage2DEXT)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+   DISPATCH(CopyTexSubImage2D, (target, level, xoffset, yoffset, x, y, width, height), (F, "glCopyTexSubImage2DEXT(0x%x, %d, %d, %d, %d, %d, %d, %d);\n", target, level, xoffset, yoffset, x, y, width, height));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DeleteTextures)(GLsizei n, const GLuint * textures)
+{
+   DISPATCH(DeleteTextures, (n, textures), (F, "glDeleteTextures(%d, %p);\n", n, (const void *) textures));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GenTextures)(GLsizei n, GLuint * textures)
+{
+   DISPATCH(GenTextures, (n, textures), (F, "glGenTextures(%d, %p);\n", n, (const void *) textures));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetPointerv)(GLenum pname, GLvoid ** params)
+{
+   DISPATCH(GetPointerv, (pname, params), (F, "glGetPointerv(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetPointervEXT)(GLenum pname, GLvoid ** params)
+{
+   DISPATCH(GetPointerv, (pname, params), (F, "glGetPointervEXT(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsTexture)(GLuint texture)
+{
+   RETURN_DISPATCH(IsTexture, (texture), (F, "glIsTexture(%d);\n", texture));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PrioritizeTextures)(GLsizei n, const GLuint * textures, const GLclampf * priorities)
+{
+   DISPATCH(PrioritizeTextures, (n, textures, priorities), (F, "glPrioritizeTextures(%d, %p, %p);\n", n, (const void *) textures, (const void *) priorities));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PrioritizeTexturesEXT)(GLsizei n, const GLuint * textures, const GLclampf * priorities)
+{
+   DISPATCH(PrioritizeTextures, (n, textures, priorities), (F, "glPrioritizeTexturesEXT(%d, %p, %p);\n", n, (const void *) textures, (const void *) priorities));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid * pixels)
+{
+   DISPATCH(TexSubImage1D, (target, level, xoffset, width, format, type, pixels), (F, "glTexSubImage1D(0x%x, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, xoffset, width, format, type, (const void *) pixels));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexSubImage1DEXT)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid * pixels)
+{
+   DISPATCH(TexSubImage1D, (target, level, xoffset, width, format, type, pixels), (F, "glTexSubImage1DEXT(0x%x, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, xoffset, width, format, type, (const void *) pixels));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels)
+{
+   DISPATCH(TexSubImage2D, (target, level, xoffset, yoffset, width, height, format, type, pixels), (F, "glTexSubImage2D(0x%x, %d, %d, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, xoffset, yoffset, width, height, format, type, (const void *) pixels));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexSubImage2DEXT)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels)
+{
+   DISPATCH(TexSubImage2D, (target, level, xoffset, yoffset, width, height, format, type, pixels), (F, "glTexSubImage2DEXT(0x%x, %d, %d, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, xoffset, yoffset, width, height, format, type, (const void *) pixels));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PopClientAttrib)(void)
+{
+   DISPATCH(PopClientAttrib, (), (F, "glPopClientAttrib();\n"));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PushClientAttrib)(GLbitfield mask)
+{
+   DISPATCH(PushClientAttrib, (mask), (F, "glPushClientAttrib(%d);\n", mask));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BlendColor)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
+{
+   DISPATCH(BlendColor, (red, green, blue, alpha), (F, "glBlendColor(%f, %f, %f, %f);\n", red, green, blue, alpha));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BlendColorEXT)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
+{
+   DISPATCH(BlendColor, (red, green, blue, alpha), (F, "glBlendColorEXT(%f, %f, %f, %f);\n", red, green, blue, alpha));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BlendEquation)(GLenum mode)
+{
+   DISPATCH(BlendEquation, (mode), (F, "glBlendEquation(0x%x);\n", mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BlendEquationEXT)(GLenum mode)
+{
+   DISPATCH(BlendEquation, (mode), (F, "glBlendEquationEXT(0x%x);\n", mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DrawRangeElements)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid * indices)
+{
+   DISPATCH(DrawRangeElements, (mode, start, end, count, type, indices), (F, "glDrawRangeElements(0x%x, %d, %d, %d, 0x%x, %p);\n", mode, start, end, count, type, (const void *) indices));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DrawRangeElementsEXT)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid * indices)
+{
+   DISPATCH(DrawRangeElements, (mode, start, end, count, type, indices), (F, "glDrawRangeElementsEXT(0x%x, %d, %d, %d, 0x%x, %p);\n", mode, start, end, count, type, (const void *) indices));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ColorTable)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid * table)
+{
+   DISPATCH(ColorTable, (target, internalformat, width, format, type, table), (F, "glColorTable(0x%x, 0x%x, %d, 0x%x, 0x%x, %p);\n", target, internalformat, width, format, type, (const void *) table));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ColorTableEXT)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid * table)
+{
+   DISPATCH(ColorTable, (target, internalformat, width, format, type, table), (F, "glColorTableEXT(0x%x, 0x%x, %d, 0x%x, 0x%x, %p);\n", target, internalformat, width, format, type, (const void *) table));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_339)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid * table);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_339)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid * table)
+{
+   DISPATCH(ColorTable, (target, internalformat, width, format, type, table), (F, "glColorTableSGI(0x%x, 0x%x, %d, 0x%x, 0x%x, %p);\n", target, internalformat, width, format, type, (const void *) table));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ColorTableParameterfv)(GLenum target, GLenum pname, const GLfloat * params)
+{
+   DISPATCH(ColorTableParameterfv, (target, pname, params), (F, "glColorTableParameterfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_340)(GLenum target, GLenum pname, const GLfloat * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_340)(GLenum target, GLenum pname, const GLfloat * params)
+{
+   DISPATCH(ColorTableParameterfv, (target, pname, params), (F, "glColorTableParameterfvSGI(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ColorTableParameteriv)(GLenum target, GLenum pname, const GLint * params)
+{
+   DISPATCH(ColorTableParameteriv, (target, pname, params), (F, "glColorTableParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_341)(GLenum target, GLenum pname, const GLint * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_341)(GLenum target, GLenum pname, const GLint * params)
+{
+   DISPATCH(ColorTableParameteriv, (target, pname, params), (F, "glColorTableParameterivSGI(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CopyColorTable)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+   DISPATCH(CopyColorTable, (target, internalformat, x, y, width), (F, "glCopyColorTable(0x%x, 0x%x, %d, %d, %d);\n", target, internalformat, x, y, width));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_342)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_342)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+   DISPATCH(CopyColorTable, (target, internalformat, x, y, width), (F, "glCopyColorTableSGI(0x%x, 0x%x, %d, %d, %d);\n", target, internalformat, x, y, width));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetColorTable)(GLenum target, GLenum format, GLenum type, GLvoid * table)
+{
+   DISPATCH(GetColorTable, (target, format, type, table), (F, "glGetColorTable(0x%x, 0x%x, 0x%x, %p);\n", target, format, type, (const void *) table));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetColorTableParameterfv)(GLenum target, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetColorTableParameterfv, (target, pname, params), (F, "glGetColorTableParameterfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetColorTableParameteriv)(GLenum target, GLenum pname, GLint * params)
+{
+   DISPATCH(GetColorTableParameteriv, (target, pname, params), (F, "glGetColorTableParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ColorSubTable)(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid * data)
+{
+   DISPATCH(ColorSubTable, (target, start, count, format, type, data), (F, "glColorSubTable(0x%x, %d, %d, 0x%x, 0x%x, %p);\n", target, start, count, format, type, (const void *) data));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_346)(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid * data);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_346)(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid * data)
+{
+   DISPATCH(ColorSubTable, (target, start, count, format, type, data), (F, "glColorSubTableEXT(0x%x, %d, %d, 0x%x, 0x%x, %p);\n", target, start, count, format, type, (const void *) data));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CopyColorSubTable)(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
+{
+   DISPATCH(CopyColorSubTable, (target, start, x, y, width), (F, "glCopyColorSubTable(0x%x, %d, %d, %d, %d);\n", target, start, x, y, width));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_347)(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_347)(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
+{
+   DISPATCH(CopyColorSubTable, (target, start, x, y, width), (F, "glCopyColorSubTableEXT(0x%x, %d, %d, %d, %d);\n", target, start, x, y, width));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ConvolutionFilter1D)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid * image)
+{
+   DISPATCH(ConvolutionFilter1D, (target, internalformat, width, format, type, image), (F, "glConvolutionFilter1D(0x%x, 0x%x, %d, 0x%x, 0x%x, %p);\n", target, internalformat, width, format, type, (const void *) image));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_348)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid * image);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_348)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid * image)
+{
+   DISPATCH(ConvolutionFilter1D, (target, internalformat, width, format, type, image), (F, "glConvolutionFilter1DEXT(0x%x, 0x%x, %d, 0x%x, 0x%x, %p);\n", target, internalformat, width, format, type, (const void *) image));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ConvolutionFilter2D)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * image)
+{
+   DISPATCH(ConvolutionFilter2D, (target, internalformat, width, height, format, type, image), (F, "glConvolutionFilter2D(0x%x, 0x%x, %d, %d, 0x%x, 0x%x, %p);\n", target, internalformat, width, height, format, type, (const void *) image));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_349)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * image);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_349)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * image)
+{
+   DISPATCH(ConvolutionFilter2D, (target, internalformat, width, height, format, type, image), (F, "glConvolutionFilter2DEXT(0x%x, 0x%x, %d, %d, 0x%x, 0x%x, %p);\n", target, internalformat, width, height, format, type, (const void *) image));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ConvolutionParameterf)(GLenum target, GLenum pname, GLfloat params)
+{
+   DISPATCH(ConvolutionParameterf, (target, pname, params), (F, "glConvolutionParameterf(0x%x, 0x%x, %f);\n", target, pname, params));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_350)(GLenum target, GLenum pname, GLfloat params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_350)(GLenum target, GLenum pname, GLfloat params)
+{
+   DISPATCH(ConvolutionParameterf, (target, pname, params), (F, "glConvolutionParameterfEXT(0x%x, 0x%x, %f);\n", target, pname, params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ConvolutionParameterfv)(GLenum target, GLenum pname, const GLfloat * params)
+{
+   DISPATCH(ConvolutionParameterfv, (target, pname, params), (F, "glConvolutionParameterfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_351)(GLenum target, GLenum pname, const GLfloat * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_351)(GLenum target, GLenum pname, const GLfloat * params)
+{
+   DISPATCH(ConvolutionParameterfv, (target, pname, params), (F, "glConvolutionParameterfvEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ConvolutionParameteri)(GLenum target, GLenum pname, GLint params)
+{
+   DISPATCH(ConvolutionParameteri, (target, pname, params), (F, "glConvolutionParameteri(0x%x, 0x%x, %d);\n", target, pname, params));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_352)(GLenum target, GLenum pname, GLint params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_352)(GLenum target, GLenum pname, GLint params)
+{
+   DISPATCH(ConvolutionParameteri, (target, pname, params), (F, "glConvolutionParameteriEXT(0x%x, 0x%x, %d);\n", target, pname, params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ConvolutionParameteriv)(GLenum target, GLenum pname, const GLint * params)
+{
+   DISPATCH(ConvolutionParameteriv, (target, pname, params), (F, "glConvolutionParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_353)(GLenum target, GLenum pname, const GLint * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_353)(GLenum target, GLenum pname, const GLint * params)
+{
+   DISPATCH(ConvolutionParameteriv, (target, pname, params), (F, "glConvolutionParameterivEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CopyConvolutionFilter1D)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+   DISPATCH(CopyConvolutionFilter1D, (target, internalformat, x, y, width), (F, "glCopyConvolutionFilter1D(0x%x, 0x%x, %d, %d, %d);\n", target, internalformat, x, y, width));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_354)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_354)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
+{
+   DISPATCH(CopyConvolutionFilter1D, (target, internalformat, x, y, width), (F, "glCopyConvolutionFilter1DEXT(0x%x, 0x%x, %d, %d, %d);\n", target, internalformat, x, y, width));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CopyConvolutionFilter2D)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+   DISPATCH(CopyConvolutionFilter2D, (target, internalformat, x, y, width, height), (F, "glCopyConvolutionFilter2D(0x%x, 0x%x, %d, %d, %d, %d);\n", target, internalformat, x, y, width, height));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_355)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_355)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+   DISPATCH(CopyConvolutionFilter2D, (target, internalformat, x, y, width, height), (F, "glCopyConvolutionFilter2DEXT(0x%x, 0x%x, %d, %d, %d, %d);\n", target, internalformat, x, y, width, height));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetConvolutionFilter)(GLenum target, GLenum format, GLenum type, GLvoid * image)
+{
+   DISPATCH(GetConvolutionFilter, (target, format, type, image), (F, "glGetConvolutionFilter(0x%x, 0x%x, 0x%x, %p);\n", target, format, type, (const void *) image));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetConvolutionParameterfv)(GLenum target, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetConvolutionParameterfv, (target, pname, params), (F, "glGetConvolutionParameterfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetConvolutionParameteriv)(GLenum target, GLenum pname, GLint * params)
+{
+   DISPATCH(GetConvolutionParameteriv, (target, pname, params), (F, "glGetConvolutionParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetSeparableFilter)(GLenum target, GLenum format, GLenum type, GLvoid * row, GLvoid * column, GLvoid * span)
+{
+   DISPATCH(GetSeparableFilter, (target, format, type, row, column, span), (F, "glGetSeparableFilter(0x%x, 0x%x, 0x%x, %p, %p, %p);\n", target, format, type, (const void *) row, (const void *) column, (const void *) span));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SeparableFilter2D)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * row, const GLvoid * column)
+{
+   DISPATCH(SeparableFilter2D, (target, internalformat, width, height, format, type, row, column), (F, "glSeparableFilter2D(0x%x, 0x%x, %d, %d, 0x%x, 0x%x, %p, %p);\n", target, internalformat, width, height, format, type, (const void *) row, (const void *) column));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_360)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * row, const GLvoid * column);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_360)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * row, const GLvoid * column)
+{
+   DISPATCH(SeparableFilter2D, (target, internalformat, width, height, format, type, row, column), (F, "glSeparableFilter2DEXT(0x%x, 0x%x, %d, %d, 0x%x, 0x%x, %p, %p);\n", target, internalformat, width, height, format, type, (const void *) row, (const void *) column));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetHistogram)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values)
+{
+   DISPATCH(GetHistogram, (target, reset, format, type, values), (F, "glGetHistogram(0x%x, %d, 0x%x, 0x%x, %p);\n", target, reset, format, type, (const void *) values));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetHistogramParameterfv)(GLenum target, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetHistogramParameterfv, (target, pname, params), (F, "glGetHistogramParameterfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetHistogramParameteriv)(GLenum target, GLenum pname, GLint * params)
+{
+   DISPATCH(GetHistogramParameteriv, (target, pname, params), (F, "glGetHistogramParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetMinmax)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values)
+{
+   DISPATCH(GetMinmax, (target, reset, format, type, values), (F, "glGetMinmax(0x%x, %d, 0x%x, 0x%x, %p);\n", target, reset, format, type, (const void *) values));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetMinmaxParameterfv)(GLenum target, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetMinmaxParameterfv, (target, pname, params), (F, "glGetMinmaxParameterfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetMinmaxParameteriv)(GLenum target, GLenum pname, GLint * params)
+{
+   DISPATCH(GetMinmaxParameteriv, (target, pname, params), (F, "glGetMinmaxParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Histogram)(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
+{
+   DISPATCH(Histogram, (target, width, internalformat, sink), (F, "glHistogram(0x%x, %d, 0x%x, %d);\n", target, width, internalformat, sink));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_367)(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_367)(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
+{
+   DISPATCH(Histogram, (target, width, internalformat, sink), (F, "glHistogramEXT(0x%x, %d, 0x%x, %d);\n", target, width, internalformat, sink));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Minmax)(GLenum target, GLenum internalformat, GLboolean sink)
+{
+   DISPATCH(Minmax, (target, internalformat, sink), (F, "glMinmax(0x%x, 0x%x, %d);\n", target, internalformat, sink));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_368)(GLenum target, GLenum internalformat, GLboolean sink);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_368)(GLenum target, GLenum internalformat, GLboolean sink)
+{
+   DISPATCH(Minmax, (target, internalformat, sink), (F, "glMinmaxEXT(0x%x, 0x%x, %d);\n", target, internalformat, sink));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ResetHistogram)(GLenum target)
+{
+   DISPATCH(ResetHistogram, (target), (F, "glResetHistogram(0x%x);\n", target));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_369)(GLenum target);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_369)(GLenum target)
+{
+   DISPATCH(ResetHistogram, (target), (F, "glResetHistogramEXT(0x%x);\n", target));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ResetMinmax)(GLenum target)
+{
+   DISPATCH(ResetMinmax, (target), (F, "glResetMinmax(0x%x);\n", target));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_370)(GLenum target);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_370)(GLenum target)
+{
+   DISPATCH(ResetMinmax, (target), (F, "glResetMinmaxEXT(0x%x);\n", target));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexImage3D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid * pixels)
+{
+   DISPATCH(TexImage3D, (target, level, internalformat, width, height, depth, border, format, type, pixels), (F, "glTexImage3D(0x%x, %d, %d, %d, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, internalformat, width, height, depth, border, format, type, (const void *) pixels));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexImage3DEXT)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid * pixels)
+{
+   DISPATCH(TexImage3D, (target, level, internalformat, width, height, depth, border, format, type, pixels), (F, "glTexImage3DEXT(0x%x, %d, %d, %d, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, internalformat, width, height, depth, border, format, type, (const void *) pixels));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid * pixels)
+{
+   DISPATCH(TexSubImage3D, (target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels), (F, "glTexSubImage3D(0x%x, %d, %d, %d, %d, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, (const void *) pixels));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexSubImage3DEXT)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid * pixels)
+{
+   DISPATCH(TexSubImage3D, (target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels), (F, "glTexSubImage3DEXT(0x%x, %d, %d, %d, %d, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, (const void *) pixels));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CopyTexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+   DISPATCH(CopyTexSubImage3D, (target, level, xoffset, yoffset, zoffset, x, y, width, height), (F, "glCopyTexSubImage3D(0x%x, %d, %d, %d, %d, %d, %d, %d, %d);\n", target, level, xoffset, yoffset, zoffset, x, y, width, height));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CopyTexSubImage3DEXT)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
+{
+   DISPATCH(CopyTexSubImage3D, (target, level, xoffset, yoffset, zoffset, x, y, width, height), (F, "glCopyTexSubImage3DEXT(0x%x, %d, %d, %d, %d, %d, %d, %d, %d);\n", target, level, xoffset, yoffset, zoffset, x, y, width, height));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ActiveTexture)(GLenum texture)
+{
+   DISPATCH(ActiveTextureARB, (texture), (F, "glActiveTexture(0x%x);\n", texture));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ActiveTextureARB)(GLenum texture)
+{
+   DISPATCH(ActiveTextureARB, (texture), (F, "glActiveTextureARB(0x%x);\n", texture));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ClientActiveTexture)(GLenum texture)
+{
+   DISPATCH(ClientActiveTextureARB, (texture), (F, "glClientActiveTexture(0x%x);\n", texture));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ClientActiveTextureARB)(GLenum texture)
+{
+   DISPATCH(ClientActiveTextureARB, (texture), (F, "glClientActiveTextureARB(0x%x);\n", texture));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1d)(GLenum target, GLdouble s)
+{
+   DISPATCH(MultiTexCoord1dARB, (target, s), (F, "glMultiTexCoord1d(0x%x, %f);\n", target, s));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1dARB)(GLenum target, GLdouble s)
+{
+   DISPATCH(MultiTexCoord1dARB, (target, s), (F, "glMultiTexCoord1dARB(0x%x, %f);\n", target, s));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1dv)(GLenum target, const GLdouble * v)
+{
+   DISPATCH(MultiTexCoord1dvARB, (target, v), (F, "glMultiTexCoord1dv(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1dvARB)(GLenum target, const GLdouble * v)
+{
+   DISPATCH(MultiTexCoord1dvARB, (target, v), (F, "glMultiTexCoord1dvARB(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1f)(GLenum target, GLfloat s)
+{
+   DISPATCH(MultiTexCoord1fARB, (target, s), (F, "glMultiTexCoord1f(0x%x, %f);\n", target, s));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1fARB)(GLenum target, GLfloat s)
+{
+   DISPATCH(MultiTexCoord1fARB, (target, s), (F, "glMultiTexCoord1fARB(0x%x, %f);\n", target, s));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1fv)(GLenum target, const GLfloat * v)
+{
+   DISPATCH(MultiTexCoord1fvARB, (target, v), (F, "glMultiTexCoord1fv(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1fvARB)(GLenum target, const GLfloat * v)
+{
+   DISPATCH(MultiTexCoord1fvARB, (target, v), (F, "glMultiTexCoord1fvARB(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1i)(GLenum target, GLint s)
+{
+   DISPATCH(MultiTexCoord1iARB, (target, s), (F, "glMultiTexCoord1i(0x%x, %d);\n", target, s));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1iARB)(GLenum target, GLint s)
+{
+   DISPATCH(MultiTexCoord1iARB, (target, s), (F, "glMultiTexCoord1iARB(0x%x, %d);\n", target, s));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1iv)(GLenum target, const GLint * v)
+{
+   DISPATCH(MultiTexCoord1ivARB, (target, v), (F, "glMultiTexCoord1iv(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1ivARB)(GLenum target, const GLint * v)
+{
+   DISPATCH(MultiTexCoord1ivARB, (target, v), (F, "glMultiTexCoord1ivARB(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1s)(GLenum target, GLshort s)
+{
+   DISPATCH(MultiTexCoord1sARB, (target, s), (F, "glMultiTexCoord1s(0x%x, %d);\n", target, s));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1sARB)(GLenum target, GLshort s)
+{
+   DISPATCH(MultiTexCoord1sARB, (target, s), (F, "glMultiTexCoord1sARB(0x%x, %d);\n", target, s));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1sv)(GLenum target, const GLshort * v)
+{
+   DISPATCH(MultiTexCoord1svARB, (target, v), (F, "glMultiTexCoord1sv(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1svARB)(GLenum target, const GLshort * v)
+{
+   DISPATCH(MultiTexCoord1svARB, (target, v), (F, "glMultiTexCoord1svARB(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2d)(GLenum target, GLdouble s, GLdouble t)
+{
+   DISPATCH(MultiTexCoord2dARB, (target, s, t), (F, "glMultiTexCoord2d(0x%x, %f, %f);\n", target, s, t));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2dARB)(GLenum target, GLdouble s, GLdouble t)
+{
+   DISPATCH(MultiTexCoord2dARB, (target, s, t), (F, "glMultiTexCoord2dARB(0x%x, %f, %f);\n", target, s, t));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2dv)(GLenum target, const GLdouble * v)
+{
+   DISPATCH(MultiTexCoord2dvARB, (target, v), (F, "glMultiTexCoord2dv(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2dvARB)(GLenum target, const GLdouble * v)
+{
+   DISPATCH(MultiTexCoord2dvARB, (target, v), (F, "glMultiTexCoord2dvARB(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2f)(GLenum target, GLfloat s, GLfloat t)
+{
+   DISPATCH(MultiTexCoord2fARB, (target, s, t), (F, "glMultiTexCoord2f(0x%x, %f, %f);\n", target, s, t));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2fARB)(GLenum target, GLfloat s, GLfloat t)
+{
+   DISPATCH(MultiTexCoord2fARB, (target, s, t), (F, "glMultiTexCoord2fARB(0x%x, %f, %f);\n", target, s, t));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2fv)(GLenum target, const GLfloat * v)
+{
+   DISPATCH(MultiTexCoord2fvARB, (target, v), (F, "glMultiTexCoord2fv(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2fvARB)(GLenum target, const GLfloat * v)
+{
+   DISPATCH(MultiTexCoord2fvARB, (target, v), (F, "glMultiTexCoord2fvARB(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2i)(GLenum target, GLint s, GLint t)
+{
+   DISPATCH(MultiTexCoord2iARB, (target, s, t), (F, "glMultiTexCoord2i(0x%x, %d, %d);\n", target, s, t));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2iARB)(GLenum target, GLint s, GLint t)
+{
+   DISPATCH(MultiTexCoord2iARB, (target, s, t), (F, "glMultiTexCoord2iARB(0x%x, %d, %d);\n", target, s, t));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2iv)(GLenum target, const GLint * v)
+{
+   DISPATCH(MultiTexCoord2ivARB, (target, v), (F, "glMultiTexCoord2iv(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2ivARB)(GLenum target, const GLint * v)
+{
+   DISPATCH(MultiTexCoord2ivARB, (target, v), (F, "glMultiTexCoord2ivARB(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2s)(GLenum target, GLshort s, GLshort t)
+{
+   DISPATCH(MultiTexCoord2sARB, (target, s, t), (F, "glMultiTexCoord2s(0x%x, %d, %d);\n", target, s, t));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2sARB)(GLenum target, GLshort s, GLshort t)
+{
+   DISPATCH(MultiTexCoord2sARB, (target, s, t), (F, "glMultiTexCoord2sARB(0x%x, %d, %d);\n", target, s, t));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2sv)(GLenum target, const GLshort * v)
+{
+   DISPATCH(MultiTexCoord2svARB, (target, v), (F, "glMultiTexCoord2sv(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2svARB)(GLenum target, const GLshort * v)
+{
+   DISPATCH(MultiTexCoord2svARB, (target, v), (F, "glMultiTexCoord2svARB(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3d)(GLenum target, GLdouble s, GLdouble t, GLdouble r)
+{
+   DISPATCH(MultiTexCoord3dARB, (target, s, t, r), (F, "glMultiTexCoord3d(0x%x, %f, %f, %f);\n", target, s, t, r));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3dARB)(GLenum target, GLdouble s, GLdouble t, GLdouble r)
+{
+   DISPATCH(MultiTexCoord3dARB, (target, s, t, r), (F, "glMultiTexCoord3dARB(0x%x, %f, %f, %f);\n", target, s, t, r));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3dv)(GLenum target, const GLdouble * v)
+{
+   DISPATCH(MultiTexCoord3dvARB, (target, v), (F, "glMultiTexCoord3dv(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3dvARB)(GLenum target, const GLdouble * v)
+{
+   DISPATCH(MultiTexCoord3dvARB, (target, v), (F, "glMultiTexCoord3dvARB(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3f)(GLenum target, GLfloat s, GLfloat t, GLfloat r)
+{
+   DISPATCH(MultiTexCoord3fARB, (target, s, t, r), (F, "glMultiTexCoord3f(0x%x, %f, %f, %f);\n", target, s, t, r));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3fARB)(GLenum target, GLfloat s, GLfloat t, GLfloat r)
+{
+   DISPATCH(MultiTexCoord3fARB, (target, s, t, r), (F, "glMultiTexCoord3fARB(0x%x, %f, %f, %f);\n", target, s, t, r));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3fv)(GLenum target, const GLfloat * v)
+{
+   DISPATCH(MultiTexCoord3fvARB, (target, v), (F, "glMultiTexCoord3fv(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3fvARB)(GLenum target, const GLfloat * v)
+{
+   DISPATCH(MultiTexCoord3fvARB, (target, v), (F, "glMultiTexCoord3fvARB(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3i)(GLenum target, GLint s, GLint t, GLint r)
+{
+   DISPATCH(MultiTexCoord3iARB, (target, s, t, r), (F, "glMultiTexCoord3i(0x%x, %d, %d, %d);\n", target, s, t, r));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3iARB)(GLenum target, GLint s, GLint t, GLint r)
+{
+   DISPATCH(MultiTexCoord3iARB, (target, s, t, r), (F, "glMultiTexCoord3iARB(0x%x, %d, %d, %d);\n", target, s, t, r));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3iv)(GLenum target, const GLint * v)
+{
+   DISPATCH(MultiTexCoord3ivARB, (target, v), (F, "glMultiTexCoord3iv(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3ivARB)(GLenum target, const GLint * v)
+{
+   DISPATCH(MultiTexCoord3ivARB, (target, v), (F, "glMultiTexCoord3ivARB(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3s)(GLenum target, GLshort s, GLshort t, GLshort r)
+{
+   DISPATCH(MultiTexCoord3sARB, (target, s, t, r), (F, "glMultiTexCoord3s(0x%x, %d, %d, %d);\n", target, s, t, r));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3sARB)(GLenum target, GLshort s, GLshort t, GLshort r)
+{
+   DISPATCH(MultiTexCoord3sARB, (target, s, t, r), (F, "glMultiTexCoord3sARB(0x%x, %d, %d, %d);\n", target, s, t, r));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3sv)(GLenum target, const GLshort * v)
+{
+   DISPATCH(MultiTexCoord3svARB, (target, v), (F, "glMultiTexCoord3sv(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3svARB)(GLenum target, const GLshort * v)
+{
+   DISPATCH(MultiTexCoord3svARB, (target, v), (F, "glMultiTexCoord3svARB(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4d)(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+   DISPATCH(MultiTexCoord4dARB, (target, s, t, r, q), (F, "glMultiTexCoord4d(0x%x, %f, %f, %f, %f);\n", target, s, t, r, q));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4dARB)(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
+{
+   DISPATCH(MultiTexCoord4dARB, (target, s, t, r, q), (F, "glMultiTexCoord4dARB(0x%x, %f, %f, %f, %f);\n", target, s, t, r, q));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4dv)(GLenum target, const GLdouble * v)
+{
+   DISPATCH(MultiTexCoord4dvARB, (target, v), (F, "glMultiTexCoord4dv(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4dvARB)(GLenum target, const GLdouble * v)
+{
+   DISPATCH(MultiTexCoord4dvARB, (target, v), (F, "glMultiTexCoord4dvARB(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4f)(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+   DISPATCH(MultiTexCoord4fARB, (target, s, t, r, q), (F, "glMultiTexCoord4f(0x%x, %f, %f, %f, %f);\n", target, s, t, r, q));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4fARB)(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
+{
+   DISPATCH(MultiTexCoord4fARB, (target, s, t, r, q), (F, "glMultiTexCoord4fARB(0x%x, %f, %f, %f, %f);\n", target, s, t, r, q));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4fv)(GLenum target, const GLfloat * v)
+{
+   DISPATCH(MultiTexCoord4fvARB, (target, v), (F, "glMultiTexCoord4fv(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4fvARB)(GLenum target, const GLfloat * v)
+{
+   DISPATCH(MultiTexCoord4fvARB, (target, v), (F, "glMultiTexCoord4fvARB(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4i)(GLenum target, GLint s, GLint t, GLint r, GLint q)
+{
+   DISPATCH(MultiTexCoord4iARB, (target, s, t, r, q), (F, "glMultiTexCoord4i(0x%x, %d, %d, %d, %d);\n", target, s, t, r, q));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4iARB)(GLenum target, GLint s, GLint t, GLint r, GLint q)
+{
+   DISPATCH(MultiTexCoord4iARB, (target, s, t, r, q), (F, "glMultiTexCoord4iARB(0x%x, %d, %d, %d, %d);\n", target, s, t, r, q));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4iv)(GLenum target, const GLint * v)
+{
+   DISPATCH(MultiTexCoord4ivARB, (target, v), (F, "glMultiTexCoord4iv(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4ivARB)(GLenum target, const GLint * v)
+{
+   DISPATCH(MultiTexCoord4ivARB, (target, v), (F, "glMultiTexCoord4ivARB(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4s)(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
+{
+   DISPATCH(MultiTexCoord4sARB, (target, s, t, r, q), (F, "glMultiTexCoord4s(0x%x, %d, %d, %d, %d);\n", target, s, t, r, q));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4sARB)(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
+{
+   DISPATCH(MultiTexCoord4sARB, (target, s, t, r, q), (F, "glMultiTexCoord4sARB(0x%x, %d, %d, %d, %d);\n", target, s, t, r, q));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4sv)(GLenum target, const GLshort * v)
+{
+   DISPATCH(MultiTexCoord4svARB, (target, v), (F, "glMultiTexCoord4sv(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4svARB)(GLenum target, const GLshort * v)
+{
+   DISPATCH(MultiTexCoord4svARB, (target, v), (F, "glMultiTexCoord4svARB(0x%x, %p);\n", target, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(AttachShader)(GLuint program, GLuint shader)
+{
+   DISPATCH(AttachShader, (program, shader), (F, "glAttachShader(%d, %d);\n", program, shader));
+}
+
+KEYWORD1 GLuint KEYWORD2 NAME(CreateProgram)(void)
+{
+   RETURN_DISPATCH(CreateProgram, (), (F, "glCreateProgram();\n"));
+}
+
+KEYWORD1 GLuint KEYWORD2 NAME(CreateShader)(GLenum type)
+{
+   RETURN_DISPATCH(CreateShader, (type), (F, "glCreateShader(0x%x);\n", type));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DeleteProgram)(GLuint program)
+{
+   DISPATCH(DeleteProgram, (program), (F, "glDeleteProgram(%d);\n", program));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DeleteShader)(GLuint program)
+{
+   DISPATCH(DeleteShader, (program), (F, "glDeleteShader(%d);\n", program));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DetachShader)(GLuint program, GLuint shader)
+{
+   DISPATCH(DetachShader, (program, shader), (F, "glDetachShader(%d, %d);\n", program, shader));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetAttachedShaders)(GLuint program, GLsizei maxCount, GLsizei * count, GLuint * obj)
+{
+   DISPATCH(GetAttachedShaders, (program, maxCount, count, obj), (F, "glGetAttachedShaders(%d, %d, %p, %p);\n", program, maxCount, (const void *) count, (const void *) obj));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetProgramInfoLog)(GLuint program, GLsizei bufSize, GLsizei * length, GLchar * infoLog)
+{
+   DISPATCH(GetProgramInfoLog, (program, bufSize, length, infoLog), (F, "glGetProgramInfoLog(%d, %d, %p, %p);\n", program, bufSize, (const void *) length, (const void *) infoLog));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetProgramiv)(GLuint program, GLenum pname, GLint * params)
+{
+   DISPATCH(GetProgramiv, (program, pname, params), (F, "glGetProgramiv(%d, 0x%x, %p);\n", program, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetShaderInfoLog)(GLuint shader, GLsizei bufSize, GLsizei * length, GLchar * infoLog)
+{
+   DISPATCH(GetShaderInfoLog, (shader, bufSize, length, infoLog), (F, "glGetShaderInfoLog(%d, %d, %p, %p);\n", shader, bufSize, (const void *) length, (const void *) infoLog));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetShaderiv)(GLuint shader, GLenum pname, GLint * params)
+{
+   DISPATCH(GetShaderiv, (shader, pname, params), (F, "glGetShaderiv(%d, 0x%x, %p);\n", shader, pname, (const void *) params));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsProgram)(GLuint program)
+{
+   RETURN_DISPATCH(IsProgram, (program), (F, "glIsProgram(%d);\n", program));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsShader)(GLuint shader)
+{
+   RETURN_DISPATCH(IsShader, (shader), (F, "glIsShader(%d);\n", shader));
+}
+
+KEYWORD1 void KEYWORD2 NAME(StencilFuncSeparate)(GLenum face, GLenum func, GLint ref, GLuint mask)
+{
+   DISPATCH(StencilFuncSeparate, (face, func, ref, mask), (F, "glStencilFuncSeparate(0x%x, 0x%x, %d, %d);\n", face, func, ref, mask));
+}
+
+KEYWORD1 void KEYWORD2 NAME(StencilMaskSeparate)(GLenum face, GLuint mask)
+{
+   DISPATCH(StencilMaskSeparate, (face, mask), (F, "glStencilMaskSeparate(0x%x, %d);\n", face, mask));
+}
+
+KEYWORD1 void KEYWORD2 NAME(StencilOpSeparate)(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass)
+{
+   DISPATCH(StencilOpSeparate, (face, sfail, zfail, zpass), (F, "glStencilOpSeparate(0x%x, 0x%x, 0x%x, 0x%x);\n", face, sfail, zfail, zpass));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_423)(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_423)(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass)
+{
+   DISPATCH(StencilOpSeparate, (face, sfail, zfail, zpass), (F, "glStencilOpSeparateATI(0x%x, 0x%x, 0x%x, 0x%x);\n", face, sfail, zfail, zpass));
+}
+
+KEYWORD1 void KEYWORD2 NAME(UniformMatrix2x3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
+{
+   DISPATCH(UniformMatrix2x3fv, (location, count, transpose, value), (F, "glUniformMatrix2x3fv(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(UniformMatrix2x4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
+{
+   DISPATCH(UniformMatrix2x4fv, (location, count, transpose, value), (F, "glUniformMatrix2x4fv(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(UniformMatrix3x2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
+{
+   DISPATCH(UniformMatrix3x2fv, (location, count, transpose, value), (F, "glUniformMatrix3x2fv(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(UniformMatrix3x4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
+{
+   DISPATCH(UniformMatrix3x4fv, (location, count, transpose, value), (F, "glUniformMatrix3x4fv(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(UniformMatrix4x2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
+{
+   DISPATCH(UniformMatrix4x2fv, (location, count, transpose, value), (F, "glUniformMatrix4x2fv(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(UniformMatrix4x3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
+{
+   DISPATCH(UniformMatrix4x3fv, (location, count, transpose, value), (F, "glUniformMatrix4x3fv(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DrawArraysInstanced)(GLenum mode, GLint first, GLsizei count, GLsizei primcount)
+{
+   DISPATCH(DrawArraysInstanced, (mode, first, count, primcount), (F, "glDrawArraysInstanced(0x%x, %d, %d, %d);\n", mode, first, count, primcount));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DrawArraysInstancedARB)(GLenum mode, GLint first, GLsizei count, GLsizei primcount)
+{
+   DISPATCH(DrawArraysInstanced, (mode, first, count, primcount), (F, "glDrawArraysInstancedARB(0x%x, %d, %d, %d);\n", mode, first, count, primcount));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DrawArraysInstancedEXT)(GLenum mode, GLint first, GLsizei count, GLsizei primcount)
+{
+   DISPATCH(DrawArraysInstanced, (mode, first, count, primcount), (F, "glDrawArraysInstancedEXT(0x%x, %d, %d, %d);\n", mode, first, count, primcount));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DrawElementsInstanced)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices, GLsizei primcount)
+{
+   DISPATCH(DrawElementsInstanced, (mode, count, type, indices, primcount), (F, "glDrawElementsInstanced(0x%x, %d, 0x%x, %p, %d);\n", mode, count, type, (const void *) indices, primcount));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DrawElementsInstancedARB)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices, GLsizei primcount)
+{
+   DISPATCH(DrawElementsInstanced, (mode, count, type, indices, primcount), (F, "glDrawElementsInstancedARB(0x%x, %d, 0x%x, %p, %d);\n", mode, count, type, (const void *) indices, primcount));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DrawElementsInstancedEXT)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices, GLsizei primcount)
+{
+   DISPATCH(DrawElementsInstanced, (mode, count, type, indices, primcount), (F, "glDrawElementsInstancedEXT(0x%x, %d, 0x%x, %p, %d);\n", mode, count, type, (const void *) indices, primcount));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LoadTransposeMatrixd)(const GLdouble * m)
+{
+   DISPATCH(LoadTransposeMatrixdARB, (m), (F, "glLoadTransposeMatrixd(%p);\n", (const void *) m));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LoadTransposeMatrixdARB)(const GLdouble * m)
+{
+   DISPATCH(LoadTransposeMatrixdARB, (m), (F, "glLoadTransposeMatrixdARB(%p);\n", (const void *) m));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LoadTransposeMatrixf)(const GLfloat * m)
+{
+   DISPATCH(LoadTransposeMatrixfARB, (m), (F, "glLoadTransposeMatrixf(%p);\n", (const void *) m));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LoadTransposeMatrixfARB)(const GLfloat * m)
+{
+   DISPATCH(LoadTransposeMatrixfARB, (m), (F, "glLoadTransposeMatrixfARB(%p);\n", (const void *) m));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultTransposeMatrixd)(const GLdouble * m)
+{
+   DISPATCH(MultTransposeMatrixdARB, (m), (F, "glMultTransposeMatrixd(%p);\n", (const void *) m));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultTransposeMatrixdARB)(const GLdouble * m)
+{
+   DISPATCH(MultTransposeMatrixdARB, (m), (F, "glMultTransposeMatrixdARB(%p);\n", (const void *) m));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultTransposeMatrixf)(const GLfloat * m)
+{
+   DISPATCH(MultTransposeMatrixfARB, (m), (F, "glMultTransposeMatrixf(%p);\n", (const void *) m));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultTransposeMatrixfARB)(const GLfloat * m)
+{
+   DISPATCH(MultTransposeMatrixfARB, (m), (F, "glMultTransposeMatrixfARB(%p);\n", (const void *) m));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SampleCoverage)(GLclampf value, GLboolean invert)
+{
+   DISPATCH(SampleCoverageARB, (value, invert), (F, "glSampleCoverage(%f, %d);\n", value, invert));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SampleCoverageARB)(GLclampf value, GLboolean invert)
+{
+   DISPATCH(SampleCoverageARB, (value, invert), (F, "glSampleCoverageARB(%f, %d);\n", value, invert));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CompressedTexImage1D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid * data)
+{
+   DISPATCH(CompressedTexImage1DARB, (target, level, internalformat, width, border, imageSize, data), (F, "glCompressedTexImage1D(0x%x, %d, 0x%x, %d, %d, %d, %p);\n", target, level, internalformat, width, border, imageSize, (const void *) data));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CompressedTexImage1DARB)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid * data)
+{
+   DISPATCH(CompressedTexImage1DARB, (target, level, internalformat, width, border, imageSize, data), (F, "glCompressedTexImage1DARB(0x%x, %d, 0x%x, %d, %d, %d, %p);\n", target, level, internalformat, width, border, imageSize, (const void *) data));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CompressedTexImage2D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid * data)
+{
+   DISPATCH(CompressedTexImage2DARB, (target, level, internalformat, width, height, border, imageSize, data), (F, "glCompressedTexImage2D(0x%x, %d, 0x%x, %d, %d, %d, %d, %p);\n", target, level, internalformat, width, height, border, imageSize, (const void *) data));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CompressedTexImage2DARB)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid * data)
+{
+   DISPATCH(CompressedTexImage2DARB, (target, level, internalformat, width, height, border, imageSize, data), (F, "glCompressedTexImage2DARB(0x%x, %d, 0x%x, %d, %d, %d, %d, %p);\n", target, level, internalformat, width, height, border, imageSize, (const void *) data));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CompressedTexImage3D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid * data)
+{
+   DISPATCH(CompressedTexImage3DARB, (target, level, internalformat, width, height, depth, border, imageSize, data), (F, "glCompressedTexImage3D(0x%x, %d, 0x%x, %d, %d, %d, %d, %d, %p);\n", target, level, internalformat, width, height, depth, border, imageSize, (const void *) data));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CompressedTexImage3DARB)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid * data)
+{
+   DISPATCH(CompressedTexImage3DARB, (target, level, internalformat, width, height, depth, border, imageSize, data), (F, "glCompressedTexImage3DARB(0x%x, %d, 0x%x, %d, %d, %d, %d, %d, %p);\n", target, level, internalformat, width, height, depth, border, imageSize, (const void *) data));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CompressedTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid * data)
+{
+   DISPATCH(CompressedTexSubImage1DARB, (target, level, xoffset, width, format, imageSize, data), (F, "glCompressedTexSubImage1D(0x%x, %d, %d, %d, 0x%x, %d, %p);\n", target, level, xoffset, width, format, imageSize, (const void *) data));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CompressedTexSubImage1DARB)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid * data)
+{
+   DISPATCH(CompressedTexSubImage1DARB, (target, level, xoffset, width, format, imageSize, data), (F, "glCompressedTexSubImage1DARB(0x%x, %d, %d, %d, 0x%x, %d, %p);\n", target, level, xoffset, width, format, imageSize, (const void *) data));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CompressedTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid * data)
+{
+   DISPATCH(CompressedTexSubImage2DARB, (target, level, xoffset, yoffset, width, height, format, imageSize, data), (F, "glCompressedTexSubImage2D(0x%x, %d, %d, %d, %d, %d, 0x%x, %d, %p);\n", target, level, xoffset, yoffset, width, height, format, imageSize, (const void *) data));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CompressedTexSubImage2DARB)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid * data)
+{
+   DISPATCH(CompressedTexSubImage2DARB, (target, level, xoffset, yoffset, width, height, format, imageSize, data), (F, "glCompressedTexSubImage2DARB(0x%x, %d, %d, %d, %d, %d, 0x%x, %d, %p);\n", target, level, xoffset, yoffset, width, height, format, imageSize, (const void *) data));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CompressedTexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid * data)
+{
+   DISPATCH(CompressedTexSubImage3DARB, (target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data), (F, "glCompressedTexSubImage3D(0x%x, %d, %d, %d, %d, %d, %d, %d, 0x%x, %d, %p);\n", target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, (const void *) data));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CompressedTexSubImage3DARB)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid * data)
+{
+   DISPATCH(CompressedTexSubImage3DARB, (target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data), (F, "glCompressedTexSubImage3DARB(0x%x, %d, %d, %d, %d, %d, %d, %d, 0x%x, %d, %p);\n", target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, (const void *) data));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetCompressedTexImage)(GLenum target, GLint level, GLvoid * img)
+{
+   DISPATCH(GetCompressedTexImageARB, (target, level, img), (F, "glGetCompressedTexImage(0x%x, %d, %p);\n", target, level, (const void *) img));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetCompressedTexImageARB)(GLenum target, GLint level, GLvoid * img)
+{
+   DISPATCH(GetCompressedTexImageARB, (target, level, img), (F, "glGetCompressedTexImageARB(0x%x, %d, %p);\n", target, level, (const void *) img));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DisableVertexAttribArray)(GLuint index)
+{
+   DISPATCH(DisableVertexAttribArrayARB, (index), (F, "glDisableVertexAttribArray(%d);\n", index));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DisableVertexAttribArrayARB)(GLuint index)
+{
+   DISPATCH(DisableVertexAttribArrayARB, (index), (F, "glDisableVertexAttribArrayARB(%d);\n", index));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EnableVertexAttribArray)(GLuint index)
+{
+   DISPATCH(EnableVertexAttribArrayARB, (index), (F, "glEnableVertexAttribArray(%d);\n", index));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EnableVertexAttribArrayARB)(GLuint index)
+{
+   DISPATCH(EnableVertexAttribArrayARB, (index), (F, "glEnableVertexAttribArrayARB(%d);\n", index));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetProgramEnvParameterdvARB)(GLenum target, GLuint index, GLdouble * params)
+{
+   DISPATCH(GetProgramEnvParameterdvARB, (target, index, params), (F, "glGetProgramEnvParameterdvARB(0x%x, %d, %p);\n", target, index, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetProgramEnvParameterfvARB)(GLenum target, GLuint index, GLfloat * params)
+{
+   DISPATCH(GetProgramEnvParameterfvARB, (target, index, params), (F, "glGetProgramEnvParameterfvARB(0x%x, %d, %p);\n", target, index, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetProgramLocalParameterdvARB)(GLenum target, GLuint index, GLdouble * params)
+{
+   DISPATCH(GetProgramLocalParameterdvARB, (target, index, params), (F, "glGetProgramLocalParameterdvARB(0x%x, %d, %p);\n", target, index, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetProgramLocalParameterfvARB)(GLenum target, GLuint index, GLfloat * params)
+{
+   DISPATCH(GetProgramLocalParameterfvARB, (target, index, params), (F, "glGetProgramLocalParameterfvARB(0x%x, %d, %p);\n", target, index, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetProgramStringARB)(GLenum target, GLenum pname, GLvoid * string)
+{
+   DISPATCH(GetProgramStringARB, (target, pname, string), (F, "glGetProgramStringARB(0x%x, 0x%x, %p);\n", target, pname, (const void *) string));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetProgramivARB)(GLenum target, GLenum pname, GLint * params)
+{
+   DISPATCH(GetProgramivARB, (target, pname, params), (F, "glGetProgramivARB(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetVertexAttribdv)(GLuint index, GLenum pname, GLdouble * params)
+{
+   DISPATCH(GetVertexAttribdvARB, (index, pname, params), (F, "glGetVertexAttribdv(%d, 0x%x, %p);\n", index, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetVertexAttribdvARB)(GLuint index, GLenum pname, GLdouble * params)
+{
+   DISPATCH(GetVertexAttribdvARB, (index, pname, params), (F, "glGetVertexAttribdvARB(%d, 0x%x, %p);\n", index, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetVertexAttribfv)(GLuint index, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetVertexAttribfvARB, (index, pname, params), (F, "glGetVertexAttribfv(%d, 0x%x, %p);\n", index, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetVertexAttribfvARB)(GLuint index, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetVertexAttribfvARB, (index, pname, params), (F, "glGetVertexAttribfvARB(%d, 0x%x, %p);\n", index, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetVertexAttribiv)(GLuint index, GLenum pname, GLint * params)
+{
+   DISPATCH(GetVertexAttribivARB, (index, pname, params), (F, "glGetVertexAttribiv(%d, 0x%x, %p);\n", index, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetVertexAttribivARB)(GLuint index, GLenum pname, GLint * params)
+{
+   DISPATCH(GetVertexAttribivARB, (index, pname, params), (F, "glGetVertexAttribivARB(%d, 0x%x, %p);\n", index, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramEnvParameter4dARB)(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+   DISPATCH(ProgramEnvParameter4dARB, (target, index, x, y, z, w), (F, "glProgramEnvParameter4dARB(0x%x, %d, %f, %f, %f, %f);\n", target, index, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramParameter4dNV)(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+   DISPATCH(ProgramEnvParameter4dARB, (target, index, x, y, z, w), (F, "glProgramParameter4dNV(0x%x, %d, %f, %f, %f, %f);\n", target, index, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramEnvParameter4dvARB)(GLenum target, GLuint index, const GLdouble * params)
+{
+   DISPATCH(ProgramEnvParameter4dvARB, (target, index, params), (F, "glProgramEnvParameter4dvARB(0x%x, %d, %p);\n", target, index, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramParameter4dvNV)(GLenum target, GLuint index, const GLdouble * params)
+{
+   DISPATCH(ProgramEnvParameter4dvARB, (target, index, params), (F, "glProgramParameter4dvNV(0x%x, %d, %p);\n", target, index, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramEnvParameter4fARB)(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+   DISPATCH(ProgramEnvParameter4fARB, (target, index, x, y, z, w), (F, "glProgramEnvParameter4fARB(0x%x, %d, %f, %f, %f, %f);\n", target, index, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramParameter4fNV)(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+   DISPATCH(ProgramEnvParameter4fARB, (target, index, x, y, z, w), (F, "glProgramParameter4fNV(0x%x, %d, %f, %f, %f, %f);\n", target, index, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramEnvParameter4fvARB)(GLenum target, GLuint index, const GLfloat * params)
+{
+   DISPATCH(ProgramEnvParameter4fvARB, (target, index, params), (F, "glProgramEnvParameter4fvARB(0x%x, %d, %p);\n", target, index, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramParameter4fvNV)(GLenum target, GLuint index, const GLfloat * params)
+{
+   DISPATCH(ProgramEnvParameter4fvARB, (target, index, params), (F, "glProgramParameter4fvNV(0x%x, %d, %p);\n", target, index, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramLocalParameter4dARB)(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+   DISPATCH(ProgramLocalParameter4dARB, (target, index, x, y, z, w), (F, "glProgramLocalParameter4dARB(0x%x, %d, %f, %f, %f, %f);\n", target, index, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramLocalParameter4dvARB)(GLenum target, GLuint index, const GLdouble * params)
+{
+   DISPATCH(ProgramLocalParameter4dvARB, (target, index, params), (F, "glProgramLocalParameter4dvARB(0x%x, %d, %p);\n", target, index, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramLocalParameter4fARB)(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+   DISPATCH(ProgramLocalParameter4fARB, (target, index, x, y, z, w), (F, "glProgramLocalParameter4fARB(0x%x, %d, %f, %f, %f, %f);\n", target, index, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramLocalParameter4fvARB)(GLenum target, GLuint index, const GLfloat * params)
+{
+   DISPATCH(ProgramLocalParameter4fvARB, (target, index, params), (F, "glProgramLocalParameter4fvARB(0x%x, %d, %p);\n", target, index, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramStringARB)(GLenum target, GLenum format, GLsizei len, const GLvoid * string)
+{
+   DISPATCH(ProgramStringARB, (target, format, len, string), (F, "glProgramStringARB(0x%x, 0x%x, %d, %p);\n", target, format, len, (const void *) string));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib1d)(GLuint index, GLdouble x)
+{
+   DISPATCH(VertexAttrib1dARB, (index, x), (F, "glVertexAttrib1d(%d, %f);\n", index, x));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib1dARB)(GLuint index, GLdouble x)
+{
+   DISPATCH(VertexAttrib1dARB, (index, x), (F, "glVertexAttrib1dARB(%d, %f);\n", index, x));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib1dv)(GLuint index, const GLdouble * v)
+{
+   DISPATCH(VertexAttrib1dvARB, (index, v), (F, "glVertexAttrib1dv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib1dvARB)(GLuint index, const GLdouble * v)
+{
+   DISPATCH(VertexAttrib1dvARB, (index, v), (F, "glVertexAttrib1dvARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib1f)(GLuint index, GLfloat x)
+{
+   DISPATCH(VertexAttrib1fARB, (index, x), (F, "glVertexAttrib1f(%d, %f);\n", index, x));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib1fARB)(GLuint index, GLfloat x)
+{
+   DISPATCH(VertexAttrib1fARB, (index, x), (F, "glVertexAttrib1fARB(%d, %f);\n", index, x));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib1fv)(GLuint index, const GLfloat * v)
+{
+   DISPATCH(VertexAttrib1fvARB, (index, v), (F, "glVertexAttrib1fv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib1fvARB)(GLuint index, const GLfloat * v)
+{
+   DISPATCH(VertexAttrib1fvARB, (index, v), (F, "glVertexAttrib1fvARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib1s)(GLuint index, GLshort x)
+{
+   DISPATCH(VertexAttrib1sARB, (index, x), (F, "glVertexAttrib1s(%d, %d);\n", index, x));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib1sARB)(GLuint index, GLshort x)
+{
+   DISPATCH(VertexAttrib1sARB, (index, x), (F, "glVertexAttrib1sARB(%d, %d);\n", index, x));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib1sv)(GLuint index, const GLshort * v)
+{
+   DISPATCH(VertexAttrib1svARB, (index, v), (F, "glVertexAttrib1sv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib1svARB)(GLuint index, const GLshort * v)
+{
+   DISPATCH(VertexAttrib1svARB, (index, v), (F, "glVertexAttrib1svARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib2d)(GLuint index, GLdouble x, GLdouble y)
+{
+   DISPATCH(VertexAttrib2dARB, (index, x, y), (F, "glVertexAttrib2d(%d, %f, %f);\n", index, x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib2dARB)(GLuint index, GLdouble x, GLdouble y)
+{
+   DISPATCH(VertexAttrib2dARB, (index, x, y), (F, "glVertexAttrib2dARB(%d, %f, %f);\n", index, x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib2dv)(GLuint index, const GLdouble * v)
+{
+   DISPATCH(VertexAttrib2dvARB, (index, v), (F, "glVertexAttrib2dv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib2dvARB)(GLuint index, const GLdouble * v)
+{
+   DISPATCH(VertexAttrib2dvARB, (index, v), (F, "glVertexAttrib2dvARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib2f)(GLuint index, GLfloat x, GLfloat y)
+{
+   DISPATCH(VertexAttrib2fARB, (index, x, y), (F, "glVertexAttrib2f(%d, %f, %f);\n", index, x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib2fARB)(GLuint index, GLfloat x, GLfloat y)
+{
+   DISPATCH(VertexAttrib2fARB, (index, x, y), (F, "glVertexAttrib2fARB(%d, %f, %f);\n", index, x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib2fv)(GLuint index, const GLfloat * v)
+{
+   DISPATCH(VertexAttrib2fvARB, (index, v), (F, "glVertexAttrib2fv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib2fvARB)(GLuint index, const GLfloat * v)
+{
+   DISPATCH(VertexAttrib2fvARB, (index, v), (F, "glVertexAttrib2fvARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib2s)(GLuint index, GLshort x, GLshort y)
+{
+   DISPATCH(VertexAttrib2sARB, (index, x, y), (F, "glVertexAttrib2s(%d, %d, %d);\n", index, x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib2sARB)(GLuint index, GLshort x, GLshort y)
+{
+   DISPATCH(VertexAttrib2sARB, (index, x, y), (F, "glVertexAttrib2sARB(%d, %d, %d);\n", index, x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib2sv)(GLuint index, const GLshort * v)
+{
+   DISPATCH(VertexAttrib2svARB, (index, v), (F, "glVertexAttrib2sv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib2svARB)(GLuint index, const GLshort * v)
+{
+   DISPATCH(VertexAttrib2svARB, (index, v), (F, "glVertexAttrib2svARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib3d)(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+   DISPATCH(VertexAttrib3dARB, (index, x, y, z), (F, "glVertexAttrib3d(%d, %f, %f, %f);\n", index, x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib3dARB)(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+   DISPATCH(VertexAttrib3dARB, (index, x, y, z), (F, "glVertexAttrib3dARB(%d, %f, %f, %f);\n", index, x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib3dv)(GLuint index, const GLdouble * v)
+{
+   DISPATCH(VertexAttrib3dvARB, (index, v), (F, "glVertexAttrib3dv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib3dvARB)(GLuint index, const GLdouble * v)
+{
+   DISPATCH(VertexAttrib3dvARB, (index, v), (F, "glVertexAttrib3dvARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib3f)(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+   DISPATCH(VertexAttrib3fARB, (index, x, y, z), (F, "glVertexAttrib3f(%d, %f, %f, %f);\n", index, x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib3fARB)(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+   DISPATCH(VertexAttrib3fARB, (index, x, y, z), (F, "glVertexAttrib3fARB(%d, %f, %f, %f);\n", index, x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib3fv)(GLuint index, const GLfloat * v)
+{
+   DISPATCH(VertexAttrib3fvARB, (index, v), (F, "glVertexAttrib3fv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib3fvARB)(GLuint index, const GLfloat * v)
+{
+   DISPATCH(VertexAttrib3fvARB, (index, v), (F, "glVertexAttrib3fvARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib3s)(GLuint index, GLshort x, GLshort y, GLshort z)
+{
+   DISPATCH(VertexAttrib3sARB, (index, x, y, z), (F, "glVertexAttrib3s(%d, %d, %d, %d);\n", index, x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib3sARB)(GLuint index, GLshort x, GLshort y, GLshort z)
+{
+   DISPATCH(VertexAttrib3sARB, (index, x, y, z), (F, "glVertexAttrib3sARB(%d, %d, %d, %d);\n", index, x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib3sv)(GLuint index, const GLshort * v)
+{
+   DISPATCH(VertexAttrib3svARB, (index, v), (F, "glVertexAttrib3sv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib3svARB)(GLuint index, const GLshort * v)
+{
+   DISPATCH(VertexAttrib3svARB, (index, v), (F, "glVertexAttrib3svARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4Nbv)(GLuint index, const GLbyte * v)
+{
+   DISPATCH(VertexAttrib4NbvARB, (index, v), (F, "glVertexAttrib4Nbv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4NbvARB)(GLuint index, const GLbyte * v)
+{
+   DISPATCH(VertexAttrib4NbvARB, (index, v), (F, "glVertexAttrib4NbvARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4Niv)(GLuint index, const GLint * v)
+{
+   DISPATCH(VertexAttrib4NivARB, (index, v), (F, "glVertexAttrib4Niv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4NivARB)(GLuint index, const GLint * v)
+{
+   DISPATCH(VertexAttrib4NivARB, (index, v), (F, "glVertexAttrib4NivARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4Nsv)(GLuint index, const GLshort * v)
+{
+   DISPATCH(VertexAttrib4NsvARB, (index, v), (F, "glVertexAttrib4Nsv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4NsvARB)(GLuint index, const GLshort * v)
+{
+   DISPATCH(VertexAttrib4NsvARB, (index, v), (F, "glVertexAttrib4NsvARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4Nub)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
+{
+   DISPATCH(VertexAttrib4NubARB, (index, x, y, z, w), (F, "glVertexAttrib4Nub(%d, %d, %d, %d, %d);\n", index, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4NubARB)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
+{
+   DISPATCH(VertexAttrib4NubARB, (index, x, y, z, w), (F, "glVertexAttrib4NubARB(%d, %d, %d, %d, %d);\n", index, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4Nubv)(GLuint index, const GLubyte * v)
+{
+   DISPATCH(VertexAttrib4NubvARB, (index, v), (F, "glVertexAttrib4Nubv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4NubvARB)(GLuint index, const GLubyte * v)
+{
+   DISPATCH(VertexAttrib4NubvARB, (index, v), (F, "glVertexAttrib4NubvARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4Nuiv)(GLuint index, const GLuint * v)
+{
+   DISPATCH(VertexAttrib4NuivARB, (index, v), (F, "glVertexAttrib4Nuiv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4NuivARB)(GLuint index, const GLuint * v)
+{
+   DISPATCH(VertexAttrib4NuivARB, (index, v), (F, "glVertexAttrib4NuivARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4Nusv)(GLuint index, const GLushort * v)
+{
+   DISPATCH(VertexAttrib4NusvARB, (index, v), (F, "glVertexAttrib4Nusv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4NusvARB)(GLuint index, const GLushort * v)
+{
+   DISPATCH(VertexAttrib4NusvARB, (index, v), (F, "glVertexAttrib4NusvARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4bv)(GLuint index, const GLbyte * v)
+{
+   DISPATCH(VertexAttrib4bvARB, (index, v), (F, "glVertexAttrib4bv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4bvARB)(GLuint index, const GLbyte * v)
+{
+   DISPATCH(VertexAttrib4bvARB, (index, v), (F, "glVertexAttrib4bvARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4d)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+   DISPATCH(VertexAttrib4dARB, (index, x, y, z, w), (F, "glVertexAttrib4d(%d, %f, %f, %f, %f);\n", index, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4dARB)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+   DISPATCH(VertexAttrib4dARB, (index, x, y, z, w), (F, "glVertexAttrib4dARB(%d, %f, %f, %f, %f);\n", index, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4dv)(GLuint index, const GLdouble * v)
+{
+   DISPATCH(VertexAttrib4dvARB, (index, v), (F, "glVertexAttrib4dv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4dvARB)(GLuint index, const GLdouble * v)
+{
+   DISPATCH(VertexAttrib4dvARB, (index, v), (F, "glVertexAttrib4dvARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4f)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+   DISPATCH(VertexAttrib4fARB, (index, x, y, z, w), (F, "glVertexAttrib4f(%d, %f, %f, %f, %f);\n", index, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4fARB)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+   DISPATCH(VertexAttrib4fARB, (index, x, y, z, w), (F, "glVertexAttrib4fARB(%d, %f, %f, %f, %f);\n", index, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4fv)(GLuint index, const GLfloat * v)
+{
+   DISPATCH(VertexAttrib4fvARB, (index, v), (F, "glVertexAttrib4fv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4fvARB)(GLuint index, const GLfloat * v)
+{
+   DISPATCH(VertexAttrib4fvARB, (index, v), (F, "glVertexAttrib4fvARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4iv)(GLuint index, const GLint * v)
+{
+   DISPATCH(VertexAttrib4ivARB, (index, v), (F, "glVertexAttrib4iv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4ivARB)(GLuint index, const GLint * v)
+{
+   DISPATCH(VertexAttrib4ivARB, (index, v), (F, "glVertexAttrib4ivARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4s)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
+{
+   DISPATCH(VertexAttrib4sARB, (index, x, y, z, w), (F, "glVertexAttrib4s(%d, %d, %d, %d, %d);\n", index, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4sARB)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
+{
+   DISPATCH(VertexAttrib4sARB, (index, x, y, z, w), (F, "glVertexAttrib4sARB(%d, %d, %d, %d, %d);\n", index, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4sv)(GLuint index, const GLshort * v)
+{
+   DISPATCH(VertexAttrib4svARB, (index, v), (F, "glVertexAttrib4sv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4svARB)(GLuint index, const GLshort * v)
+{
+   DISPATCH(VertexAttrib4svARB, (index, v), (F, "glVertexAttrib4svARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4ubv)(GLuint index, const GLubyte * v)
+{
+   DISPATCH(VertexAttrib4ubvARB, (index, v), (F, "glVertexAttrib4ubv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4ubvARB)(GLuint index, const GLubyte * v)
+{
+   DISPATCH(VertexAttrib4ubvARB, (index, v), (F, "glVertexAttrib4ubvARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4uiv)(GLuint index, const GLuint * v)
+{
+   DISPATCH(VertexAttrib4uivARB, (index, v), (F, "glVertexAttrib4uiv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4uivARB)(GLuint index, const GLuint * v)
+{
+   DISPATCH(VertexAttrib4uivARB, (index, v), (F, "glVertexAttrib4uivARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4usv)(GLuint index, const GLushort * v)
+{
+   DISPATCH(VertexAttrib4usvARB, (index, v), (F, "glVertexAttrib4usv(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4usvARB)(GLuint index, const GLushort * v)
+{
+   DISPATCH(VertexAttrib4usvARB, (index, v), (F, "glVertexAttrib4usvARB(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttribPointer)(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid * pointer)
+{
+   DISPATCH(VertexAttribPointerARB, (index, size, type, normalized, stride, pointer), (F, "glVertexAttribPointer(%d, %d, 0x%x, %d, %d, %p);\n", index, size, type, normalized, stride, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttribPointerARB)(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid * pointer)
+{
+   DISPATCH(VertexAttribPointerARB, (index, size, type, normalized, stride, pointer), (F, "glVertexAttribPointerARB(%d, %d, 0x%x, %d, %d, %p);\n", index, size, type, normalized, stride, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindBuffer)(GLenum target, GLuint buffer)
+{
+   DISPATCH(BindBufferARB, (target, buffer), (F, "glBindBuffer(0x%x, %d);\n", target, buffer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindBufferARB)(GLenum target, GLuint buffer)
+{
+   DISPATCH(BindBufferARB, (target, buffer), (F, "glBindBufferARB(0x%x, %d);\n", target, buffer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BufferData)(GLenum target, GLsizeiptr size, const GLvoid * data, GLenum usage)
+{
+   DISPATCH(BufferDataARB, (target, size, data, usage), (F, "glBufferData(0x%x, %d, %p, 0x%x);\n", target, size, (const void *) data, usage));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BufferDataARB)(GLenum target, GLsizeiptrARB size, const GLvoid * data, GLenum usage)
+{
+   DISPATCH(BufferDataARB, (target, size, data, usage), (F, "glBufferDataARB(0x%x, %d, %p, 0x%x);\n", target, size, (const void *) data, usage));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BufferSubData)(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid * data)
+{
+   DISPATCH(BufferSubDataARB, (target, offset, size, data), (F, "glBufferSubData(0x%x, %d, %d, %p);\n", target, offset, size, (const void *) data));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BufferSubDataARB)(GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid * data)
+{
+   DISPATCH(BufferSubDataARB, (target, offset, size, data), (F, "glBufferSubDataARB(0x%x, %d, %d, %p);\n", target, offset, size, (const void *) data));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DeleteBuffers)(GLsizei n, const GLuint * buffer)
+{
+   DISPATCH(DeleteBuffersARB, (n, buffer), (F, "glDeleteBuffers(%d, %p);\n", n, (const void *) buffer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DeleteBuffersARB)(GLsizei n, const GLuint * buffer)
+{
+   DISPATCH(DeleteBuffersARB, (n, buffer), (F, "glDeleteBuffersARB(%d, %p);\n", n, (const void *) buffer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GenBuffers)(GLsizei n, GLuint * buffer)
+{
+   DISPATCH(GenBuffersARB, (n, buffer), (F, "glGenBuffers(%d, %p);\n", n, (const void *) buffer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GenBuffersARB)(GLsizei n, GLuint * buffer)
+{
+   DISPATCH(GenBuffersARB, (n, buffer), (F, "glGenBuffersARB(%d, %p);\n", n, (const void *) buffer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetBufferParameteriv)(GLenum target, GLenum pname, GLint * params)
+{
+   DISPATCH(GetBufferParameterivARB, (target, pname, params), (F, "glGetBufferParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetBufferParameterivARB)(GLenum target, GLenum pname, GLint * params)
+{
+   DISPATCH(GetBufferParameterivARB, (target, pname, params), (F, "glGetBufferParameterivARB(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetBufferPointerv)(GLenum target, GLenum pname, GLvoid ** params)
+{
+   DISPATCH(GetBufferPointervARB, (target, pname, params), (F, "glGetBufferPointerv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetBufferPointervARB)(GLenum target, GLenum pname, GLvoid ** params)
+{
+   DISPATCH(GetBufferPointervARB, (target, pname, params), (F, "glGetBufferPointervARB(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetBufferSubData)(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid * data)
+{
+   DISPATCH(GetBufferSubDataARB, (target, offset, size, data), (F, "glGetBufferSubData(0x%x, %d, %d, %p);\n", target, offset, size, (const void *) data));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetBufferSubDataARB)(GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid * data)
+{
+   DISPATCH(GetBufferSubDataARB, (target, offset, size, data), (F, "glGetBufferSubDataARB(0x%x, %d, %d, %p);\n", target, offset, size, (const void *) data));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsBuffer)(GLuint buffer)
+{
+   RETURN_DISPATCH(IsBufferARB, (buffer), (F, "glIsBuffer(%d);\n", buffer));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsBufferARB)(GLuint buffer)
+{
+   RETURN_DISPATCH(IsBufferARB, (buffer), (F, "glIsBufferARB(%d);\n", buffer));
+}
+
+KEYWORD1 GLvoid * KEYWORD2 NAME(MapBuffer)(GLenum target, GLenum access)
+{
+   RETURN_DISPATCH(MapBufferARB, (target, access), (F, "glMapBuffer(0x%x, 0x%x);\n", target, access));
+}
+
+KEYWORD1 GLvoid * KEYWORD2 NAME(MapBufferARB)(GLenum target, GLenum access)
+{
+   RETURN_DISPATCH(MapBufferARB, (target, access), (F, "glMapBufferARB(0x%x, 0x%x);\n", target, access));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(UnmapBuffer)(GLenum target)
+{
+   RETURN_DISPATCH(UnmapBufferARB, (target), (F, "glUnmapBuffer(0x%x);\n", target));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(UnmapBufferARB)(GLenum target)
+{
+   RETURN_DISPATCH(UnmapBufferARB, (target), (F, "glUnmapBufferARB(0x%x);\n", target));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BeginQuery)(GLenum target, GLuint id)
+{
+   DISPATCH(BeginQueryARB, (target, id), (F, "glBeginQuery(0x%x, %d);\n", target, id));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BeginQueryARB)(GLenum target, GLuint id)
+{
+   DISPATCH(BeginQueryARB, (target, id), (F, "glBeginQueryARB(0x%x, %d);\n", target, id));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DeleteQueries)(GLsizei n, const GLuint * ids)
+{
+   DISPATCH(DeleteQueriesARB, (n, ids), (F, "glDeleteQueries(%d, %p);\n", n, (const void *) ids));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DeleteQueriesARB)(GLsizei n, const GLuint * ids)
+{
+   DISPATCH(DeleteQueriesARB, (n, ids), (F, "glDeleteQueriesARB(%d, %p);\n", n, (const void *) ids));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EndQuery)(GLenum target)
+{
+   DISPATCH(EndQueryARB, (target), (F, "glEndQuery(0x%x);\n", target));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EndQueryARB)(GLenum target)
+{
+   DISPATCH(EndQueryARB, (target), (F, "glEndQueryARB(0x%x);\n", target));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GenQueries)(GLsizei n, GLuint * ids)
+{
+   DISPATCH(GenQueriesARB, (n, ids), (F, "glGenQueries(%d, %p);\n", n, (const void *) ids));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GenQueriesARB)(GLsizei n, GLuint * ids)
+{
+   DISPATCH(GenQueriesARB, (n, ids), (F, "glGenQueriesARB(%d, %p);\n", n, (const void *) ids));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetQueryObjectiv)(GLuint id, GLenum pname, GLint * params)
+{
+   DISPATCH(GetQueryObjectivARB, (id, pname, params), (F, "glGetQueryObjectiv(%d, 0x%x, %p);\n", id, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetQueryObjectivARB)(GLuint id, GLenum pname, GLint * params)
+{
+   DISPATCH(GetQueryObjectivARB, (id, pname, params), (F, "glGetQueryObjectivARB(%d, 0x%x, %p);\n", id, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetQueryObjectuiv)(GLuint id, GLenum pname, GLuint * params)
+{
+   DISPATCH(GetQueryObjectuivARB, (id, pname, params), (F, "glGetQueryObjectuiv(%d, 0x%x, %p);\n", id, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetQueryObjectuivARB)(GLuint id, GLenum pname, GLuint * params)
+{
+   DISPATCH(GetQueryObjectuivARB, (id, pname, params), (F, "glGetQueryObjectuivARB(%d, 0x%x, %p);\n", id, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetQueryiv)(GLenum target, GLenum pname, GLint * params)
+{
+   DISPATCH(GetQueryivARB, (target, pname, params), (F, "glGetQueryiv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetQueryivARB)(GLenum target, GLenum pname, GLint * params)
+{
+   DISPATCH(GetQueryivARB, (target, pname, params), (F, "glGetQueryivARB(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsQuery)(GLuint id)
+{
+   RETURN_DISPATCH(IsQueryARB, (id), (F, "glIsQuery(%d);\n", id));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsQueryARB)(GLuint id)
+{
+   RETURN_DISPATCH(IsQueryARB, (id), (F, "glIsQueryARB(%d);\n", id));
+}
+
+KEYWORD1 void KEYWORD2 NAME(AttachObjectARB)(GLhandleARB containerObj, GLhandleARB obj)
+{
+   DISPATCH(AttachObjectARB, (containerObj, obj), (F, "glAttachObjectARB(%d, %d);\n", containerObj, obj));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CompileShader)(GLuint shader)
+{
+   DISPATCH(CompileShaderARB, (shader), (F, "glCompileShader(%d);\n", shader));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CompileShaderARB)(GLhandleARB shader)
+{
+   DISPATCH(CompileShaderARB, (shader), (F, "glCompileShaderARB(%d);\n", shader));
+}
+
+KEYWORD1 GLhandleARB KEYWORD2 NAME(CreateProgramObjectARB)(void)
+{
+   RETURN_DISPATCH(CreateProgramObjectARB, (), (F, "glCreateProgramObjectARB();\n"));
+}
+
+KEYWORD1 GLhandleARB KEYWORD2 NAME(CreateShaderObjectARB)(GLenum shaderType)
+{
+   RETURN_DISPATCH(CreateShaderObjectARB, (shaderType), (F, "glCreateShaderObjectARB(0x%x);\n", shaderType));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DeleteObjectARB)(GLhandleARB obj)
+{
+   DISPATCH(DeleteObjectARB, (obj), (F, "glDeleteObjectARB(%d);\n", obj));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DetachObjectARB)(GLhandleARB containerObj, GLhandleARB attachedObj)
+{
+   DISPATCH(DetachObjectARB, (containerObj, attachedObj), (F, "glDetachObjectARB(%d, %d);\n", containerObj, attachedObj));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetActiveUniform)(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, GLchar * name)
+{
+   DISPATCH(GetActiveUniformARB, (program, index, bufSize, length, size, type, name), (F, "glGetActiveUniform(%d, %d, %d, %p, %p, %p, %p);\n", program, index, bufSize, (const void *) length, (const void *) size, (const void *) type, (const void *) name));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetActiveUniformARB)(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, GLcharARB * name)
+{
+   DISPATCH(GetActiveUniformARB, (program, index, bufSize, length, size, type, name), (F, "glGetActiveUniformARB(%d, %d, %d, %p, %p, %p, %p);\n", program, index, bufSize, (const void *) length, (const void *) size, (const void *) type, (const void *) name));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetAttachedObjectsARB)(GLhandleARB containerObj, GLsizei maxLength, GLsizei * length, GLhandleARB * infoLog)
+{
+   DISPATCH(GetAttachedObjectsARB, (containerObj, maxLength, length, infoLog), (F, "glGetAttachedObjectsARB(%d, %d, %p, %p);\n", containerObj, maxLength, (const void *) length, (const void *) infoLog));
+}
+
+KEYWORD1 GLhandleARB KEYWORD2 NAME(GetHandleARB)(GLenum pname)
+{
+   RETURN_DISPATCH(GetHandleARB, (pname), (F, "glGetHandleARB(0x%x);\n", pname));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetInfoLogARB)(GLhandleARB obj, GLsizei maxLength, GLsizei * length, GLcharARB * infoLog)
+{
+   DISPATCH(GetInfoLogARB, (obj, maxLength, length, infoLog), (F, "glGetInfoLogARB(%d, %d, %p, %p);\n", obj, maxLength, (const void *) length, (const void *) infoLog));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetObjectParameterfvARB)(GLhandleARB obj, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetObjectParameterfvARB, (obj, pname, params), (F, "glGetObjectParameterfvARB(%d, 0x%x, %p);\n", obj, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetObjectParameterivARB)(GLhandleARB obj, GLenum pname, GLint * params)
+{
+   DISPATCH(GetObjectParameterivARB, (obj, pname, params), (F, "glGetObjectParameterivARB(%d, 0x%x, %p);\n", obj, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetShaderSource)(GLuint shader, GLsizei bufSize, GLsizei * length, GLchar * source)
+{
+   DISPATCH(GetShaderSourceARB, (shader, bufSize, length, source), (F, "glGetShaderSource(%d, %d, %p, %p);\n", shader, bufSize, (const void *) length, (const void *) source));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetShaderSourceARB)(GLhandleARB shader, GLsizei bufSize, GLsizei * length, GLcharARB * source)
+{
+   DISPATCH(GetShaderSourceARB, (shader, bufSize, length, source), (F, "glGetShaderSourceARB(%d, %d, %p, %p);\n", shader, bufSize, (const void *) length, (const void *) source));
+}
+
+KEYWORD1 GLint KEYWORD2 NAME(GetUniformLocation)(GLuint program, const GLchar * name)
+{
+   RETURN_DISPATCH(GetUniformLocationARB, (program, name), (F, "glGetUniformLocation(%d, %p);\n", program, (const void *) name));
+}
+
+KEYWORD1 GLint KEYWORD2 NAME(GetUniformLocationARB)(GLhandleARB program, const GLcharARB * name)
+{
+   RETURN_DISPATCH(GetUniformLocationARB, (program, name), (F, "glGetUniformLocationARB(%d, %p);\n", program, (const void *) name));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetUniformfv)(GLuint program, GLint location, GLfloat * params)
+{
+   DISPATCH(GetUniformfvARB, (program, location, params), (F, "glGetUniformfv(%d, %d, %p);\n", program, location, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetUniformfvARB)(GLhandleARB program, GLint location, GLfloat * params)
+{
+   DISPATCH(GetUniformfvARB, (program, location, params), (F, "glGetUniformfvARB(%d, %d, %p);\n", program, location, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetUniformiv)(GLuint program, GLint location, GLint * params)
+{
+   DISPATCH(GetUniformivARB, (program, location, params), (F, "glGetUniformiv(%d, %d, %p);\n", program, location, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetUniformivARB)(GLhandleARB program, GLint location, GLint * params)
+{
+   DISPATCH(GetUniformivARB, (program, location, params), (F, "glGetUniformivARB(%d, %d, %p);\n", program, location, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LinkProgram)(GLuint program)
+{
+   DISPATCH(LinkProgramARB, (program), (F, "glLinkProgram(%d);\n", program));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LinkProgramARB)(GLhandleARB program)
+{
+   DISPATCH(LinkProgramARB, (program), (F, "glLinkProgramARB(%d);\n", program));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ShaderSource)(GLuint shader, GLsizei count, const GLchar ** string, const GLint * length)
+{
+   DISPATCH(ShaderSourceARB, (shader, count, string, length), (F, "glShaderSource(%d, %d, %p, %p);\n", shader, count, (const void *) string, (const void *) length));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ShaderSourceARB)(GLhandleARB shader, GLsizei count, const GLcharARB ** string, const GLint * length)
+{
+   DISPATCH(ShaderSourceARB, (shader, count, string, length), (F, "glShaderSourceARB(%d, %d, %p, %p);\n", shader, count, (const void *) string, (const void *) length));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform1f)(GLint location, GLfloat v0)
+{
+   DISPATCH(Uniform1fARB, (location, v0), (F, "glUniform1f(%d, %f);\n", location, v0));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform1fARB)(GLint location, GLfloat v0)
+{
+   DISPATCH(Uniform1fARB, (location, v0), (F, "glUniform1fARB(%d, %f);\n", location, v0));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform1fv)(GLint location, GLsizei count, const GLfloat * value)
+{
+   DISPATCH(Uniform1fvARB, (location, count, value), (F, "glUniform1fv(%d, %d, %p);\n", location, count, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform1fvARB)(GLint location, GLsizei count, const GLfloat * value)
+{
+   DISPATCH(Uniform1fvARB, (location, count, value), (F, "glUniform1fvARB(%d, %d, %p);\n", location, count, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform1i)(GLint location, GLint v0)
+{
+   DISPATCH(Uniform1iARB, (location, v0), (F, "glUniform1i(%d, %d);\n", location, v0));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform1iARB)(GLint location, GLint v0)
+{
+   DISPATCH(Uniform1iARB, (location, v0), (F, "glUniform1iARB(%d, %d);\n", location, v0));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform1iv)(GLint location, GLsizei count, const GLint * value)
+{
+   DISPATCH(Uniform1ivARB, (location, count, value), (F, "glUniform1iv(%d, %d, %p);\n", location, count, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform1ivARB)(GLint location, GLsizei count, const GLint * value)
+{
+   DISPATCH(Uniform1ivARB, (location, count, value), (F, "glUniform1ivARB(%d, %d, %p);\n", location, count, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform2f)(GLint location, GLfloat v0, GLfloat v1)
+{
+   DISPATCH(Uniform2fARB, (location, v0, v1), (F, "glUniform2f(%d, %f, %f);\n", location, v0, v1));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform2fARB)(GLint location, GLfloat v0, GLfloat v1)
+{
+   DISPATCH(Uniform2fARB, (location, v0, v1), (F, "glUniform2fARB(%d, %f, %f);\n", location, v0, v1));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform2fv)(GLint location, GLsizei count, const GLfloat * value)
+{
+   DISPATCH(Uniform2fvARB, (location, count, value), (F, "glUniform2fv(%d, %d, %p);\n", location, count, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform2fvARB)(GLint location, GLsizei count, const GLfloat * value)
+{
+   DISPATCH(Uniform2fvARB, (location, count, value), (F, "glUniform2fvARB(%d, %d, %p);\n", location, count, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform2i)(GLint location, GLint v0, GLint v1)
+{
+   DISPATCH(Uniform2iARB, (location, v0, v1), (F, "glUniform2i(%d, %d, %d);\n", location, v0, v1));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform2iARB)(GLint location, GLint v0, GLint v1)
+{
+   DISPATCH(Uniform2iARB, (location, v0, v1), (F, "glUniform2iARB(%d, %d, %d);\n", location, v0, v1));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform2iv)(GLint location, GLsizei count, const GLint * value)
+{
+   DISPATCH(Uniform2ivARB, (location, count, value), (F, "glUniform2iv(%d, %d, %p);\n", location, count, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform2ivARB)(GLint location, GLsizei count, const GLint * value)
+{
+   DISPATCH(Uniform2ivARB, (location, count, value), (F, "glUniform2ivARB(%d, %d, %p);\n", location, count, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform3f)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+   DISPATCH(Uniform3fARB, (location, v0, v1, v2), (F, "glUniform3f(%d, %f, %f, %f);\n", location, v0, v1, v2));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform3fARB)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
+{
+   DISPATCH(Uniform3fARB, (location, v0, v1, v2), (F, "glUniform3fARB(%d, %f, %f, %f);\n", location, v0, v1, v2));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform3fv)(GLint location, GLsizei count, const GLfloat * value)
+{
+   DISPATCH(Uniform3fvARB, (location, count, value), (F, "glUniform3fv(%d, %d, %p);\n", location, count, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform3fvARB)(GLint location, GLsizei count, const GLfloat * value)
+{
+   DISPATCH(Uniform3fvARB, (location, count, value), (F, "glUniform3fvARB(%d, %d, %p);\n", location, count, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform3i)(GLint location, GLint v0, GLint v1, GLint v2)
+{
+   DISPATCH(Uniform3iARB, (location, v0, v1, v2), (F, "glUniform3i(%d, %d, %d, %d);\n", location, v0, v1, v2));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform3iARB)(GLint location, GLint v0, GLint v1, GLint v2)
+{
+   DISPATCH(Uniform3iARB, (location, v0, v1, v2), (F, "glUniform3iARB(%d, %d, %d, %d);\n", location, v0, v1, v2));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform3iv)(GLint location, GLsizei count, const GLint * value)
+{
+   DISPATCH(Uniform3ivARB, (location, count, value), (F, "glUniform3iv(%d, %d, %p);\n", location, count, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform3ivARB)(GLint location, GLsizei count, const GLint * value)
+{
+   DISPATCH(Uniform3ivARB, (location, count, value), (F, "glUniform3ivARB(%d, %d, %p);\n", location, count, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform4f)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+   DISPATCH(Uniform4fARB, (location, v0, v1, v2, v3), (F, "glUniform4f(%d, %f, %f, %f, %f);\n", location, v0, v1, v2, v3));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform4fARB)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
+{
+   DISPATCH(Uniform4fARB, (location, v0, v1, v2, v3), (F, "glUniform4fARB(%d, %f, %f, %f, %f);\n", location, v0, v1, v2, v3));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform4fv)(GLint location, GLsizei count, const GLfloat * value)
+{
+   DISPATCH(Uniform4fvARB, (location, count, value), (F, "glUniform4fv(%d, %d, %p);\n", location, count, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform4fvARB)(GLint location, GLsizei count, const GLfloat * value)
+{
+   DISPATCH(Uniform4fvARB, (location, count, value), (F, "glUniform4fvARB(%d, %d, %p);\n", location, count, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform4i)(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+   DISPATCH(Uniform4iARB, (location, v0, v1, v2, v3), (F, "glUniform4i(%d, %d, %d, %d, %d);\n", location, v0, v1, v2, v3));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform4iARB)(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
+{
+   DISPATCH(Uniform4iARB, (location, v0, v1, v2, v3), (F, "glUniform4iARB(%d, %d, %d, %d, %d);\n", location, v0, v1, v2, v3));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform4iv)(GLint location, GLsizei count, const GLint * value)
+{
+   DISPATCH(Uniform4ivARB, (location, count, value), (F, "glUniform4iv(%d, %d, %p);\n", location, count, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(Uniform4ivARB)(GLint location, GLsizei count, const GLint * value)
+{
+   DISPATCH(Uniform4ivARB, (location, count, value), (F, "glUniform4ivARB(%d, %d, %p);\n", location, count, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(UniformMatrix2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
+{
+   DISPATCH(UniformMatrix2fvARB, (location, count, transpose, value), (F, "glUniformMatrix2fv(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(UniformMatrix2fvARB)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
+{
+   DISPATCH(UniformMatrix2fvARB, (location, count, transpose, value), (F, "glUniformMatrix2fvARB(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(UniformMatrix3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
+{
+   DISPATCH(UniformMatrix3fvARB, (location, count, transpose, value), (F, "glUniformMatrix3fv(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(UniformMatrix3fvARB)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
+{
+   DISPATCH(UniformMatrix3fvARB, (location, count, transpose, value), (F, "glUniformMatrix3fvARB(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(UniformMatrix4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
+{
+   DISPATCH(UniformMatrix4fvARB, (location, count, transpose, value), (F, "glUniformMatrix4fv(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(UniformMatrix4fvARB)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
+{
+   DISPATCH(UniformMatrix4fvARB, (location, count, transpose, value), (F, "glUniformMatrix4fvARB(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(UseProgram)(GLuint program)
+{
+   DISPATCH(UseProgramObjectARB, (program), (F, "glUseProgram(%d);\n", program));
+}
+
+KEYWORD1 void KEYWORD2 NAME(UseProgramObjectARB)(GLhandleARB program)
+{
+   DISPATCH(UseProgramObjectARB, (program), (F, "glUseProgramObjectARB(%d);\n", program));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ValidateProgram)(GLuint program)
+{
+   DISPATCH(ValidateProgramARB, (program), (F, "glValidateProgram(%d);\n", program));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ValidateProgramARB)(GLhandleARB program)
+{
+   DISPATCH(ValidateProgramARB, (program), (F, "glValidateProgramARB(%d);\n", program));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindAttribLocation)(GLuint program, GLuint index, const GLchar * name)
+{
+   DISPATCH(BindAttribLocationARB, (program, index, name), (F, "glBindAttribLocation(%d, %d, %p);\n", program, index, (const void *) name));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindAttribLocationARB)(GLhandleARB program, GLuint index, const GLcharARB * name)
+{
+   DISPATCH(BindAttribLocationARB, (program, index, name), (F, "glBindAttribLocationARB(%d, %d, %p);\n", program, index, (const void *) name));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetActiveAttrib)(GLuint program, GLuint index, GLsizei  bufSize, GLsizei * length, GLint * size, GLenum * type, GLchar * name)
+{
+   DISPATCH(GetActiveAttribARB, (program, index, bufSize, length, size, type, name), (F, "glGetActiveAttrib(%d, %d, %d, %p, %p, %p, %p);\n", program, index, bufSize, (const void *) length, (const void *) size, (const void *) type, (const void *) name));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetActiveAttribARB)(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, GLcharARB * name)
+{
+   DISPATCH(GetActiveAttribARB, (program, index, bufSize, length, size, type, name), (F, "glGetActiveAttribARB(%d, %d, %d, %p, %p, %p, %p);\n", program, index, bufSize, (const void *) length, (const void *) size, (const void *) type, (const void *) name));
+}
+
+KEYWORD1 GLint KEYWORD2 NAME(GetAttribLocation)(GLuint program, const GLchar * name)
+{
+   RETURN_DISPATCH(GetAttribLocationARB, (program, name), (F, "glGetAttribLocation(%d, %p);\n", program, (const void *) name));
+}
+
+KEYWORD1 GLint KEYWORD2 NAME(GetAttribLocationARB)(GLhandleARB program, const GLcharARB * name)
+{
+   RETURN_DISPATCH(GetAttribLocationARB, (program, name), (F, "glGetAttribLocationARB(%d, %p);\n", program, (const void *) name));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DrawBuffers)(GLsizei n, const GLenum * bufs)
+{
+   DISPATCH(DrawBuffersARB, (n, bufs), (F, "glDrawBuffers(%d, %p);\n", n, (const void *) bufs));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DrawBuffersARB)(GLsizei n, const GLenum * bufs)
+{
+   DISPATCH(DrawBuffersARB, (n, bufs), (F, "glDrawBuffersARB(%d, %p);\n", n, (const void *) bufs));
+}
+
+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(RenderbufferStorageMultisample)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+{
+   DISPATCH(RenderbufferStorageMultisample, (target, samples, internalformat, width, height), (F, "glRenderbufferStorageMultisample(0x%x, %d, 0x%x, %d, %d);\n", target, samples, internalformat, width, height));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RenderbufferStorageMultisampleEXT)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
+{
+   DISPATCH(RenderbufferStorageMultisample, (target, samples, internalformat, width, height), (F, "glRenderbufferStorageMultisampleEXT(0x%x, %d, 0x%x, %d, %d);\n", target, samples, internalformat, width, height));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FlushMappedBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length)
+{
+   DISPATCH(FlushMappedBufferRange, (target, offset, length), (F, "glFlushMappedBufferRange(0x%x, %d, %d);\n", target, offset, length));
+}
+
+KEYWORD1 GLvoid * KEYWORD2 NAME(MapBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
+{
+   RETURN_DISPATCH(MapBufferRange, (target, offset, length, access), (F, "glMapBufferRange(0x%x, %d, %d, %d);\n", target, offset, length, access));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindVertexArray)(GLuint array)
+{
+   DISPATCH(BindVertexArray, (array), (F, "glBindVertexArray(%d);\n", array));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GenVertexArrays)(GLsizei n, GLuint * arrays)
+{
+   DISPATCH(GenVertexArrays, (n, arrays), (F, "glGenVertexArrays(%d, %p);\n", n, (const void *) arrays));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CopyBufferSubData)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
+{
+   DISPATCH(CopyBufferSubData, (readTarget, writeTarget, readOffset, writeOffset, size), (F, "glCopyBufferSubData(0x%x, 0x%x, %d, %d, %d);\n", readTarget, writeTarget, readOffset, writeOffset, size));
+}
+
+KEYWORD1 GLenum KEYWORD2 NAME(ClientWaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+   RETURN_DISPATCH(ClientWaitSync, (sync, flags, timeout), (F, "glClientWaitSync(%d, %d, %d);\n", sync, flags, timeout));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DeleteSync)(GLsync sync)
+{
+   DISPATCH(DeleteSync, (sync), (F, "glDeleteSync(%d);\n", sync));
+}
+
+KEYWORD1 GLsync KEYWORD2 NAME(FenceSync)(GLenum condition, GLbitfield flags)
+{
+   RETURN_DISPATCH(FenceSync, (condition, flags), (F, "glFenceSync(0x%x, %d);\n", condition, flags));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetInteger64v)(GLenum pname, GLint64 * params)
+{
+   DISPATCH(GetInteger64v, (pname, params), (F, "glGetInteger64v(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetSynciv)(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei * length, GLint * values)
+{
+   DISPATCH(GetSynciv, (sync, pname, bufSize, length, values), (F, "glGetSynciv(%d, 0x%x, %d, %p, %p);\n", sync, pname, bufSize, (const void *) length, (const void *) values));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsSync)(GLsync sync)
+{
+   RETURN_DISPATCH(IsSync, (sync), (F, "glIsSync(%d);\n", sync));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout)
+{
+   DISPATCH(WaitSync, (sync, flags, timeout), (F, "glWaitSync(%d, %d, %d);\n", sync, flags, timeout));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DrawElementsBaseVertex)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices, GLint basevertex)
+{
+   DISPATCH(DrawElementsBaseVertex, (mode, count, type, indices, basevertex), (F, "glDrawElementsBaseVertex(0x%x, %d, 0x%x, %p, %d);\n", mode, count, type, (const void *) indices, basevertex));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DrawRangeElementsBaseVertex)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid * indices, GLint basevertex)
+{
+   DISPATCH(DrawRangeElementsBaseVertex, (mode, start, end, count, type, indices, basevertex), (F, "glDrawRangeElementsBaseVertex(0x%x, %d, %d, %d, 0x%x, %p, %d);\n", mode, start, end, count, type, (const void *) indices, basevertex));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiDrawElementsBaseVertex)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount, const GLint * basevertex)
+{
+   DISPATCH(MultiDrawElementsBaseVertex, (mode, count, type, indices, primcount, basevertex), (F, "glMultiDrawElementsBaseVertex(0x%x, %p, 0x%x, %p, %d, %p);\n", mode, (const void *) count, type, (const void *) indices, primcount, (const void *) basevertex));
+}
+
+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_580)(GLenum pname, GLfloat * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_580)(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_581)(GLenum pname, GLint * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_581)(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_582)(GLenum pname, GLfloat param);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_582)(GLenum pname, GLfloat param)
+{
+   DISPATCH(PixelTexGenParameterfSGIS, (pname, param), (F, "glPixelTexGenParameterfSGIS(0x%x, %f);\n", pname, param));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_583)(GLenum pname, const GLfloat * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_583)(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_584)(GLenum pname, GLint param);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_584)(GLenum pname, GLint param)
+{
+   DISPATCH(PixelTexGenParameteriSGIS, (pname, param), (F, "glPixelTexGenParameteriSGIS(0x%x, %d);\n", pname, param));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_585)(GLenum pname, const GLint * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_585)(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_586)(GLclampf value, GLboolean invert);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_586)(GLclampf value, GLboolean invert)
+{
+   DISPATCH(SampleMaskSGIS, (value, invert), (F, "glSampleMaskSGIS(%f, %d);\n", value, invert));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_587)(GLenum pattern);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_587)(GLenum pattern)
+{
+   DISPATCH(SamplePatternSGIS, (pattern), (F, "glSamplePatternSGIS(0x%x);\n", pattern));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer)
+{
+   DISPATCH(ColorPointerEXT, (size, type, stride, count, pointer), (F, "glColorPointerEXT(%d, 0x%x, %d, %d, %p);\n", size, type, stride, count, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean * pointer)
+{
+   DISPATCH(EdgeFlagPointerEXT, (stride, count, pointer), (F, "glEdgeFlagPointerEXT(%d, %d, %p);\n", stride, count, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer)
+{
+   DISPATCH(IndexPointerEXT, (type, stride, count, pointer), (F, "glIndexPointerEXT(0x%x, %d, %d, %p);\n", type, stride, count, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(NormalPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer)
+{
+   DISPATCH(NormalPointerEXT, (type, stride, count, pointer), (F, "glNormalPointerEXT(0x%x, %d, %d, %p);\n", type, stride, count, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexCoordPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer)
+{
+   DISPATCH(TexCoordPointerEXT, (size, type, stride, count, pointer), (F, "glTexCoordPointerEXT(%d, 0x%x, %d, %d, %p);\n", size, type, stride, count, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer)
+{
+   DISPATCH(VertexPointerEXT, (size, type, stride, count, pointer), (F, "glVertexPointerEXT(%d, 0x%x, %d, %d, %p);\n", size, type, stride, count, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PointParameterf)(GLenum pname, GLfloat param)
+{
+   DISPATCH(PointParameterfEXT, (pname, param), (F, "glPointParameterf(0x%x, %f);\n", pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PointParameterfARB)(GLenum pname, GLfloat param)
+{
+   DISPATCH(PointParameterfEXT, (pname, param), (F, "glPointParameterfARB(0x%x, %f);\n", pname, param));
+}
+
+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_594)(GLenum pname, GLfloat param);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_594)(GLenum pname, GLfloat param)
+{
+   DISPATCH(PointParameterfEXT, (pname, param), (F, "glPointParameterfSGIS(0x%x, %f);\n", pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PointParameterfv)(GLenum pname, const GLfloat * params)
+{
+   DISPATCH(PointParameterfvEXT, (pname, params), (F, "glPointParameterfv(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PointParameterfvARB)(GLenum pname, const GLfloat * params)
+{
+   DISPATCH(PointParameterfvEXT, (pname, params), (F, "glPointParameterfvARB(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PointParameterfvEXT)(GLenum pname, const GLfloat * params)
+{
+   DISPATCH(PointParameterfvEXT, (pname, params), (F, "glPointParameterfvEXT(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_595)(GLenum pname, const GLfloat * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_595)(GLenum pname, const GLfloat * params)
+{
+   DISPATCH(PointParameterfvEXT, (pname, params), (F, "glPointParameterfvSGIS(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LockArraysEXT)(GLint first, GLsizei count)
+{
+   DISPATCH(LockArraysEXT, (first, count), (F, "glLockArraysEXT(%d, %d);\n", first, count));
+}
+
+KEYWORD1 void KEYWORD2 NAME(UnlockArraysEXT)(void)
+{
+   DISPATCH(UnlockArraysEXT, (), (F, "glUnlockArraysEXT();\n"));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_598)(GLenum pname, GLdouble * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_598)(GLenum pname, GLdouble * params)
+{
+   DISPATCH(CullParameterdvEXT, (pname, params), (F, "glCullParameterdvEXT(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_599)(GLenum pname, GLfloat * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_599)(GLenum pname, GLfloat * params)
+{
+   DISPATCH(CullParameterfvEXT, (pname, params), (F, "glCullParameterfvEXT(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3b)(GLbyte red, GLbyte green, GLbyte blue)
+{
+   DISPATCH(SecondaryColor3bEXT, (red, green, blue), (F, "glSecondaryColor3b(%d, %d, %d);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3bEXT)(GLbyte red, GLbyte green, GLbyte blue)
+{
+   DISPATCH(SecondaryColor3bEXT, (red, green, blue), (F, "glSecondaryColor3bEXT(%d, %d, %d);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3bv)(const GLbyte * v)
+{
+   DISPATCH(SecondaryColor3bvEXT, (v), (F, "glSecondaryColor3bv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3bvEXT)(const GLbyte * v)
+{
+   DISPATCH(SecondaryColor3bvEXT, (v), (F, "glSecondaryColor3bvEXT(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3d)(GLdouble red, GLdouble green, GLdouble blue)
+{
+   DISPATCH(SecondaryColor3dEXT, (red, green, blue), (F, "glSecondaryColor3d(%f, %f, %f);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3dEXT)(GLdouble red, GLdouble green, GLdouble blue)
+{
+   DISPATCH(SecondaryColor3dEXT, (red, green, blue), (F, "glSecondaryColor3dEXT(%f, %f, %f);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3dv)(const GLdouble * v)
+{
+   DISPATCH(SecondaryColor3dvEXT, (v), (F, "glSecondaryColor3dv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3dvEXT)(const GLdouble * v)
+{
+   DISPATCH(SecondaryColor3dvEXT, (v), (F, "glSecondaryColor3dvEXT(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3f)(GLfloat red, GLfloat green, GLfloat blue)
+{
+   DISPATCH(SecondaryColor3fEXT, (red, green, blue), (F, "glSecondaryColor3f(%f, %f, %f);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3fEXT)(GLfloat red, GLfloat green, GLfloat blue)
+{
+   DISPATCH(SecondaryColor3fEXT, (red, green, blue), (F, "glSecondaryColor3fEXT(%f, %f, %f);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3fv)(const GLfloat * v)
+{
+   DISPATCH(SecondaryColor3fvEXT, (v), (F, "glSecondaryColor3fv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3fvEXT)(const GLfloat * v)
+{
+   DISPATCH(SecondaryColor3fvEXT, (v), (F, "glSecondaryColor3fvEXT(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3i)(GLint red, GLint green, GLint blue)
+{
+   DISPATCH(SecondaryColor3iEXT, (red, green, blue), (F, "glSecondaryColor3i(%d, %d, %d);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3iEXT)(GLint red, GLint green, GLint blue)
+{
+   DISPATCH(SecondaryColor3iEXT, (red, green, blue), (F, "glSecondaryColor3iEXT(%d, %d, %d);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3iv)(const GLint * v)
+{
+   DISPATCH(SecondaryColor3ivEXT, (v), (F, "glSecondaryColor3iv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3ivEXT)(const GLint * v)
+{
+   DISPATCH(SecondaryColor3ivEXT, (v), (F, "glSecondaryColor3ivEXT(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3s)(GLshort red, GLshort green, GLshort blue)
+{
+   DISPATCH(SecondaryColor3sEXT, (red, green, blue), (F, "glSecondaryColor3s(%d, %d, %d);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3sEXT)(GLshort red, GLshort green, GLshort blue)
+{
+   DISPATCH(SecondaryColor3sEXT, (red, green, blue), (F, "glSecondaryColor3sEXT(%d, %d, %d);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3sv)(const GLshort * v)
+{
+   DISPATCH(SecondaryColor3svEXT, (v), (F, "glSecondaryColor3sv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3svEXT)(const GLshort * v)
+{
+   DISPATCH(SecondaryColor3svEXT, (v), (F, "glSecondaryColor3svEXT(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3ub)(GLubyte red, GLubyte green, GLubyte blue)
+{
+   DISPATCH(SecondaryColor3ubEXT, (red, green, blue), (F, "glSecondaryColor3ub(%d, %d, %d);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3ubEXT)(GLubyte red, GLubyte green, GLubyte blue)
+{
+   DISPATCH(SecondaryColor3ubEXT, (red, green, blue), (F, "glSecondaryColor3ubEXT(%d, %d, %d);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3ubv)(const GLubyte * v)
+{
+   DISPATCH(SecondaryColor3ubvEXT, (v), (F, "glSecondaryColor3ubv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3ubvEXT)(const GLubyte * v)
+{
+   DISPATCH(SecondaryColor3ubvEXT, (v), (F, "glSecondaryColor3ubvEXT(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3ui)(GLuint red, GLuint green, GLuint blue)
+{
+   DISPATCH(SecondaryColor3uiEXT, (red, green, blue), (F, "glSecondaryColor3ui(%d, %d, %d);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3uiEXT)(GLuint red, GLuint green, GLuint blue)
+{
+   DISPATCH(SecondaryColor3uiEXT, (red, green, blue), (F, "glSecondaryColor3uiEXT(%d, %d, %d);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3uiv)(const GLuint * v)
+{
+   DISPATCH(SecondaryColor3uivEXT, (v), (F, "glSecondaryColor3uiv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3uivEXT)(const GLuint * v)
+{
+   DISPATCH(SecondaryColor3uivEXT, (v), (F, "glSecondaryColor3uivEXT(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3us)(GLushort red, GLushort green, GLushort blue)
+{
+   DISPATCH(SecondaryColor3usEXT, (red, green, blue), (F, "glSecondaryColor3us(%d, %d, %d);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3usEXT)(GLushort red, GLushort green, GLushort blue)
+{
+   DISPATCH(SecondaryColor3usEXT, (red, green, blue), (F, "glSecondaryColor3usEXT(%d, %d, %d);\n", red, green, blue));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3usv)(const GLushort * v)
+{
+   DISPATCH(SecondaryColor3usvEXT, (v), (F, "glSecondaryColor3usv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColor3usvEXT)(const GLushort * v)
+{
+   DISPATCH(SecondaryColor3usvEXT, (v), (F, "glSecondaryColor3usvEXT(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColorPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer)
+{
+   DISPATCH(SecondaryColorPointerEXT, (size, type, stride, pointer), (F, "glSecondaryColorPointer(%d, 0x%x, %d, %p);\n", size, type, stride, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SecondaryColorPointerEXT)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer)
+{
+   DISPATCH(SecondaryColorPointerEXT, (size, type, stride, pointer), (F, "glSecondaryColorPointerEXT(%d, 0x%x, %d, %p);\n", size, type, stride, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiDrawArrays)(GLenum mode, GLint * first, GLsizei * count, GLsizei primcount)
+{
+   DISPATCH(MultiDrawArraysEXT, (mode, first, count, primcount), (F, "glMultiDrawArrays(0x%x, %p, %p, %d);\n", mode, (const void *) first, (const void *) count, primcount));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiDrawArraysEXT)(GLenum mode, GLint * first, GLsizei * count, GLsizei primcount)
+{
+   DISPATCH(MultiDrawArraysEXT, (mode, first, count, primcount), (F, "glMultiDrawArraysEXT(0x%x, %p, %p, %d);\n", mode, (const void *) first, (const void *) count, primcount));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiDrawElements)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount)
+{
+   DISPATCH(MultiDrawElementsEXT, (mode, count, type, indices, primcount), (F, "glMultiDrawElements(0x%x, %p, 0x%x, %p, %d);\n", mode, (const void *) count, type, (const void *) indices, primcount));
+}
+
+KEYWORD1 void KEYWORD2 NAME(MultiDrawElementsEXT)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount)
+{
+   DISPATCH(MultiDrawElementsEXT, (mode, count, type, indices, primcount), (F, "glMultiDrawElementsEXT(0x%x, %p, 0x%x, %p, %d);\n", mode, (const void *) count, type, (const void *) indices, primcount));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FogCoordPointer)(GLenum type, GLsizei stride, const GLvoid * pointer)
+{
+   DISPATCH(FogCoordPointerEXT, (type, stride, pointer), (F, "glFogCoordPointer(0x%x, %d, %p);\n", type, stride, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FogCoordPointerEXT)(GLenum type, GLsizei stride, const GLvoid * pointer)
+{
+   DISPATCH(FogCoordPointerEXT, (type, stride, pointer), (F, "glFogCoordPointerEXT(0x%x, %d, %p);\n", type, stride, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FogCoordd)(GLdouble coord)
+{
+   DISPATCH(FogCoorddEXT, (coord), (F, "glFogCoordd(%f);\n", coord));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FogCoorddEXT)(GLdouble coord)
+{
+   DISPATCH(FogCoorddEXT, (coord), (F, "glFogCoorddEXT(%f);\n", coord));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FogCoorddv)(const GLdouble * coord)
+{
+   DISPATCH(FogCoorddvEXT, (coord), (F, "glFogCoorddv(%p);\n", (const void *) coord));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FogCoorddvEXT)(const GLdouble * coord)
+{
+   DISPATCH(FogCoorddvEXT, (coord), (F, "glFogCoorddvEXT(%p);\n", (const void *) coord));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FogCoordf)(GLfloat coord)
+{
+   DISPATCH(FogCoordfEXT, (coord), (F, "glFogCoordf(%f);\n", coord));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FogCoordfEXT)(GLfloat coord)
+{
+   DISPATCH(FogCoordfEXT, (coord), (F, "glFogCoordfEXT(%f);\n", coord));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FogCoordfv)(const GLfloat * coord)
+{
+   DISPATCH(FogCoordfvEXT, (coord), (F, "glFogCoordfv(%p);\n", (const void *) coord));
+}
+
+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_624)(GLenum mode);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_624)(GLenum mode)
+{
+   DISPATCH(PixelTexGenSGIX, (mode), (F, "glPixelTexGenSGIX(0x%x);\n", mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BlendFuncSeparate)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+   DISPATCH(BlendFuncSeparateEXT, (sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha), (F, "glBlendFuncSeparate(0x%x, 0x%x, 0x%x, 0x%x);\n", sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
+{
+   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_625)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_625)(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));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FlushVertexArrayRangeNV)(void)
+{
+   DISPATCH(FlushVertexArrayRangeNV, (), (F, "glFlushVertexArrayRangeNV();\n"));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexArrayRangeNV)(GLsizei length, const GLvoid * pointer)
+{
+   DISPATCH(VertexArrayRangeNV, (length, pointer), (F, "glVertexArrayRangeNV(%d, %p);\n", length, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CombinerInputNV)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)
+{
+   DISPATCH(CombinerInputNV, (stage, portion, variable, input, mapping, componentUsage), (F, "glCombinerInputNV(0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x);\n", stage, portion, variable, input, mapping, componentUsage));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CombinerOutputNV)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum)
+{
+   DISPATCH(CombinerOutputNV, (stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum), (F, "glCombinerOutputNV(0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, %d, %d, %d);\n", stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CombinerParameterfNV)(GLenum pname, GLfloat param)
+{
+   DISPATCH(CombinerParameterfNV, (pname, param), (F, "glCombinerParameterfNV(0x%x, %f);\n", pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CombinerParameterfvNV)(GLenum pname, const GLfloat * params)
+{
+   DISPATCH(CombinerParameterfvNV, (pname, params), (F, "glCombinerParameterfvNV(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CombinerParameteriNV)(GLenum pname, GLint param)
+{
+   DISPATCH(CombinerParameteriNV, (pname, param), (F, "glCombinerParameteriNV(0x%x, %d);\n", pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(CombinerParameterivNV)(GLenum pname, const GLint * params)
+{
+   DISPATCH(CombinerParameterivNV, (pname, params), (F, "glCombinerParameterivNV(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FinalCombinerInputNV)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)
+{
+   DISPATCH(FinalCombinerInputNV, (variable, input, mapping, componentUsage), (F, "glFinalCombinerInputNV(0x%x, 0x%x, 0x%x, 0x%x);\n", variable, input, mapping, componentUsage));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetCombinerInputParameterfvNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetCombinerInputParameterfvNV, (stage, portion, variable, pname, params), (F, "glGetCombinerInputParameterfvNV(0x%x, 0x%x, 0x%x, 0x%x, %p);\n", stage, portion, variable, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetCombinerInputParameterivNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint * params)
+{
+   DISPATCH(GetCombinerInputParameterivNV, (stage, portion, variable, pname, params), (F, "glGetCombinerInputParameterivNV(0x%x, 0x%x, 0x%x, 0x%x, %p);\n", stage, portion, variable, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetCombinerOutputParameterfvNV)(GLenum stage, GLenum portion, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetCombinerOutputParameterfvNV, (stage, portion, pname, params), (F, "glGetCombinerOutputParameterfvNV(0x%x, 0x%x, 0x%x, %p);\n", stage, portion, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetCombinerOutputParameterivNV)(GLenum stage, GLenum portion, GLenum pname, GLint * params)
+{
+   DISPATCH(GetCombinerOutputParameterivNV, (stage, portion, pname, params), (F, "glGetCombinerOutputParameterivNV(0x%x, 0x%x, 0x%x, %p);\n", stage, portion, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetFinalCombinerInputParameterfvNV)(GLenum variable, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetFinalCombinerInputParameterfvNV, (variable, pname, params), (F, "glGetFinalCombinerInputParameterfvNV(0x%x, 0x%x, %p);\n", variable, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetFinalCombinerInputParameterivNV)(GLenum variable, GLenum pname, GLint * params)
+{
+   DISPATCH(GetFinalCombinerInputParameterivNV, (variable, pname, params), (F, "glGetFinalCombinerInputParameterivNV(0x%x, 0x%x, %p);\n", variable, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ResizeBuffersMESA)(void)
+{
+   DISPATCH(ResizeBuffersMESA, (), (F, "glResizeBuffersMESA();\n"));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2d)(GLdouble x, GLdouble y)
+{
+   DISPATCH(WindowPos2dMESA, (x, y), (F, "glWindowPos2d(%f, %f);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2dARB)(GLdouble x, GLdouble y)
+{
+   DISPATCH(WindowPos2dMESA, (x, y), (F, "glWindowPos2dARB(%f, %f);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2dMESA)(GLdouble x, GLdouble y)
+{
+   DISPATCH(WindowPos2dMESA, (x, y), (F, "glWindowPos2dMESA(%f, %f);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2dv)(const GLdouble * v)
+{
+   DISPATCH(WindowPos2dvMESA, (v), (F, "glWindowPos2dv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2dvARB)(const GLdouble * v)
+{
+   DISPATCH(WindowPos2dvMESA, (v), (F, "glWindowPos2dvARB(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2dvMESA)(const GLdouble * v)
+{
+   DISPATCH(WindowPos2dvMESA, (v), (F, "glWindowPos2dvMESA(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2f)(GLfloat x, GLfloat y)
+{
+   DISPATCH(WindowPos2fMESA, (x, y), (F, "glWindowPos2f(%f, %f);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2fARB)(GLfloat x, GLfloat y)
+{
+   DISPATCH(WindowPos2fMESA, (x, y), (F, "glWindowPos2fARB(%f, %f);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2fMESA)(GLfloat x, GLfloat y)
+{
+   DISPATCH(WindowPos2fMESA, (x, y), (F, "glWindowPos2fMESA(%f, %f);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2fv)(const GLfloat * v)
+{
+   DISPATCH(WindowPos2fvMESA, (v), (F, "glWindowPos2fv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2fvARB)(const GLfloat * v)
+{
+   DISPATCH(WindowPos2fvMESA, (v), (F, "glWindowPos2fvARB(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2fvMESA)(const GLfloat * v)
+{
+   DISPATCH(WindowPos2fvMESA, (v), (F, "glWindowPos2fvMESA(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2i)(GLint x, GLint y)
+{
+   DISPATCH(WindowPos2iMESA, (x, y), (F, "glWindowPos2i(%d, %d);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2iARB)(GLint x, GLint y)
+{
+   DISPATCH(WindowPos2iMESA, (x, y), (F, "glWindowPos2iARB(%d, %d);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2iMESA)(GLint x, GLint y)
+{
+   DISPATCH(WindowPos2iMESA, (x, y), (F, "glWindowPos2iMESA(%d, %d);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2iv)(const GLint * v)
+{
+   DISPATCH(WindowPos2ivMESA, (v), (F, "glWindowPos2iv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2ivARB)(const GLint * v)
+{
+   DISPATCH(WindowPos2ivMESA, (v), (F, "glWindowPos2ivARB(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2ivMESA)(const GLint * v)
+{
+   DISPATCH(WindowPos2ivMESA, (v), (F, "glWindowPos2ivMESA(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2s)(GLshort x, GLshort y)
+{
+   DISPATCH(WindowPos2sMESA, (x, y), (F, "glWindowPos2s(%d, %d);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2sARB)(GLshort x, GLshort y)
+{
+   DISPATCH(WindowPos2sMESA, (x, y), (F, "glWindowPos2sARB(%d, %d);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2sMESA)(GLshort x, GLshort y)
+{
+   DISPATCH(WindowPos2sMESA, (x, y), (F, "glWindowPos2sMESA(%d, %d);\n", x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2sv)(const GLshort * v)
+{
+   DISPATCH(WindowPos2svMESA, (v), (F, "glWindowPos2sv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2svARB)(const GLshort * v)
+{
+   DISPATCH(WindowPos2svMESA, (v), (F, "glWindowPos2svARB(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos2svMESA)(const GLshort * v)
+{
+   DISPATCH(WindowPos2svMESA, (v), (F, "glWindowPos2svMESA(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3d)(GLdouble x, GLdouble y, GLdouble z)
+{
+   DISPATCH(WindowPos3dMESA, (x, y, z), (F, "glWindowPos3d(%f, %f, %f);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3dARB)(GLdouble x, GLdouble y, GLdouble z)
+{
+   DISPATCH(WindowPos3dMESA, (x, y, z), (F, "glWindowPos3dARB(%f, %f, %f);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3dMESA)(GLdouble x, GLdouble y, GLdouble z)
+{
+   DISPATCH(WindowPos3dMESA, (x, y, z), (F, "glWindowPos3dMESA(%f, %f, %f);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3dv)(const GLdouble * v)
+{
+   DISPATCH(WindowPos3dvMESA, (v), (F, "glWindowPos3dv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3dvARB)(const GLdouble * v)
+{
+   DISPATCH(WindowPos3dvMESA, (v), (F, "glWindowPos3dvARB(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3dvMESA)(const GLdouble * v)
+{
+   DISPATCH(WindowPos3dvMESA, (v), (F, "glWindowPos3dvMESA(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3f)(GLfloat x, GLfloat y, GLfloat z)
+{
+   DISPATCH(WindowPos3fMESA, (x, y, z), (F, "glWindowPos3f(%f, %f, %f);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3fARB)(GLfloat x, GLfloat y, GLfloat z)
+{
+   DISPATCH(WindowPos3fMESA, (x, y, z), (F, "glWindowPos3fARB(%f, %f, %f);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3fMESA)(GLfloat x, GLfloat y, GLfloat z)
+{
+   DISPATCH(WindowPos3fMESA, (x, y, z), (F, "glWindowPos3fMESA(%f, %f, %f);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3fv)(const GLfloat * v)
+{
+   DISPATCH(WindowPos3fvMESA, (v), (F, "glWindowPos3fv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3fvARB)(const GLfloat * v)
+{
+   DISPATCH(WindowPos3fvMESA, (v), (F, "glWindowPos3fvARB(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3fvMESA)(const GLfloat * v)
+{
+   DISPATCH(WindowPos3fvMESA, (v), (F, "glWindowPos3fvMESA(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3i)(GLint x, GLint y, GLint z)
+{
+   DISPATCH(WindowPos3iMESA, (x, y, z), (F, "glWindowPos3i(%d, %d, %d);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3iARB)(GLint x, GLint y, GLint z)
+{
+   DISPATCH(WindowPos3iMESA, (x, y, z), (F, "glWindowPos3iARB(%d, %d, %d);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3iMESA)(GLint x, GLint y, GLint z)
+{
+   DISPATCH(WindowPos3iMESA, (x, y, z), (F, "glWindowPos3iMESA(%d, %d, %d);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3iv)(const GLint * v)
+{
+   DISPATCH(WindowPos3ivMESA, (v), (F, "glWindowPos3iv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3ivARB)(const GLint * v)
+{
+   DISPATCH(WindowPos3ivMESA, (v), (F, "glWindowPos3ivARB(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3ivMESA)(const GLint * v)
+{
+   DISPATCH(WindowPos3ivMESA, (v), (F, "glWindowPos3ivMESA(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3s)(GLshort x, GLshort y, GLshort z)
+{
+   DISPATCH(WindowPos3sMESA, (x, y, z), (F, "glWindowPos3s(%d, %d, %d);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3sARB)(GLshort x, GLshort y, GLshort z)
+{
+   DISPATCH(WindowPos3sMESA, (x, y, z), (F, "glWindowPos3sARB(%d, %d, %d);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3sMESA)(GLshort x, GLshort y, GLshort z)
+{
+   DISPATCH(WindowPos3sMESA, (x, y, z), (F, "glWindowPos3sMESA(%d, %d, %d);\n", x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3sv)(const GLshort * v)
+{
+   DISPATCH(WindowPos3svMESA, (v), (F, "glWindowPos3sv(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3svARB)(const GLshort * v)
+{
+   DISPATCH(WindowPos3svMESA, (v), (F, "glWindowPos3svARB(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos3svMESA)(const GLshort * v)
+{
+   DISPATCH(WindowPos3svMESA, (v), (F, "glWindowPos3svMESA(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos4dMESA)(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+   DISPATCH(WindowPos4dMESA, (x, y, z, w), (F, "glWindowPos4dMESA(%f, %f, %f, %f);\n", x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos4dvMESA)(const GLdouble * v)
+{
+   DISPATCH(WindowPos4dvMESA, (v), (F, "glWindowPos4dvMESA(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos4fMESA)(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+   DISPATCH(WindowPos4fMESA, (x, y, z, w), (F, "glWindowPos4fMESA(%f, %f, %f, %f);\n", x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos4fvMESA)(const GLfloat * v)
+{
+   DISPATCH(WindowPos4fvMESA, (v), (F, "glWindowPos4fvMESA(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos4iMESA)(GLint x, GLint y, GLint z, GLint w)
+{
+   DISPATCH(WindowPos4iMESA, (x, y, z, w), (F, "glWindowPos4iMESA(%d, %d, %d, %d);\n", x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos4ivMESA)(const GLint * v)
+{
+   DISPATCH(WindowPos4ivMESA, (v), (F, "glWindowPos4ivMESA(%p);\n", (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w)
+{
+   DISPATCH(WindowPos4sMESA, (x, y, z, w), (F, "glWindowPos4sMESA(%d, %d, %d, %d);\n", x, y, z, w));
+}
+
+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_666)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_666)(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_667)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_667)(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_668)(GLsizei n, const GLuint * fences);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_668)(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_669)(GLuint fence);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_669)(GLuint fence)
+{
+   DISPATCH(FinishFenceNV, (fence), (F, "glFinishFenceNV(%d);\n", fence));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_670)(GLsizei n, GLuint * fences);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_670)(GLsizei n, GLuint * fences)
+{
+   DISPATCH(GenFencesNV, (n, fences), (F, "glGenFencesNV(%d, %p);\n", n, (const void *) fences));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_671)(GLuint fence, GLenum pname, GLint * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_671)(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_672)(GLuint fence);
+
+KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_672)(GLuint fence)
+{
+   RETURN_DISPATCH(IsFenceNV, (fence), (F, "glIsFenceNV(%d);\n", fence));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_673)(GLuint fence, GLenum condition);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_673)(GLuint fence, GLenum condition)
+{
+   DISPATCH(SetFenceNV, (fence, condition), (F, "glSetFenceNV(%d, 0x%x);\n", fence, condition));
+}
+
+KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_674)(GLuint fence);
+
+KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_674)(GLuint fence)
+{
+   RETURN_DISPATCH(TestFenceNV, (fence), (F, "glTestFenceNV(%d);\n", fence));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(AreProgramsResidentNV)(GLsizei n, const GLuint * ids, GLboolean * residences)
+{
+   RETURN_DISPATCH(AreProgramsResidentNV, (n, ids, residences), (F, "glAreProgramsResidentNV(%d, %p, %p);\n", n, (const void *) ids, (const void *) residences));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindProgramARB)(GLenum target, GLuint program)
+{
+   DISPATCH(BindProgramNV, (target, program), (F, "glBindProgramARB(0x%x, %d);\n", target, program));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindProgramNV)(GLenum target, GLuint program)
+{
+   DISPATCH(BindProgramNV, (target, program), (F, "glBindProgramNV(0x%x, %d);\n", target, program));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DeleteProgramsARB)(GLsizei n, const GLuint * programs)
+{
+   DISPATCH(DeleteProgramsNV, (n, programs), (F, "glDeleteProgramsARB(%d, %p);\n", n, (const void *) programs));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DeleteProgramsNV)(GLsizei n, const GLuint * programs)
+{
+   DISPATCH(DeleteProgramsNV, (n, programs), (F, "glDeleteProgramsNV(%d, %p);\n", n, (const void *) programs));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ExecuteProgramNV)(GLenum target, GLuint id, const GLfloat * params)
+{
+   DISPATCH(ExecuteProgramNV, (target, id, params), (F, "glExecuteProgramNV(0x%x, %d, %p);\n", target, id, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GenProgramsARB)(GLsizei n, GLuint * programs)
+{
+   DISPATCH(GenProgramsNV, (n, programs), (F, "glGenProgramsARB(%d, %p);\n", n, (const void *) programs));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GenProgramsNV)(GLsizei n, GLuint * programs)
+{
+   DISPATCH(GenProgramsNV, (n, programs), (F, "glGenProgramsNV(%d, %p);\n", n, (const void *) programs));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetProgramParameterdvNV)(GLenum target, GLuint index, GLenum pname, GLdouble * params)
+{
+   DISPATCH(GetProgramParameterdvNV, (target, index, pname, params), (F, "glGetProgramParameterdvNV(0x%x, %d, 0x%x, %p);\n", target, index, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetProgramParameterfvNV)(GLenum target, GLuint index, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetProgramParameterfvNV, (target, index, pname, params), (F, "glGetProgramParameterfvNV(0x%x, %d, 0x%x, %p);\n", target, index, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetProgramStringNV)(GLuint id, GLenum pname, GLubyte * program)
+{
+   DISPATCH(GetProgramStringNV, (id, pname, program), (F, "glGetProgramStringNV(%d, 0x%x, %p);\n", id, pname, (const void *) program));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetProgramivNV)(GLuint id, GLenum pname, GLint * params)
+{
+   DISPATCH(GetProgramivNV, (id, pname, params), (F, "glGetProgramivNV(%d, 0x%x, %p);\n", id, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetTrackMatrixivNV)(GLenum target, GLuint address, GLenum pname, GLint * params)
+{
+   DISPATCH(GetTrackMatrixivNV, (target, address, pname, params), (F, "glGetTrackMatrixivNV(0x%x, %d, 0x%x, %p);\n", target, address, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetVertexAttribPointerv)(GLuint index, GLenum pname, GLvoid ** pointer)
+{
+   DISPATCH(GetVertexAttribPointervNV, (index, pname, pointer), (F, "glGetVertexAttribPointerv(%d, 0x%x, %p);\n", index, pname, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetVertexAttribPointervARB)(GLuint index, GLenum pname, GLvoid ** pointer)
+{
+   DISPATCH(GetVertexAttribPointervNV, (index, pname, pointer), (F, "glGetVertexAttribPointervARB(%d, 0x%x, %p);\n", index, pname, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetVertexAttribPointervNV)(GLuint index, GLenum pname, GLvoid ** pointer)
+{
+   DISPATCH(GetVertexAttribPointervNV, (index, pname, pointer), (F, "glGetVertexAttribPointervNV(%d, 0x%x, %p);\n", index, pname, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetVertexAttribdvNV)(GLuint index, GLenum pname, GLdouble * params)
+{
+   DISPATCH(GetVertexAttribdvNV, (index, pname, params), (F, "glGetVertexAttribdvNV(%d, 0x%x, %p);\n", index, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetVertexAttribfvNV)(GLuint index, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetVertexAttribfvNV, (index, pname, params), (F, "glGetVertexAttribfvNV(%d, 0x%x, %p);\n", index, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetVertexAttribivNV)(GLuint index, GLenum pname, GLint * params)
+{
+   DISPATCH(GetVertexAttribivNV, (index, pname, params), (F, "glGetVertexAttribivNV(%d, 0x%x, %p);\n", index, pname, (const void *) params));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsProgramARB)(GLuint program)
+{
+   RETURN_DISPATCH(IsProgramNV, (program), (F, "glIsProgramARB(%d);\n", program));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsProgramNV)(GLuint program)
+{
+   RETURN_DISPATCH(IsProgramNV, (program), (F, "glIsProgramNV(%d);\n", program));
+}
+
+KEYWORD1 void KEYWORD2 NAME(LoadProgramNV)(GLenum target, GLuint id, GLsizei len, const GLubyte * program)
+{
+   DISPATCH(LoadProgramNV, (target, id, len, program), (F, "glLoadProgramNV(0x%x, %d, %d, %p);\n", target, id, len, (const void *) program));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramParameters4dvNV)(GLenum target, GLuint index, GLuint num, const GLdouble * params)
+{
+   DISPATCH(ProgramParameters4dvNV, (target, index, num, params), (F, "glProgramParameters4dvNV(0x%x, %d, %d, %p);\n", target, index, num, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramParameters4fvNV)(GLenum target, GLuint index, GLuint num, const GLfloat * params)
+{
+   DISPATCH(ProgramParameters4fvNV, (target, index, num, params), (F, "glProgramParameters4fvNV(0x%x, %d, %d, %p);\n", target, index, num, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RequestResidentProgramsNV)(GLsizei n, const GLuint * ids)
+{
+   DISPATCH(RequestResidentProgramsNV, (n, ids), (F, "glRequestResidentProgramsNV(%d, %p);\n", n, (const void *) ids));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TrackMatrixNV)(GLenum target, GLuint address, GLenum matrix, GLenum transform)
+{
+   DISPATCH(TrackMatrixNV, (target, address, matrix, transform), (F, "glTrackMatrixNV(0x%x, %d, 0x%x, 0x%x);\n", target, address, matrix, transform));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib1dNV)(GLuint index, GLdouble x)
+{
+   DISPATCH(VertexAttrib1dNV, (index, x), (F, "glVertexAttrib1dNV(%d, %f);\n", index, x));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib1dvNV)(GLuint index, const GLdouble * v)
+{
+   DISPATCH(VertexAttrib1dvNV, (index, v), (F, "glVertexAttrib1dvNV(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib1fNV)(GLuint index, GLfloat x)
+{
+   DISPATCH(VertexAttrib1fNV, (index, x), (F, "glVertexAttrib1fNV(%d, %f);\n", index, x));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib1fvNV)(GLuint index, const GLfloat * v)
+{
+   DISPATCH(VertexAttrib1fvNV, (index, v), (F, "glVertexAttrib1fvNV(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib1sNV)(GLuint index, GLshort x)
+{
+   DISPATCH(VertexAttrib1sNV, (index, x), (F, "glVertexAttrib1sNV(%d, %d);\n", index, x));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib1svNV)(GLuint index, const GLshort * v)
+{
+   DISPATCH(VertexAttrib1svNV, (index, v), (F, "glVertexAttrib1svNV(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib2dNV)(GLuint index, GLdouble x, GLdouble y)
+{
+   DISPATCH(VertexAttrib2dNV, (index, x, y), (F, "glVertexAttrib2dNV(%d, %f, %f);\n", index, x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib2dvNV)(GLuint index, const GLdouble * v)
+{
+   DISPATCH(VertexAttrib2dvNV, (index, v), (F, "glVertexAttrib2dvNV(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib2fNV)(GLuint index, GLfloat x, GLfloat y)
+{
+   DISPATCH(VertexAttrib2fNV, (index, x, y), (F, "glVertexAttrib2fNV(%d, %f, %f);\n", index, x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib2fvNV)(GLuint index, const GLfloat * v)
+{
+   DISPATCH(VertexAttrib2fvNV, (index, v), (F, "glVertexAttrib2fvNV(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib2sNV)(GLuint index, GLshort x, GLshort y)
+{
+   DISPATCH(VertexAttrib2sNV, (index, x, y), (F, "glVertexAttrib2sNV(%d, %d, %d);\n", index, x, y));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib2svNV)(GLuint index, const GLshort * v)
+{
+   DISPATCH(VertexAttrib2svNV, (index, v), (F, "glVertexAttrib2svNV(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib3dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z)
+{
+   DISPATCH(VertexAttrib3dNV, (index, x, y, z), (F, "glVertexAttrib3dNV(%d, %f, %f, %f);\n", index, x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib3dvNV)(GLuint index, const GLdouble * v)
+{
+   DISPATCH(VertexAttrib3dvNV, (index, v), (F, "glVertexAttrib3dvNV(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib3fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z)
+{
+   DISPATCH(VertexAttrib3fNV, (index, x, y, z), (F, "glVertexAttrib3fNV(%d, %f, %f, %f);\n", index, x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib3fvNV)(GLuint index, const GLfloat * v)
+{
+   DISPATCH(VertexAttrib3fvNV, (index, v), (F, "glVertexAttrib3fvNV(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib3sNV)(GLuint index, GLshort x, GLshort y, GLshort z)
+{
+   DISPATCH(VertexAttrib3sNV, (index, x, y, z), (F, "glVertexAttrib3sNV(%d, %d, %d, %d);\n", index, x, y, z));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib3svNV)(GLuint index, const GLshort * v)
+{
+   DISPATCH(VertexAttrib3svNV, (index, v), (F, "glVertexAttrib3svNV(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+   DISPATCH(VertexAttrib4dNV, (index, x, y, z, w), (F, "glVertexAttrib4dNV(%d, %f, %f, %f, %f);\n", index, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4dvNV)(GLuint index, const GLdouble * v)
+{
+   DISPATCH(VertexAttrib4dvNV, (index, v), (F, "glVertexAttrib4dvNV(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+   DISPATCH(VertexAttrib4fNV, (index, x, y, z, w), (F, "glVertexAttrib4fNV(%d, %f, %f, %f, %f);\n", index, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4fvNV)(GLuint index, const GLfloat * v)
+{
+   DISPATCH(VertexAttrib4fvNV, (index, v), (F, "glVertexAttrib4fvNV(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4sNV)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
+{
+   DISPATCH(VertexAttrib4sNV, (index, x, y, z, w), (F, "glVertexAttrib4sNV(%d, %d, %d, %d, %d);\n", index, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4svNV)(GLuint index, const GLshort * v)
+{
+   DISPATCH(VertexAttrib4svNV, (index, v), (F, "glVertexAttrib4svNV(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4ubNV)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
+{
+   DISPATCH(VertexAttrib4ubNV, (index, x, y, z, w), (F, "glVertexAttrib4ubNV(%d, %d, %d, %d, %d);\n", index, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttrib4ubvNV)(GLuint index, const GLubyte * v)
+{
+   DISPATCH(VertexAttrib4ubvNV, (index, v), (F, "glVertexAttrib4ubvNV(%d, %p);\n", index, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttribPointerNV)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer)
+{
+   DISPATCH(VertexAttribPointerNV, (index, size, type, stride, pointer), (F, "glVertexAttribPointerNV(%d, %d, 0x%x, %d, %p);\n", index, size, type, stride, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttribs1dvNV)(GLuint index, GLsizei n, const GLdouble * v)
+{
+   DISPATCH(VertexAttribs1dvNV, (index, n, v), (F, "glVertexAttribs1dvNV(%d, %d, %p);\n", index, n, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttribs1fvNV)(GLuint index, GLsizei n, const GLfloat * v)
+{
+   DISPATCH(VertexAttribs1fvNV, (index, n, v), (F, "glVertexAttribs1fvNV(%d, %d, %p);\n", index, n, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttribs1svNV)(GLuint index, GLsizei n, const GLshort * v)
+{
+   DISPATCH(VertexAttribs1svNV, (index, n, v), (F, "glVertexAttribs1svNV(%d, %d, %p);\n", index, n, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttribs2dvNV)(GLuint index, GLsizei n, const GLdouble * v)
+{
+   DISPATCH(VertexAttribs2dvNV, (index, n, v), (F, "glVertexAttribs2dvNV(%d, %d, %p);\n", index, n, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttribs2fvNV)(GLuint index, GLsizei n, const GLfloat * v)
+{
+   DISPATCH(VertexAttribs2fvNV, (index, n, v), (F, "glVertexAttribs2fvNV(%d, %d, %p);\n", index, n, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttribs2svNV)(GLuint index, GLsizei n, const GLshort * v)
+{
+   DISPATCH(VertexAttribs2svNV, (index, n, v), (F, "glVertexAttribs2svNV(%d, %d, %p);\n", index, n, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttribs3dvNV)(GLuint index, GLsizei n, const GLdouble * v)
+{
+   DISPATCH(VertexAttribs3dvNV, (index, n, v), (F, "glVertexAttribs3dvNV(%d, %d, %p);\n", index, n, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttribs3fvNV)(GLuint index, GLsizei n, const GLfloat * v)
+{
+   DISPATCH(VertexAttribs3fvNV, (index, n, v), (F, "glVertexAttribs3fvNV(%d, %d, %p);\n", index, n, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttribs3svNV)(GLuint index, GLsizei n, const GLshort * v)
+{
+   DISPATCH(VertexAttribs3svNV, (index, n, v), (F, "glVertexAttribs3svNV(%d, %d, %p);\n", index, n, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttribs4dvNV)(GLuint index, GLsizei n, const GLdouble * v)
+{
+   DISPATCH(VertexAttribs4dvNV, (index, n, v), (F, "glVertexAttribs4dvNV(%d, %d, %p);\n", index, n, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttribs4fvNV)(GLuint index, GLsizei n, const GLfloat * v)
+{
+   DISPATCH(VertexAttribs4fvNV, (index, n, v), (F, "glVertexAttribs4fvNV(%d, %d, %p);\n", index, n, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttribs4svNV)(GLuint index, GLsizei n, const GLshort * v)
+{
+   DISPATCH(VertexAttribs4svNV, (index, n, v), (F, "glVertexAttribs4svNV(%d, %d, %p);\n", index, n, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(VertexAttribs4ubvNV)(GLuint index, GLsizei n, const GLubyte * v)
+{
+   DISPATCH(VertexAttribs4ubvNV, (index, n, v), (F, "glVertexAttribs4ubvNV(%d, %d, %p);\n", index, n, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetTexBumpParameterfvATI)(GLenum pname, GLfloat * param)
+{
+   DISPATCH(GetTexBumpParameterfvATI, (pname, param), (F, "glGetTexBumpParameterfvATI(0x%x, %p);\n", pname, (const void *) param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetTexBumpParameterivATI)(GLenum pname, GLint * param)
+{
+   DISPATCH(GetTexBumpParameterivATI, (pname, param), (F, "glGetTexBumpParameterivATI(0x%x, %p);\n", pname, (const void *) param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexBumpParameterfvATI)(GLenum pname, const GLfloat * param)
+{
+   DISPATCH(TexBumpParameterfvATI, (pname, param), (F, "glTexBumpParameterfvATI(0x%x, %p);\n", pname, (const void *) param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TexBumpParameterivATI)(GLenum pname, const GLint * param)
+{
+   DISPATCH(TexBumpParameterivATI, (pname, param), (F, "glTexBumpParameterivATI(0x%x, %p);\n", pname, (const void *) param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(AlphaFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)
+{
+   DISPATCH(AlphaFragmentOp1ATI, (op, dst, dstMod, arg1, arg1Rep, arg1Mod), (F, "glAlphaFragmentOp1ATI(0x%x, %d, %d, %d, %d, %d);\n", op, dst, dstMod, arg1, arg1Rep, arg1Mod));
+}
+
+KEYWORD1 void KEYWORD2 NAME(AlphaFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)
+{
+   DISPATCH(AlphaFragmentOp2ATI, (op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod), (F, "glAlphaFragmentOp2ATI(0x%x, %d, %d, %d, %d, %d, %d, %d, %d);\n", op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod));
+}
+
+KEYWORD1 void KEYWORD2 NAME(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)
+{
+   DISPATCH(AlphaFragmentOp3ATI, (op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod), (F, "glAlphaFragmentOp3ATI(0x%x, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d);\n", op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BeginFragmentShaderATI)(void)
+{
+   DISPATCH(BeginFragmentShaderATI, (), (F, "glBeginFragmentShaderATI();\n"));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindFragmentShaderATI)(GLuint id)
+{
+   DISPATCH(BindFragmentShaderATI, (id), (F, "glBindFragmentShaderATI(%d);\n", id));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ColorFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)
+{
+   DISPATCH(ColorFragmentOp1ATI, (op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod), (F, "glColorFragmentOp1ATI(0x%x, %d, %d, %d, %d, %d, %d);\n", op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ColorFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)
+{
+   DISPATCH(ColorFragmentOp2ATI, (op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod), (F, "glColorFragmentOp2ATI(0x%x, %d, %d, %d, %d, %d, %d, %d, %d, %d);\n", op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod));
+}
+
+KEYWORD1 void KEYWORD2 NAME(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)
+{
+   DISPATCH(ColorFragmentOp3ATI, (op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod), (F, "glColorFragmentOp3ATI(0x%x, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d);\n", op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DeleteFragmentShaderATI)(GLuint id)
+{
+   DISPATCH(DeleteFragmentShaderATI, (id), (F, "glDeleteFragmentShaderATI(%d);\n", id));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EndFragmentShaderATI)(void)
+{
+   DISPATCH(EndFragmentShaderATI, (), (F, "glEndFragmentShaderATI();\n"));
+}
+
+KEYWORD1 GLuint KEYWORD2 NAME(GenFragmentShadersATI)(GLuint range)
+{
+   RETURN_DISPATCH(GenFragmentShadersATI, (range), (F, "glGenFragmentShadersATI(%d);\n", range));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PassTexCoordATI)(GLuint dst, GLuint coord, GLenum swizzle)
+{
+   DISPATCH(PassTexCoordATI, (dst, coord, swizzle), (F, "glPassTexCoordATI(%d, %d, 0x%x);\n", dst, coord, swizzle));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SampleMapATI)(GLuint dst, GLuint interp, GLenum swizzle)
+{
+   DISPATCH(SampleMapATI, (dst, interp, swizzle), (F, "glSampleMapATI(%d, %d, 0x%x);\n", dst, interp, swizzle));
+}
+
+KEYWORD1 void KEYWORD2 NAME(SetFragmentShaderConstantATI)(GLuint dst, const GLfloat * value)
+{
+   DISPATCH(SetFragmentShaderConstantATI, (dst, value), (F, "glSetFragmentShaderConstantATI(%d, %p);\n", dst, (const void *) value));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PointParameteri)(GLenum pname, GLint param)
+{
+   DISPATCH(PointParameteriNV, (pname, param), (F, "glPointParameteri(0x%x, %d);\n", pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PointParameteriNV)(GLenum pname, GLint param)
+{
+   DISPATCH(PointParameteriNV, (pname, param), (F, "glPointParameteriNV(0x%x, %d);\n", pname, param));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PointParameteriv)(GLenum pname, const GLint * params)
+{
+   DISPATCH(PointParameterivNV, (pname, params), (F, "glPointParameteriv(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(PointParameterivNV)(GLenum pname, const GLint * params)
+{
+   DISPATCH(PointParameterivNV, (pname, params), (F, "glPointParameterivNV(0x%x, %p);\n", pname, (const void *) params));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_755)(GLenum face);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_755)(GLenum face)
+{
+   DISPATCH(ActiveStencilFaceEXT, (face), (F, "glActiveStencilFaceEXT(0x%x);\n", face));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_756)(GLuint array);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_756)(GLuint array)
+{
+   DISPATCH(BindVertexArrayAPPLE, (array), (F, "glBindVertexArrayAPPLE(%d);\n", array));
+}
+
+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_757)(GLsizei n, const GLuint * arrays);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_757)(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_758)(GLsizei n, GLuint * arrays);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_758)(GLsizei n, GLuint * arrays)
+{
+   DISPATCH(GenVertexArraysAPPLE, (n, arrays), (F, "glGenVertexArraysAPPLE(%d, %p);\n", n, (const void *) arrays));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsVertexArray)(GLuint array)
+{
+   RETURN_DISPATCH(IsVertexArrayAPPLE, (array), (F, "glIsVertexArray(%d);\n", array));
+}
+
+KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_759)(GLuint array);
+
+KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_759)(GLuint array)
+{
+   RETURN_DISPATCH(IsVertexArrayAPPLE, (array), (F, "glIsVertexArrayAPPLE(%d);\n", array));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble * params)
+{
+   DISPATCH(GetProgramNamedParameterdvNV, (id, len, name, params), (F, "glGetProgramNamedParameterdvNV(%d, %d, %p, %p);\n", id, len, (const void *) name, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat * params)
+{
+   DISPATCH(GetProgramNamedParameterfvNV, (id, len, name, params), (F, "glGetProgramNamedParameterfvNV(%d, %d, %p, %p);\n", id, len, (const void *) name, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramNamedParameter4dNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
+{
+   DISPATCH(ProgramNamedParameter4dNV, (id, len, name, x, y, z, w), (F, "glProgramNamedParameter4dNV(%d, %d, %p, %f, %f, %f, %f);\n", id, len, (const void *) name, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramNamedParameter4dvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLdouble * v)
+{
+   DISPATCH(ProgramNamedParameter4dvNV, (id, len, name, v), (F, "glProgramNamedParameter4dvNV(%d, %d, %p, %p);\n", id, len, (const void *) name, (const void *) v));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramNamedParameter4fNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
+{
+   DISPATCH(ProgramNamedParameter4fNV, (id, len, name, x, y, z, w), (F, "glProgramNamedParameter4fNV(%d, %d, %p, %f, %f, %f, %f);\n", id, len, (const void *) name, x, y, z, w));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProgramNamedParameter4fvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLfloat * v)
+{
+   DISPATCH(ProgramNamedParameter4fvNV, (id, len, name, v), (F, "glProgramNamedParameter4fvNV(%d, %d, %p, %p);\n", id, len, (const void *) name, (const void *) v));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_766)(GLclampd zmin, GLclampd zmax);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_766)(GLclampd zmin, GLclampd zmax)
+{
+   DISPATCH(DepthBoundsEXT, (zmin, zmax), (F, "glDepthBoundsEXT(%f, %f);\n", zmin, zmax));
+}
+
+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_767)(GLenum modeRGB, GLenum modeA);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_767)(GLenum modeRGB, GLenum modeA)
+{
+   DISPATCH(BlendEquationSeparateEXT, (modeRGB, modeA), (F, "glBlendEquationSeparateEXT(0x%x, 0x%x);\n", modeRGB, modeA));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindFramebuffer)(GLenum target, GLuint framebuffer)
+{
+   DISPATCH(BindFramebufferEXT, (target, framebuffer), (F, "glBindFramebuffer(0x%x, %d);\n", target, framebuffer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindFramebufferEXT)(GLenum target, GLuint framebuffer)
+{
+   DISPATCH(BindFramebufferEXT, (target, framebuffer), (F, "glBindFramebufferEXT(0x%x, %d);\n", target, framebuffer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindRenderbuffer)(GLenum target, GLuint renderbuffer)
+{
+   DISPATCH(BindRenderbufferEXT, (target, renderbuffer), (F, "glBindRenderbuffer(0x%x, %d);\n", target, renderbuffer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindRenderbufferEXT)(GLenum target, GLuint renderbuffer)
+{
+   DISPATCH(BindRenderbufferEXT, (target, renderbuffer), (F, "glBindRenderbufferEXT(0x%x, %d);\n", target, renderbuffer));
+}
+
+KEYWORD1 GLenum KEYWORD2 NAME(CheckFramebufferStatus)(GLenum target)
+{
+   RETURN_DISPATCH(CheckFramebufferStatusEXT, (target), (F, "glCheckFramebufferStatus(0x%x);\n", target));
+}
+
+KEYWORD1 GLenum KEYWORD2 NAME(CheckFramebufferStatusEXT)(GLenum target)
+{
+   RETURN_DISPATCH(CheckFramebufferStatusEXT, (target), (F, "glCheckFramebufferStatusEXT(0x%x);\n", target));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DeleteFramebuffers)(GLsizei n, const GLuint * framebuffers)
+{
+   DISPATCH(DeleteFramebuffersEXT, (n, framebuffers), (F, "glDeleteFramebuffers(%d, %p);\n", n, (const void *) framebuffers));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DeleteFramebuffersEXT)(GLsizei n, const GLuint * framebuffers)
+{
+   DISPATCH(DeleteFramebuffersEXT, (n, framebuffers), (F, "glDeleteFramebuffersEXT(%d, %p);\n", n, (const void *) framebuffers));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DeleteRenderbuffers)(GLsizei n, const GLuint * renderbuffers)
+{
+   DISPATCH(DeleteRenderbuffersEXT, (n, renderbuffers), (F, "glDeleteRenderbuffers(%d, %p);\n", n, (const void *) renderbuffers));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DeleteRenderbuffersEXT)(GLsizei n, const GLuint * renderbuffers)
+{
+   DISPATCH(DeleteRenderbuffersEXT, (n, renderbuffers), (F, "glDeleteRenderbuffersEXT(%d, %p);\n", n, (const void *) renderbuffers));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FramebufferRenderbuffer)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+   DISPATCH(FramebufferRenderbufferEXT, (target, attachment, renderbuffertarget, renderbuffer), (F, "glFramebufferRenderbuffer(0x%x, 0x%x, 0x%x, %d);\n", target, attachment, renderbuffertarget, renderbuffer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FramebufferRenderbufferEXT)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
+{
+   DISPATCH(FramebufferRenderbufferEXT, (target, attachment, renderbuffertarget, renderbuffer), (F, "glFramebufferRenderbufferEXT(0x%x, 0x%x, 0x%x, %d);\n", target, attachment, renderbuffertarget, renderbuffer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FramebufferTexture1D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+   DISPATCH(FramebufferTexture1DEXT, (target, attachment, textarget, texture, level), (F, "glFramebufferTexture1D(0x%x, 0x%x, 0x%x, %d, %d);\n", target, attachment, textarget, texture, level));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FramebufferTexture1DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+   DISPATCH(FramebufferTexture1DEXT, (target, attachment, textarget, texture, level), (F, "glFramebufferTexture1DEXT(0x%x, 0x%x, 0x%x, %d, %d);\n", target, attachment, textarget, texture, level));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FramebufferTexture2D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+   DISPATCH(FramebufferTexture2DEXT, (target, attachment, textarget, texture, level), (F, "glFramebufferTexture2D(0x%x, 0x%x, 0x%x, %d, %d);\n", target, attachment, textarget, texture, level));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FramebufferTexture2DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
+{
+   DISPATCH(FramebufferTexture2DEXT, (target, attachment, textarget, texture, level), (F, "glFramebufferTexture2DEXT(0x%x, 0x%x, 0x%x, %d, %d);\n", target, attachment, textarget, texture, level));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FramebufferTexture3D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+   DISPATCH(FramebufferTexture3DEXT, (target, attachment, textarget, texture, level, zoffset), (F, "glFramebufferTexture3D(0x%x, 0x%x, 0x%x, %d, %d, %d);\n", target, attachment, textarget, texture, level, zoffset));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FramebufferTexture3DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
+{
+   DISPATCH(FramebufferTexture3DEXT, (target, attachment, textarget, texture, level, zoffset), (F, "glFramebufferTexture3DEXT(0x%x, 0x%x, 0x%x, %d, %d, %d);\n", target, attachment, textarget, texture, level, zoffset));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GenFramebuffers)(GLsizei n, GLuint * framebuffers)
+{
+   DISPATCH(GenFramebuffersEXT, (n, framebuffers), (F, "glGenFramebuffers(%d, %p);\n", n, (const void *) framebuffers));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GenFramebuffersEXT)(GLsizei n, GLuint * framebuffers)
+{
+   DISPATCH(GenFramebuffersEXT, (n, framebuffers), (F, "glGenFramebuffersEXT(%d, %p);\n", n, (const void *) framebuffers));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GenRenderbuffers)(GLsizei n, GLuint * renderbuffers)
+{
+   DISPATCH(GenRenderbuffersEXT, (n, renderbuffers), (F, "glGenRenderbuffers(%d, %p);\n", n, (const void *) renderbuffers));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GenRenderbuffersEXT)(GLsizei n, GLuint * renderbuffers)
+{
+   DISPATCH(GenRenderbuffersEXT, (n, renderbuffers), (F, "glGenRenderbuffersEXT(%d, %p);\n", n, (const void *) renderbuffers));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GenerateMipmap)(GLenum target)
+{
+   DISPATCH(GenerateMipmapEXT, (target), (F, "glGenerateMipmap(0x%x);\n", target));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GenerateMipmapEXT)(GLenum target)
+{
+   DISPATCH(GenerateMipmapEXT, (target), (F, "glGenerateMipmapEXT(0x%x);\n", target));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetFramebufferAttachmentParameteriv)(GLenum target, GLenum attachment, GLenum pname, GLint * params)
+{
+   DISPATCH(GetFramebufferAttachmentParameterivEXT, (target, attachment, pname, params), (F, "glGetFramebufferAttachmentParameteriv(0x%x, 0x%x, 0x%x, %p);\n", target, attachment, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetFramebufferAttachmentParameterivEXT)(GLenum target, GLenum attachment, GLenum pname, GLint * params)
+{
+   DISPATCH(GetFramebufferAttachmentParameterivEXT, (target, attachment, pname, params), (F, "glGetFramebufferAttachmentParameterivEXT(0x%x, 0x%x, 0x%x, %p);\n", target, attachment, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetRenderbufferParameteriv)(GLenum target, GLenum pname, GLint * params)
+{
+   DISPATCH(GetRenderbufferParameterivEXT, (target, pname, params), (F, "glGetRenderbufferParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetRenderbufferParameterivEXT)(GLenum target, GLenum pname, GLint * params)
+{
+   DISPATCH(GetRenderbufferParameterivEXT, (target, pname, params), (F, "glGetRenderbufferParameterivEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsFramebuffer)(GLuint framebuffer)
+{
+   RETURN_DISPATCH(IsFramebufferEXT, (framebuffer), (F, "glIsFramebuffer(%d);\n", framebuffer));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsFramebufferEXT)(GLuint framebuffer)
+{
+   RETURN_DISPATCH(IsFramebufferEXT, (framebuffer), (F, "glIsFramebufferEXT(%d);\n", framebuffer));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsRenderbuffer)(GLuint renderbuffer)
+{
+   RETURN_DISPATCH(IsRenderbufferEXT, (renderbuffer), (F, "glIsRenderbuffer(%d);\n", renderbuffer));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsRenderbufferEXT)(GLuint renderbuffer)
+{
+   RETURN_DISPATCH(IsRenderbufferEXT, (renderbuffer), (F, "glIsRenderbufferEXT(%d);\n", renderbuffer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RenderbufferStorage)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+   DISPATCH(RenderbufferStorageEXT, (target, internalformat, width, height), (F, "glRenderbufferStorage(0x%x, 0x%x, %d, %d);\n", target, internalformat, width, height));
+}
+
+KEYWORD1 void KEYWORD2 NAME(RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
+{
+   DISPATCH(RenderbufferStorageEXT, (target, internalformat, width, height), (F, "glRenderbufferStorageEXT(0x%x, 0x%x, %d, %d);\n", target, internalformat, width, height));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BlitFramebuffer)(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, "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_785)(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_785)(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_786)(GLenum target, GLenum pname, GLint param);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_786)(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_787)(GLenum target, GLintptr offset, GLsizeiptr size);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_787)(GLenum target, GLintptr offset, GLsizeiptr size)
+{
+   DISPATCH(FlushMappedBufferRangeAPPLE, (target, offset, size), (F, "glFlushMappedBufferRangeAPPLE(0x%x, %d, %d);\n", target, offset, size));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FramebufferTextureLayer)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+   DISPATCH(FramebufferTextureLayerEXT, (target, attachment, texture, level, layer), (F, "glFramebufferTextureLayer(0x%x, 0x%x, %d, %d, %d);\n", target, attachment, texture, level, layer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(FramebufferTextureLayerEXT)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
+{
+   DISPATCH(FramebufferTextureLayerEXT, (target, attachment, texture, level, layer), (F, "glFramebufferTextureLayerEXT(0x%x, 0x%x, %d, %d, %d);\n", target, attachment, texture, level, layer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ColorMaskIndexedEXT)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
+{
+   DISPATCH(ColorMaskIndexedEXT, (buf, r, g, b, a), (F, "glColorMaskIndexedEXT(%d, %d, %d, %d, %d);\n", buf, r, g, b, a));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DisableIndexedEXT)(GLenum target, GLuint index)
+{
+   DISPATCH(DisableIndexedEXT, (target, index), (F, "glDisableIndexedEXT(0x%x, %d);\n", target, index));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EnableIndexedEXT)(GLenum target, GLuint index)
+{
+   DISPATCH(EnableIndexedEXT, (target, index), (F, "glEnableIndexedEXT(0x%x, %d);\n", target, index));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetBooleanIndexedvEXT)(GLenum value, GLuint index, GLboolean * data)
+{
+   DISPATCH(GetBooleanIndexedvEXT, (value, index, data), (F, "glGetBooleanIndexedvEXT(0x%x, %d, %p);\n", value, index, (const void *) data));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetIntegerIndexedvEXT)(GLenum value, GLuint index, GLint * data)
+{
+   DISPATCH(GetIntegerIndexedvEXT, (value, index, data), (F, "glGetIntegerIndexedvEXT(0x%x, %d, %p);\n", value, index, (const void *) data));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsEnabledIndexedEXT)(GLenum target, GLuint index)
+{
+   RETURN_DISPATCH(IsEnabledIndexedEXT, (target, index), (F, "glIsEnabledIndexedEXT(0x%x, %d);\n", target, index));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BeginConditionalRenderNV)(GLuint query, GLenum mode)
+{
+   DISPATCH(BeginConditionalRenderNV, (query, mode), (F, "glBeginConditionalRenderNV(%d, 0x%x);\n", query, mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EndConditionalRenderNV)(void)
+{
+   DISPATCH(EndConditionalRenderNV, (), (F, "glEndConditionalRenderNV();\n"));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BeginTransformFeedbackEXT)(GLenum mode)
+{
+   DISPATCH(BeginTransformFeedbackEXT, (mode), (F, "glBeginTransformFeedbackEXT(0x%x);\n", mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BeginTransformFeedback)(GLenum mode)
+{
+   DISPATCH(BeginTransformFeedbackEXT, (mode), (F, "glBeginTransformFeedback(0x%x);\n", mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindBufferBaseEXT)(GLenum target, GLuint index, GLuint buffer)
+{
+   DISPATCH(BindBufferBaseEXT, (target, index, buffer), (F, "glBindBufferBaseEXT(0x%x, %d, %d);\n", target, index, buffer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindBufferBase)(GLenum target, GLuint index, GLuint buffer)
+{
+   DISPATCH(BindBufferBaseEXT, (target, index, buffer), (F, "glBindBufferBase(0x%x, %d, %d);\n", target, index, buffer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindBufferOffsetEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset)
+{
+   DISPATCH(BindBufferOffsetEXT, (target, index, buffer, offset), (F, "glBindBufferOffsetEXT(0x%x, %d, %d, %d);\n", target, index, buffer, offset));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindBufferRangeEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+   DISPATCH(BindBufferRangeEXT, (target, index, buffer, offset, size), (F, "glBindBufferRangeEXT(0x%x, %d, %d, %d, %d);\n", target, index, buffer, offset, size));
+}
+
+KEYWORD1 void KEYWORD2 NAME(BindBufferRange)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
+{
+   DISPATCH(BindBufferRangeEXT, (target, index, buffer, offset, size), (F, "glBindBufferRange(0x%x, %d, %d, %d, %d);\n", target, index, buffer, offset, size));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EndTransformFeedbackEXT)(void)
+{
+   DISPATCH(EndTransformFeedbackEXT, (), (F, "glEndTransformFeedbackEXT();\n"));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EndTransformFeedback)(void)
+{
+   DISPATCH(EndTransformFeedbackEXT, (), (F, "glEndTransformFeedback();\n"));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetTransformFeedbackVaryingEXT)(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name)
+{
+   DISPATCH(GetTransformFeedbackVaryingEXT, (program, index, bufSize, length, size, type, name), (F, "glGetTransformFeedbackVaryingEXT(%d, %d, %d, %p, %p, %p, %p);\n", program, index, bufSize, (const void *) length, (const void *) size, (const void *) type, (const void *) name));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetTransformFeedbackVarying)(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name)
+{
+   DISPATCH(GetTransformFeedbackVaryingEXT, (program, index, bufSize, length, size, type, name), (F, "glGetTransformFeedbackVarying(%d, %d, %d, %p, %p, %p, %p);\n", program, index, bufSize, (const void *) length, (const void *) size, (const void *) type, (const void *) name));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TransformFeedbackVaryingsEXT)(GLuint program, GLsizei count, const char ** varyings, GLenum bufferMode)
+{
+   DISPATCH(TransformFeedbackVaryingsEXT, (program, count, varyings, bufferMode), (F, "glTransformFeedbackVaryingsEXT(%d, %d, %p, 0x%x);\n", program, count, (const void *) varyings, bufferMode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(TransformFeedbackVaryings)(GLuint program, GLsizei count, const char ** varyings, GLenum bufferMode)
+{
+   DISPATCH(TransformFeedbackVaryingsEXT, (program, count, varyings, bufferMode), (F, "glTransformFeedbackVaryings(%d, %d, %p, 0x%x);\n", program, count, (const void *) varyings, bufferMode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProvokingVertexEXT)(GLenum mode)
+{
+   DISPATCH(ProvokingVertexEXT, (mode), (F, "glProvokingVertexEXT(0x%x);\n", mode));
+}
+
+KEYWORD1 void KEYWORD2 NAME(ProvokingVertex)(GLenum mode)
+{
+   DISPATCH(ProvokingVertexEXT, (mode), (F, "glProvokingVertex(0x%x);\n", mode));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_805)(GLenum target, GLenum pname, GLvoid ** params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_805)(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_806)(GLenum target, GLsizei length, GLvoid * pointer);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_806)(GLenum target, GLsizei length, GLvoid * pointer)
+{
+   DISPATCH(TextureRangeAPPLE, (target, length, pointer), (F, "glTextureRangeAPPLE(0x%x, %d, %p);\n", target, length, (const void *) pointer));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint * value)
+{
+   DISPATCH(GetObjectParameterivAPPLE, (objectType, name, pname, value), (F, "glGetObjectParameterivAPPLE(0x%x, %d, 0x%x, %p);\n", objectType, name, pname, (const void *) value));
+}
+
+KEYWORD1 GLenum KEYWORD2 NAME(ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option)
+{
+   RETURN_DISPATCH(ObjectPurgeableAPPLE, (objectType, name, option), (F, "glObjectPurgeableAPPLE(0x%x, %d, 0x%x);\n", objectType, name, option));
+}
+
+KEYWORD1 GLenum KEYWORD2 NAME(ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option)
+{
+   RETURN_DISPATCH(ObjectUnpurgeableAPPLE, (objectType, name, option), (F, "glObjectUnpurgeableAPPLE(0x%x, %d, 0x%x);\n", objectType, name, option));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_810)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_810)(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_811)(GLenum target, GLuint index, GLsizei count, const GLfloat * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_811)(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_812)(GLenum target, GLuint index, GLsizei count, const GLfloat * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_812)(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_813)(GLuint id, GLenum pname, GLint64EXT * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_813)(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_814)(GLuint id, GLenum pname, GLuint64EXT * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_814)(GLuint id, GLenum pname, GLuint64EXT * params)
+{
+   DISPATCH(GetQueryObjectui64vEXT, (id, pname, params), (F, "glGetQueryObjectui64vEXT(%d, 0x%x, %p);\n", id, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid * writeOffset)
+{
+   DISPATCH(EGLImageTargetRenderbufferStorageOES, (target, writeOffset), (F, "glEGLImageTargetRenderbufferStorageOES(0x%x, %p);\n", target, (const void *) writeOffset));
+}
+
+KEYWORD1 void KEYWORD2 NAME(EGLImageTargetTexture2DOES)(GLenum target, GLvoid * writeOffset)
+{
+   DISPATCH(EGLImageTargetTexture2DOES, (target, writeOffset), (F, "glEGLImageTargetTexture2DOES(0x%x, %p);\n", target, (const void *) writeOffset));
+}
+
+
+#endif /* _GLAPI_SKIP_NORMAL_ENTRY_POINTS */
+
+/* these entry points might require different protocols */
+#ifndef _GLAPI_SKIP_PROTO_ENTRY_POINTS
+
+KEYWORD1 GLboolean KEYWORD2 NAME(AreTexturesResidentEXT)(GLsizei n, const GLuint * textures, GLboolean * residences)
+{
+   RETURN_DISPATCH(AreTexturesResident, (n, textures, residences), (F, "glAreTexturesResidentEXT(%d, %p, %p);\n", n, (const void *) textures, (const void *) residences));
+}
+
+KEYWORD1 void KEYWORD2 NAME(DeleteTexturesEXT)(GLsizei n, const GLuint * textures)
+{
+   DISPATCH(DeleteTextures, (n, textures), (F, "glDeleteTexturesEXT(%d, %p);\n", n, (const void *) textures));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GenTexturesEXT)(GLsizei n, GLuint * textures)
+{
+   DISPATCH(GenTextures, (n, textures), (F, "glGenTexturesEXT(%d, %p);\n", n, (const void *) textures));
+}
+
+KEYWORD1 GLboolean KEYWORD2 NAME(IsTextureEXT)(GLuint texture)
+{
+   RETURN_DISPATCH(IsTexture, (texture), (F, "glIsTextureEXT(%d);\n", texture));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetColorTableEXT)(GLenum target, GLenum format, GLenum type, GLvoid * table)
+{
+   DISPATCH(GetColorTable, (target, format, type, table), (F, "glGetColorTableEXT(0x%x, 0x%x, 0x%x, %p);\n", target, format, type, (const void *) table));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_343)(GLenum target, GLenum format, GLenum type, GLvoid * table);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_343)(GLenum target, GLenum format, GLenum type, GLvoid * table)
+{
+   DISPATCH(GetColorTable, (target, format, type, table), (F, "glGetColorTableSGI(0x%x, 0x%x, 0x%x, %p);\n", target, format, type, (const void *) table));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetColorTableParameterfvEXT)(GLenum target, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetColorTableParameterfv, (target, pname, params), (F, "glGetColorTableParameterfvEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_344)(GLenum target, GLenum pname, GLfloat * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_344)(GLenum target, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetColorTableParameterfv, (target, pname, params), (F, "glGetColorTableParameterfvSGI(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1 void KEYWORD2 NAME(GetColorTableParameterivEXT)(GLenum target, GLenum pname, GLint * params)
+{
+   DISPATCH(GetColorTableParameteriv, (target, pname, params), (F, "glGetColorTableParameterivEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_345)(GLenum target, GLenum pname, GLint * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_345)(GLenum target, GLenum pname, GLint * params)
+{
+   DISPATCH(GetColorTableParameteriv, (target, pname, params), (F, "glGetColorTableParameterivSGI(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_356)(GLenum target, GLenum format, GLenum type, GLvoid * image);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_356)(GLenum target, GLenum format, GLenum type, GLvoid * image)
+{
+   DISPATCH(GetConvolutionFilter, (target, format, type, image), (F, "glGetConvolutionFilterEXT(0x%x, 0x%x, 0x%x, %p);\n", target, format, type, (const void *) image));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_357)(GLenum target, GLenum pname, GLfloat * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_357)(GLenum target, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetConvolutionParameterfv, (target, pname, params), (F, "glGetConvolutionParameterfvEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_358)(GLenum target, GLenum pname, GLint * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_358)(GLenum target, GLenum pname, GLint * params)
+{
+   DISPATCH(GetConvolutionParameteriv, (target, pname, params), (F, "glGetConvolutionParameterivEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_359)(GLenum target, GLenum format, GLenum type, GLvoid * row, GLvoid * column, GLvoid * span);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_359)(GLenum target, GLenum format, GLenum type, GLvoid * row, GLvoid * column, GLvoid * span)
+{
+   DISPATCH(GetSeparableFilter, (target, format, type, row, column, span), (F, "glGetSeparableFilterEXT(0x%x, 0x%x, 0x%x, %p, %p, %p);\n", target, format, type, (const void *) row, (const void *) column, (const void *) span));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_361)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_361)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values)
+{
+   DISPATCH(GetHistogram, (target, reset, format, type, values), (F, "glGetHistogramEXT(0x%x, %d, 0x%x, 0x%x, %p);\n", target, reset, format, type, (const void *) values));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_362)(GLenum target, GLenum pname, GLfloat * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_362)(GLenum target, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetHistogramParameterfv, (target, pname, params), (F, "glGetHistogramParameterfvEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_363)(GLenum target, GLenum pname, GLint * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_363)(GLenum target, GLenum pname, GLint * params)
+{
+   DISPATCH(GetHistogramParameteriv, (target, pname, params), (F, "glGetHistogramParameterivEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_364)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_364)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values)
+{
+   DISPATCH(GetMinmax, (target, reset, format, type, values), (F, "glGetMinmaxEXT(0x%x, %d, 0x%x, 0x%x, %p);\n", target, reset, format, type, (const void *) values));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_365)(GLenum target, GLenum pname, GLfloat * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_365)(GLenum target, GLenum pname, GLfloat * params)
+{
+   DISPATCH(GetMinmaxParameterfv, (target, pname, params), (F, "glGetMinmaxParameterfvEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_366)(GLenum target, GLenum pname, GLint * params);
+
+KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_366)(GLenum target, GLenum pname, GLint * params)
+{
+   DISPATCH(GetMinmaxParameteriv, (target, pname, params), (F, "glGetMinmaxParameterivEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
+}
+
+
+#endif /* _GLAPI_SKIP_PROTO_ENTRY_POINTS */
+
+
+#endif /* defined( NAME ) */
+
+/*
+ * This is how a dispatch table can be initialized with all the functions
+ * we generated above.
+ */
+#ifdef DISPATCH_TABLE_NAME
+
+#ifndef TABLE_ENTRY
+#error TABLE_ENTRY must be defined
+#endif
+
+#ifdef _GLAPI_SKIP_NORMAL_ENTRY_POINTS
+#error _GLAPI_SKIP_NORMAL_ENTRY_POINTS must not be defined
+#endif
+
+_glapi_proc DISPATCH_TABLE_NAME[] = {
+   TABLE_ENTRY(NewList),
+   TABLE_ENTRY(EndList),
+   TABLE_ENTRY(CallList),
+   TABLE_ENTRY(CallLists),
+   TABLE_ENTRY(DeleteLists),
+   TABLE_ENTRY(GenLists),
+   TABLE_ENTRY(ListBase),
+   TABLE_ENTRY(Begin),
+   TABLE_ENTRY(Bitmap),
+   TABLE_ENTRY(Color3b),
+   TABLE_ENTRY(Color3bv),
+   TABLE_ENTRY(Color3d),
+   TABLE_ENTRY(Color3dv),
+   TABLE_ENTRY(Color3f),
+   TABLE_ENTRY(Color3fv),
+   TABLE_ENTRY(Color3i),
+   TABLE_ENTRY(Color3iv),
+   TABLE_ENTRY(Color3s),
+   TABLE_ENTRY(Color3sv),
+   TABLE_ENTRY(Color3ub),
+   TABLE_ENTRY(Color3ubv),
+   TABLE_ENTRY(Color3ui),
+   TABLE_ENTRY(Color3uiv),
+   TABLE_ENTRY(Color3us),
+   TABLE_ENTRY(Color3usv),
+   TABLE_ENTRY(Color4b),
+   TABLE_ENTRY(Color4bv),
+   TABLE_ENTRY(Color4d),
+   TABLE_ENTRY(Color4dv),
+   TABLE_ENTRY(Color4f),
+   TABLE_ENTRY(Color4fv),
+   TABLE_ENTRY(Color4i),
+   TABLE_ENTRY(Color4iv),
+   TABLE_ENTRY(Color4s),
+   TABLE_ENTRY(Color4sv),
+   TABLE_ENTRY(Color4ub),
+   TABLE_ENTRY(Color4ubv),
+   TABLE_ENTRY(Color4ui),
+   TABLE_ENTRY(Color4uiv),
+   TABLE_ENTRY(Color4us),
+   TABLE_ENTRY(Color4usv),
+   TABLE_ENTRY(EdgeFlag),
+   TABLE_ENTRY(EdgeFlagv),
+   TABLE_ENTRY(End),
+   TABLE_ENTRY(Indexd),
+   TABLE_ENTRY(Indexdv),
+   TABLE_ENTRY(Indexf),
+   TABLE_ENTRY(Indexfv),
+   TABLE_ENTRY(Indexi),
+   TABLE_ENTRY(Indexiv),
+   TABLE_ENTRY(Indexs),
+   TABLE_ENTRY(Indexsv),
+   TABLE_ENTRY(Normal3b),
+   TABLE_ENTRY(Normal3bv),
+   TABLE_ENTRY(Normal3d),
+   TABLE_ENTRY(Normal3dv),
+   TABLE_ENTRY(Normal3f),
+   TABLE_ENTRY(Normal3fv),
+   TABLE_ENTRY(Normal3i),
+   TABLE_ENTRY(Normal3iv),
+   TABLE_ENTRY(Normal3s),
+   TABLE_ENTRY(Normal3sv),
+   TABLE_ENTRY(RasterPos2d),
+   TABLE_ENTRY(RasterPos2dv),
+   TABLE_ENTRY(RasterPos2f),
+   TABLE_ENTRY(RasterPos2fv),
+   TABLE_ENTRY(RasterPos2i),
+   TABLE_ENTRY(RasterPos2iv),
+   TABLE_ENTRY(RasterPos2s),
+   TABLE_ENTRY(RasterPos2sv),
+   TABLE_ENTRY(RasterPos3d),
+   TABLE_ENTRY(RasterPos3dv),
+   TABLE_ENTRY(RasterPos3f),
+   TABLE_ENTRY(RasterPos3fv),
+   TABLE_ENTRY(RasterPos3i),
+   TABLE_ENTRY(RasterPos3iv),
+   TABLE_ENTRY(RasterPos3s),
+   TABLE_ENTRY(RasterPos3sv),
+   TABLE_ENTRY(RasterPos4d),
+   TABLE_ENTRY(RasterPos4dv),
+   TABLE_ENTRY(RasterPos4f),
+   TABLE_ENTRY(RasterPos4fv),
+   TABLE_ENTRY(RasterPos4i),
+   TABLE_ENTRY(RasterPos4iv),
+   TABLE_ENTRY(RasterPos4s),
+   TABLE_ENTRY(RasterPos4sv),
+   TABLE_ENTRY(Rectd),
+   TABLE_ENTRY(Rectdv),
+   TABLE_ENTRY(Rectf),
+   TABLE_ENTRY(Rectfv),
+   TABLE_ENTRY(Recti),
+   TABLE_ENTRY(Rectiv),
+   TABLE_ENTRY(Rects),
+   TABLE_ENTRY(Rectsv),
+   TABLE_ENTRY(TexCoord1d),
+   TABLE_ENTRY(TexCoord1dv),
+   TABLE_ENTRY(TexCoord1f),
+   TABLE_ENTRY(TexCoord1fv),
+   TABLE_ENTRY(TexCoord1i),
+   TABLE_ENTRY(TexCoord1iv),
+   TABLE_ENTRY(TexCoord1s),
+   TABLE_ENTRY(TexCoord1sv),
+   TABLE_ENTRY(TexCoord2d),
+   TABLE_ENTRY(TexCoord2dv),
+   TABLE_ENTRY(TexCoord2f),
+   TABLE_ENTRY(TexCoord2fv),
+   TABLE_ENTRY(TexCoord2i),
+   TABLE_ENTRY(TexCoord2iv),
+   TABLE_ENTRY(TexCoord2s),
+   TABLE_ENTRY(TexCoord2sv),
+   TABLE_ENTRY(TexCoord3d),
+   TABLE_ENTRY(TexCoord3dv),
+   TABLE_ENTRY(TexCoord3f),
+   TABLE_ENTRY(TexCoord3fv),
+   TABLE_ENTRY(TexCoord3i),
+   TABLE_ENTRY(TexCoord3iv),
+   TABLE_ENTRY(TexCoord3s),
+   TABLE_ENTRY(TexCoord3sv),
+   TABLE_ENTRY(TexCoord4d),
+   TABLE_ENTRY(TexCoord4dv),
+   TABLE_ENTRY(TexCoord4f),
+   TABLE_ENTRY(TexCoord4fv),
+   TABLE_ENTRY(TexCoord4i),
+   TABLE_ENTRY(TexCoord4iv),
+   TABLE_ENTRY(TexCoord4s),
+   TABLE_ENTRY(TexCoord4sv),
+   TABLE_ENTRY(Vertex2d),
+   TABLE_ENTRY(Vertex2dv),
+   TABLE_ENTRY(Vertex2f),
+   TABLE_ENTRY(Vertex2fv),
+   TABLE_ENTRY(Vertex2i),
+   TABLE_ENTRY(Vertex2iv),
+   TABLE_ENTRY(Vertex2s),
+   TABLE_ENTRY(Vertex2sv),
+   TABLE_ENTRY(Vertex3d),
+   TABLE_ENTRY(Vertex3dv),
+   TABLE_ENTRY(Vertex3f),
+   TABLE_ENTRY(Vertex3fv),
+   TABLE_ENTRY(Vertex3i),
+   TABLE_ENTRY(Vertex3iv),
+   TABLE_ENTRY(Vertex3s),
+   TABLE_ENTRY(Vertex3sv),
+   TABLE_ENTRY(Vertex4d),
+   TABLE_ENTRY(Vertex4dv),
+   TABLE_ENTRY(Vertex4f),
+   TABLE_ENTRY(Vertex4fv),
+   TABLE_ENTRY(Vertex4i),
+   TABLE_ENTRY(Vertex4iv),
+   TABLE_ENTRY(Vertex4s),
+   TABLE_ENTRY(Vertex4sv),
+   TABLE_ENTRY(ClipPlane),
+   TABLE_ENTRY(ColorMaterial),
+   TABLE_ENTRY(CullFace),
+   TABLE_ENTRY(Fogf),
+   TABLE_ENTRY(Fogfv),
+   TABLE_ENTRY(Fogi),
+   TABLE_ENTRY(Fogiv),
+   TABLE_ENTRY(FrontFace),
+   TABLE_ENTRY(Hint),
+   TABLE_ENTRY(Lightf),
+   TABLE_ENTRY(Lightfv),
+   TABLE_ENTRY(Lighti),
+   TABLE_ENTRY(Lightiv),
+   TABLE_ENTRY(LightModelf),
+   TABLE_ENTRY(LightModelfv),
+   TABLE_ENTRY(LightModeli),
+   TABLE_ENTRY(LightModeliv),
+   TABLE_ENTRY(LineStipple),
+   TABLE_ENTRY(LineWidth),
+   TABLE_ENTRY(Materialf),
+   TABLE_ENTRY(Materialfv),
+   TABLE_ENTRY(Materiali),
+   TABLE_ENTRY(Materialiv),
+   TABLE_ENTRY(PointSize),
+   TABLE_ENTRY(PolygonMode),
+   TABLE_ENTRY(PolygonStipple),
+   TABLE_ENTRY(Scissor),
+   TABLE_ENTRY(ShadeModel),
+   TABLE_ENTRY(TexParameterf),
+   TABLE_ENTRY(TexParameterfv),
+   TABLE_ENTRY(TexParameteri),
+   TABLE_ENTRY(TexParameteriv),
+   TABLE_ENTRY(TexImage1D),
+   TABLE_ENTRY(TexImage2D),
+   TABLE_ENTRY(TexEnvf),
+   TABLE_ENTRY(TexEnvfv),
+   TABLE_ENTRY(TexEnvi),
+   TABLE_ENTRY(TexEnviv),
+   TABLE_ENTRY(TexGend),
+   TABLE_ENTRY(TexGendv),
+   TABLE_ENTRY(TexGenf),
+   TABLE_ENTRY(TexGenfv),
+   TABLE_ENTRY(TexGeni),
+   TABLE_ENTRY(TexGeniv),
+   TABLE_ENTRY(FeedbackBuffer),
+   TABLE_ENTRY(SelectBuffer),
+   TABLE_ENTRY(RenderMode),
+   TABLE_ENTRY(InitNames),
+   TABLE_ENTRY(LoadName),
+   TABLE_ENTRY(PassThrough),
+   TABLE_ENTRY(PopName),
+   TABLE_ENTRY(PushName),
+   TABLE_ENTRY(DrawBuffer),
+   TABLE_ENTRY(Clear),
+   TABLE_ENTRY(ClearAccum),
+   TABLE_ENTRY(ClearIndex),
+   TABLE_ENTRY(ClearColor),
+   TABLE_ENTRY(ClearStencil),
+   TABLE_ENTRY(ClearDepth),
+   TABLE_ENTRY(StencilMask),
+   TABLE_ENTRY(ColorMask),
+   TABLE_ENTRY(DepthMask),
+   TABLE_ENTRY(IndexMask),
+   TABLE_ENTRY(Accum),
+   TABLE_ENTRY(Disable),
+   TABLE_ENTRY(Enable),
+   TABLE_ENTRY(Finish),
+   TABLE_ENTRY(Flush),
+   TABLE_ENTRY(PopAttrib),
+   TABLE_ENTRY(PushAttrib),
+   TABLE_ENTRY(Map1d),
+   TABLE_ENTRY(Map1f),
+   TABLE_ENTRY(Map2d),
+   TABLE_ENTRY(Map2f),
+   TABLE_ENTRY(MapGrid1d),
+   TABLE_ENTRY(MapGrid1f),
+   TABLE_ENTRY(MapGrid2d),
+   TABLE_ENTRY(MapGrid2f),
+   TABLE_ENTRY(EvalCoord1d),
+   TABLE_ENTRY(EvalCoord1dv),
+   TABLE_ENTRY(EvalCoord1f),
+   TABLE_ENTRY(EvalCoord1fv),
+   TABLE_ENTRY(EvalCoord2d),
+   TABLE_ENTRY(EvalCoord2dv),
+   TABLE_ENTRY(EvalCoord2f),
+   TABLE_ENTRY(EvalCoord2fv),
+   TABLE_ENTRY(EvalMesh1),
+   TABLE_ENTRY(EvalPoint1),
+   TABLE_ENTRY(EvalMesh2),
+   TABLE_ENTRY(EvalPoint2),
+   TABLE_ENTRY(AlphaFunc),
+   TABLE_ENTRY(BlendFunc),
+   TABLE_ENTRY(LogicOp),
+   TABLE_ENTRY(StencilFunc),
+   TABLE_ENTRY(StencilOp),
+   TABLE_ENTRY(DepthFunc),
+   TABLE_ENTRY(PixelZoom),
+   TABLE_ENTRY(PixelTransferf),
+   TABLE_ENTRY(PixelTransferi),
+   TABLE_ENTRY(PixelStoref),
+   TABLE_ENTRY(PixelStorei),
+   TABLE_ENTRY(PixelMapfv),
+   TABLE_ENTRY(PixelMapuiv),
+   TABLE_ENTRY(PixelMapusv),
+   TABLE_ENTRY(ReadBuffer),
+   TABLE_ENTRY(CopyPixels),
+   TABLE_ENTRY(ReadPixels),
+   TABLE_ENTRY(DrawPixels),
+   TABLE_ENTRY(GetBooleanv),
+   TABLE_ENTRY(GetClipPlane),
+   TABLE_ENTRY(GetDoublev),
+   TABLE_ENTRY(GetError),
+   TABLE_ENTRY(GetFloatv),
+   TABLE_ENTRY(GetIntegerv),
+   TABLE_ENTRY(GetLightfv),
+   TABLE_ENTRY(GetLightiv),
+   TABLE_ENTRY(GetMapdv),
+   TABLE_ENTRY(GetMapfv),
+   TABLE_ENTRY(GetMapiv),
+   TABLE_ENTRY(GetMaterialfv),
+   TABLE_ENTRY(GetMaterialiv),
+   TABLE_ENTRY(GetPixelMapfv),
+   TABLE_ENTRY(GetPixelMapuiv),
+   TABLE_ENTRY(GetPixelMapusv),
+   TABLE_ENTRY(GetPolygonStipple),
+   TABLE_ENTRY(GetString),
+   TABLE_ENTRY(GetTexEnvfv),
+   TABLE_ENTRY(GetTexEnviv),
+   TABLE_ENTRY(GetTexGendv),
+   TABLE_ENTRY(GetTexGenfv),
+   TABLE_ENTRY(GetTexGeniv),
+   TABLE_ENTRY(GetTexImage),
+   TABLE_ENTRY(GetTexParameterfv),
+   TABLE_ENTRY(GetTexParameteriv),
+   TABLE_ENTRY(GetTexLevelParameterfv),
+   TABLE_ENTRY(GetTexLevelParameteriv),
+   TABLE_ENTRY(IsEnabled),
+   TABLE_ENTRY(IsList),
+   TABLE_ENTRY(DepthRange),
+   TABLE_ENTRY(Frustum),
+   TABLE_ENTRY(LoadIdentity),
+   TABLE_ENTRY(LoadMatrixf),
+   TABLE_ENTRY(LoadMatrixd),
+   TABLE_ENTRY(MatrixMode),
+   TABLE_ENTRY(MultMatrixf),
+   TABLE_ENTRY(MultMatrixd),
+   TABLE_ENTRY(Ortho),
+   TABLE_ENTRY(PopMatrix),
+   TABLE_ENTRY(PushMatrix),
+   TABLE_ENTRY(Rotated),
+   TABLE_ENTRY(Rotatef),
+   TABLE_ENTRY(Scaled),
+   TABLE_ENTRY(Scalef),
+   TABLE_ENTRY(Translated),
+   TABLE_ENTRY(Translatef),
+   TABLE_ENTRY(Viewport),
+   TABLE_ENTRY(ArrayElement),
+   TABLE_ENTRY(BindTexture),
+   TABLE_ENTRY(ColorPointer),
+   TABLE_ENTRY(DisableClientState),
+   TABLE_ENTRY(DrawArrays),
+   TABLE_ENTRY(DrawElements),
+   TABLE_ENTRY(EdgeFlagPointer),
+   TABLE_ENTRY(EnableClientState),
+   TABLE_ENTRY(IndexPointer),
+   TABLE_ENTRY(Indexub),
+   TABLE_ENTRY(Indexubv),
+   TABLE_ENTRY(InterleavedArrays),
+   TABLE_ENTRY(NormalPointer),
+   TABLE_ENTRY(PolygonOffset),
+   TABLE_ENTRY(TexCoordPointer),
+   TABLE_ENTRY(VertexPointer),
+   TABLE_ENTRY(AreTexturesResident),
+   TABLE_ENTRY(CopyTexImage1D),
+   TABLE_ENTRY(CopyTexImage2D),
+   TABLE_ENTRY(CopyTexSubImage1D),
+   TABLE_ENTRY(CopyTexSubImage2D),
+   TABLE_ENTRY(DeleteTextures),
+   TABLE_ENTRY(GenTextures),
+   TABLE_ENTRY(GetPointerv),
+   TABLE_ENTRY(IsTexture),
+   TABLE_ENTRY(PrioritizeTextures),
+   TABLE_ENTRY(TexSubImage1D),
+   TABLE_ENTRY(TexSubImage2D),
+   TABLE_ENTRY(PopClientAttrib),
+   TABLE_ENTRY(PushClientAttrib),
+   TABLE_ENTRY(BlendColor),
+   TABLE_ENTRY(BlendEquation),
+   TABLE_ENTRY(DrawRangeElements),
+   TABLE_ENTRY(ColorTable),
+   TABLE_ENTRY(ColorTableParameterfv),
+   TABLE_ENTRY(ColorTableParameteriv),
+   TABLE_ENTRY(CopyColorTable),
+   TABLE_ENTRY(GetColorTable),
+   TABLE_ENTRY(GetColorTableParameterfv),
+   TABLE_ENTRY(GetColorTableParameteriv),
+   TABLE_ENTRY(ColorSubTable),
+   TABLE_ENTRY(CopyColorSubTable),
+   TABLE_ENTRY(ConvolutionFilter1D),
+   TABLE_ENTRY(ConvolutionFilter2D),
+   TABLE_ENTRY(ConvolutionParameterf),
+   TABLE_ENTRY(ConvolutionParameterfv),
+   TABLE_ENTRY(ConvolutionParameteri),
+   TABLE_ENTRY(ConvolutionParameteriv),
+   TABLE_ENTRY(CopyConvolutionFilter1D),
+   TABLE_ENTRY(CopyConvolutionFilter2D),
+   TABLE_ENTRY(GetConvolutionFilter),
+   TABLE_ENTRY(GetConvolutionParameterfv),
+   TABLE_ENTRY(GetConvolutionParameteriv),
+   TABLE_ENTRY(GetSeparableFilter),
+   TABLE_ENTRY(SeparableFilter2D),
+   TABLE_ENTRY(GetHistogram),
+   TABLE_ENTRY(GetHistogramParameterfv),
+   TABLE_ENTRY(GetHistogramParameteriv),
+   TABLE_ENTRY(GetMinmax),
+   TABLE_ENTRY(GetMinmaxParameterfv),
+   TABLE_ENTRY(GetMinmaxParameteriv),
+   TABLE_ENTRY(Histogram),
+   TABLE_ENTRY(Minmax),
+   TABLE_ENTRY(ResetHistogram),
+   TABLE_ENTRY(ResetMinmax),
+   TABLE_ENTRY(TexImage3D),
+   TABLE_ENTRY(TexSubImage3D),
+   TABLE_ENTRY(CopyTexSubImage3D),
+   TABLE_ENTRY(ActiveTextureARB),
+   TABLE_ENTRY(ClientActiveTextureARB),
+   TABLE_ENTRY(MultiTexCoord1dARB),
+   TABLE_ENTRY(MultiTexCoord1dvARB),
+   TABLE_ENTRY(MultiTexCoord1fARB),
+   TABLE_ENTRY(MultiTexCoord1fvARB),
+   TABLE_ENTRY(MultiTexCoord1iARB),
+   TABLE_ENTRY(MultiTexCoord1ivARB),
+   TABLE_ENTRY(MultiTexCoord1sARB),
+   TABLE_ENTRY(MultiTexCoord1svARB),
+   TABLE_ENTRY(MultiTexCoord2dARB),
+   TABLE_ENTRY(MultiTexCoord2dvARB),
+   TABLE_ENTRY(MultiTexCoord2fARB),
+   TABLE_ENTRY(MultiTexCoord2fvARB),
+   TABLE_ENTRY(MultiTexCoord2iARB),
+   TABLE_ENTRY(MultiTexCoord2ivARB),
+   TABLE_ENTRY(MultiTexCoord2sARB),
+   TABLE_ENTRY(MultiTexCoord2svARB),
+   TABLE_ENTRY(MultiTexCoord3dARB),
+   TABLE_ENTRY(MultiTexCoord3dvARB),
+   TABLE_ENTRY(MultiTexCoord3fARB),
+   TABLE_ENTRY(MultiTexCoord3fvARB),
+   TABLE_ENTRY(MultiTexCoord3iARB),
+   TABLE_ENTRY(MultiTexCoord3ivARB),
+   TABLE_ENTRY(MultiTexCoord3sARB),
+   TABLE_ENTRY(MultiTexCoord3svARB),
+   TABLE_ENTRY(MultiTexCoord4dARB),
+   TABLE_ENTRY(MultiTexCoord4dvARB),
+   TABLE_ENTRY(MultiTexCoord4fARB),
+   TABLE_ENTRY(MultiTexCoord4fvARB),
+   TABLE_ENTRY(MultiTexCoord4iARB),
+   TABLE_ENTRY(MultiTexCoord4ivARB),
+   TABLE_ENTRY(MultiTexCoord4sARB),
+   TABLE_ENTRY(MultiTexCoord4svARB),
+   TABLE_ENTRY(AttachShader),
+   TABLE_ENTRY(CreateProgram),
+   TABLE_ENTRY(CreateShader),
+   TABLE_ENTRY(DeleteProgram),
+   TABLE_ENTRY(DeleteShader),
+   TABLE_ENTRY(DetachShader),
+   TABLE_ENTRY(GetAttachedShaders),
+   TABLE_ENTRY(GetProgramInfoLog),
+   TABLE_ENTRY(GetProgramiv),
+   TABLE_ENTRY(GetShaderInfoLog),
+   TABLE_ENTRY(GetShaderiv),
+   TABLE_ENTRY(IsProgram),
+   TABLE_ENTRY(IsShader),
+   TABLE_ENTRY(StencilFuncSeparate),
+   TABLE_ENTRY(StencilMaskSeparate),
+   TABLE_ENTRY(StencilOpSeparate),
+   TABLE_ENTRY(UniformMatrix2x3fv),
+   TABLE_ENTRY(UniformMatrix2x4fv),
+   TABLE_ENTRY(UniformMatrix3x2fv),
+   TABLE_ENTRY(UniformMatrix3x4fv),
+   TABLE_ENTRY(UniformMatrix4x2fv),
+   TABLE_ENTRY(UniformMatrix4x3fv),
+   TABLE_ENTRY(DrawArraysInstanced),
+   TABLE_ENTRY(DrawElementsInstanced),
+   TABLE_ENTRY(LoadTransposeMatrixdARB),
+   TABLE_ENTRY(LoadTransposeMatrixfARB),
+   TABLE_ENTRY(MultTransposeMatrixdARB),
+   TABLE_ENTRY(MultTransposeMatrixfARB),
+   TABLE_ENTRY(SampleCoverageARB),
+   TABLE_ENTRY(CompressedTexImage1DARB),
+   TABLE_ENTRY(CompressedTexImage2DARB),
+   TABLE_ENTRY(CompressedTexImage3DARB),
+   TABLE_ENTRY(CompressedTexSubImage1DARB),
+   TABLE_ENTRY(CompressedTexSubImage2DARB),
+   TABLE_ENTRY(CompressedTexSubImage3DARB),
+   TABLE_ENTRY(GetCompressedTexImageARB),
+   TABLE_ENTRY(DisableVertexAttribArrayARB),
+   TABLE_ENTRY(EnableVertexAttribArrayARB),
+   TABLE_ENTRY(GetProgramEnvParameterdvARB),
+   TABLE_ENTRY(GetProgramEnvParameterfvARB),
+   TABLE_ENTRY(GetProgramLocalParameterdvARB),
+   TABLE_ENTRY(GetProgramLocalParameterfvARB),
+   TABLE_ENTRY(GetProgramStringARB),
+   TABLE_ENTRY(GetProgramivARB),
+   TABLE_ENTRY(GetVertexAttribdvARB),
+   TABLE_ENTRY(GetVertexAttribfvARB),
+   TABLE_ENTRY(GetVertexAttribivARB),
+   TABLE_ENTRY(ProgramEnvParameter4dARB),
+   TABLE_ENTRY(ProgramEnvParameter4dvARB),
+   TABLE_ENTRY(ProgramEnvParameter4fARB),
+   TABLE_ENTRY(ProgramEnvParameter4fvARB),
+   TABLE_ENTRY(ProgramLocalParameter4dARB),
+   TABLE_ENTRY(ProgramLocalParameter4dvARB),
+   TABLE_ENTRY(ProgramLocalParameter4fARB),
+   TABLE_ENTRY(ProgramLocalParameter4fvARB),
+   TABLE_ENTRY(ProgramStringARB),
+   TABLE_ENTRY(VertexAttrib1dARB),
+   TABLE_ENTRY(VertexAttrib1dvARB),
+   TABLE_ENTRY(VertexAttrib1fARB),
+   TABLE_ENTRY(VertexAttrib1fvARB),
+   TABLE_ENTRY(VertexAttrib1sARB),
+   TABLE_ENTRY(VertexAttrib1svARB),
+   TABLE_ENTRY(VertexAttrib2dARB),
+   TABLE_ENTRY(VertexAttrib2dvARB),
+   TABLE_ENTRY(VertexAttrib2fARB),
+   TABLE_ENTRY(VertexAttrib2fvARB),
+   TABLE_ENTRY(VertexAttrib2sARB),
+   TABLE_ENTRY(VertexAttrib2svARB),
+   TABLE_ENTRY(VertexAttrib3dARB),
+   TABLE_ENTRY(VertexAttrib3dvARB),
+   TABLE_ENTRY(VertexAttrib3fARB),
+   TABLE_ENTRY(VertexAttrib3fvARB),
+   TABLE_ENTRY(VertexAttrib3sARB),
+   TABLE_ENTRY(VertexAttrib3svARB),
+   TABLE_ENTRY(VertexAttrib4NbvARB),
+   TABLE_ENTRY(VertexAttrib4NivARB),
+   TABLE_ENTRY(VertexAttrib4NsvARB),
+   TABLE_ENTRY(VertexAttrib4NubARB),
+   TABLE_ENTRY(VertexAttrib4NubvARB),
+   TABLE_ENTRY(VertexAttrib4NuivARB),
+   TABLE_ENTRY(VertexAttrib4NusvARB),
+   TABLE_ENTRY(VertexAttrib4bvARB),
+   TABLE_ENTRY(VertexAttrib4dARB),
+   TABLE_ENTRY(VertexAttrib4dvARB),
+   TABLE_ENTRY(VertexAttrib4fARB),
+   TABLE_ENTRY(VertexAttrib4fvARB),
+   TABLE_ENTRY(VertexAttrib4ivARB),
+   TABLE_ENTRY(VertexAttrib4sARB),
+   TABLE_ENTRY(VertexAttrib4svARB),
+   TABLE_ENTRY(VertexAttrib4ubvARB),
+   TABLE_ENTRY(VertexAttrib4uivARB),
+   TABLE_ENTRY(VertexAttrib4usvARB),
+   TABLE_ENTRY(VertexAttribPointerARB),
+   TABLE_ENTRY(BindBufferARB),
+   TABLE_ENTRY(BufferDataARB),
+   TABLE_ENTRY(BufferSubDataARB),
+   TABLE_ENTRY(DeleteBuffersARB),
+   TABLE_ENTRY(GenBuffersARB),
+   TABLE_ENTRY(GetBufferParameterivARB),
+   TABLE_ENTRY(GetBufferPointervARB),
+   TABLE_ENTRY(GetBufferSubDataARB),
+   TABLE_ENTRY(IsBufferARB),
+   TABLE_ENTRY(MapBufferARB),
+   TABLE_ENTRY(UnmapBufferARB),
+   TABLE_ENTRY(BeginQueryARB),
+   TABLE_ENTRY(DeleteQueriesARB),
+   TABLE_ENTRY(EndQueryARB),
+   TABLE_ENTRY(GenQueriesARB),
+   TABLE_ENTRY(GetQueryObjectivARB),
+   TABLE_ENTRY(GetQueryObjectuivARB),
+   TABLE_ENTRY(GetQueryivARB),
+   TABLE_ENTRY(IsQueryARB),
+   TABLE_ENTRY(AttachObjectARB),
+   TABLE_ENTRY(CompileShaderARB),
+   TABLE_ENTRY(CreateProgramObjectARB),
+   TABLE_ENTRY(CreateShaderObjectARB),
+   TABLE_ENTRY(DeleteObjectARB),
+   TABLE_ENTRY(DetachObjectARB),
+   TABLE_ENTRY(GetActiveUniformARB),
+   TABLE_ENTRY(GetAttachedObjectsARB),
+   TABLE_ENTRY(GetHandleARB),
+   TABLE_ENTRY(GetInfoLogARB),
+   TABLE_ENTRY(GetObjectParameterfvARB),
+   TABLE_ENTRY(GetObjectParameterivARB),
+   TABLE_ENTRY(GetShaderSourceARB),
+   TABLE_ENTRY(GetUniformLocationARB),
+   TABLE_ENTRY(GetUniformfvARB),
+   TABLE_ENTRY(GetUniformivARB),
+   TABLE_ENTRY(LinkProgramARB),
+   TABLE_ENTRY(ShaderSourceARB),
+   TABLE_ENTRY(Uniform1fARB),
+   TABLE_ENTRY(Uniform1fvARB),
+   TABLE_ENTRY(Uniform1iARB),
+   TABLE_ENTRY(Uniform1ivARB),
+   TABLE_ENTRY(Uniform2fARB),
+   TABLE_ENTRY(Uniform2fvARB),
+   TABLE_ENTRY(Uniform2iARB),
+   TABLE_ENTRY(Uniform2ivARB),
+   TABLE_ENTRY(Uniform3fARB),
+   TABLE_ENTRY(Uniform3fvARB),
+   TABLE_ENTRY(Uniform3iARB),
+   TABLE_ENTRY(Uniform3ivARB),
+   TABLE_ENTRY(Uniform4fARB),
+   TABLE_ENTRY(Uniform4fvARB),
+   TABLE_ENTRY(Uniform4iARB),
+   TABLE_ENTRY(Uniform4ivARB),
+   TABLE_ENTRY(UniformMatrix2fvARB),
+   TABLE_ENTRY(UniformMatrix3fvARB),
+   TABLE_ENTRY(UniformMatrix4fvARB),
+   TABLE_ENTRY(UseProgramObjectARB),
+   TABLE_ENTRY(ValidateProgramARB),
+   TABLE_ENTRY(BindAttribLocationARB),
+   TABLE_ENTRY(GetActiveAttribARB),
+   TABLE_ENTRY(GetAttribLocationARB),
+   TABLE_ENTRY(DrawBuffersARB),
+   TABLE_ENTRY(RenderbufferStorageMultisample),
+   TABLE_ENTRY(FlushMappedBufferRange),
+   TABLE_ENTRY(MapBufferRange),
+   TABLE_ENTRY(BindVertexArray),
+   TABLE_ENTRY(GenVertexArrays),
+   TABLE_ENTRY(CopyBufferSubData),
+   TABLE_ENTRY(ClientWaitSync),
+   TABLE_ENTRY(DeleteSync),
+   TABLE_ENTRY(FenceSync),
+   TABLE_ENTRY(GetInteger64v),
+   TABLE_ENTRY(GetSynciv),
+   TABLE_ENTRY(IsSync),
+   TABLE_ENTRY(WaitSync),
+   TABLE_ENTRY(DrawElementsBaseVertex),
+   TABLE_ENTRY(DrawRangeElementsBaseVertex),
+   TABLE_ENTRY(MultiDrawElementsBaseVertex),
+   TABLE_ENTRY(PolygonOffsetEXT),
+   TABLE_ENTRY(_dispatch_stub_580),
+   TABLE_ENTRY(_dispatch_stub_581),
+   TABLE_ENTRY(_dispatch_stub_582),
+   TABLE_ENTRY(_dispatch_stub_583),
+   TABLE_ENTRY(_dispatch_stub_584),
+   TABLE_ENTRY(_dispatch_stub_585),
+   TABLE_ENTRY(_dispatch_stub_586),
+   TABLE_ENTRY(_dispatch_stub_587),
+   TABLE_ENTRY(ColorPointerEXT),
+   TABLE_ENTRY(EdgeFlagPointerEXT),
+   TABLE_ENTRY(IndexPointerEXT),
+   TABLE_ENTRY(NormalPointerEXT),
+   TABLE_ENTRY(TexCoordPointerEXT),
+   TABLE_ENTRY(VertexPointerEXT),
+   TABLE_ENTRY(PointParameterfEXT),
+   TABLE_ENTRY(PointParameterfvEXT),
+   TABLE_ENTRY(LockArraysEXT),
+   TABLE_ENTRY(UnlockArraysEXT),
+   TABLE_ENTRY(_dispatch_stub_598),
+   TABLE_ENTRY(_dispatch_stub_599),
+   TABLE_ENTRY(SecondaryColor3bEXT),
+   TABLE_ENTRY(SecondaryColor3bvEXT),
+   TABLE_ENTRY(SecondaryColor3dEXT),
+   TABLE_ENTRY(SecondaryColor3dvEXT),
+   TABLE_ENTRY(SecondaryColor3fEXT),
+   TABLE_ENTRY(SecondaryColor3fvEXT),
+   TABLE_ENTRY(SecondaryColor3iEXT),
+   TABLE_ENTRY(SecondaryColor3ivEXT),
+   TABLE_ENTRY(SecondaryColor3sEXT),
+   TABLE_ENTRY(SecondaryColor3svEXT),
+   TABLE_ENTRY(SecondaryColor3ubEXT),
+   TABLE_ENTRY(SecondaryColor3ubvEXT),
+   TABLE_ENTRY(SecondaryColor3uiEXT),
+   TABLE_ENTRY(SecondaryColor3uivEXT),
+   TABLE_ENTRY(SecondaryColor3usEXT),
+   TABLE_ENTRY(SecondaryColor3usvEXT),
+   TABLE_ENTRY(SecondaryColorPointerEXT),
+   TABLE_ENTRY(MultiDrawArraysEXT),
+   TABLE_ENTRY(MultiDrawElementsEXT),
+   TABLE_ENTRY(FogCoordPointerEXT),
+   TABLE_ENTRY(FogCoorddEXT),
+   TABLE_ENTRY(FogCoorddvEXT),
+   TABLE_ENTRY(FogCoordfEXT),
+   TABLE_ENTRY(FogCoordfvEXT),
+   TABLE_ENTRY(_dispatch_stub_624),
+   TABLE_ENTRY(BlendFuncSeparateEXT),
+   TABLE_ENTRY(FlushVertexArrayRangeNV),
+   TABLE_ENTRY(VertexArrayRangeNV),
+   TABLE_ENTRY(CombinerInputNV),
+   TABLE_ENTRY(CombinerOutputNV),
+   TABLE_ENTRY(CombinerParameterfNV),
+   TABLE_ENTRY(CombinerParameterfvNV),
+   TABLE_ENTRY(CombinerParameteriNV),
+   TABLE_ENTRY(CombinerParameterivNV),
+   TABLE_ENTRY(FinalCombinerInputNV),
+   TABLE_ENTRY(GetCombinerInputParameterfvNV),
+   TABLE_ENTRY(GetCombinerInputParameterivNV),
+   TABLE_ENTRY(GetCombinerOutputParameterfvNV),
+   TABLE_ENTRY(GetCombinerOutputParameterivNV),
+   TABLE_ENTRY(GetFinalCombinerInputParameterfvNV),
+   TABLE_ENTRY(GetFinalCombinerInputParameterivNV),
+   TABLE_ENTRY(ResizeBuffersMESA),
+   TABLE_ENTRY(WindowPos2dMESA),
+   TABLE_ENTRY(WindowPos2dvMESA),
+   TABLE_ENTRY(WindowPos2fMESA),
+   TABLE_ENTRY(WindowPos2fvMESA),
+   TABLE_ENTRY(WindowPos2iMESA),
+   TABLE_ENTRY(WindowPos2ivMESA),
+   TABLE_ENTRY(WindowPos2sMESA),
+   TABLE_ENTRY(WindowPos2svMESA),
+   TABLE_ENTRY(WindowPos3dMESA),
+   TABLE_ENTRY(WindowPos3dvMESA),
+   TABLE_ENTRY(WindowPos3fMESA),
+   TABLE_ENTRY(WindowPos3fvMESA),
+   TABLE_ENTRY(WindowPos3iMESA),
+   TABLE_ENTRY(WindowPos3ivMESA),
+   TABLE_ENTRY(WindowPos3sMESA),
+   TABLE_ENTRY(WindowPos3svMESA),
+   TABLE_ENTRY(WindowPos4dMESA),
+   TABLE_ENTRY(WindowPos4dvMESA),
+   TABLE_ENTRY(WindowPos4fMESA),
+   TABLE_ENTRY(WindowPos4fvMESA),
+   TABLE_ENTRY(WindowPos4iMESA),
+   TABLE_ENTRY(WindowPos4ivMESA),
+   TABLE_ENTRY(WindowPos4sMESA),
+   TABLE_ENTRY(WindowPos4svMESA),
+   TABLE_ENTRY(_dispatch_stub_666),
+   TABLE_ENTRY(_dispatch_stub_667),
+   TABLE_ENTRY(_dispatch_stub_668),
+   TABLE_ENTRY(_dispatch_stub_669),
+   TABLE_ENTRY(_dispatch_stub_670),
+   TABLE_ENTRY(_dispatch_stub_671),
+   TABLE_ENTRY(_dispatch_stub_672),
+   TABLE_ENTRY(_dispatch_stub_673),
+   TABLE_ENTRY(_dispatch_stub_674),
+   TABLE_ENTRY(AreProgramsResidentNV),
+   TABLE_ENTRY(BindProgramNV),
+   TABLE_ENTRY(DeleteProgramsNV),
+   TABLE_ENTRY(ExecuteProgramNV),
+   TABLE_ENTRY(GenProgramsNV),
+   TABLE_ENTRY(GetProgramParameterdvNV),
+   TABLE_ENTRY(GetProgramParameterfvNV),
+   TABLE_ENTRY(GetProgramStringNV),
+   TABLE_ENTRY(GetProgramivNV),
+   TABLE_ENTRY(GetTrackMatrixivNV),
+   TABLE_ENTRY(GetVertexAttribPointervNV),
+   TABLE_ENTRY(GetVertexAttribdvNV),
+   TABLE_ENTRY(GetVertexAttribfvNV),
+   TABLE_ENTRY(GetVertexAttribivNV),
+   TABLE_ENTRY(IsProgramNV),
+   TABLE_ENTRY(LoadProgramNV),
+   TABLE_ENTRY(ProgramParameters4dvNV),
+   TABLE_ENTRY(ProgramParameters4fvNV),
+   TABLE_ENTRY(RequestResidentProgramsNV),
+   TABLE_ENTRY(TrackMatrixNV),
+   TABLE_ENTRY(VertexAttrib1dNV),
+   TABLE_ENTRY(VertexAttrib1dvNV),
+   TABLE_ENTRY(VertexAttrib1fNV),
+   TABLE_ENTRY(VertexAttrib1fvNV),
+   TABLE_ENTRY(VertexAttrib1sNV),
+   TABLE_ENTRY(VertexAttrib1svNV),
+   TABLE_ENTRY(VertexAttrib2dNV),
+   TABLE_ENTRY(VertexAttrib2dvNV),
+   TABLE_ENTRY(VertexAttrib2fNV),
+   TABLE_ENTRY(VertexAttrib2fvNV),
+   TABLE_ENTRY(VertexAttrib2sNV),
+   TABLE_ENTRY(VertexAttrib2svNV),
+   TABLE_ENTRY(VertexAttrib3dNV),
+   TABLE_ENTRY(VertexAttrib3dvNV),
+   TABLE_ENTRY(VertexAttrib3fNV),
+   TABLE_ENTRY(VertexAttrib3fvNV),
+   TABLE_ENTRY(VertexAttrib3sNV),
+   TABLE_ENTRY(VertexAttrib3svNV),
+   TABLE_ENTRY(VertexAttrib4dNV),
+   TABLE_ENTRY(VertexAttrib4dvNV),
+   TABLE_ENTRY(VertexAttrib4fNV),
+   TABLE_ENTRY(VertexAttrib4fvNV),
+   TABLE_ENTRY(VertexAttrib4sNV),
+   TABLE_ENTRY(VertexAttrib4svNV),
+   TABLE_ENTRY(VertexAttrib4ubNV),
+   TABLE_ENTRY(VertexAttrib4ubvNV),
+   TABLE_ENTRY(VertexAttribPointerNV),
+   TABLE_ENTRY(VertexAttribs1dvNV),
+   TABLE_ENTRY(VertexAttribs1fvNV),
+   TABLE_ENTRY(VertexAttribs1svNV),
+   TABLE_ENTRY(VertexAttribs2dvNV),
+   TABLE_ENTRY(VertexAttribs2fvNV),
+   TABLE_ENTRY(VertexAttribs2svNV),
+   TABLE_ENTRY(VertexAttribs3dvNV),
+   TABLE_ENTRY(VertexAttribs3fvNV),
+   TABLE_ENTRY(VertexAttribs3svNV),
+   TABLE_ENTRY(VertexAttribs4dvNV),
+   TABLE_ENTRY(VertexAttribs4fvNV),
+   TABLE_ENTRY(VertexAttribs4svNV),
+   TABLE_ENTRY(VertexAttribs4ubvNV),
+   TABLE_ENTRY(GetTexBumpParameterfvATI),
+   TABLE_ENTRY(GetTexBumpParameterivATI),
+   TABLE_ENTRY(TexBumpParameterfvATI),
+   TABLE_ENTRY(TexBumpParameterivATI),
+   TABLE_ENTRY(AlphaFragmentOp1ATI),
+   TABLE_ENTRY(AlphaFragmentOp2ATI),
+   TABLE_ENTRY(AlphaFragmentOp3ATI),
+   TABLE_ENTRY(BeginFragmentShaderATI),
+   TABLE_ENTRY(BindFragmentShaderATI),
+   TABLE_ENTRY(ColorFragmentOp1ATI),
+   TABLE_ENTRY(ColorFragmentOp2ATI),
+   TABLE_ENTRY(ColorFragmentOp3ATI),
+   TABLE_ENTRY(DeleteFragmentShaderATI),
+   TABLE_ENTRY(EndFragmentShaderATI),
+   TABLE_ENTRY(GenFragmentShadersATI),
+   TABLE_ENTRY(PassTexCoordATI),
+   TABLE_ENTRY(SampleMapATI),
+   TABLE_ENTRY(SetFragmentShaderConstantATI),
+   TABLE_ENTRY(PointParameteriNV),
+   TABLE_ENTRY(PointParameterivNV),
+   TABLE_ENTRY(_dispatch_stub_755),
+   TABLE_ENTRY(_dispatch_stub_756),
+   TABLE_ENTRY(_dispatch_stub_757),
+   TABLE_ENTRY(_dispatch_stub_758),
+   TABLE_ENTRY(_dispatch_stub_759),
+   TABLE_ENTRY(GetProgramNamedParameterdvNV),
+   TABLE_ENTRY(GetProgramNamedParameterfvNV),
+   TABLE_ENTRY(ProgramNamedParameter4dNV),
+   TABLE_ENTRY(ProgramNamedParameter4dvNV),
+   TABLE_ENTRY(ProgramNamedParameter4fNV),
+   TABLE_ENTRY(ProgramNamedParameter4fvNV),
+   TABLE_ENTRY(_dispatch_stub_766),
+   TABLE_ENTRY(_dispatch_stub_767),
+   TABLE_ENTRY(BindFramebufferEXT),
+   TABLE_ENTRY(BindRenderbufferEXT),
+   TABLE_ENTRY(CheckFramebufferStatusEXT),
+   TABLE_ENTRY(DeleteFramebuffersEXT),
+   TABLE_ENTRY(DeleteRenderbuffersEXT),
+   TABLE_ENTRY(FramebufferRenderbufferEXT),
+   TABLE_ENTRY(FramebufferTexture1DEXT),
+   TABLE_ENTRY(FramebufferTexture2DEXT),
+   TABLE_ENTRY(FramebufferTexture3DEXT),
+   TABLE_ENTRY(GenFramebuffersEXT),
+   TABLE_ENTRY(GenRenderbuffersEXT),
+   TABLE_ENTRY(GenerateMipmapEXT),
+   TABLE_ENTRY(GetFramebufferAttachmentParameterivEXT),
+   TABLE_ENTRY(GetRenderbufferParameterivEXT),
+   TABLE_ENTRY(IsFramebufferEXT),
+   TABLE_ENTRY(IsRenderbufferEXT),
+   TABLE_ENTRY(RenderbufferStorageEXT),
+   TABLE_ENTRY(_dispatch_stub_785),
+   TABLE_ENTRY(_dispatch_stub_786),
+   TABLE_ENTRY(_dispatch_stub_787),
+   TABLE_ENTRY(FramebufferTextureLayerEXT),
+   TABLE_ENTRY(ColorMaskIndexedEXT),
+   TABLE_ENTRY(DisableIndexedEXT),
+   TABLE_ENTRY(EnableIndexedEXT),
+   TABLE_ENTRY(GetBooleanIndexedvEXT),
+   TABLE_ENTRY(GetIntegerIndexedvEXT),
+   TABLE_ENTRY(IsEnabledIndexedEXT),
+   TABLE_ENTRY(BeginConditionalRenderNV),
+   TABLE_ENTRY(EndConditionalRenderNV),
+   TABLE_ENTRY(BeginTransformFeedbackEXT),
+   TABLE_ENTRY(BindBufferBaseEXT),
+   TABLE_ENTRY(BindBufferOffsetEXT),
+   TABLE_ENTRY(BindBufferRangeEXT),
+   TABLE_ENTRY(EndTransformFeedbackEXT),
+   TABLE_ENTRY(GetTransformFeedbackVaryingEXT),
+   TABLE_ENTRY(TransformFeedbackVaryingsEXT),
+   TABLE_ENTRY(ProvokingVertexEXT),
+   TABLE_ENTRY(_dispatch_stub_805),
+   TABLE_ENTRY(_dispatch_stub_806),
+   TABLE_ENTRY(GetObjectParameterivAPPLE),
+   TABLE_ENTRY(ObjectPurgeableAPPLE),
+   TABLE_ENTRY(ObjectUnpurgeableAPPLE),
+   TABLE_ENTRY(_dispatch_stub_810),
+   TABLE_ENTRY(_dispatch_stub_811),
+   TABLE_ENTRY(_dispatch_stub_812),
+   TABLE_ENTRY(_dispatch_stub_813),
+   TABLE_ENTRY(_dispatch_stub_814),
+   TABLE_ENTRY(EGLImageTargetRenderbufferStorageOES),
+   TABLE_ENTRY(EGLImageTargetTexture2DOES),
+   /* A whole bunch of no-op functions.  These might be called
+    * when someone tries to call a dynamically-registered
+    * extension function without a current rendering context.
+    */
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+   TABLE_ENTRY(Unused),
+};
+#endif /* DISPATCH_TABLE_NAME */
+
+
+/*
+ * This is just used to silence compiler warnings.
+ * We list the functions which are not otherwise used.
+ */
+#ifdef UNUSED_TABLE_NAME
+_glapi_proc UNUSED_TABLE_NAME[] = {
+#ifndef _GLAPI_SKIP_NORMAL_ENTRY_POINTS
+   TABLE_ENTRY(ArrayElementEXT),
+   TABLE_ENTRY(BindTextureEXT),
+   TABLE_ENTRY(DrawArraysEXT),
+   TABLE_ENTRY(CopyTexImage1DEXT),
+   TABLE_ENTRY(CopyTexImage2DEXT),
+   TABLE_ENTRY(CopyTexSubImage1DEXT),
+   TABLE_ENTRY(CopyTexSubImage2DEXT),
+   TABLE_ENTRY(GetPointervEXT),
+   TABLE_ENTRY(PrioritizeTexturesEXT),
+   TABLE_ENTRY(TexSubImage1DEXT),
+   TABLE_ENTRY(TexSubImage2DEXT),
+   TABLE_ENTRY(BlendColorEXT),
+   TABLE_ENTRY(BlendEquationEXT),
+   TABLE_ENTRY(DrawRangeElementsEXT),
+   TABLE_ENTRY(ColorTableEXT),
+   TABLE_ENTRY(_dispatch_stub_339),
+   TABLE_ENTRY(_dispatch_stub_340),
+   TABLE_ENTRY(_dispatch_stub_341),
+   TABLE_ENTRY(_dispatch_stub_342),
+   TABLE_ENTRY(_dispatch_stub_346),
+   TABLE_ENTRY(_dispatch_stub_347),
+   TABLE_ENTRY(_dispatch_stub_348),
+   TABLE_ENTRY(_dispatch_stub_349),
+   TABLE_ENTRY(_dispatch_stub_350),
+   TABLE_ENTRY(_dispatch_stub_351),
+   TABLE_ENTRY(_dispatch_stub_352),
+   TABLE_ENTRY(_dispatch_stub_353),
+   TABLE_ENTRY(_dispatch_stub_354),
+   TABLE_ENTRY(_dispatch_stub_355),
+   TABLE_ENTRY(_dispatch_stub_360),
+   TABLE_ENTRY(_dispatch_stub_367),
+   TABLE_ENTRY(_dispatch_stub_368),
+   TABLE_ENTRY(_dispatch_stub_369),
+   TABLE_ENTRY(_dispatch_stub_370),
+   TABLE_ENTRY(TexImage3DEXT),
+   TABLE_ENTRY(TexSubImage3DEXT),
+   TABLE_ENTRY(CopyTexSubImage3DEXT),
+   TABLE_ENTRY(ActiveTexture),
+   TABLE_ENTRY(ClientActiveTexture),
+   TABLE_ENTRY(MultiTexCoord1d),
+   TABLE_ENTRY(MultiTexCoord1dv),
+   TABLE_ENTRY(MultiTexCoord1f),
+   TABLE_ENTRY(MultiTexCoord1fv),
+   TABLE_ENTRY(MultiTexCoord1i),
+   TABLE_ENTRY(MultiTexCoord1iv),
+   TABLE_ENTRY(MultiTexCoord1s),
+   TABLE_ENTRY(MultiTexCoord1sv),
+   TABLE_ENTRY(MultiTexCoord2d),
+   TABLE_ENTRY(MultiTexCoord2dv),
+   TABLE_ENTRY(MultiTexCoord2f),
+   TABLE_ENTRY(MultiTexCoord2fv),
+   TABLE_ENTRY(MultiTexCoord2i),
+   TABLE_ENTRY(MultiTexCoord2iv),
+   TABLE_ENTRY(MultiTexCoord2s),
+   TABLE_ENTRY(MultiTexCoord2sv),
+   TABLE_ENTRY(MultiTexCoord3d),
+   TABLE_ENTRY(MultiTexCoord3dv),
+   TABLE_ENTRY(MultiTexCoord3f),
+   TABLE_ENTRY(MultiTexCoord3fv),
+   TABLE_ENTRY(MultiTexCoord3i),
+   TABLE_ENTRY(MultiTexCoord3iv),
+   TABLE_ENTRY(MultiTexCoord3s),
+   TABLE_ENTRY(MultiTexCoord3sv),
+   TABLE_ENTRY(MultiTexCoord4d),
+   TABLE_ENTRY(MultiTexCoord4dv),
+   TABLE_ENTRY(MultiTexCoord4f),
+   TABLE_ENTRY(MultiTexCoord4fv),
+   TABLE_ENTRY(MultiTexCoord4i),
+   TABLE_ENTRY(MultiTexCoord4iv),
+   TABLE_ENTRY(MultiTexCoord4s),
+   TABLE_ENTRY(MultiTexCoord4sv),
+   TABLE_ENTRY(_dispatch_stub_423),
+   TABLE_ENTRY(DrawArraysInstancedARB),
+   TABLE_ENTRY(DrawArraysInstancedEXT),
+   TABLE_ENTRY(DrawElementsInstancedARB),
+   TABLE_ENTRY(DrawElementsInstancedEXT),
+   TABLE_ENTRY(LoadTransposeMatrixd),
+   TABLE_ENTRY(LoadTransposeMatrixf),
+   TABLE_ENTRY(MultTransposeMatrixd),
+   TABLE_ENTRY(MultTransposeMatrixf),
+   TABLE_ENTRY(SampleCoverage),
+   TABLE_ENTRY(CompressedTexImage1D),
+   TABLE_ENTRY(CompressedTexImage2D),
+   TABLE_ENTRY(CompressedTexImage3D),
+   TABLE_ENTRY(CompressedTexSubImage1D),
+   TABLE_ENTRY(CompressedTexSubImage2D),
+   TABLE_ENTRY(CompressedTexSubImage3D),
+   TABLE_ENTRY(GetCompressedTexImage),
+   TABLE_ENTRY(DisableVertexAttribArray),
+   TABLE_ENTRY(EnableVertexAttribArray),
+   TABLE_ENTRY(GetVertexAttribdv),
+   TABLE_ENTRY(GetVertexAttribfv),
+   TABLE_ENTRY(GetVertexAttribiv),
+   TABLE_ENTRY(ProgramParameter4dNV),
+   TABLE_ENTRY(ProgramParameter4dvNV),
+   TABLE_ENTRY(ProgramParameter4fNV),
+   TABLE_ENTRY(ProgramParameter4fvNV),
+   TABLE_ENTRY(VertexAttrib1d),
+   TABLE_ENTRY(VertexAttrib1dv),
+   TABLE_ENTRY(VertexAttrib1f),
+   TABLE_ENTRY(VertexAttrib1fv),
+   TABLE_ENTRY(VertexAttrib1s),
+   TABLE_ENTRY(VertexAttrib1sv),
+   TABLE_ENTRY(VertexAttrib2d),
+   TABLE_ENTRY(VertexAttrib2dv),
+   TABLE_ENTRY(VertexAttrib2f),
+   TABLE_ENTRY(VertexAttrib2fv),
+   TABLE_ENTRY(VertexAttrib2s),
+   TABLE_ENTRY(VertexAttrib2sv),
+   TABLE_ENTRY(VertexAttrib3d),
+   TABLE_ENTRY(VertexAttrib3dv),
+   TABLE_ENTRY(VertexAttrib3f),
+   TABLE_ENTRY(VertexAttrib3fv),
+   TABLE_ENTRY(VertexAttrib3s),
+   TABLE_ENTRY(VertexAttrib3sv),
+   TABLE_ENTRY(VertexAttrib4Nbv),
+   TABLE_ENTRY(VertexAttrib4Niv),
+   TABLE_ENTRY(VertexAttrib4Nsv),
+   TABLE_ENTRY(VertexAttrib4Nub),
+   TABLE_ENTRY(VertexAttrib4Nubv),
+   TABLE_ENTRY(VertexAttrib4Nuiv),
+   TABLE_ENTRY(VertexAttrib4Nusv),
+   TABLE_ENTRY(VertexAttrib4bv),
+   TABLE_ENTRY(VertexAttrib4d),
+   TABLE_ENTRY(VertexAttrib4dv),
+   TABLE_ENTRY(VertexAttrib4f),
+   TABLE_ENTRY(VertexAttrib4fv),
+   TABLE_ENTRY(VertexAttrib4iv),
+   TABLE_ENTRY(VertexAttrib4s),
+   TABLE_ENTRY(VertexAttrib4sv),
+   TABLE_ENTRY(VertexAttrib4ubv),
+   TABLE_ENTRY(VertexAttrib4uiv),
+   TABLE_ENTRY(VertexAttrib4usv),
+   TABLE_ENTRY(VertexAttribPointer),
+   TABLE_ENTRY(BindBuffer),
+   TABLE_ENTRY(BufferData),
+   TABLE_ENTRY(BufferSubData),
+   TABLE_ENTRY(DeleteBuffers),
+   TABLE_ENTRY(GenBuffers),
+   TABLE_ENTRY(GetBufferParameteriv),
+   TABLE_ENTRY(GetBufferPointerv),
+   TABLE_ENTRY(GetBufferSubData),
+   TABLE_ENTRY(IsBuffer),
+   TABLE_ENTRY(MapBuffer),
+   TABLE_ENTRY(UnmapBuffer),
+   TABLE_ENTRY(BeginQuery),
+   TABLE_ENTRY(DeleteQueries),
+   TABLE_ENTRY(EndQuery),
+   TABLE_ENTRY(GenQueries),
+   TABLE_ENTRY(GetQueryObjectiv),
+   TABLE_ENTRY(GetQueryObjectuiv),
+   TABLE_ENTRY(GetQueryiv),
+   TABLE_ENTRY(IsQuery),
+   TABLE_ENTRY(CompileShader),
+   TABLE_ENTRY(GetActiveUniform),
+   TABLE_ENTRY(GetShaderSource),
+   TABLE_ENTRY(GetUniformLocation),
+   TABLE_ENTRY(GetUniformfv),
+   TABLE_ENTRY(GetUniformiv),
+   TABLE_ENTRY(LinkProgram),
+   TABLE_ENTRY(ShaderSource),
+   TABLE_ENTRY(Uniform1f),
+   TABLE_ENTRY(Uniform1fv),
+   TABLE_ENTRY(Uniform1i),
+   TABLE_ENTRY(Uniform1iv),
+   TABLE_ENTRY(Uniform2f),
+   TABLE_ENTRY(Uniform2fv),
+   TABLE_ENTRY(Uniform2i),
+   TABLE_ENTRY(Uniform2iv),
+   TABLE_ENTRY(Uniform3f),
+   TABLE_ENTRY(Uniform3fv),
+   TABLE_ENTRY(Uniform3i),
+   TABLE_ENTRY(Uniform3iv),
+   TABLE_ENTRY(Uniform4f),
+   TABLE_ENTRY(Uniform4fv),
+   TABLE_ENTRY(Uniform4i),
+   TABLE_ENTRY(Uniform4iv),
+   TABLE_ENTRY(UniformMatrix2fv),
+   TABLE_ENTRY(UniformMatrix3fv),
+   TABLE_ENTRY(UniformMatrix4fv),
+   TABLE_ENTRY(UseProgram),
+   TABLE_ENTRY(ValidateProgram),
+   TABLE_ENTRY(BindAttribLocation),
+   TABLE_ENTRY(GetActiveAttrib),
+   TABLE_ENTRY(GetAttribLocation),
+   TABLE_ENTRY(DrawBuffers),
+   TABLE_ENTRY(DrawBuffersATI),
+   TABLE_ENTRY(RenderbufferStorageMultisampleEXT),
+   TABLE_ENTRY(PointParameterf),
+   TABLE_ENTRY(PointParameterfARB),
+   TABLE_ENTRY(_dispatch_stub_594),
+   TABLE_ENTRY(PointParameterfv),
+   TABLE_ENTRY(PointParameterfvARB),
+   TABLE_ENTRY(_dispatch_stub_595),
+   TABLE_ENTRY(SecondaryColor3b),
+   TABLE_ENTRY(SecondaryColor3bv),
+   TABLE_ENTRY(SecondaryColor3d),
+   TABLE_ENTRY(SecondaryColor3dv),
+   TABLE_ENTRY(SecondaryColor3f),
+   TABLE_ENTRY(SecondaryColor3fv),
+   TABLE_ENTRY(SecondaryColor3i),
+   TABLE_ENTRY(SecondaryColor3iv),
+   TABLE_ENTRY(SecondaryColor3s),
+   TABLE_ENTRY(SecondaryColor3sv),
+   TABLE_ENTRY(SecondaryColor3ub),
+   TABLE_ENTRY(SecondaryColor3ubv),
+   TABLE_ENTRY(SecondaryColor3ui),
+   TABLE_ENTRY(SecondaryColor3uiv),
+   TABLE_ENTRY(SecondaryColor3us),
+   TABLE_ENTRY(SecondaryColor3usv),
+   TABLE_ENTRY(SecondaryColorPointer),
+   TABLE_ENTRY(MultiDrawArrays),
+   TABLE_ENTRY(MultiDrawElements),
+   TABLE_ENTRY(FogCoordPointer),
+   TABLE_ENTRY(FogCoordd),
+   TABLE_ENTRY(FogCoorddv),
+   TABLE_ENTRY(FogCoordf),
+   TABLE_ENTRY(FogCoordfv),
+   TABLE_ENTRY(BlendFuncSeparate),
+   TABLE_ENTRY(_dispatch_stub_625),
+   TABLE_ENTRY(WindowPos2d),
+   TABLE_ENTRY(WindowPos2dARB),
+   TABLE_ENTRY(WindowPos2dv),
+   TABLE_ENTRY(WindowPos2dvARB),
+   TABLE_ENTRY(WindowPos2f),
+   TABLE_ENTRY(WindowPos2fARB),
+   TABLE_ENTRY(WindowPos2fv),
+   TABLE_ENTRY(WindowPos2fvARB),
+   TABLE_ENTRY(WindowPos2i),
+   TABLE_ENTRY(WindowPos2iARB),
+   TABLE_ENTRY(WindowPos2iv),
+   TABLE_ENTRY(WindowPos2ivARB),
+   TABLE_ENTRY(WindowPos2s),
+   TABLE_ENTRY(WindowPos2sARB),
+   TABLE_ENTRY(WindowPos2sv),
+   TABLE_ENTRY(WindowPos2svARB),
+   TABLE_ENTRY(WindowPos3d),
+   TABLE_ENTRY(WindowPos3dARB),
+   TABLE_ENTRY(WindowPos3dv),
+   TABLE_ENTRY(WindowPos3dvARB),
+   TABLE_ENTRY(WindowPos3f),
+   TABLE_ENTRY(WindowPos3fARB),
+   TABLE_ENTRY(WindowPos3fv),
+   TABLE_ENTRY(WindowPos3fvARB),
+   TABLE_ENTRY(WindowPos3i),
+   TABLE_ENTRY(WindowPos3iARB),
+   TABLE_ENTRY(WindowPos3iv),
+   TABLE_ENTRY(WindowPos3ivARB),
+   TABLE_ENTRY(WindowPos3s),
+   TABLE_ENTRY(WindowPos3sARB),
+   TABLE_ENTRY(WindowPos3sv),
+   TABLE_ENTRY(WindowPos3svARB),
+   TABLE_ENTRY(BindProgramARB),
+   TABLE_ENTRY(DeleteProgramsARB),
+   TABLE_ENTRY(GenProgramsARB),
+   TABLE_ENTRY(GetVertexAttribPointerv),
+   TABLE_ENTRY(GetVertexAttribPointervARB),
+   TABLE_ENTRY(IsProgramARB),
+   TABLE_ENTRY(PointParameteri),
+   TABLE_ENTRY(PointParameteriv),
+   TABLE_ENTRY(DeleteVertexArrays),
+   TABLE_ENTRY(IsVertexArray),
+   TABLE_ENTRY(BlendEquationSeparate),
+   TABLE_ENTRY(BindFramebuffer),
+   TABLE_ENTRY(BindRenderbuffer),
+   TABLE_ENTRY(CheckFramebufferStatus),
+   TABLE_ENTRY(DeleteFramebuffers),
+   TABLE_ENTRY(DeleteRenderbuffers),
+   TABLE_ENTRY(FramebufferRenderbuffer),
+   TABLE_ENTRY(FramebufferTexture1D),
+   TABLE_ENTRY(FramebufferTexture2D),
+   TABLE_ENTRY(FramebufferTexture3D),
+   TABLE_ENTRY(GenFramebuffers),
+   TABLE_ENTRY(GenRenderbuffers),
+   TABLE_ENTRY(GenerateMipmap),
+   TABLE_ENTRY(GetFramebufferAttachmentParameteriv),
+   TABLE_ENTRY(GetRenderbufferParameteriv),
+   TABLE_ENTRY(IsFramebuffer),
+   TABLE_ENTRY(IsRenderbuffer),
+   TABLE_ENTRY(RenderbufferStorage),
+   TABLE_ENTRY(BlitFramebuffer),
+   TABLE_ENTRY(FramebufferTextureLayer),
+   TABLE_ENTRY(BeginTransformFeedback),
+   TABLE_ENTRY(BindBufferBase),
+   TABLE_ENTRY(BindBufferRange),
+   TABLE_ENTRY(EndTransformFeedback),
+   TABLE_ENTRY(GetTransformFeedbackVarying),
+   TABLE_ENTRY(TransformFeedbackVaryings),
+   TABLE_ENTRY(ProvokingVertex),
+#endif /* _GLAPI_SKIP_NORMAL_ENTRY_POINTS */
+#ifndef _GLAPI_SKIP_PROTO_ENTRY_POINTS
+   TABLE_ENTRY(AreTexturesResidentEXT),
+   TABLE_ENTRY(DeleteTexturesEXT),
+   TABLE_ENTRY(GenTexturesEXT),
+   TABLE_ENTRY(IsTextureEXT),
+   TABLE_ENTRY(GetColorTableEXT),
+   TABLE_ENTRY(_dispatch_stub_343),
+   TABLE_ENTRY(GetColorTableParameterfvEXT),
+   TABLE_ENTRY(_dispatch_stub_344),
+   TABLE_ENTRY(GetColorTableParameterivEXT),
+   TABLE_ENTRY(_dispatch_stub_345),
+   TABLE_ENTRY(_dispatch_stub_356),
+   TABLE_ENTRY(_dispatch_stub_357),
+   TABLE_ENTRY(_dispatch_stub_358),
+   TABLE_ENTRY(_dispatch_stub_359),
+   TABLE_ENTRY(_dispatch_stub_361),
+   TABLE_ENTRY(_dispatch_stub_362),
+   TABLE_ENTRY(_dispatch_stub_363),
+   TABLE_ENTRY(_dispatch_stub_364),
+   TABLE_ENTRY(_dispatch_stub_365),
+   TABLE_ENTRY(_dispatch_stub_366),
+#endif /* _GLAPI_SKIP_PROTO_ENTRY_POINTS */
+};
+#endif /*UNUSED_TABLE_NAME*/
+
+
+#  undef KEYWORD1
+#  undef KEYWORD1_ALT
+#  undef KEYWORD2
+#  undef NAME
+#  undef DISPATCH
+#  undef RETURN_DISPATCH
+#  undef DISPATCH_TABLE_NAME
+#  undef UNUSED_TABLE_NAME
+#  undef TABLE_ENTRY
+#  undef HIDDEN
diff --git a/src/mapi/glapi/glprocs.h b/src/mapi/glapi/glprocs.h
new file mode 100644 (file)
index 0000000..8eb04ee
--- /dev/null
@@ -0,0 +1,2427 @@
+/* DO NOT EDIT - This file generated automatically by gl_procs.py (from Mesa) script */
+
+/*
+ * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
+ * (C) Copyright IBM Corporation 2004, 2006
+ * 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
+ * BRIAN PAUL, IBM,
+ * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
+ * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+
+/* This file is only included by glapi.c and is used for
+ * the GetProcAddress() function
+ */
+
+typedef struct {
+    GLint Name_offset;
+#if defined(NEED_FUNCTION_POINTER) || defined(GLX_INDIRECT_RENDERING)
+    _glapi_proc Address;
+#endif
+    GLuint Offset;
+} glprocs_table_t;
+
+#if   !defined(NEED_FUNCTION_POINTER) && !defined(GLX_INDIRECT_RENDERING)
+#  define NAME_FUNC_OFFSET(n,f1,f2,f3,o) { n , o }
+#elif  defined(NEED_FUNCTION_POINTER) && !defined(GLX_INDIRECT_RENDERING)
+#  define NAME_FUNC_OFFSET(n,f1,f2,f3,o) { n , (_glapi_proc) f1 , o }
+#elif  defined(NEED_FUNCTION_POINTER) &&  defined(GLX_INDIRECT_RENDERING)
+#  define NAME_FUNC_OFFSET(n,f1,f2,f3,o) { n , (_glapi_proc) f2 , o }
+#elif !defined(NEED_FUNCTION_POINTER) &&  defined(GLX_INDIRECT_RENDERING)
+#  define NAME_FUNC_OFFSET(n,f1,f2,f3,o) { n , (_glapi_proc) f3 , o }
+#endif
+
+
+
+static const char gl_string_table[] =
+    "glNewList\0"
+    "glEndList\0"
+    "glCallList\0"
+    "glCallLists\0"
+    "glDeleteLists\0"
+    "glGenLists\0"
+    "glListBase\0"
+    "glBegin\0"
+    "glBitmap\0"
+    "glColor3b\0"
+    "glColor3bv\0"
+    "glColor3d\0"
+    "glColor3dv\0"
+    "glColor3f\0"
+    "glColor3fv\0"
+    "glColor3i\0"
+    "glColor3iv\0"
+    "glColor3s\0"
+    "glColor3sv\0"
+    "glColor3ub\0"
+    "glColor3ubv\0"
+    "glColor3ui\0"
+    "glColor3uiv\0"
+    "glColor3us\0"
+    "glColor3usv\0"
+    "glColor4b\0"
+    "glColor4bv\0"
+    "glColor4d\0"
+    "glColor4dv\0"
+    "glColor4f\0"
+    "glColor4fv\0"
+    "glColor4i\0"
+    "glColor4iv\0"
+    "glColor4s\0"
+    "glColor4sv\0"
+    "glColor4ub\0"
+    "glColor4ubv\0"
+    "glColor4ui\0"
+    "glColor4uiv\0"
+    "glColor4us\0"
+    "glColor4usv\0"
+    "glEdgeFlag\0"
+    "glEdgeFlagv\0"
+    "glEnd\0"
+    "glIndexd\0"
+    "glIndexdv\0"
+    "glIndexf\0"
+    "glIndexfv\0"
+    "glIndexi\0"
+    "glIndexiv\0"
+    "glIndexs\0"
+    "glIndexsv\0"
+    "glNormal3b\0"
+    "glNormal3bv\0"
+    "glNormal3d\0"
+    "glNormal3dv\0"
+    "glNormal3f\0"
+    "glNormal3fv\0"
+    "glNormal3i\0"
+    "glNormal3iv\0"
+    "glNormal3s\0"
+    "glNormal3sv\0"
+    "glRasterPos2d\0"
+    "glRasterPos2dv\0"
+    "glRasterPos2f\0"
+    "glRasterPos2fv\0"
+    "glRasterPos2i\0"
+    "glRasterPos2iv\0"
+    "glRasterPos2s\0"
+    "glRasterPos2sv\0"
+    "glRasterPos3d\0"
+    "glRasterPos3dv\0"
+    "glRasterPos3f\0"
+    "glRasterPos3fv\0"
+    "glRasterPos3i\0"
+    "glRasterPos3iv\0"
+    "glRasterPos3s\0"
+    "glRasterPos3sv\0"
+    "glRasterPos4d\0"
+    "glRasterPos4dv\0"
+    "glRasterPos4f\0"
+    "glRasterPos4fv\0"
+    "glRasterPos4i\0"
+    "glRasterPos4iv\0"
+    "glRasterPos4s\0"
+    "glRasterPos4sv\0"
+    "glRectd\0"
+    "glRectdv\0"
+    "glRectf\0"
+    "glRectfv\0"
+    "glRecti\0"
+    "glRectiv\0"
+    "glRects\0"
+    "glRectsv\0"
+    "glTexCoord1d\0"
+    "glTexCoord1dv\0"
+    "glTexCoord1f\0"
+    "glTexCoord1fv\0"
+    "glTexCoord1i\0"
+    "glTexCoord1iv\0"
+    "glTexCoord1s\0"
+    "glTexCoord1sv\0"
+    "glTexCoord2d\0"
+    "glTexCoord2dv\0"
+    "glTexCoord2f\0"
+    "glTexCoord2fv\0"
+    "glTexCoord2i\0"
+    "glTexCoord2iv\0"
+    "glTexCoord2s\0"
+    "glTexCoord2sv\0"
+    "glTexCoord3d\0"
+    "glTexCoord3dv\0"
+    "glTexCoord3f\0"
+    "glTexCoord3fv\0"
+    "glTexCoord3i\0"
+    "glTexCoord3iv\0"
+    "glTexCoord3s\0"
+    "glTexCoord3sv\0"
+    "glTexCoord4d\0"
+    "glTexCoord4dv\0"
+    "glTexCoord4f\0"
+    "glTexCoord4fv\0"
+    "glTexCoord4i\0"
+    "glTexCoord4iv\0"
+    "glTexCoord4s\0"
+    "glTexCoord4sv\0"
+    "glVertex2d\0"
+    "glVertex2dv\0"
+    "glVertex2f\0"
+    "glVertex2fv\0"
+    "glVertex2i\0"
+    "glVertex2iv\0"
+    "glVertex2s\0"
+    "glVertex2sv\0"
+    "glVertex3d\0"
+    "glVertex3dv\0"
+    "glVertex3f\0"
+    "glVertex3fv\0"
+    "glVertex3i\0"
+    "glVertex3iv\0"
+    "glVertex3s\0"
+    "glVertex3sv\0"
+    "glVertex4d\0"
+    "glVertex4dv\0"
+    "glVertex4f\0"
+    "glVertex4fv\0"
+    "glVertex4i\0"
+    "glVertex4iv\0"
+    "glVertex4s\0"
+    "glVertex4sv\0"
+    "glClipPlane\0"
+    "glColorMaterial\0"
+    "glCullFace\0"
+    "glFogf\0"
+    "glFogfv\0"
+    "glFogi\0"
+    "glFogiv\0"
+    "glFrontFace\0"
+    "glHint\0"
+    "glLightf\0"
+    "glLightfv\0"
+    "glLighti\0"
+    "glLightiv\0"
+    "glLightModelf\0"
+    "glLightModelfv\0"
+    "glLightModeli\0"
+    "glLightModeliv\0"
+    "glLineStipple\0"
+    "glLineWidth\0"
+    "glMaterialf\0"
+    "glMaterialfv\0"
+    "glMateriali\0"
+    "glMaterialiv\0"
+    "glPointSize\0"
+    "glPolygonMode\0"
+    "glPolygonStipple\0"
+    "glScissor\0"
+    "glShadeModel\0"
+    "glTexParameterf\0"
+    "glTexParameterfv\0"
+    "glTexParameteri\0"
+    "glTexParameteriv\0"
+    "glTexImage1D\0"
+    "glTexImage2D\0"
+    "glTexEnvf\0"
+    "glTexEnvfv\0"
+    "glTexEnvi\0"
+    "glTexEnviv\0"
+    "glTexGend\0"
+    "glTexGendv\0"
+    "glTexGenf\0"
+    "glTexGenfv\0"
+    "glTexGeni\0"
+    "glTexGeniv\0"
+    "glFeedbackBuffer\0"
+    "glSelectBuffer\0"
+    "glRenderMode\0"
+    "glInitNames\0"
+    "glLoadName\0"
+    "glPassThrough\0"
+    "glPopName\0"
+    "glPushName\0"
+    "glDrawBuffer\0"
+    "glClear\0"
+    "glClearAccum\0"
+    "glClearIndex\0"
+    "glClearColor\0"
+    "glClearStencil\0"
+    "glClearDepth\0"
+    "glStencilMask\0"
+    "glColorMask\0"
+    "glDepthMask\0"
+    "glIndexMask\0"
+    "glAccum\0"
+    "glDisable\0"
+    "glEnable\0"
+    "glFinish\0"
+    "glFlush\0"
+    "glPopAttrib\0"
+    "glPushAttrib\0"
+    "glMap1d\0"
+    "glMap1f\0"
+    "glMap2d\0"
+    "glMap2f\0"
+    "glMapGrid1d\0"
+    "glMapGrid1f\0"
+    "glMapGrid2d\0"
+    "glMapGrid2f\0"
+    "glEvalCoord1d\0"
+    "glEvalCoord1dv\0"
+    "glEvalCoord1f\0"
+    "glEvalCoord1fv\0"
+    "glEvalCoord2d\0"
+    "glEvalCoord2dv\0"
+    "glEvalCoord2f\0"
+    "glEvalCoord2fv\0"
+    "glEvalMesh1\0"
+    "glEvalPoint1\0"
+    "glEvalMesh2\0"
+    "glEvalPoint2\0"
+    "glAlphaFunc\0"
+    "glBlendFunc\0"
+    "glLogicOp\0"
+    "glStencilFunc\0"
+    "glStencilOp\0"
+    "glDepthFunc\0"
+    "glPixelZoom\0"
+    "glPixelTransferf\0"
+    "glPixelTransferi\0"
+    "glPixelStoref\0"
+    "glPixelStorei\0"
+    "glPixelMapfv\0"
+    "glPixelMapuiv\0"
+    "glPixelMapusv\0"
+    "glReadBuffer\0"
+    "glCopyPixels\0"
+    "glReadPixels\0"
+    "glDrawPixels\0"
+    "glGetBooleanv\0"
+    "glGetClipPlane\0"
+    "glGetDoublev\0"
+    "glGetError\0"
+    "glGetFloatv\0"
+    "glGetIntegerv\0"
+    "glGetLightfv\0"
+    "glGetLightiv\0"
+    "glGetMapdv\0"
+    "glGetMapfv\0"
+    "glGetMapiv\0"
+    "glGetMaterialfv\0"
+    "glGetMaterialiv\0"
+    "glGetPixelMapfv\0"
+    "glGetPixelMapuiv\0"
+    "glGetPixelMapusv\0"
+    "glGetPolygonStipple\0"
+    "glGetString\0"
+    "glGetTexEnvfv\0"
+    "glGetTexEnviv\0"
+    "glGetTexGendv\0"
+    "glGetTexGenfv\0"
+    "glGetTexGeniv\0"
+    "glGetTexImage\0"
+    "glGetTexParameterfv\0"
+    "glGetTexParameteriv\0"
+    "glGetTexLevelParameterfv\0"
+    "glGetTexLevelParameteriv\0"
+    "glIsEnabled\0"
+    "glIsList\0"
+    "glDepthRange\0"
+    "glFrustum\0"
+    "glLoadIdentity\0"
+    "glLoadMatrixf\0"
+    "glLoadMatrixd\0"
+    "glMatrixMode\0"
+    "glMultMatrixf\0"
+    "glMultMatrixd\0"
+    "glOrtho\0"
+    "glPopMatrix\0"
+    "glPushMatrix\0"
+    "glRotated\0"
+    "glRotatef\0"
+    "glScaled\0"
+    "glScalef\0"
+    "glTranslated\0"
+    "glTranslatef\0"
+    "glViewport\0"
+    "glArrayElement\0"
+    "glBindTexture\0"
+    "glColorPointer\0"
+    "glDisableClientState\0"
+    "glDrawArrays\0"
+    "glDrawElements\0"
+    "glEdgeFlagPointer\0"
+    "glEnableClientState\0"
+    "glIndexPointer\0"
+    "glIndexub\0"
+    "glIndexubv\0"
+    "glInterleavedArrays\0"
+    "glNormalPointer\0"
+    "glPolygonOffset\0"
+    "glTexCoordPointer\0"
+    "glVertexPointer\0"
+    "glAreTexturesResident\0"
+    "glCopyTexImage1D\0"
+    "glCopyTexImage2D\0"
+    "glCopyTexSubImage1D\0"
+    "glCopyTexSubImage2D\0"
+    "glDeleteTextures\0"
+    "glGenTextures\0"
+    "glGetPointerv\0"
+    "glIsTexture\0"
+    "glPrioritizeTextures\0"
+    "glTexSubImage1D\0"
+    "glTexSubImage2D\0"
+    "glPopClientAttrib\0"
+    "glPushClientAttrib\0"
+    "glBlendColor\0"
+    "glBlendEquation\0"
+    "glDrawRangeElements\0"
+    "glColorTable\0"
+    "glColorTableParameterfv\0"
+    "glColorTableParameteriv\0"
+    "glCopyColorTable\0"
+    "glGetColorTable\0"
+    "glGetColorTableParameterfv\0"
+    "glGetColorTableParameteriv\0"
+    "glColorSubTable\0"
+    "glCopyColorSubTable\0"
+    "glConvolutionFilter1D\0"
+    "glConvolutionFilter2D\0"
+    "glConvolutionParameterf\0"
+    "glConvolutionParameterfv\0"
+    "glConvolutionParameteri\0"
+    "glConvolutionParameteriv\0"
+    "glCopyConvolutionFilter1D\0"
+    "glCopyConvolutionFilter2D\0"
+    "glGetConvolutionFilter\0"
+    "glGetConvolutionParameterfv\0"
+    "glGetConvolutionParameteriv\0"
+    "glGetSeparableFilter\0"
+    "glSeparableFilter2D\0"
+    "glGetHistogram\0"
+    "glGetHistogramParameterfv\0"
+    "glGetHistogramParameteriv\0"
+    "glGetMinmax\0"
+    "glGetMinmaxParameterfv\0"
+    "glGetMinmaxParameteriv\0"
+    "glHistogram\0"
+    "glMinmax\0"
+    "glResetHistogram\0"
+    "glResetMinmax\0"
+    "glTexImage3D\0"
+    "glTexSubImage3D\0"
+    "glCopyTexSubImage3D\0"
+    "glActiveTextureARB\0"
+    "glClientActiveTextureARB\0"
+    "glMultiTexCoord1dARB\0"
+    "glMultiTexCoord1dvARB\0"
+    "glMultiTexCoord1fARB\0"
+    "glMultiTexCoord1fvARB\0"
+    "glMultiTexCoord1iARB\0"
+    "glMultiTexCoord1ivARB\0"
+    "glMultiTexCoord1sARB\0"
+    "glMultiTexCoord1svARB\0"
+    "glMultiTexCoord2dARB\0"
+    "glMultiTexCoord2dvARB\0"
+    "glMultiTexCoord2fARB\0"
+    "glMultiTexCoord2fvARB\0"
+    "glMultiTexCoord2iARB\0"
+    "glMultiTexCoord2ivARB\0"
+    "glMultiTexCoord2sARB\0"
+    "glMultiTexCoord2svARB\0"
+    "glMultiTexCoord3dARB\0"
+    "glMultiTexCoord3dvARB\0"
+    "glMultiTexCoord3fARB\0"
+    "glMultiTexCoord3fvARB\0"
+    "glMultiTexCoord3iARB\0"
+    "glMultiTexCoord3ivARB\0"
+    "glMultiTexCoord3sARB\0"
+    "glMultiTexCoord3svARB\0"
+    "glMultiTexCoord4dARB\0"
+    "glMultiTexCoord4dvARB\0"
+    "glMultiTexCoord4fARB\0"
+    "glMultiTexCoord4fvARB\0"
+    "glMultiTexCoord4iARB\0"
+    "glMultiTexCoord4ivARB\0"
+    "glMultiTexCoord4sARB\0"
+    "glMultiTexCoord4svARB\0"
+    "glAttachShader\0"
+    "glCreateProgram\0"
+    "glCreateShader\0"
+    "glDeleteProgram\0"
+    "glDeleteShader\0"
+    "glDetachShader\0"
+    "glGetAttachedShaders\0"
+    "glGetProgramInfoLog\0"
+    "glGetProgramiv\0"
+    "glGetShaderInfoLog\0"
+    "glGetShaderiv\0"
+    "glIsProgram\0"
+    "glIsShader\0"
+    "glStencilFuncSeparate\0"
+    "glStencilMaskSeparate\0"
+    "glStencilOpSeparate\0"
+    "glUniformMatrix2x3fv\0"
+    "glUniformMatrix2x4fv\0"
+    "glUniformMatrix3x2fv\0"
+    "glUniformMatrix3x4fv\0"
+    "glUniformMatrix4x2fv\0"
+    "glUniformMatrix4x3fv\0"
+    "glDrawArraysInstanced\0"
+    "glDrawElementsInstanced\0"
+    "glLoadTransposeMatrixdARB\0"
+    "glLoadTransposeMatrixfARB\0"
+    "glMultTransposeMatrixdARB\0"
+    "glMultTransposeMatrixfARB\0"
+    "glSampleCoverageARB\0"
+    "glCompressedTexImage1DARB\0"
+    "glCompressedTexImage2DARB\0"
+    "glCompressedTexImage3DARB\0"
+    "glCompressedTexSubImage1DARB\0"
+    "glCompressedTexSubImage2DARB\0"
+    "glCompressedTexSubImage3DARB\0"
+    "glGetCompressedTexImageARB\0"
+    "glDisableVertexAttribArrayARB\0"
+    "glEnableVertexAttribArrayARB\0"
+    "glGetProgramEnvParameterdvARB\0"
+    "glGetProgramEnvParameterfvARB\0"
+    "glGetProgramLocalParameterdvARB\0"
+    "glGetProgramLocalParameterfvARB\0"
+    "glGetProgramStringARB\0"
+    "glGetProgramivARB\0"
+    "glGetVertexAttribdvARB\0"
+    "glGetVertexAttribfvARB\0"
+    "glGetVertexAttribivARB\0"
+    "glProgramEnvParameter4dARB\0"
+    "glProgramEnvParameter4dvARB\0"
+    "glProgramEnvParameter4fARB\0"
+    "glProgramEnvParameter4fvARB\0"
+    "glProgramLocalParameter4dARB\0"
+    "glProgramLocalParameter4dvARB\0"
+    "glProgramLocalParameter4fARB\0"
+    "glProgramLocalParameter4fvARB\0"
+    "glProgramStringARB\0"
+    "glVertexAttrib1dARB\0"
+    "glVertexAttrib1dvARB\0"
+    "glVertexAttrib1fARB\0"
+    "glVertexAttrib1fvARB\0"
+    "glVertexAttrib1sARB\0"
+    "glVertexAttrib1svARB\0"
+    "glVertexAttrib2dARB\0"
+    "glVertexAttrib2dvARB\0"
+    "glVertexAttrib2fARB\0"
+    "glVertexAttrib2fvARB\0"
+    "glVertexAttrib2sARB\0"
+    "glVertexAttrib2svARB\0"
+    "glVertexAttrib3dARB\0"
+    "glVertexAttrib3dvARB\0"
+    "glVertexAttrib3fARB\0"
+    "glVertexAttrib3fvARB\0"
+    "glVertexAttrib3sARB\0"
+    "glVertexAttrib3svARB\0"
+    "glVertexAttrib4NbvARB\0"
+    "glVertexAttrib4NivARB\0"
+    "glVertexAttrib4NsvARB\0"
+    "glVertexAttrib4NubARB\0"
+    "glVertexAttrib4NubvARB\0"
+    "glVertexAttrib4NuivARB\0"
+    "glVertexAttrib4NusvARB\0"
+    "glVertexAttrib4bvARB\0"
+    "glVertexAttrib4dARB\0"
+    "glVertexAttrib4dvARB\0"
+    "glVertexAttrib4fARB\0"
+    "glVertexAttrib4fvARB\0"
+    "glVertexAttrib4ivARB\0"
+    "glVertexAttrib4sARB\0"
+    "glVertexAttrib4svARB\0"
+    "glVertexAttrib4ubvARB\0"
+    "glVertexAttrib4uivARB\0"
+    "glVertexAttrib4usvARB\0"
+    "glVertexAttribPointerARB\0"
+    "glBindBufferARB\0"
+    "glBufferDataARB\0"
+    "glBufferSubDataARB\0"
+    "glDeleteBuffersARB\0"
+    "glGenBuffersARB\0"
+    "glGetBufferParameterivARB\0"
+    "glGetBufferPointervARB\0"
+    "glGetBufferSubDataARB\0"
+    "glIsBufferARB\0"
+    "glMapBufferARB\0"
+    "glUnmapBufferARB\0"
+    "glBeginQueryARB\0"
+    "glDeleteQueriesARB\0"
+    "glEndQueryARB\0"
+    "glGenQueriesARB\0"
+    "glGetQueryObjectivARB\0"
+    "glGetQueryObjectuivARB\0"
+    "glGetQueryivARB\0"
+    "glIsQueryARB\0"
+    "glAttachObjectARB\0"
+    "glCompileShaderARB\0"
+    "glCreateProgramObjectARB\0"
+    "glCreateShaderObjectARB\0"
+    "glDeleteObjectARB\0"
+    "glDetachObjectARB\0"
+    "glGetActiveUniformARB\0"
+    "glGetAttachedObjectsARB\0"
+    "glGetHandleARB\0"
+    "glGetInfoLogARB\0"
+    "glGetObjectParameterfvARB\0"
+    "glGetObjectParameterivARB\0"
+    "glGetShaderSourceARB\0"
+    "glGetUniformLocationARB\0"
+    "glGetUniformfvARB\0"
+    "glGetUniformivARB\0"
+    "glLinkProgramARB\0"
+    "glShaderSourceARB\0"
+    "glUniform1fARB\0"
+    "glUniform1fvARB\0"
+    "glUniform1iARB\0"
+    "glUniform1ivARB\0"
+    "glUniform2fARB\0"
+    "glUniform2fvARB\0"
+    "glUniform2iARB\0"
+    "glUniform2ivARB\0"
+    "glUniform3fARB\0"
+    "glUniform3fvARB\0"
+    "glUniform3iARB\0"
+    "glUniform3ivARB\0"
+    "glUniform4fARB\0"
+    "glUniform4fvARB\0"
+    "glUniform4iARB\0"
+    "glUniform4ivARB\0"
+    "glUniformMatrix2fvARB\0"
+    "glUniformMatrix3fvARB\0"
+    "glUniformMatrix4fvARB\0"
+    "glUseProgramObjectARB\0"
+    "glValidateProgramARB\0"
+    "glBindAttribLocationARB\0"
+    "glGetActiveAttribARB\0"
+    "glGetAttribLocationARB\0"
+    "glDrawBuffersARB\0"
+    "glRenderbufferStorageMultisample\0"
+    "glFlushMappedBufferRange\0"
+    "glMapBufferRange\0"
+    "glBindVertexArray\0"
+    "glGenVertexArrays\0"
+    "glCopyBufferSubData\0"
+    "glClientWaitSync\0"
+    "glDeleteSync\0"
+    "glFenceSync\0"
+    "glGetInteger64v\0"
+    "glGetSynciv\0"
+    "glIsSync\0"
+    "glWaitSync\0"
+    "glDrawElementsBaseVertex\0"
+    "glDrawRangeElementsBaseVertex\0"
+    "glMultiDrawElementsBaseVertex\0"
+    "glPolygonOffsetEXT\0"
+    "glGetPixelTexGenParameterfvSGIS\0"
+    "glGetPixelTexGenParameterivSGIS\0"
+    "glPixelTexGenParameterfSGIS\0"
+    "glPixelTexGenParameterfvSGIS\0"
+    "glPixelTexGenParameteriSGIS\0"
+    "glPixelTexGenParameterivSGIS\0"
+    "glSampleMaskSGIS\0"
+    "glSamplePatternSGIS\0"
+    "glColorPointerEXT\0"
+    "glEdgeFlagPointerEXT\0"
+    "glIndexPointerEXT\0"
+    "glNormalPointerEXT\0"
+    "glTexCoordPointerEXT\0"
+    "glVertexPointerEXT\0"
+    "glPointParameterfEXT\0"
+    "glPointParameterfvEXT\0"
+    "glLockArraysEXT\0"
+    "glUnlockArraysEXT\0"
+    "glCullParameterdvEXT\0"
+    "glCullParameterfvEXT\0"
+    "glSecondaryColor3bEXT\0"
+    "glSecondaryColor3bvEXT\0"
+    "glSecondaryColor3dEXT\0"
+    "glSecondaryColor3dvEXT\0"
+    "glSecondaryColor3fEXT\0"
+    "glSecondaryColor3fvEXT\0"
+    "glSecondaryColor3iEXT\0"
+    "glSecondaryColor3ivEXT\0"
+    "glSecondaryColor3sEXT\0"
+    "glSecondaryColor3svEXT\0"
+    "glSecondaryColor3ubEXT\0"
+    "glSecondaryColor3ubvEXT\0"
+    "glSecondaryColor3uiEXT\0"
+    "glSecondaryColor3uivEXT\0"
+    "glSecondaryColor3usEXT\0"
+    "glSecondaryColor3usvEXT\0"
+    "glSecondaryColorPointerEXT\0"
+    "glMultiDrawArraysEXT\0"
+    "glMultiDrawElementsEXT\0"
+    "glFogCoordPointerEXT\0"
+    "glFogCoorddEXT\0"
+    "glFogCoorddvEXT\0"
+    "glFogCoordfEXT\0"
+    "glFogCoordfvEXT\0"
+    "glPixelTexGenSGIX\0"
+    "glBlendFuncSeparateEXT\0"
+    "glFlushVertexArrayRangeNV\0"
+    "glVertexArrayRangeNV\0"
+    "glCombinerInputNV\0"
+    "glCombinerOutputNV\0"
+    "glCombinerParameterfNV\0"
+    "glCombinerParameterfvNV\0"
+    "glCombinerParameteriNV\0"
+    "glCombinerParameterivNV\0"
+    "glFinalCombinerInputNV\0"
+    "glGetCombinerInputParameterfvNV\0"
+    "glGetCombinerInputParameterivNV\0"
+    "glGetCombinerOutputParameterfvNV\0"
+    "glGetCombinerOutputParameterivNV\0"
+    "glGetFinalCombinerInputParameterfvNV\0"
+    "glGetFinalCombinerInputParameterivNV\0"
+    "glResizeBuffersMESA\0"
+    "glWindowPos2dMESA\0"
+    "glWindowPos2dvMESA\0"
+    "glWindowPos2fMESA\0"
+    "glWindowPos2fvMESA\0"
+    "glWindowPos2iMESA\0"
+    "glWindowPos2ivMESA\0"
+    "glWindowPos2sMESA\0"
+    "glWindowPos2svMESA\0"
+    "glWindowPos3dMESA\0"
+    "glWindowPos3dvMESA\0"
+    "glWindowPos3fMESA\0"
+    "glWindowPos3fvMESA\0"
+    "glWindowPos3iMESA\0"
+    "glWindowPos3ivMESA\0"
+    "glWindowPos3sMESA\0"
+    "glWindowPos3svMESA\0"
+    "glWindowPos4dMESA\0"
+    "glWindowPos4dvMESA\0"
+    "glWindowPos4fMESA\0"
+    "glWindowPos4fvMESA\0"
+    "glWindowPos4iMESA\0"
+    "glWindowPos4ivMESA\0"
+    "glWindowPos4sMESA\0"
+    "glWindowPos4svMESA\0"
+    "glMultiModeDrawArraysIBM\0"
+    "glMultiModeDrawElementsIBM\0"
+    "glDeleteFencesNV\0"
+    "glFinishFenceNV\0"
+    "glGenFencesNV\0"
+    "glGetFenceivNV\0"
+    "glIsFenceNV\0"
+    "glSetFenceNV\0"
+    "glTestFenceNV\0"
+    "glAreProgramsResidentNV\0"
+    "glBindProgramNV\0"
+    "glDeleteProgramsNV\0"
+    "glExecuteProgramNV\0"
+    "glGenProgramsNV\0"
+    "glGetProgramParameterdvNV\0"
+    "glGetProgramParameterfvNV\0"
+    "glGetProgramStringNV\0"
+    "glGetProgramivNV\0"
+    "glGetTrackMatrixivNV\0"
+    "glGetVertexAttribPointervNV\0"
+    "glGetVertexAttribdvNV\0"
+    "glGetVertexAttribfvNV\0"
+    "glGetVertexAttribivNV\0"
+    "glIsProgramNV\0"
+    "glLoadProgramNV\0"
+    "glProgramParameters4dvNV\0"
+    "glProgramParameters4fvNV\0"
+    "glRequestResidentProgramsNV\0"
+    "glTrackMatrixNV\0"
+    "glVertexAttrib1dNV\0"
+    "glVertexAttrib1dvNV\0"
+    "glVertexAttrib1fNV\0"
+    "glVertexAttrib1fvNV\0"
+    "glVertexAttrib1sNV\0"
+    "glVertexAttrib1svNV\0"
+    "glVertexAttrib2dNV\0"
+    "glVertexAttrib2dvNV\0"
+    "glVertexAttrib2fNV\0"
+    "glVertexAttrib2fvNV\0"
+    "glVertexAttrib2sNV\0"
+    "glVertexAttrib2svNV\0"
+    "glVertexAttrib3dNV\0"
+    "glVertexAttrib3dvNV\0"
+    "glVertexAttrib3fNV\0"
+    "glVertexAttrib3fvNV\0"
+    "glVertexAttrib3sNV\0"
+    "glVertexAttrib3svNV\0"
+    "glVertexAttrib4dNV\0"
+    "glVertexAttrib4dvNV\0"
+    "glVertexAttrib4fNV\0"
+    "glVertexAttrib4fvNV\0"
+    "glVertexAttrib4sNV\0"
+    "glVertexAttrib4svNV\0"
+    "glVertexAttrib4ubNV\0"
+    "glVertexAttrib4ubvNV\0"
+    "glVertexAttribPointerNV\0"
+    "glVertexAttribs1dvNV\0"
+    "glVertexAttribs1fvNV\0"
+    "glVertexAttribs1svNV\0"
+    "glVertexAttribs2dvNV\0"
+    "glVertexAttribs2fvNV\0"
+    "glVertexAttribs2svNV\0"
+    "glVertexAttribs3dvNV\0"
+    "glVertexAttribs3fvNV\0"
+    "glVertexAttribs3svNV\0"
+    "glVertexAttribs4dvNV\0"
+    "glVertexAttribs4fvNV\0"
+    "glVertexAttribs4svNV\0"
+    "glVertexAttribs4ubvNV\0"
+    "glGetTexBumpParameterfvATI\0"
+    "glGetTexBumpParameterivATI\0"
+    "glTexBumpParameterfvATI\0"
+    "glTexBumpParameterivATI\0"
+    "glAlphaFragmentOp1ATI\0"
+    "glAlphaFragmentOp2ATI\0"
+    "glAlphaFragmentOp3ATI\0"
+    "glBeginFragmentShaderATI\0"
+    "glBindFragmentShaderATI\0"
+    "glColorFragmentOp1ATI\0"
+    "glColorFragmentOp2ATI\0"
+    "glColorFragmentOp3ATI\0"
+    "glDeleteFragmentShaderATI\0"
+    "glEndFragmentShaderATI\0"
+    "glGenFragmentShadersATI\0"
+    "glPassTexCoordATI\0"
+    "glSampleMapATI\0"
+    "glSetFragmentShaderConstantATI\0"
+    "glPointParameteriNV\0"
+    "glPointParameterivNV\0"
+    "glActiveStencilFaceEXT\0"
+    "glBindVertexArrayAPPLE\0"
+    "glDeleteVertexArraysAPPLE\0"
+    "glGenVertexArraysAPPLE\0"
+    "glIsVertexArrayAPPLE\0"
+    "glGetProgramNamedParameterdvNV\0"
+    "glGetProgramNamedParameterfvNV\0"
+    "glProgramNamedParameter4dNV\0"
+    "glProgramNamedParameter4dvNV\0"
+    "glProgramNamedParameter4fNV\0"
+    "glProgramNamedParameter4fvNV\0"
+    "glDepthBoundsEXT\0"
+    "glBlendEquationSeparateEXT\0"
+    "glBindFramebufferEXT\0"
+    "glBindRenderbufferEXT\0"
+    "glCheckFramebufferStatusEXT\0"
+    "glDeleteFramebuffersEXT\0"
+    "glDeleteRenderbuffersEXT\0"
+    "glFramebufferRenderbufferEXT\0"
+    "glFramebufferTexture1DEXT\0"
+    "glFramebufferTexture2DEXT\0"
+    "glFramebufferTexture3DEXT\0"
+    "glGenFramebuffersEXT\0"
+    "glGenRenderbuffersEXT\0"
+    "glGenerateMipmapEXT\0"
+    "glGetFramebufferAttachmentParameterivEXT\0"
+    "glGetRenderbufferParameterivEXT\0"
+    "glIsFramebufferEXT\0"
+    "glIsRenderbufferEXT\0"
+    "glRenderbufferStorageEXT\0"
+    "glBlitFramebufferEXT\0"
+    "glBufferParameteriAPPLE\0"
+    "glFlushMappedBufferRangeAPPLE\0"
+    "glFramebufferTextureLayerEXT\0"
+    "glColorMaskIndexedEXT\0"
+    "glDisableIndexedEXT\0"
+    "glEnableIndexedEXT\0"
+    "glGetBooleanIndexedvEXT\0"
+    "glGetIntegerIndexedvEXT\0"
+    "glIsEnabledIndexedEXT\0"
+    "glBeginConditionalRenderNV\0"
+    "glEndConditionalRenderNV\0"
+    "glBeginTransformFeedbackEXT\0"
+    "glBindBufferBaseEXT\0"
+    "glBindBufferOffsetEXT\0"
+    "glBindBufferRangeEXT\0"
+    "glEndTransformFeedbackEXT\0"
+    "glGetTransformFeedbackVaryingEXT\0"
+    "glTransformFeedbackVaryingsEXT\0"
+    "glProvokingVertexEXT\0"
+    "glGetTexParameterPointervAPPLE\0"
+    "glTextureRangeAPPLE\0"
+    "glGetObjectParameterivAPPLE\0"
+    "glObjectPurgeableAPPLE\0"
+    "glObjectUnpurgeableAPPLE\0"
+    "glStencilFuncSeparateATI\0"
+    "glProgramEnvParameters4fvEXT\0"
+    "glProgramLocalParameters4fvEXT\0"
+    "glGetQueryObjecti64vEXT\0"
+    "glGetQueryObjectui64vEXT\0"
+    "glEGLImageTargetRenderbufferStorageOES\0"
+    "glEGLImageTargetTexture2DOES\0"
+    "glArrayElementEXT\0"
+    "glBindTextureEXT\0"
+    "glDrawArraysEXT\0"
+    "glAreTexturesResidentEXT\0"
+    "glCopyTexImage1DEXT\0"
+    "glCopyTexImage2DEXT\0"
+    "glCopyTexSubImage1DEXT\0"
+    "glCopyTexSubImage2DEXT\0"
+    "glDeleteTexturesEXT\0"
+    "glGenTexturesEXT\0"
+    "glGetPointervEXT\0"
+    "glIsTextureEXT\0"
+    "glPrioritizeTexturesEXT\0"
+    "glTexSubImage1DEXT\0"
+    "glTexSubImage2DEXT\0"
+    "glBlendColorEXT\0"
+    "glBlendEquationEXT\0"
+    "glDrawRangeElementsEXT\0"
+    "glColorTableSGI\0"
+    "glColorTableEXT\0"
+    "glColorTableParameterfvSGI\0"
+    "glColorTableParameterivSGI\0"
+    "glCopyColorTableSGI\0"
+    "glGetColorTableSGI\0"
+    "glGetColorTableEXT\0"
+    "glGetColorTableParameterfvSGI\0"
+    "glGetColorTableParameterfvEXT\0"
+    "glGetColorTableParameterivSGI\0"
+    "glGetColorTableParameterivEXT\0"
+    "glColorSubTableEXT\0"
+    "glCopyColorSubTableEXT\0"
+    "glConvolutionFilter1DEXT\0"
+    "glConvolutionFilter2DEXT\0"
+    "glConvolutionParameterfEXT\0"
+    "glConvolutionParameterfvEXT\0"
+    "glConvolutionParameteriEXT\0"
+    "glConvolutionParameterivEXT\0"
+    "glCopyConvolutionFilter1DEXT\0"
+    "glCopyConvolutionFilter2DEXT\0"
+    "glGetConvolutionFilterEXT\0"
+    "glGetConvolutionParameterfvEXT\0"
+    "glGetConvolutionParameterivEXT\0"
+    "glGetSeparableFilterEXT\0"
+    "glSeparableFilter2DEXT\0"
+    "glGetHistogramEXT\0"
+    "glGetHistogramParameterfvEXT\0"
+    "glGetHistogramParameterivEXT\0"
+    "glGetMinmaxEXT\0"
+    "glGetMinmaxParameterfvEXT\0"
+    "glGetMinmaxParameterivEXT\0"
+    "glHistogramEXT\0"
+    "glMinmaxEXT\0"
+    "glResetHistogramEXT\0"
+    "glResetMinmaxEXT\0"
+    "glTexImage3DEXT\0"
+    "glTexSubImage3DEXT\0"
+    "glCopyTexSubImage3DEXT\0"
+    "glActiveTexture\0"
+    "glClientActiveTexture\0"
+    "glMultiTexCoord1d\0"
+    "glMultiTexCoord1dv\0"
+    "glMultiTexCoord1f\0"
+    "glMultiTexCoord1fv\0"
+    "glMultiTexCoord1i\0"
+    "glMultiTexCoord1iv\0"
+    "glMultiTexCoord1s\0"
+    "glMultiTexCoord1sv\0"
+    "glMultiTexCoord2d\0"
+    "glMultiTexCoord2dv\0"
+    "glMultiTexCoord2f\0"
+    "glMultiTexCoord2fv\0"
+    "glMultiTexCoord2i\0"
+    "glMultiTexCoord2iv\0"
+    "glMultiTexCoord2s\0"
+    "glMultiTexCoord2sv\0"
+    "glMultiTexCoord3d\0"
+    "glMultiTexCoord3dv\0"
+    "glMultiTexCoord3f\0"
+    "glMultiTexCoord3fv\0"
+    "glMultiTexCoord3i\0"
+    "glMultiTexCoord3iv\0"
+    "glMultiTexCoord3s\0"
+    "glMultiTexCoord3sv\0"
+    "glMultiTexCoord4d\0"
+    "glMultiTexCoord4dv\0"
+    "glMultiTexCoord4f\0"
+    "glMultiTexCoord4fv\0"
+    "glMultiTexCoord4i\0"
+    "glMultiTexCoord4iv\0"
+    "glMultiTexCoord4s\0"
+    "glMultiTexCoord4sv\0"
+    "glStencilOpSeparateATI\0"
+    "glDrawArraysInstancedARB\0"
+    "glDrawArraysInstancedEXT\0"
+    "glDrawElementsInstancedARB\0"
+    "glDrawElementsInstancedEXT\0"
+    "glLoadTransposeMatrixd\0"
+    "glLoadTransposeMatrixf\0"
+    "glMultTransposeMatrixd\0"
+    "glMultTransposeMatrixf\0"
+    "glSampleCoverage\0"
+    "glCompressedTexImage1D\0"
+    "glCompressedTexImage2D\0"
+    "glCompressedTexImage3D\0"
+    "glCompressedTexSubImage1D\0"
+    "glCompressedTexSubImage2D\0"
+    "glCompressedTexSubImage3D\0"
+    "glGetCompressedTexImage\0"
+    "glDisableVertexAttribArray\0"
+    "glEnableVertexAttribArray\0"
+    "glGetVertexAttribdv\0"
+    "glGetVertexAttribfv\0"
+    "glGetVertexAttribiv\0"
+    "glProgramParameter4dNV\0"
+    "glProgramParameter4dvNV\0"
+    "glProgramParameter4fNV\0"
+    "glProgramParameter4fvNV\0"
+    "glVertexAttrib1d\0"
+    "glVertexAttrib1dv\0"
+    "glVertexAttrib1f\0"
+    "glVertexAttrib1fv\0"
+    "glVertexAttrib1s\0"
+    "glVertexAttrib1sv\0"
+    "glVertexAttrib2d\0"
+    "glVertexAttrib2dv\0"
+    "glVertexAttrib2f\0"
+    "glVertexAttrib2fv\0"
+    "glVertexAttrib2s\0"
+    "glVertexAttrib2sv\0"
+    "glVertexAttrib3d\0"
+    "glVertexAttrib3dv\0"
+    "glVertexAttrib3f\0"
+    "glVertexAttrib3fv\0"
+    "glVertexAttrib3s\0"
+    "glVertexAttrib3sv\0"
+    "glVertexAttrib4Nbv\0"
+    "glVertexAttrib4Niv\0"
+    "glVertexAttrib4Nsv\0"
+    "glVertexAttrib4Nub\0"
+    "glVertexAttrib4Nubv\0"
+    "glVertexAttrib4Nuiv\0"
+    "glVertexAttrib4Nusv\0"
+    "glVertexAttrib4bv\0"
+    "glVertexAttrib4d\0"
+    "glVertexAttrib4dv\0"
+    "glVertexAttrib4f\0"
+    "glVertexAttrib4fv\0"
+    "glVertexAttrib4iv\0"
+    "glVertexAttrib4s\0"
+    "glVertexAttrib4sv\0"
+    "glVertexAttrib4ubv\0"
+    "glVertexAttrib4uiv\0"
+    "glVertexAttrib4usv\0"
+    "glVertexAttribPointer\0"
+    "glBindBuffer\0"
+    "glBufferData\0"
+    "glBufferSubData\0"
+    "glDeleteBuffers\0"
+    "glGenBuffers\0"
+    "glGetBufferParameteriv\0"
+    "glGetBufferPointerv\0"
+    "glGetBufferSubData\0"
+    "glIsBuffer\0"
+    "glMapBuffer\0"
+    "glUnmapBuffer\0"
+    "glBeginQuery\0"
+    "glDeleteQueries\0"
+    "glEndQuery\0"
+    "glGenQueries\0"
+    "glGetQueryObjectiv\0"
+    "glGetQueryObjectuiv\0"
+    "glGetQueryiv\0"
+    "glIsQuery\0"
+    "glCompileShader\0"
+    "glGetActiveUniform\0"
+    "glGetShaderSource\0"
+    "glGetUniformLocation\0"
+    "glGetUniformfv\0"
+    "glGetUniformiv\0"
+    "glLinkProgram\0"
+    "glShaderSource\0"
+    "glUniform1f\0"
+    "glUniform1fv\0"
+    "glUniform1i\0"
+    "glUniform1iv\0"
+    "glUniform2f\0"
+    "glUniform2fv\0"
+    "glUniform2i\0"
+    "glUniform2iv\0"
+    "glUniform3f\0"
+    "glUniform3fv\0"
+    "glUniform3i\0"
+    "glUniform3iv\0"
+    "glUniform4f\0"
+    "glUniform4fv\0"
+    "glUniform4i\0"
+    "glUniform4iv\0"
+    "glUniformMatrix2fv\0"
+    "glUniformMatrix3fv\0"
+    "glUniformMatrix4fv\0"
+    "glUseProgram\0"
+    "glValidateProgram\0"
+    "glBindAttribLocation\0"
+    "glGetActiveAttrib\0"
+    "glGetAttribLocation\0"
+    "glDrawBuffers\0"
+    "glDrawBuffersATI\0"
+    "glRenderbufferStorageMultisampleEXT\0"
+    "glSampleMaskEXT\0"
+    "glSamplePatternEXT\0"
+    "glPointParameterf\0"
+    "glPointParameterfARB\0"
+    "glPointParameterfSGIS\0"
+    "glPointParameterfv\0"
+    "glPointParameterfvARB\0"
+    "glPointParameterfvSGIS\0"
+    "glSecondaryColor3b\0"
+    "glSecondaryColor3bv\0"
+    "glSecondaryColor3d\0"
+    "glSecondaryColor3dv\0"
+    "glSecondaryColor3f\0"
+    "glSecondaryColor3fv\0"
+    "glSecondaryColor3i\0"
+    "glSecondaryColor3iv\0"
+    "glSecondaryColor3s\0"
+    "glSecondaryColor3sv\0"
+    "glSecondaryColor3ub\0"
+    "glSecondaryColor3ubv\0"
+    "glSecondaryColor3ui\0"
+    "glSecondaryColor3uiv\0"
+    "glSecondaryColor3us\0"
+    "glSecondaryColor3usv\0"
+    "glSecondaryColorPointer\0"
+    "glMultiDrawArrays\0"
+    "glMultiDrawElements\0"
+    "glFogCoordPointer\0"
+    "glFogCoordd\0"
+    "glFogCoorddv\0"
+    "glFogCoordf\0"
+    "glFogCoordfv\0"
+    "glBlendFuncSeparate\0"
+    "glBlendFuncSeparateINGR\0"
+    "glWindowPos2d\0"
+    "glWindowPos2dARB\0"
+    "glWindowPos2dv\0"
+    "glWindowPos2dvARB\0"
+    "glWindowPos2f\0"
+    "glWindowPos2fARB\0"
+    "glWindowPos2fv\0"
+    "glWindowPos2fvARB\0"
+    "glWindowPos2i\0"
+    "glWindowPos2iARB\0"
+    "glWindowPos2iv\0"
+    "glWindowPos2ivARB\0"
+    "glWindowPos2s\0"
+    "glWindowPos2sARB\0"
+    "glWindowPos2sv\0"
+    "glWindowPos2svARB\0"
+    "glWindowPos3d\0"
+    "glWindowPos3dARB\0"
+    "glWindowPos3dv\0"
+    "glWindowPos3dvARB\0"
+    "glWindowPos3f\0"
+    "glWindowPos3fARB\0"
+    "glWindowPos3fv\0"
+    "glWindowPos3fvARB\0"
+    "glWindowPos3i\0"
+    "glWindowPos3iARB\0"
+    "glWindowPos3iv\0"
+    "glWindowPos3ivARB\0"
+    "glWindowPos3s\0"
+    "glWindowPos3sARB\0"
+    "glWindowPos3sv\0"
+    "glWindowPos3svARB\0"
+    "glBindProgramARB\0"
+    "glDeleteProgramsARB\0"
+    "glGenProgramsARB\0"
+    "glGetVertexAttribPointerv\0"
+    "glGetVertexAttribPointervARB\0"
+    "glIsProgramARB\0"
+    "glPointParameteri\0"
+    "glPointParameteriv\0"
+    "glDeleteVertexArrays\0"
+    "glIsVertexArray\0"
+    "glBlendEquationSeparate\0"
+    "glBlendEquationSeparateATI\0"
+    "glBindFramebuffer\0"
+    "glBindRenderbuffer\0"
+    "glCheckFramebufferStatus\0"
+    "glDeleteFramebuffers\0"
+    "glDeleteRenderbuffers\0"
+    "glFramebufferRenderbuffer\0"
+    "glFramebufferTexture1D\0"
+    "glFramebufferTexture2D\0"
+    "glFramebufferTexture3D\0"
+    "glGenFramebuffers\0"
+    "glGenRenderbuffers\0"
+    "glGenerateMipmap\0"
+    "glGetFramebufferAttachmentParameteriv\0"
+    "glGetRenderbufferParameteriv\0"
+    "glIsFramebuffer\0"
+    "glIsRenderbuffer\0"
+    "glRenderbufferStorage\0"
+    "glBlitFramebuffer\0"
+    "glFramebufferTextureLayer\0"
+    "glBeginTransformFeedback\0"
+    "glBindBufferBase\0"
+    "glBindBufferRange\0"
+    "glEndTransformFeedback\0"
+    "glGetTransformFeedbackVarying\0"
+    "glTransformFeedbackVaryings\0"
+    "glProvokingVertex\0"
+    ;
+
+
+#ifdef USE_MGL_NAMESPACE
+#define gl_dispatch_stub_343 mgl_dispatch_stub_343
+#define gl_dispatch_stub_344 mgl_dispatch_stub_344
+#define gl_dispatch_stub_345 mgl_dispatch_stub_345
+#define gl_dispatch_stub_356 mgl_dispatch_stub_356
+#define gl_dispatch_stub_357 mgl_dispatch_stub_357
+#define gl_dispatch_stub_358 mgl_dispatch_stub_358
+#define gl_dispatch_stub_359 mgl_dispatch_stub_359
+#define gl_dispatch_stub_361 mgl_dispatch_stub_361
+#define gl_dispatch_stub_362 mgl_dispatch_stub_362
+#define gl_dispatch_stub_363 mgl_dispatch_stub_363
+#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_580 mgl_dispatch_stub_580
+#define gl_dispatch_stub_581 mgl_dispatch_stub_581
+#define gl_dispatch_stub_582 mgl_dispatch_stub_582
+#define gl_dispatch_stub_583 mgl_dispatch_stub_583
+#define gl_dispatch_stub_584 mgl_dispatch_stub_584
+#define gl_dispatch_stub_585 mgl_dispatch_stub_585
+#define gl_dispatch_stub_586 mgl_dispatch_stub_586
+#define gl_dispatch_stub_587 mgl_dispatch_stub_587
+#define gl_dispatch_stub_598 mgl_dispatch_stub_598
+#define gl_dispatch_stub_599 mgl_dispatch_stub_599
+#define gl_dispatch_stub_624 mgl_dispatch_stub_624
+#define gl_dispatch_stub_666 mgl_dispatch_stub_666
+#define gl_dispatch_stub_667 mgl_dispatch_stub_667
+#define gl_dispatch_stub_668 mgl_dispatch_stub_668
+#define gl_dispatch_stub_669 mgl_dispatch_stub_669
+#define gl_dispatch_stub_670 mgl_dispatch_stub_670
+#define gl_dispatch_stub_671 mgl_dispatch_stub_671
+#define gl_dispatch_stub_672 mgl_dispatch_stub_672
+#define gl_dispatch_stub_673 mgl_dispatch_stub_673
+#define gl_dispatch_stub_674 mgl_dispatch_stub_674
+#define gl_dispatch_stub_755 mgl_dispatch_stub_755
+#define gl_dispatch_stub_756 mgl_dispatch_stub_756
+#define gl_dispatch_stub_757 mgl_dispatch_stub_757
+#define gl_dispatch_stub_758 mgl_dispatch_stub_758
+#define gl_dispatch_stub_759 mgl_dispatch_stub_759
+#define gl_dispatch_stub_766 mgl_dispatch_stub_766
+#define gl_dispatch_stub_767 mgl_dispatch_stub_767
+#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_805 mgl_dispatch_stub_805
+#define gl_dispatch_stub_806 mgl_dispatch_stub_806
+#define gl_dispatch_stub_810 mgl_dispatch_stub_810
+#define gl_dispatch_stub_811 mgl_dispatch_stub_811
+#define gl_dispatch_stub_812 mgl_dispatch_stub_812
+#define gl_dispatch_stub_813 mgl_dispatch_stub_813
+#define gl_dispatch_stub_814 mgl_dispatch_stub_814
+#endif /* USE_MGL_NAMESPACE */
+
+
+#if defined(NEED_FUNCTION_POINTER) || defined(GLX_INDIRECT_RENDERING)
+void GLAPIENTRY gl_dispatch_stub_343(GLenum target, GLenum format, GLenum type, GLvoid * table);
+void GLAPIENTRY gl_dispatch_stub_344(GLenum target, GLenum pname, GLfloat * params);
+void GLAPIENTRY gl_dispatch_stub_345(GLenum target, GLenum pname, GLint * params);
+void GLAPIENTRY gl_dispatch_stub_356(GLenum target, GLenum format, GLenum type, GLvoid * image);
+void GLAPIENTRY gl_dispatch_stub_357(GLenum target, GLenum pname, GLfloat * params);
+void GLAPIENTRY gl_dispatch_stub_358(GLenum target, GLenum pname, GLint * params);
+void GLAPIENTRY gl_dispatch_stub_359(GLenum target, GLenum format, GLenum type, GLvoid * row, GLvoid * column, GLvoid * span);
+void GLAPIENTRY gl_dispatch_stub_361(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values);
+void GLAPIENTRY gl_dispatch_stub_362(GLenum target, GLenum pname, GLfloat * params);
+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_580(GLenum pname, GLfloat * params);
+void GLAPIENTRY gl_dispatch_stub_581(GLenum pname, GLint * params);
+void GLAPIENTRY gl_dispatch_stub_582(GLenum pname, GLfloat param);
+void GLAPIENTRY gl_dispatch_stub_583(GLenum pname, const GLfloat * params);
+void GLAPIENTRY gl_dispatch_stub_584(GLenum pname, GLint param);
+void GLAPIENTRY gl_dispatch_stub_585(GLenum pname, const GLint * params);
+void GLAPIENTRY gl_dispatch_stub_586(GLclampf value, GLboolean invert);
+void GLAPIENTRY gl_dispatch_stub_587(GLenum pattern);
+void GLAPIENTRY gl_dispatch_stub_598(GLenum pname, GLdouble * params);
+void GLAPIENTRY gl_dispatch_stub_599(GLenum pname, GLfloat * params);
+void GLAPIENTRY gl_dispatch_stub_624(GLenum mode);
+void GLAPIENTRY gl_dispatch_stub_666(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride);
+void GLAPIENTRY gl_dispatch_stub_667(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride);
+void GLAPIENTRY gl_dispatch_stub_668(GLsizei n, const GLuint * fences);
+void GLAPIENTRY gl_dispatch_stub_669(GLuint fence);
+void GLAPIENTRY gl_dispatch_stub_670(GLsizei n, GLuint * fences);
+void GLAPIENTRY gl_dispatch_stub_671(GLuint fence, GLenum pname, GLint * params);
+GLboolean GLAPIENTRY gl_dispatch_stub_672(GLuint fence);
+void GLAPIENTRY gl_dispatch_stub_673(GLuint fence, GLenum condition);
+GLboolean GLAPIENTRY gl_dispatch_stub_674(GLuint fence);
+void GLAPIENTRY gl_dispatch_stub_755(GLenum face);
+void GLAPIENTRY gl_dispatch_stub_756(GLuint array);
+void GLAPIENTRY gl_dispatch_stub_757(GLsizei n, const GLuint * arrays);
+void GLAPIENTRY gl_dispatch_stub_758(GLsizei n, GLuint * arrays);
+GLboolean GLAPIENTRY gl_dispatch_stub_759(GLuint array);
+void GLAPIENTRY gl_dispatch_stub_766(GLclampd zmin, GLclampd zmax);
+void GLAPIENTRY gl_dispatch_stub_767(GLenum modeRGB, GLenum modeA);
+void GLAPIENTRY gl_dispatch_stub_785(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_786(GLenum target, GLenum pname, GLint param);
+void GLAPIENTRY gl_dispatch_stub_787(GLenum target, GLintptr offset, GLsizeiptr size);
+void GLAPIENTRY gl_dispatch_stub_805(GLenum target, GLenum pname, GLvoid ** params);
+void GLAPIENTRY gl_dispatch_stub_806(GLenum target, GLsizei length, GLvoid * pointer);
+void GLAPIENTRY gl_dispatch_stub_810(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask);
+void GLAPIENTRY gl_dispatch_stub_811(GLenum target, GLuint index, GLsizei count, const GLfloat * params);
+void GLAPIENTRY gl_dispatch_stub_812(GLenum target, GLuint index, GLsizei count, const GLfloat * params);
+void GLAPIENTRY gl_dispatch_stub_813(GLuint id, GLenum pname, GLint64EXT * params);
+void GLAPIENTRY gl_dispatch_stub_814(GLuint id, GLenum pname, GLuint64EXT * params);
+#endif /* defined(NEED_FUNCTION_POINTER) || defined(GLX_INDIRECT_RENDERING) */
+
+static const glprocs_table_t static_functions[] = {
+    NAME_FUNC_OFFSET(    0, glNewList, glNewList, NULL, _gloffset_NewList),
+    NAME_FUNC_OFFSET(   10, glEndList, glEndList, NULL, _gloffset_EndList),
+    NAME_FUNC_OFFSET(   20, glCallList, glCallList, NULL, _gloffset_CallList),
+    NAME_FUNC_OFFSET(   31, glCallLists, glCallLists, NULL, _gloffset_CallLists),
+    NAME_FUNC_OFFSET(   43, glDeleteLists, glDeleteLists, NULL, _gloffset_DeleteLists),
+    NAME_FUNC_OFFSET(   57, glGenLists, glGenLists, NULL, _gloffset_GenLists),
+    NAME_FUNC_OFFSET(   68, glListBase, glListBase, NULL, _gloffset_ListBase),
+    NAME_FUNC_OFFSET(   79, glBegin, glBegin, NULL, _gloffset_Begin),
+    NAME_FUNC_OFFSET(   87, glBitmap, glBitmap, NULL, _gloffset_Bitmap),
+    NAME_FUNC_OFFSET(   96, glColor3b, glColor3b, NULL, _gloffset_Color3b),
+    NAME_FUNC_OFFSET(  106, glColor3bv, glColor3bv, NULL, _gloffset_Color3bv),
+    NAME_FUNC_OFFSET(  117, glColor3d, glColor3d, NULL, _gloffset_Color3d),
+    NAME_FUNC_OFFSET(  127, glColor3dv, glColor3dv, NULL, _gloffset_Color3dv),
+    NAME_FUNC_OFFSET(  138, glColor3f, glColor3f, NULL, _gloffset_Color3f),
+    NAME_FUNC_OFFSET(  148, glColor3fv, glColor3fv, NULL, _gloffset_Color3fv),
+    NAME_FUNC_OFFSET(  159, glColor3i, glColor3i, NULL, _gloffset_Color3i),
+    NAME_FUNC_OFFSET(  169, glColor3iv, glColor3iv, NULL, _gloffset_Color3iv),
+    NAME_FUNC_OFFSET(  180, glColor3s, glColor3s, NULL, _gloffset_Color3s),
+    NAME_FUNC_OFFSET(  190, glColor3sv, glColor3sv, NULL, _gloffset_Color3sv),
+    NAME_FUNC_OFFSET(  201, glColor3ub, glColor3ub, NULL, _gloffset_Color3ub),
+    NAME_FUNC_OFFSET(  212, glColor3ubv, glColor3ubv, NULL, _gloffset_Color3ubv),
+    NAME_FUNC_OFFSET(  224, glColor3ui, glColor3ui, NULL, _gloffset_Color3ui),
+    NAME_FUNC_OFFSET(  235, glColor3uiv, glColor3uiv, NULL, _gloffset_Color3uiv),
+    NAME_FUNC_OFFSET(  247, glColor3us, glColor3us, NULL, _gloffset_Color3us),
+    NAME_FUNC_OFFSET(  258, glColor3usv, glColor3usv, NULL, _gloffset_Color3usv),
+    NAME_FUNC_OFFSET(  270, glColor4b, glColor4b, NULL, _gloffset_Color4b),
+    NAME_FUNC_OFFSET(  280, glColor4bv, glColor4bv, NULL, _gloffset_Color4bv),
+    NAME_FUNC_OFFSET(  291, glColor4d, glColor4d, NULL, _gloffset_Color4d),
+    NAME_FUNC_OFFSET(  301, glColor4dv, glColor4dv, NULL, _gloffset_Color4dv),
+    NAME_FUNC_OFFSET(  312, glColor4f, glColor4f, NULL, _gloffset_Color4f),
+    NAME_FUNC_OFFSET(  322, glColor4fv, glColor4fv, NULL, _gloffset_Color4fv),
+    NAME_FUNC_OFFSET(  333, glColor4i, glColor4i, NULL, _gloffset_Color4i),
+    NAME_FUNC_OFFSET(  343, glColor4iv, glColor4iv, NULL, _gloffset_Color4iv),
+    NAME_FUNC_OFFSET(  354, glColor4s, glColor4s, NULL, _gloffset_Color4s),
+    NAME_FUNC_OFFSET(  364, glColor4sv, glColor4sv, NULL, _gloffset_Color4sv),
+    NAME_FUNC_OFFSET(  375, glColor4ub, glColor4ub, NULL, _gloffset_Color4ub),
+    NAME_FUNC_OFFSET(  386, glColor4ubv, glColor4ubv, NULL, _gloffset_Color4ubv),
+    NAME_FUNC_OFFSET(  398, glColor4ui, glColor4ui, NULL, _gloffset_Color4ui),
+    NAME_FUNC_OFFSET(  409, glColor4uiv, glColor4uiv, NULL, _gloffset_Color4uiv),
+    NAME_FUNC_OFFSET(  421, glColor4us, glColor4us, NULL, _gloffset_Color4us),
+    NAME_FUNC_OFFSET(  432, glColor4usv, glColor4usv, NULL, _gloffset_Color4usv),
+    NAME_FUNC_OFFSET(  444, glEdgeFlag, glEdgeFlag, NULL, _gloffset_EdgeFlag),
+    NAME_FUNC_OFFSET(  455, glEdgeFlagv, glEdgeFlagv, NULL, _gloffset_EdgeFlagv),
+    NAME_FUNC_OFFSET(  467, glEnd, glEnd, NULL, _gloffset_End),
+    NAME_FUNC_OFFSET(  473, glIndexd, glIndexd, NULL, _gloffset_Indexd),
+    NAME_FUNC_OFFSET(  482, glIndexdv, glIndexdv, NULL, _gloffset_Indexdv),
+    NAME_FUNC_OFFSET(  492, glIndexf, glIndexf, NULL, _gloffset_Indexf),
+    NAME_FUNC_OFFSET(  501, glIndexfv, glIndexfv, NULL, _gloffset_Indexfv),
+    NAME_FUNC_OFFSET(  511, glIndexi, glIndexi, NULL, _gloffset_Indexi),
+    NAME_FUNC_OFFSET(  520, glIndexiv, glIndexiv, NULL, _gloffset_Indexiv),
+    NAME_FUNC_OFFSET(  530, glIndexs, glIndexs, NULL, _gloffset_Indexs),
+    NAME_FUNC_OFFSET(  539, glIndexsv, glIndexsv, NULL, _gloffset_Indexsv),
+    NAME_FUNC_OFFSET(  549, glNormal3b, glNormal3b, NULL, _gloffset_Normal3b),
+    NAME_FUNC_OFFSET(  560, glNormal3bv, glNormal3bv, NULL, _gloffset_Normal3bv),
+    NAME_FUNC_OFFSET(  572, glNormal3d, glNormal3d, NULL, _gloffset_Normal3d),
+    NAME_FUNC_OFFSET(  583, glNormal3dv, glNormal3dv, NULL, _gloffset_Normal3dv),
+    NAME_FUNC_OFFSET(  595, glNormal3f, glNormal3f, NULL, _gloffset_Normal3f),
+    NAME_FUNC_OFFSET(  606, glNormal3fv, glNormal3fv, NULL, _gloffset_Normal3fv),
+    NAME_FUNC_OFFSET(  618, glNormal3i, glNormal3i, NULL, _gloffset_Normal3i),
+    NAME_FUNC_OFFSET(  629, glNormal3iv, glNormal3iv, NULL, _gloffset_Normal3iv),
+    NAME_FUNC_OFFSET(  641, glNormal3s, glNormal3s, NULL, _gloffset_Normal3s),
+    NAME_FUNC_OFFSET(  652, glNormal3sv, glNormal3sv, NULL, _gloffset_Normal3sv),
+    NAME_FUNC_OFFSET(  664, glRasterPos2d, glRasterPos2d, NULL, _gloffset_RasterPos2d),
+    NAME_FUNC_OFFSET(  678, glRasterPos2dv, glRasterPos2dv, NULL, _gloffset_RasterPos2dv),
+    NAME_FUNC_OFFSET(  693, glRasterPos2f, glRasterPos2f, NULL, _gloffset_RasterPos2f),
+    NAME_FUNC_OFFSET(  707, glRasterPos2fv, glRasterPos2fv, NULL, _gloffset_RasterPos2fv),
+    NAME_FUNC_OFFSET(  722, glRasterPos2i, glRasterPos2i, NULL, _gloffset_RasterPos2i),
+    NAME_FUNC_OFFSET(  736, glRasterPos2iv, glRasterPos2iv, NULL, _gloffset_RasterPos2iv),
+    NAME_FUNC_OFFSET(  751, glRasterPos2s, glRasterPos2s, NULL, _gloffset_RasterPos2s),
+    NAME_FUNC_OFFSET(  765, glRasterPos2sv, glRasterPos2sv, NULL, _gloffset_RasterPos2sv),
+    NAME_FUNC_OFFSET(  780, glRasterPos3d, glRasterPos3d, NULL, _gloffset_RasterPos3d),
+    NAME_FUNC_OFFSET(  794, glRasterPos3dv, glRasterPos3dv, NULL, _gloffset_RasterPos3dv),
+    NAME_FUNC_OFFSET(  809, glRasterPos3f, glRasterPos3f, NULL, _gloffset_RasterPos3f),
+    NAME_FUNC_OFFSET(  823, glRasterPos3fv, glRasterPos3fv, NULL, _gloffset_RasterPos3fv),
+    NAME_FUNC_OFFSET(  838, glRasterPos3i, glRasterPos3i, NULL, _gloffset_RasterPos3i),
+    NAME_FUNC_OFFSET(  852, glRasterPos3iv, glRasterPos3iv, NULL, _gloffset_RasterPos3iv),
+    NAME_FUNC_OFFSET(  867, glRasterPos3s, glRasterPos3s, NULL, _gloffset_RasterPos3s),
+    NAME_FUNC_OFFSET(  881, glRasterPos3sv, glRasterPos3sv, NULL, _gloffset_RasterPos3sv),
+    NAME_FUNC_OFFSET(  896, glRasterPos4d, glRasterPos4d, NULL, _gloffset_RasterPos4d),
+    NAME_FUNC_OFFSET(  910, glRasterPos4dv, glRasterPos4dv, NULL, _gloffset_RasterPos4dv),
+    NAME_FUNC_OFFSET(  925, glRasterPos4f, glRasterPos4f, NULL, _gloffset_RasterPos4f),
+    NAME_FUNC_OFFSET(  939, glRasterPos4fv, glRasterPos4fv, NULL, _gloffset_RasterPos4fv),
+    NAME_FUNC_OFFSET(  954, glRasterPos4i, glRasterPos4i, NULL, _gloffset_RasterPos4i),
+    NAME_FUNC_OFFSET(  968, glRasterPos4iv, glRasterPos4iv, NULL, _gloffset_RasterPos4iv),
+    NAME_FUNC_OFFSET(  983, glRasterPos4s, glRasterPos4s, NULL, _gloffset_RasterPos4s),
+    NAME_FUNC_OFFSET(  997, glRasterPos4sv, glRasterPos4sv, NULL, _gloffset_RasterPos4sv),
+    NAME_FUNC_OFFSET( 1012, glRectd, glRectd, NULL, _gloffset_Rectd),
+    NAME_FUNC_OFFSET( 1020, glRectdv, glRectdv, NULL, _gloffset_Rectdv),
+    NAME_FUNC_OFFSET( 1029, glRectf, glRectf, NULL, _gloffset_Rectf),
+    NAME_FUNC_OFFSET( 1037, glRectfv, glRectfv, NULL, _gloffset_Rectfv),
+    NAME_FUNC_OFFSET( 1046, glRecti, glRecti, NULL, _gloffset_Recti),
+    NAME_FUNC_OFFSET( 1054, glRectiv, glRectiv, NULL, _gloffset_Rectiv),
+    NAME_FUNC_OFFSET( 1063, glRects, glRects, NULL, _gloffset_Rects),
+    NAME_FUNC_OFFSET( 1071, glRectsv, glRectsv, NULL, _gloffset_Rectsv),
+    NAME_FUNC_OFFSET( 1080, glTexCoord1d, glTexCoord1d, NULL, _gloffset_TexCoord1d),
+    NAME_FUNC_OFFSET( 1093, glTexCoord1dv, glTexCoord1dv, NULL, _gloffset_TexCoord1dv),
+    NAME_FUNC_OFFSET( 1107, glTexCoord1f, glTexCoord1f, NULL, _gloffset_TexCoord1f),
+    NAME_FUNC_OFFSET( 1120, glTexCoord1fv, glTexCoord1fv, NULL, _gloffset_TexCoord1fv),
+    NAME_FUNC_OFFSET( 1134, glTexCoord1i, glTexCoord1i, NULL, _gloffset_TexCoord1i),
+    NAME_FUNC_OFFSET( 1147, glTexCoord1iv, glTexCoord1iv, NULL, _gloffset_TexCoord1iv),
+    NAME_FUNC_OFFSET( 1161, glTexCoord1s, glTexCoord1s, NULL, _gloffset_TexCoord1s),
+    NAME_FUNC_OFFSET( 1174, glTexCoord1sv, glTexCoord1sv, NULL, _gloffset_TexCoord1sv),
+    NAME_FUNC_OFFSET( 1188, glTexCoord2d, glTexCoord2d, NULL, _gloffset_TexCoord2d),
+    NAME_FUNC_OFFSET( 1201, glTexCoord2dv, glTexCoord2dv, NULL, _gloffset_TexCoord2dv),
+    NAME_FUNC_OFFSET( 1215, glTexCoord2f, glTexCoord2f, NULL, _gloffset_TexCoord2f),
+    NAME_FUNC_OFFSET( 1228, glTexCoord2fv, glTexCoord2fv, NULL, _gloffset_TexCoord2fv),
+    NAME_FUNC_OFFSET( 1242, glTexCoord2i, glTexCoord2i, NULL, _gloffset_TexCoord2i),
+    NAME_FUNC_OFFSET( 1255, glTexCoord2iv, glTexCoord2iv, NULL, _gloffset_TexCoord2iv),
+    NAME_FUNC_OFFSET( 1269, glTexCoord2s, glTexCoord2s, NULL, _gloffset_TexCoord2s),
+    NAME_FUNC_OFFSET( 1282, glTexCoord2sv, glTexCoord2sv, NULL, _gloffset_TexCoord2sv),
+    NAME_FUNC_OFFSET( 1296, glTexCoord3d, glTexCoord3d, NULL, _gloffset_TexCoord3d),
+    NAME_FUNC_OFFSET( 1309, glTexCoord3dv, glTexCoord3dv, NULL, _gloffset_TexCoord3dv),
+    NAME_FUNC_OFFSET( 1323, glTexCoord3f, glTexCoord3f, NULL, _gloffset_TexCoord3f),
+    NAME_FUNC_OFFSET( 1336, glTexCoord3fv, glTexCoord3fv, NULL, _gloffset_TexCoord3fv),
+    NAME_FUNC_OFFSET( 1350, glTexCoord3i, glTexCoord3i, NULL, _gloffset_TexCoord3i),
+    NAME_FUNC_OFFSET( 1363, glTexCoord3iv, glTexCoord3iv, NULL, _gloffset_TexCoord3iv),
+    NAME_FUNC_OFFSET( 1377, glTexCoord3s, glTexCoord3s, NULL, _gloffset_TexCoord3s),
+    NAME_FUNC_OFFSET( 1390, glTexCoord3sv, glTexCoord3sv, NULL, _gloffset_TexCoord3sv),
+    NAME_FUNC_OFFSET( 1404, glTexCoord4d, glTexCoord4d, NULL, _gloffset_TexCoord4d),
+    NAME_FUNC_OFFSET( 1417, glTexCoord4dv, glTexCoord4dv, NULL, _gloffset_TexCoord4dv),
+    NAME_FUNC_OFFSET( 1431, glTexCoord4f, glTexCoord4f, NULL, _gloffset_TexCoord4f),
+    NAME_FUNC_OFFSET( 1444, glTexCoord4fv, glTexCoord4fv, NULL, _gloffset_TexCoord4fv),
+    NAME_FUNC_OFFSET( 1458, glTexCoord4i, glTexCoord4i, NULL, _gloffset_TexCoord4i),
+    NAME_FUNC_OFFSET( 1471, glTexCoord4iv, glTexCoord4iv, NULL, _gloffset_TexCoord4iv),
+    NAME_FUNC_OFFSET( 1485, glTexCoord4s, glTexCoord4s, NULL, _gloffset_TexCoord4s),
+    NAME_FUNC_OFFSET( 1498, glTexCoord4sv, glTexCoord4sv, NULL, _gloffset_TexCoord4sv),
+    NAME_FUNC_OFFSET( 1512, glVertex2d, glVertex2d, NULL, _gloffset_Vertex2d),
+    NAME_FUNC_OFFSET( 1523, glVertex2dv, glVertex2dv, NULL, _gloffset_Vertex2dv),
+    NAME_FUNC_OFFSET( 1535, glVertex2f, glVertex2f, NULL, _gloffset_Vertex2f),
+    NAME_FUNC_OFFSET( 1546, glVertex2fv, glVertex2fv, NULL, _gloffset_Vertex2fv),
+    NAME_FUNC_OFFSET( 1558, glVertex2i, glVertex2i, NULL, _gloffset_Vertex2i),
+    NAME_FUNC_OFFSET( 1569, glVertex2iv, glVertex2iv, NULL, _gloffset_Vertex2iv),
+    NAME_FUNC_OFFSET( 1581, glVertex2s, glVertex2s, NULL, _gloffset_Vertex2s),
+    NAME_FUNC_OFFSET( 1592, glVertex2sv, glVertex2sv, NULL, _gloffset_Vertex2sv),
+    NAME_FUNC_OFFSET( 1604, glVertex3d, glVertex3d, NULL, _gloffset_Vertex3d),
+    NAME_FUNC_OFFSET( 1615, glVertex3dv, glVertex3dv, NULL, _gloffset_Vertex3dv),
+    NAME_FUNC_OFFSET( 1627, glVertex3f, glVertex3f, NULL, _gloffset_Vertex3f),
+    NAME_FUNC_OFFSET( 1638, glVertex3fv, glVertex3fv, NULL, _gloffset_Vertex3fv),
+    NAME_FUNC_OFFSET( 1650, glVertex3i, glVertex3i, NULL, _gloffset_Vertex3i),
+    NAME_FUNC_OFFSET( 1661, glVertex3iv, glVertex3iv, NULL, _gloffset_Vertex3iv),
+    NAME_FUNC_OFFSET( 1673, glVertex3s, glVertex3s, NULL, _gloffset_Vertex3s),
+    NAME_FUNC_OFFSET( 1684, glVertex3sv, glVertex3sv, NULL, _gloffset_Vertex3sv),
+    NAME_FUNC_OFFSET( 1696, glVertex4d, glVertex4d, NULL, _gloffset_Vertex4d),
+    NAME_FUNC_OFFSET( 1707, glVertex4dv, glVertex4dv, NULL, _gloffset_Vertex4dv),
+    NAME_FUNC_OFFSET( 1719, glVertex4f, glVertex4f, NULL, _gloffset_Vertex4f),
+    NAME_FUNC_OFFSET( 1730, glVertex4fv, glVertex4fv, NULL, _gloffset_Vertex4fv),
+    NAME_FUNC_OFFSET( 1742, glVertex4i, glVertex4i, NULL, _gloffset_Vertex4i),
+    NAME_FUNC_OFFSET( 1753, glVertex4iv, glVertex4iv, NULL, _gloffset_Vertex4iv),
+    NAME_FUNC_OFFSET( 1765, glVertex4s, glVertex4s, NULL, _gloffset_Vertex4s),
+    NAME_FUNC_OFFSET( 1776, glVertex4sv, glVertex4sv, NULL, _gloffset_Vertex4sv),
+    NAME_FUNC_OFFSET( 1788, glClipPlane, glClipPlane, NULL, _gloffset_ClipPlane),
+    NAME_FUNC_OFFSET( 1800, glColorMaterial, glColorMaterial, NULL, _gloffset_ColorMaterial),
+    NAME_FUNC_OFFSET( 1816, glCullFace, glCullFace, NULL, _gloffset_CullFace),
+    NAME_FUNC_OFFSET( 1827, glFogf, glFogf, NULL, _gloffset_Fogf),
+    NAME_FUNC_OFFSET( 1834, glFogfv, glFogfv, NULL, _gloffset_Fogfv),
+    NAME_FUNC_OFFSET( 1842, glFogi, glFogi, NULL, _gloffset_Fogi),
+    NAME_FUNC_OFFSET( 1849, glFogiv, glFogiv, NULL, _gloffset_Fogiv),
+    NAME_FUNC_OFFSET( 1857, glFrontFace, glFrontFace, NULL, _gloffset_FrontFace),
+    NAME_FUNC_OFFSET( 1869, glHint, glHint, NULL, _gloffset_Hint),
+    NAME_FUNC_OFFSET( 1876, glLightf, glLightf, NULL, _gloffset_Lightf),
+    NAME_FUNC_OFFSET( 1885, glLightfv, glLightfv, NULL, _gloffset_Lightfv),
+    NAME_FUNC_OFFSET( 1895, glLighti, glLighti, NULL, _gloffset_Lighti),
+    NAME_FUNC_OFFSET( 1904, glLightiv, glLightiv, NULL, _gloffset_Lightiv),
+    NAME_FUNC_OFFSET( 1914, glLightModelf, glLightModelf, NULL, _gloffset_LightModelf),
+    NAME_FUNC_OFFSET( 1928, glLightModelfv, glLightModelfv, NULL, _gloffset_LightModelfv),
+    NAME_FUNC_OFFSET( 1943, glLightModeli, glLightModeli, NULL, _gloffset_LightModeli),
+    NAME_FUNC_OFFSET( 1957, glLightModeliv, glLightModeliv, NULL, _gloffset_LightModeliv),
+    NAME_FUNC_OFFSET( 1972, glLineStipple, glLineStipple, NULL, _gloffset_LineStipple),
+    NAME_FUNC_OFFSET( 1986, glLineWidth, glLineWidth, NULL, _gloffset_LineWidth),
+    NAME_FUNC_OFFSET( 1998, glMaterialf, glMaterialf, NULL, _gloffset_Materialf),
+    NAME_FUNC_OFFSET( 2010, glMaterialfv, glMaterialfv, NULL, _gloffset_Materialfv),
+    NAME_FUNC_OFFSET( 2023, glMateriali, glMateriali, NULL, _gloffset_Materiali),
+    NAME_FUNC_OFFSET( 2035, glMaterialiv, glMaterialiv, NULL, _gloffset_Materialiv),
+    NAME_FUNC_OFFSET( 2048, glPointSize, glPointSize, NULL, _gloffset_PointSize),
+    NAME_FUNC_OFFSET( 2060, glPolygonMode, glPolygonMode, NULL, _gloffset_PolygonMode),
+    NAME_FUNC_OFFSET( 2074, glPolygonStipple, glPolygonStipple, NULL, _gloffset_PolygonStipple),
+    NAME_FUNC_OFFSET( 2091, glScissor, glScissor, NULL, _gloffset_Scissor),
+    NAME_FUNC_OFFSET( 2101, glShadeModel, glShadeModel, NULL, _gloffset_ShadeModel),
+    NAME_FUNC_OFFSET( 2114, glTexParameterf, glTexParameterf, NULL, _gloffset_TexParameterf),
+    NAME_FUNC_OFFSET( 2130, glTexParameterfv, glTexParameterfv, NULL, _gloffset_TexParameterfv),
+    NAME_FUNC_OFFSET( 2147, glTexParameteri, glTexParameteri, NULL, _gloffset_TexParameteri),
+    NAME_FUNC_OFFSET( 2163, glTexParameteriv, glTexParameteriv, NULL, _gloffset_TexParameteriv),
+    NAME_FUNC_OFFSET( 2180, glTexImage1D, glTexImage1D, NULL, _gloffset_TexImage1D),
+    NAME_FUNC_OFFSET( 2193, glTexImage2D, glTexImage2D, NULL, _gloffset_TexImage2D),
+    NAME_FUNC_OFFSET( 2206, glTexEnvf, glTexEnvf, NULL, _gloffset_TexEnvf),
+    NAME_FUNC_OFFSET( 2216, glTexEnvfv, glTexEnvfv, NULL, _gloffset_TexEnvfv),
+    NAME_FUNC_OFFSET( 2227, glTexEnvi, glTexEnvi, NULL, _gloffset_TexEnvi),
+    NAME_FUNC_OFFSET( 2237, glTexEnviv, glTexEnviv, NULL, _gloffset_TexEnviv),
+    NAME_FUNC_OFFSET( 2248, glTexGend, glTexGend, NULL, _gloffset_TexGend),
+    NAME_FUNC_OFFSET( 2258, glTexGendv, glTexGendv, NULL, _gloffset_TexGendv),
+    NAME_FUNC_OFFSET( 2269, glTexGenf, glTexGenf, NULL, _gloffset_TexGenf),
+    NAME_FUNC_OFFSET( 2279, glTexGenfv, glTexGenfv, NULL, _gloffset_TexGenfv),
+    NAME_FUNC_OFFSET( 2290, glTexGeni, glTexGeni, NULL, _gloffset_TexGeni),
+    NAME_FUNC_OFFSET( 2300, glTexGeniv, glTexGeniv, NULL, _gloffset_TexGeniv),
+    NAME_FUNC_OFFSET( 2311, glFeedbackBuffer, glFeedbackBuffer, NULL, _gloffset_FeedbackBuffer),
+    NAME_FUNC_OFFSET( 2328, glSelectBuffer, glSelectBuffer, NULL, _gloffset_SelectBuffer),
+    NAME_FUNC_OFFSET( 2343, glRenderMode, glRenderMode, NULL, _gloffset_RenderMode),
+    NAME_FUNC_OFFSET( 2356, glInitNames, glInitNames, NULL, _gloffset_InitNames),
+    NAME_FUNC_OFFSET( 2368, glLoadName, glLoadName, NULL, _gloffset_LoadName),
+    NAME_FUNC_OFFSET( 2379, glPassThrough, glPassThrough, NULL, _gloffset_PassThrough),
+    NAME_FUNC_OFFSET( 2393, glPopName, glPopName, NULL, _gloffset_PopName),
+    NAME_FUNC_OFFSET( 2403, glPushName, glPushName, NULL, _gloffset_PushName),
+    NAME_FUNC_OFFSET( 2414, glDrawBuffer, glDrawBuffer, NULL, _gloffset_DrawBuffer),
+    NAME_FUNC_OFFSET( 2427, glClear, glClear, NULL, _gloffset_Clear),
+    NAME_FUNC_OFFSET( 2435, glClearAccum, glClearAccum, NULL, _gloffset_ClearAccum),
+    NAME_FUNC_OFFSET( 2448, glClearIndex, glClearIndex, NULL, _gloffset_ClearIndex),
+    NAME_FUNC_OFFSET( 2461, glClearColor, glClearColor, NULL, _gloffset_ClearColor),
+    NAME_FUNC_OFFSET( 2474, glClearStencil, glClearStencil, NULL, _gloffset_ClearStencil),
+    NAME_FUNC_OFFSET( 2489, glClearDepth, glClearDepth, NULL, _gloffset_ClearDepth),
+    NAME_FUNC_OFFSET( 2502, glStencilMask, glStencilMask, NULL, _gloffset_StencilMask),
+    NAME_FUNC_OFFSET( 2516, glColorMask, glColorMask, NULL, _gloffset_ColorMask),
+    NAME_FUNC_OFFSET( 2528, glDepthMask, glDepthMask, NULL, _gloffset_DepthMask),
+    NAME_FUNC_OFFSET( 2540, glIndexMask, glIndexMask, NULL, _gloffset_IndexMask),
+    NAME_FUNC_OFFSET( 2552, glAccum, glAccum, NULL, _gloffset_Accum),
+    NAME_FUNC_OFFSET( 2560, glDisable, glDisable, NULL, _gloffset_Disable),
+    NAME_FUNC_OFFSET( 2570, glEnable, glEnable, NULL, _gloffset_Enable),
+    NAME_FUNC_OFFSET( 2579, glFinish, glFinish, NULL, _gloffset_Finish),
+    NAME_FUNC_OFFSET( 2588, glFlush, glFlush, NULL, _gloffset_Flush),
+    NAME_FUNC_OFFSET( 2596, glPopAttrib, glPopAttrib, NULL, _gloffset_PopAttrib),
+    NAME_FUNC_OFFSET( 2608, glPushAttrib, glPushAttrib, NULL, _gloffset_PushAttrib),
+    NAME_FUNC_OFFSET( 2621, glMap1d, glMap1d, NULL, _gloffset_Map1d),
+    NAME_FUNC_OFFSET( 2629, glMap1f, glMap1f, NULL, _gloffset_Map1f),
+    NAME_FUNC_OFFSET( 2637, glMap2d, glMap2d, NULL, _gloffset_Map2d),
+    NAME_FUNC_OFFSET( 2645, glMap2f, glMap2f, NULL, _gloffset_Map2f),
+    NAME_FUNC_OFFSET( 2653, glMapGrid1d, glMapGrid1d, NULL, _gloffset_MapGrid1d),
+    NAME_FUNC_OFFSET( 2665, glMapGrid1f, glMapGrid1f, NULL, _gloffset_MapGrid1f),
+    NAME_FUNC_OFFSET( 2677, glMapGrid2d, glMapGrid2d, NULL, _gloffset_MapGrid2d),
+    NAME_FUNC_OFFSET( 2689, glMapGrid2f, glMapGrid2f, NULL, _gloffset_MapGrid2f),
+    NAME_FUNC_OFFSET( 2701, glEvalCoord1d, glEvalCoord1d, NULL, _gloffset_EvalCoord1d),
+    NAME_FUNC_OFFSET( 2715, glEvalCoord1dv, glEvalCoord1dv, NULL, _gloffset_EvalCoord1dv),
+    NAME_FUNC_OFFSET( 2730, glEvalCoord1f, glEvalCoord1f, NULL, _gloffset_EvalCoord1f),
+    NAME_FUNC_OFFSET( 2744, glEvalCoord1fv, glEvalCoord1fv, NULL, _gloffset_EvalCoord1fv),
+    NAME_FUNC_OFFSET( 2759, glEvalCoord2d, glEvalCoord2d, NULL, _gloffset_EvalCoord2d),
+    NAME_FUNC_OFFSET( 2773, glEvalCoord2dv, glEvalCoord2dv, NULL, _gloffset_EvalCoord2dv),
+    NAME_FUNC_OFFSET( 2788, glEvalCoord2f, glEvalCoord2f, NULL, _gloffset_EvalCoord2f),
+    NAME_FUNC_OFFSET( 2802, glEvalCoord2fv, glEvalCoord2fv, NULL, _gloffset_EvalCoord2fv),
+    NAME_FUNC_OFFSET( 2817, glEvalMesh1, glEvalMesh1, NULL, _gloffset_EvalMesh1),
+    NAME_FUNC_OFFSET( 2829, glEvalPoint1, glEvalPoint1, NULL, _gloffset_EvalPoint1),
+    NAME_FUNC_OFFSET( 2842, glEvalMesh2, glEvalMesh2, NULL, _gloffset_EvalMesh2),
+    NAME_FUNC_OFFSET( 2854, glEvalPoint2, glEvalPoint2, NULL, _gloffset_EvalPoint2),
+    NAME_FUNC_OFFSET( 2867, glAlphaFunc, glAlphaFunc, NULL, _gloffset_AlphaFunc),
+    NAME_FUNC_OFFSET( 2879, glBlendFunc, glBlendFunc, NULL, _gloffset_BlendFunc),
+    NAME_FUNC_OFFSET( 2891, glLogicOp, glLogicOp, NULL, _gloffset_LogicOp),
+    NAME_FUNC_OFFSET( 2901, glStencilFunc, glStencilFunc, NULL, _gloffset_StencilFunc),
+    NAME_FUNC_OFFSET( 2915, glStencilOp, glStencilOp, NULL, _gloffset_StencilOp),
+    NAME_FUNC_OFFSET( 2927, glDepthFunc, glDepthFunc, NULL, _gloffset_DepthFunc),
+    NAME_FUNC_OFFSET( 2939, glPixelZoom, glPixelZoom, NULL, _gloffset_PixelZoom),
+    NAME_FUNC_OFFSET( 2951, glPixelTransferf, glPixelTransferf, NULL, _gloffset_PixelTransferf),
+    NAME_FUNC_OFFSET( 2968, glPixelTransferi, glPixelTransferi, NULL, _gloffset_PixelTransferi),
+    NAME_FUNC_OFFSET( 2985, glPixelStoref, glPixelStoref, NULL, _gloffset_PixelStoref),
+    NAME_FUNC_OFFSET( 2999, glPixelStorei, glPixelStorei, NULL, _gloffset_PixelStorei),
+    NAME_FUNC_OFFSET( 3013, glPixelMapfv, glPixelMapfv, NULL, _gloffset_PixelMapfv),
+    NAME_FUNC_OFFSET( 3026, glPixelMapuiv, glPixelMapuiv, NULL, _gloffset_PixelMapuiv),
+    NAME_FUNC_OFFSET( 3040, glPixelMapusv, glPixelMapusv, NULL, _gloffset_PixelMapusv),
+    NAME_FUNC_OFFSET( 3054, glReadBuffer, glReadBuffer, NULL, _gloffset_ReadBuffer),
+    NAME_FUNC_OFFSET( 3067, glCopyPixels, glCopyPixels, NULL, _gloffset_CopyPixels),
+    NAME_FUNC_OFFSET( 3080, glReadPixels, glReadPixels, NULL, _gloffset_ReadPixels),
+    NAME_FUNC_OFFSET( 3093, glDrawPixels, glDrawPixels, NULL, _gloffset_DrawPixels),
+    NAME_FUNC_OFFSET( 3106, glGetBooleanv, glGetBooleanv, NULL, _gloffset_GetBooleanv),
+    NAME_FUNC_OFFSET( 3120, glGetClipPlane, glGetClipPlane, NULL, _gloffset_GetClipPlane),
+    NAME_FUNC_OFFSET( 3135, glGetDoublev, glGetDoublev, NULL, _gloffset_GetDoublev),
+    NAME_FUNC_OFFSET( 3148, glGetError, glGetError, NULL, _gloffset_GetError),
+    NAME_FUNC_OFFSET( 3159, glGetFloatv, glGetFloatv, NULL, _gloffset_GetFloatv),
+    NAME_FUNC_OFFSET( 3171, glGetIntegerv, glGetIntegerv, NULL, _gloffset_GetIntegerv),
+    NAME_FUNC_OFFSET( 3185, glGetLightfv, glGetLightfv, NULL, _gloffset_GetLightfv),
+    NAME_FUNC_OFFSET( 3198, glGetLightiv, glGetLightiv, NULL, _gloffset_GetLightiv),
+    NAME_FUNC_OFFSET( 3211, glGetMapdv, glGetMapdv, NULL, _gloffset_GetMapdv),
+    NAME_FUNC_OFFSET( 3222, glGetMapfv, glGetMapfv, NULL, _gloffset_GetMapfv),
+    NAME_FUNC_OFFSET( 3233, glGetMapiv, glGetMapiv, NULL, _gloffset_GetMapiv),
+    NAME_FUNC_OFFSET( 3244, glGetMaterialfv, glGetMaterialfv, NULL, _gloffset_GetMaterialfv),
+    NAME_FUNC_OFFSET( 3260, glGetMaterialiv, glGetMaterialiv, NULL, _gloffset_GetMaterialiv),
+    NAME_FUNC_OFFSET( 3276, glGetPixelMapfv, glGetPixelMapfv, NULL, _gloffset_GetPixelMapfv),
+    NAME_FUNC_OFFSET( 3292, glGetPixelMapuiv, glGetPixelMapuiv, NULL, _gloffset_GetPixelMapuiv),
+    NAME_FUNC_OFFSET( 3309, glGetPixelMapusv, glGetPixelMapusv, NULL, _gloffset_GetPixelMapusv),
+    NAME_FUNC_OFFSET( 3326, glGetPolygonStipple, glGetPolygonStipple, NULL, _gloffset_GetPolygonStipple),
+    NAME_FUNC_OFFSET( 3346, glGetString, glGetString, NULL, _gloffset_GetString),
+    NAME_FUNC_OFFSET( 3358, glGetTexEnvfv, glGetTexEnvfv, NULL, _gloffset_GetTexEnvfv),
+    NAME_FUNC_OFFSET( 3372, glGetTexEnviv, glGetTexEnviv, NULL, _gloffset_GetTexEnviv),
+    NAME_FUNC_OFFSET( 3386, glGetTexGendv, glGetTexGendv, NULL, _gloffset_GetTexGendv),
+    NAME_FUNC_OFFSET( 3400, glGetTexGenfv, glGetTexGenfv, NULL, _gloffset_GetTexGenfv),
+    NAME_FUNC_OFFSET( 3414, glGetTexGeniv, glGetTexGeniv, NULL, _gloffset_GetTexGeniv),
+    NAME_FUNC_OFFSET( 3428, glGetTexImage, glGetTexImage, NULL, _gloffset_GetTexImage),
+    NAME_FUNC_OFFSET( 3442, glGetTexParameterfv, glGetTexParameterfv, NULL, _gloffset_GetTexParameterfv),
+    NAME_FUNC_OFFSET( 3462, glGetTexParameteriv, glGetTexParameteriv, NULL, _gloffset_GetTexParameteriv),
+    NAME_FUNC_OFFSET( 3482, glGetTexLevelParameterfv, glGetTexLevelParameterfv, NULL, _gloffset_GetTexLevelParameterfv),
+    NAME_FUNC_OFFSET( 3507, glGetTexLevelParameteriv, glGetTexLevelParameteriv, NULL, _gloffset_GetTexLevelParameteriv),
+    NAME_FUNC_OFFSET( 3532, glIsEnabled, glIsEnabled, NULL, _gloffset_IsEnabled),
+    NAME_FUNC_OFFSET( 3544, glIsList, glIsList, NULL, _gloffset_IsList),
+    NAME_FUNC_OFFSET( 3553, glDepthRange, glDepthRange, NULL, _gloffset_DepthRange),
+    NAME_FUNC_OFFSET( 3566, glFrustum, glFrustum, NULL, _gloffset_Frustum),
+    NAME_FUNC_OFFSET( 3576, glLoadIdentity, glLoadIdentity, NULL, _gloffset_LoadIdentity),
+    NAME_FUNC_OFFSET( 3591, glLoadMatrixf, glLoadMatrixf, NULL, _gloffset_LoadMatrixf),
+    NAME_FUNC_OFFSET( 3605, glLoadMatrixd, glLoadMatrixd, NULL, _gloffset_LoadMatrixd),
+    NAME_FUNC_OFFSET( 3619, glMatrixMode, glMatrixMode, NULL, _gloffset_MatrixMode),
+    NAME_FUNC_OFFSET( 3632, glMultMatrixf, glMultMatrixf, NULL, _gloffset_MultMatrixf),
+    NAME_FUNC_OFFSET( 3646, glMultMatrixd, glMultMatrixd, NULL, _gloffset_MultMatrixd),
+    NAME_FUNC_OFFSET( 3660, glOrtho, glOrtho, NULL, _gloffset_Ortho),
+    NAME_FUNC_OFFSET( 3668, glPopMatrix, glPopMatrix, NULL, _gloffset_PopMatrix),
+    NAME_FUNC_OFFSET( 3680, glPushMatrix, glPushMatrix, NULL, _gloffset_PushMatrix),
+    NAME_FUNC_OFFSET( 3693, glRotated, glRotated, NULL, _gloffset_Rotated),
+    NAME_FUNC_OFFSET( 3703, glRotatef, glRotatef, NULL, _gloffset_Rotatef),
+    NAME_FUNC_OFFSET( 3713, glScaled, glScaled, NULL, _gloffset_Scaled),
+    NAME_FUNC_OFFSET( 3722, glScalef, glScalef, NULL, _gloffset_Scalef),
+    NAME_FUNC_OFFSET( 3731, glTranslated, glTranslated, NULL, _gloffset_Translated),
+    NAME_FUNC_OFFSET( 3744, glTranslatef, glTranslatef, NULL, _gloffset_Translatef),
+    NAME_FUNC_OFFSET( 3757, glViewport, glViewport, NULL, _gloffset_Viewport),
+    NAME_FUNC_OFFSET( 3768, glArrayElement, glArrayElement, NULL, _gloffset_ArrayElement),
+    NAME_FUNC_OFFSET( 3783, glBindTexture, glBindTexture, NULL, _gloffset_BindTexture),
+    NAME_FUNC_OFFSET( 3797, glColorPointer, glColorPointer, NULL, _gloffset_ColorPointer),
+    NAME_FUNC_OFFSET( 3812, glDisableClientState, glDisableClientState, NULL, _gloffset_DisableClientState),
+    NAME_FUNC_OFFSET( 3833, glDrawArrays, glDrawArrays, NULL, _gloffset_DrawArrays),
+    NAME_FUNC_OFFSET( 3846, glDrawElements, glDrawElements, NULL, _gloffset_DrawElements),
+    NAME_FUNC_OFFSET( 3861, glEdgeFlagPointer, glEdgeFlagPointer, NULL, _gloffset_EdgeFlagPointer),
+    NAME_FUNC_OFFSET( 3879, glEnableClientState, glEnableClientState, NULL, _gloffset_EnableClientState),
+    NAME_FUNC_OFFSET( 3899, glIndexPointer, glIndexPointer, NULL, _gloffset_IndexPointer),
+    NAME_FUNC_OFFSET( 3914, glIndexub, glIndexub, NULL, _gloffset_Indexub),
+    NAME_FUNC_OFFSET( 3924, glIndexubv, glIndexubv, NULL, _gloffset_Indexubv),
+    NAME_FUNC_OFFSET( 3935, glInterleavedArrays, glInterleavedArrays, NULL, _gloffset_InterleavedArrays),
+    NAME_FUNC_OFFSET( 3955, glNormalPointer, glNormalPointer, NULL, _gloffset_NormalPointer),
+    NAME_FUNC_OFFSET( 3971, glPolygonOffset, glPolygonOffset, NULL, _gloffset_PolygonOffset),
+    NAME_FUNC_OFFSET( 3987, glTexCoordPointer, glTexCoordPointer, NULL, _gloffset_TexCoordPointer),
+    NAME_FUNC_OFFSET( 4005, glVertexPointer, glVertexPointer, NULL, _gloffset_VertexPointer),
+    NAME_FUNC_OFFSET( 4021, glAreTexturesResident, glAreTexturesResident, NULL, _gloffset_AreTexturesResident),
+    NAME_FUNC_OFFSET( 4043, glCopyTexImage1D, glCopyTexImage1D, NULL, _gloffset_CopyTexImage1D),
+    NAME_FUNC_OFFSET( 4060, glCopyTexImage2D, glCopyTexImage2D, NULL, _gloffset_CopyTexImage2D),
+    NAME_FUNC_OFFSET( 4077, glCopyTexSubImage1D, glCopyTexSubImage1D, NULL, _gloffset_CopyTexSubImage1D),
+    NAME_FUNC_OFFSET( 4097, glCopyTexSubImage2D, glCopyTexSubImage2D, NULL, _gloffset_CopyTexSubImage2D),
+    NAME_FUNC_OFFSET( 4117, glDeleteTextures, glDeleteTextures, NULL, _gloffset_DeleteTextures),
+    NAME_FUNC_OFFSET( 4134, glGenTextures, glGenTextures, NULL, _gloffset_GenTextures),
+    NAME_FUNC_OFFSET( 4148, glGetPointerv, glGetPointerv, NULL, _gloffset_GetPointerv),
+    NAME_FUNC_OFFSET( 4162, glIsTexture, glIsTexture, NULL, _gloffset_IsTexture),
+    NAME_FUNC_OFFSET( 4174, glPrioritizeTextures, glPrioritizeTextures, NULL, _gloffset_PrioritizeTextures),
+    NAME_FUNC_OFFSET( 4195, glTexSubImage1D, glTexSubImage1D, NULL, _gloffset_TexSubImage1D),
+    NAME_FUNC_OFFSET( 4211, glTexSubImage2D, glTexSubImage2D, NULL, _gloffset_TexSubImage2D),
+    NAME_FUNC_OFFSET( 4227, glPopClientAttrib, glPopClientAttrib, NULL, _gloffset_PopClientAttrib),
+    NAME_FUNC_OFFSET( 4245, glPushClientAttrib, glPushClientAttrib, NULL, _gloffset_PushClientAttrib),
+    NAME_FUNC_OFFSET( 4264, glBlendColor, glBlendColor, NULL, _gloffset_BlendColor),
+    NAME_FUNC_OFFSET( 4277, glBlendEquation, glBlendEquation, NULL, _gloffset_BlendEquation),
+    NAME_FUNC_OFFSET( 4293, glDrawRangeElements, glDrawRangeElements, NULL, _gloffset_DrawRangeElements),
+    NAME_FUNC_OFFSET( 4313, glColorTable, glColorTable, NULL, _gloffset_ColorTable),
+    NAME_FUNC_OFFSET( 4326, glColorTableParameterfv, glColorTableParameterfv, NULL, _gloffset_ColorTableParameterfv),
+    NAME_FUNC_OFFSET( 4350, glColorTableParameteriv, glColorTableParameteriv, NULL, _gloffset_ColorTableParameteriv),
+    NAME_FUNC_OFFSET( 4374, glCopyColorTable, glCopyColorTable, NULL, _gloffset_CopyColorTable),
+    NAME_FUNC_OFFSET( 4391, glGetColorTable, glGetColorTable, NULL, _gloffset_GetColorTable),
+    NAME_FUNC_OFFSET( 4407, glGetColorTableParameterfv, glGetColorTableParameterfv, NULL, _gloffset_GetColorTableParameterfv),
+    NAME_FUNC_OFFSET( 4434, glGetColorTableParameteriv, glGetColorTableParameteriv, NULL, _gloffset_GetColorTableParameteriv),
+    NAME_FUNC_OFFSET( 4461, glColorSubTable, glColorSubTable, NULL, _gloffset_ColorSubTable),
+    NAME_FUNC_OFFSET( 4477, glCopyColorSubTable, glCopyColorSubTable, NULL, _gloffset_CopyColorSubTable),
+    NAME_FUNC_OFFSET( 4497, glConvolutionFilter1D, glConvolutionFilter1D, NULL, _gloffset_ConvolutionFilter1D),
+    NAME_FUNC_OFFSET( 4519, glConvolutionFilter2D, glConvolutionFilter2D, NULL, _gloffset_ConvolutionFilter2D),
+    NAME_FUNC_OFFSET( 4541, glConvolutionParameterf, glConvolutionParameterf, NULL, _gloffset_ConvolutionParameterf),
+    NAME_FUNC_OFFSET( 4565, glConvolutionParameterfv, glConvolutionParameterfv, NULL, _gloffset_ConvolutionParameterfv),
+    NAME_FUNC_OFFSET( 4590, glConvolutionParameteri, glConvolutionParameteri, NULL, _gloffset_ConvolutionParameteri),
+    NAME_FUNC_OFFSET( 4614, glConvolutionParameteriv, glConvolutionParameteriv, NULL, _gloffset_ConvolutionParameteriv),
+    NAME_FUNC_OFFSET( 4639, glCopyConvolutionFilter1D, glCopyConvolutionFilter1D, NULL, _gloffset_CopyConvolutionFilter1D),
+    NAME_FUNC_OFFSET( 4665, glCopyConvolutionFilter2D, glCopyConvolutionFilter2D, NULL, _gloffset_CopyConvolutionFilter2D),
+    NAME_FUNC_OFFSET( 4691, glGetConvolutionFilter, glGetConvolutionFilter, NULL, _gloffset_GetConvolutionFilter),
+    NAME_FUNC_OFFSET( 4714, glGetConvolutionParameterfv, glGetConvolutionParameterfv, NULL, _gloffset_GetConvolutionParameterfv),
+    NAME_FUNC_OFFSET( 4742, glGetConvolutionParameteriv, glGetConvolutionParameteriv, NULL, _gloffset_GetConvolutionParameteriv),
+    NAME_FUNC_OFFSET( 4770, glGetSeparableFilter, glGetSeparableFilter, NULL, _gloffset_GetSeparableFilter),
+    NAME_FUNC_OFFSET( 4791, glSeparableFilter2D, glSeparableFilter2D, NULL, _gloffset_SeparableFilter2D),
+    NAME_FUNC_OFFSET( 4811, glGetHistogram, glGetHistogram, NULL, _gloffset_GetHistogram),
+    NAME_FUNC_OFFSET( 4826, glGetHistogramParameterfv, glGetHistogramParameterfv, NULL, _gloffset_GetHistogramParameterfv),
+    NAME_FUNC_OFFSET( 4852, glGetHistogramParameteriv, glGetHistogramParameteriv, NULL, _gloffset_GetHistogramParameteriv),
+    NAME_FUNC_OFFSET( 4878, glGetMinmax, glGetMinmax, NULL, _gloffset_GetMinmax),
+    NAME_FUNC_OFFSET( 4890, glGetMinmaxParameterfv, glGetMinmaxParameterfv, NULL, _gloffset_GetMinmaxParameterfv),
+    NAME_FUNC_OFFSET( 4913, glGetMinmaxParameteriv, glGetMinmaxParameteriv, NULL, _gloffset_GetMinmaxParameteriv),
+    NAME_FUNC_OFFSET( 4936, glHistogram, glHistogram, NULL, _gloffset_Histogram),
+    NAME_FUNC_OFFSET( 4948, glMinmax, glMinmax, NULL, _gloffset_Minmax),
+    NAME_FUNC_OFFSET( 4957, glResetHistogram, glResetHistogram, NULL, _gloffset_ResetHistogram),
+    NAME_FUNC_OFFSET( 4974, glResetMinmax, glResetMinmax, NULL, _gloffset_ResetMinmax),
+    NAME_FUNC_OFFSET( 4988, glTexImage3D, glTexImage3D, NULL, _gloffset_TexImage3D),
+    NAME_FUNC_OFFSET( 5001, glTexSubImage3D, glTexSubImage3D, NULL, _gloffset_TexSubImage3D),
+    NAME_FUNC_OFFSET( 5017, glCopyTexSubImage3D, glCopyTexSubImage3D, NULL, _gloffset_CopyTexSubImage3D),
+    NAME_FUNC_OFFSET( 5037, glActiveTextureARB, glActiveTextureARB, NULL, _gloffset_ActiveTextureARB),
+    NAME_FUNC_OFFSET( 5056, glClientActiveTextureARB, glClientActiveTextureARB, NULL, _gloffset_ClientActiveTextureARB),
+    NAME_FUNC_OFFSET( 5081, glMultiTexCoord1dARB, glMultiTexCoord1dARB, NULL, _gloffset_MultiTexCoord1dARB),
+    NAME_FUNC_OFFSET( 5102, glMultiTexCoord1dvARB, glMultiTexCoord1dvARB, NULL, _gloffset_MultiTexCoord1dvARB),
+    NAME_FUNC_OFFSET( 5124, glMultiTexCoord1fARB, glMultiTexCoord1fARB, NULL, _gloffset_MultiTexCoord1fARB),
+    NAME_FUNC_OFFSET( 5145, glMultiTexCoord1fvARB, glMultiTexCoord1fvARB, NULL, _gloffset_MultiTexCoord1fvARB),
+    NAME_FUNC_OFFSET( 5167, glMultiTexCoord1iARB, glMultiTexCoord1iARB, NULL, _gloffset_MultiTexCoord1iARB),
+    NAME_FUNC_OFFSET( 5188, glMultiTexCoord1ivARB, glMultiTexCoord1ivARB, NULL, _gloffset_MultiTexCoord1ivARB),
+    NAME_FUNC_OFFSET( 5210, glMultiTexCoord1sARB, glMultiTexCoord1sARB, NULL, _gloffset_MultiTexCoord1sARB),
+    NAME_FUNC_OFFSET( 5231, glMultiTexCoord1svARB, glMultiTexCoord1svARB, NULL, _gloffset_MultiTexCoord1svARB),
+    NAME_FUNC_OFFSET( 5253, glMultiTexCoord2dARB, glMultiTexCoord2dARB, NULL, _gloffset_MultiTexCoord2dARB),
+    NAME_FUNC_OFFSET( 5274, glMultiTexCoord2dvARB, glMultiTexCoord2dvARB, NULL, _gloffset_MultiTexCoord2dvARB),
+    NAME_FUNC_OFFSET( 5296, glMultiTexCoord2fARB, glMultiTexCoord2fARB, NULL, _gloffset_MultiTexCoord2fARB),
+    NAME_FUNC_OFFSET( 5317, glMultiTexCoord2fvARB, glMultiTexCoord2fvARB, NULL, _gloffset_MultiTexCoord2fvARB),
+    NAME_FUNC_OFFSET( 5339, glMultiTexCoord2iARB, glMultiTexCoord2iARB, NULL, _gloffset_MultiTexCoord2iARB),
+    NAME_FUNC_OFFSET( 5360, glMultiTexCoord2ivARB, glMultiTexCoord2ivARB, NULL, _gloffset_MultiTexCoord2ivARB),
+    NAME_FUNC_OFFSET( 5382, glMultiTexCoord2sARB, glMultiTexCoord2sARB, NULL, _gloffset_MultiTexCoord2sARB),
+    NAME_FUNC_OFFSET( 5403, glMultiTexCoord2svARB, glMultiTexCoord2svARB, NULL, _gloffset_MultiTexCoord2svARB),
+    NAME_FUNC_OFFSET( 5425, glMultiTexCoord3dARB, glMultiTexCoord3dARB, NULL, _gloffset_MultiTexCoord3dARB),
+    NAME_FUNC_OFFSET( 5446, glMultiTexCoord3dvARB, glMultiTexCoord3dvARB, NULL, _gloffset_MultiTexCoord3dvARB),
+    NAME_FUNC_OFFSET( 5468, glMultiTexCoord3fARB, glMultiTexCoord3fARB, NULL, _gloffset_MultiTexCoord3fARB),
+    NAME_FUNC_OFFSET( 5489, glMultiTexCoord3fvARB, glMultiTexCoord3fvARB, NULL, _gloffset_MultiTexCoord3fvARB),
+    NAME_FUNC_OFFSET( 5511, glMultiTexCoord3iARB, glMultiTexCoord3iARB, NULL, _gloffset_MultiTexCoord3iARB),
+    NAME_FUNC_OFFSET( 5532, glMultiTexCoord3ivARB, glMultiTexCoord3ivARB, NULL, _gloffset_MultiTexCoord3ivARB),
+    NAME_FUNC_OFFSET( 5554, glMultiTexCoord3sARB, glMultiTexCoord3sARB, NULL, _gloffset_MultiTexCoord3sARB),
+    NAME_FUNC_OFFSET( 5575, glMultiTexCoord3svARB, glMultiTexCoord3svARB, NULL, _gloffset_MultiTexCoord3svARB),
+    NAME_FUNC_OFFSET( 5597, glMultiTexCoord4dARB, glMultiTexCoord4dARB, NULL, _gloffset_MultiTexCoord4dARB),
+    NAME_FUNC_OFFSET( 5618, glMultiTexCoord4dvARB, glMultiTexCoord4dvARB, NULL, _gloffset_MultiTexCoord4dvARB),
+    NAME_FUNC_OFFSET( 5640, glMultiTexCoord4fARB, glMultiTexCoord4fARB, NULL, _gloffset_MultiTexCoord4fARB),
+    NAME_FUNC_OFFSET( 5661, glMultiTexCoord4fvARB, glMultiTexCoord4fvARB, NULL, _gloffset_MultiTexCoord4fvARB),
+    NAME_FUNC_OFFSET( 5683, glMultiTexCoord4iARB, glMultiTexCoord4iARB, NULL, _gloffset_MultiTexCoord4iARB),
+    NAME_FUNC_OFFSET( 5704, glMultiTexCoord4ivARB, glMultiTexCoord4ivARB, NULL, _gloffset_MultiTexCoord4ivARB),
+    NAME_FUNC_OFFSET( 5726, glMultiTexCoord4sARB, glMultiTexCoord4sARB, NULL, _gloffset_MultiTexCoord4sARB),
+    NAME_FUNC_OFFSET( 5747, glMultiTexCoord4svARB, glMultiTexCoord4svARB, NULL, _gloffset_MultiTexCoord4svARB),
+    NAME_FUNC_OFFSET( 5769, glAttachShader, glAttachShader, NULL, _gloffset_AttachShader),
+    NAME_FUNC_OFFSET( 5784, glCreateProgram, glCreateProgram, NULL, _gloffset_CreateProgram),
+    NAME_FUNC_OFFSET( 5800, glCreateShader, glCreateShader, NULL, _gloffset_CreateShader),
+    NAME_FUNC_OFFSET( 5815, glDeleteProgram, glDeleteProgram, NULL, _gloffset_DeleteProgram),
+    NAME_FUNC_OFFSET( 5831, glDeleteShader, glDeleteShader, NULL, _gloffset_DeleteShader),
+    NAME_FUNC_OFFSET( 5846, glDetachShader, glDetachShader, NULL, _gloffset_DetachShader),
+    NAME_FUNC_OFFSET( 5861, glGetAttachedShaders, glGetAttachedShaders, NULL, _gloffset_GetAttachedShaders),
+    NAME_FUNC_OFFSET( 5882, glGetProgramInfoLog, glGetProgramInfoLog, NULL, _gloffset_GetProgramInfoLog),
+    NAME_FUNC_OFFSET( 5902, glGetProgramiv, glGetProgramiv, NULL, _gloffset_GetProgramiv),
+    NAME_FUNC_OFFSET( 5917, glGetShaderInfoLog, glGetShaderInfoLog, NULL, _gloffset_GetShaderInfoLog),
+    NAME_FUNC_OFFSET( 5936, glGetShaderiv, glGetShaderiv, NULL, _gloffset_GetShaderiv),
+    NAME_FUNC_OFFSET( 5950, glIsProgram, glIsProgram, NULL, _gloffset_IsProgram),
+    NAME_FUNC_OFFSET( 5962, glIsShader, glIsShader, NULL, _gloffset_IsShader),
+    NAME_FUNC_OFFSET( 5973, glStencilFuncSeparate, glStencilFuncSeparate, NULL, _gloffset_StencilFuncSeparate),
+    NAME_FUNC_OFFSET( 5995, glStencilMaskSeparate, glStencilMaskSeparate, NULL, _gloffset_StencilMaskSeparate),
+    NAME_FUNC_OFFSET( 6017, glStencilOpSeparate, glStencilOpSeparate, NULL, _gloffset_StencilOpSeparate),
+    NAME_FUNC_OFFSET( 6037, glUniformMatrix2x3fv, glUniformMatrix2x3fv, NULL, _gloffset_UniformMatrix2x3fv),
+    NAME_FUNC_OFFSET( 6058, glUniformMatrix2x4fv, glUniformMatrix2x4fv, NULL, _gloffset_UniformMatrix2x4fv),
+    NAME_FUNC_OFFSET( 6079, glUniformMatrix3x2fv, glUniformMatrix3x2fv, NULL, _gloffset_UniformMatrix3x2fv),
+    NAME_FUNC_OFFSET( 6100, glUniformMatrix3x4fv, glUniformMatrix3x4fv, NULL, _gloffset_UniformMatrix3x4fv),
+    NAME_FUNC_OFFSET( 6121, glUniformMatrix4x2fv, glUniformMatrix4x2fv, NULL, _gloffset_UniformMatrix4x2fv),
+    NAME_FUNC_OFFSET( 6142, glUniformMatrix4x3fv, glUniformMatrix4x3fv, NULL, _gloffset_UniformMatrix4x3fv),
+    NAME_FUNC_OFFSET( 6163, glDrawArraysInstanced, glDrawArraysInstanced, NULL, _gloffset_DrawArraysInstanced),
+    NAME_FUNC_OFFSET( 6185, glDrawElementsInstanced, glDrawElementsInstanced, NULL, _gloffset_DrawElementsInstanced),
+    NAME_FUNC_OFFSET( 6209, glLoadTransposeMatrixdARB, glLoadTransposeMatrixdARB, NULL, _gloffset_LoadTransposeMatrixdARB),
+    NAME_FUNC_OFFSET( 6235, glLoadTransposeMatrixfARB, glLoadTransposeMatrixfARB, NULL, _gloffset_LoadTransposeMatrixfARB),
+    NAME_FUNC_OFFSET( 6261, glMultTransposeMatrixdARB, glMultTransposeMatrixdARB, NULL, _gloffset_MultTransposeMatrixdARB),
+    NAME_FUNC_OFFSET( 6287, glMultTransposeMatrixfARB, glMultTransposeMatrixfARB, NULL, _gloffset_MultTransposeMatrixfARB),
+    NAME_FUNC_OFFSET( 6313, glSampleCoverageARB, glSampleCoverageARB, NULL, _gloffset_SampleCoverageARB),
+    NAME_FUNC_OFFSET( 6333, glCompressedTexImage1DARB, glCompressedTexImage1DARB, NULL, _gloffset_CompressedTexImage1DARB),
+    NAME_FUNC_OFFSET( 6359, glCompressedTexImage2DARB, glCompressedTexImage2DARB, NULL, _gloffset_CompressedTexImage2DARB),
+    NAME_FUNC_OFFSET( 6385, glCompressedTexImage3DARB, glCompressedTexImage3DARB, NULL, _gloffset_CompressedTexImage3DARB),
+    NAME_FUNC_OFFSET( 6411, glCompressedTexSubImage1DARB, glCompressedTexSubImage1DARB, NULL, _gloffset_CompressedTexSubImage1DARB),
+    NAME_FUNC_OFFSET( 6440, glCompressedTexSubImage2DARB, glCompressedTexSubImage2DARB, NULL, _gloffset_CompressedTexSubImage2DARB),
+    NAME_FUNC_OFFSET( 6469, glCompressedTexSubImage3DARB, glCompressedTexSubImage3DARB, NULL, _gloffset_CompressedTexSubImage3DARB),
+    NAME_FUNC_OFFSET( 6498, glGetCompressedTexImageARB, glGetCompressedTexImageARB, NULL, _gloffset_GetCompressedTexImageARB),
+    NAME_FUNC_OFFSET( 6525, glDisableVertexAttribArrayARB, glDisableVertexAttribArrayARB, NULL, _gloffset_DisableVertexAttribArrayARB),
+    NAME_FUNC_OFFSET( 6555, glEnableVertexAttribArrayARB, glEnableVertexAttribArrayARB, NULL, _gloffset_EnableVertexAttribArrayARB),
+    NAME_FUNC_OFFSET( 6584, glGetProgramEnvParameterdvARB, glGetProgramEnvParameterdvARB, NULL, _gloffset_GetProgramEnvParameterdvARB),
+    NAME_FUNC_OFFSET( 6614, glGetProgramEnvParameterfvARB, glGetProgramEnvParameterfvARB, NULL, _gloffset_GetProgramEnvParameterfvARB),
+    NAME_FUNC_OFFSET( 6644, glGetProgramLocalParameterdvARB, glGetProgramLocalParameterdvARB, NULL, _gloffset_GetProgramLocalParameterdvARB),
+    NAME_FUNC_OFFSET( 6676, glGetProgramLocalParameterfvARB, glGetProgramLocalParameterfvARB, NULL, _gloffset_GetProgramLocalParameterfvARB),
+    NAME_FUNC_OFFSET( 6708, glGetProgramStringARB, glGetProgramStringARB, NULL, _gloffset_GetProgramStringARB),
+    NAME_FUNC_OFFSET( 6730, glGetProgramivARB, glGetProgramivARB, NULL, _gloffset_GetProgramivARB),
+    NAME_FUNC_OFFSET( 6748, glGetVertexAttribdvARB, glGetVertexAttribdvARB, NULL, _gloffset_GetVertexAttribdvARB),
+    NAME_FUNC_OFFSET( 6771, glGetVertexAttribfvARB, glGetVertexAttribfvARB, NULL, _gloffset_GetVertexAttribfvARB),
+    NAME_FUNC_OFFSET( 6794, glGetVertexAttribivARB, glGetVertexAttribivARB, NULL, _gloffset_GetVertexAttribivARB),
+    NAME_FUNC_OFFSET( 6817, glProgramEnvParameter4dARB, glProgramEnvParameter4dARB, NULL, _gloffset_ProgramEnvParameter4dARB),
+    NAME_FUNC_OFFSET( 6844, glProgramEnvParameter4dvARB, glProgramEnvParameter4dvARB, NULL, _gloffset_ProgramEnvParameter4dvARB),
+    NAME_FUNC_OFFSET( 6872, glProgramEnvParameter4fARB, glProgramEnvParameter4fARB, NULL, _gloffset_ProgramEnvParameter4fARB),
+    NAME_FUNC_OFFSET( 6899, glProgramEnvParameter4fvARB, glProgramEnvParameter4fvARB, NULL, _gloffset_ProgramEnvParameter4fvARB),
+    NAME_FUNC_OFFSET( 6927, glProgramLocalParameter4dARB, glProgramLocalParameter4dARB, NULL, _gloffset_ProgramLocalParameter4dARB),
+    NAME_FUNC_OFFSET( 6956, glProgramLocalParameter4dvARB, glProgramLocalParameter4dvARB, NULL, _gloffset_ProgramLocalParameter4dvARB),
+    NAME_FUNC_OFFSET( 6986, glProgramLocalParameter4fARB, glProgramLocalParameter4fARB, NULL, _gloffset_ProgramLocalParameter4fARB),
+    NAME_FUNC_OFFSET( 7015, glProgramLocalParameter4fvARB, glProgramLocalParameter4fvARB, NULL, _gloffset_ProgramLocalParameter4fvARB),
+    NAME_FUNC_OFFSET( 7045, glProgramStringARB, glProgramStringARB, NULL, _gloffset_ProgramStringARB),
+    NAME_FUNC_OFFSET( 7064, glVertexAttrib1dARB, glVertexAttrib1dARB, NULL, _gloffset_VertexAttrib1dARB),
+    NAME_FUNC_OFFSET( 7084, glVertexAttrib1dvARB, glVertexAttrib1dvARB, NULL, _gloffset_VertexAttrib1dvARB),
+    NAME_FUNC_OFFSET( 7105, glVertexAttrib1fARB, glVertexAttrib1fARB, NULL, _gloffset_VertexAttrib1fARB),
+    NAME_FUNC_OFFSET( 7125, glVertexAttrib1fvARB, glVertexAttrib1fvARB, NULL, _gloffset_VertexAttrib1fvARB),
+    NAME_FUNC_OFFSET( 7146, glVertexAttrib1sARB, glVertexAttrib1sARB, NULL, _gloffset_VertexAttrib1sARB),
+    NAME_FUNC_OFFSET( 7166, glVertexAttrib1svARB, glVertexAttrib1svARB, NULL, _gloffset_VertexAttrib1svARB),
+    NAME_FUNC_OFFSET( 7187, glVertexAttrib2dARB, glVertexAttrib2dARB, NULL, _gloffset_VertexAttrib2dARB),
+    NAME_FUNC_OFFSET( 7207, glVertexAttrib2dvARB, glVertexAttrib2dvARB, NULL, _gloffset_VertexAttrib2dvARB),
+    NAME_FUNC_OFFSET( 7228, glVertexAttrib2fARB, glVertexAttrib2fARB, NULL, _gloffset_VertexAttrib2fARB),
+    NAME_FUNC_OFFSET( 7248, glVertexAttrib2fvARB, glVertexAttrib2fvARB, NULL, _gloffset_VertexAttrib2fvARB),
+    NAME_FUNC_OFFSET( 7269, glVertexAttrib2sARB, glVertexAttrib2sARB, NULL, _gloffset_VertexAttrib2sARB),
+    NAME_FUNC_OFFSET( 7289, glVertexAttrib2svARB, glVertexAttrib2svARB, NULL, _gloffset_VertexAttrib2svARB),
+    NAME_FUNC_OFFSET( 7310, glVertexAttrib3dARB, glVertexAttrib3dARB, NULL, _gloffset_VertexAttrib3dARB),
+    NAME_FUNC_OFFSET( 7330, glVertexAttrib3dvARB, glVertexAttrib3dvARB, NULL, _gloffset_VertexAttrib3dvARB),
+    NAME_FUNC_OFFSET( 7351, glVertexAttrib3fARB, glVertexAttrib3fARB, NULL, _gloffset_VertexAttrib3fARB),
+    NAME_FUNC_OFFSET( 7371, glVertexAttrib3fvARB, glVertexAttrib3fvARB, NULL, _gloffset_VertexAttrib3fvARB),
+    NAME_FUNC_OFFSET( 7392, glVertexAttrib3sARB, glVertexAttrib3sARB, NULL, _gloffset_VertexAttrib3sARB),
+    NAME_FUNC_OFFSET( 7412, glVertexAttrib3svARB, glVertexAttrib3svARB, NULL, _gloffset_VertexAttrib3svARB),
+    NAME_FUNC_OFFSET( 7433, glVertexAttrib4NbvARB, glVertexAttrib4NbvARB, NULL, _gloffset_VertexAttrib4NbvARB),
+    NAME_FUNC_OFFSET( 7455, glVertexAttrib4NivARB, glVertexAttrib4NivARB, NULL, _gloffset_VertexAttrib4NivARB),
+    NAME_FUNC_OFFSET( 7477, glVertexAttrib4NsvARB, glVertexAttrib4NsvARB, NULL, _gloffset_VertexAttrib4NsvARB),
+    NAME_FUNC_OFFSET( 7499, glVertexAttrib4NubARB, glVertexAttrib4NubARB, NULL, _gloffset_VertexAttrib4NubARB),
+    NAME_FUNC_OFFSET( 7521, glVertexAttrib4NubvARB, glVertexAttrib4NubvARB, NULL, _gloffset_VertexAttrib4NubvARB),
+    NAME_FUNC_OFFSET( 7544, glVertexAttrib4NuivARB, glVertexAttrib4NuivARB, NULL, _gloffset_VertexAttrib4NuivARB),
+    NAME_FUNC_OFFSET( 7567, glVertexAttrib4NusvARB, glVertexAttrib4NusvARB, NULL, _gloffset_VertexAttrib4NusvARB),
+    NAME_FUNC_OFFSET( 7590, glVertexAttrib4bvARB, glVertexAttrib4bvARB, NULL, _gloffset_VertexAttrib4bvARB),
+    NAME_FUNC_OFFSET( 7611, glVertexAttrib4dARB, glVertexAttrib4dARB, NULL, _gloffset_VertexAttrib4dARB),
+    NAME_FUNC_OFFSET( 7631, glVertexAttrib4dvARB, glVertexAttrib4dvARB, NULL, _gloffset_VertexAttrib4dvARB),
+    NAME_FUNC_OFFSET( 7652, glVertexAttrib4fARB, glVertexAttrib4fARB, NULL, _gloffset_VertexAttrib4fARB),
+    NAME_FUNC_OFFSET( 7672, glVertexAttrib4fvARB, glVertexAttrib4fvARB, NULL, _gloffset_VertexAttrib4fvARB),
+    NAME_FUNC_OFFSET( 7693, glVertexAttrib4ivARB, glVertexAttrib4ivARB, NULL, _gloffset_VertexAttrib4ivARB),
+    NAME_FUNC_OFFSET( 7714, glVertexAttrib4sARB, glVertexAttrib4sARB, NULL, _gloffset_VertexAttrib4sARB),
+    NAME_FUNC_OFFSET( 7734, glVertexAttrib4svARB, glVertexAttrib4svARB, NULL, _gloffset_VertexAttrib4svARB),
+    NAME_FUNC_OFFSET( 7755, glVertexAttrib4ubvARB, glVertexAttrib4ubvARB, NULL, _gloffset_VertexAttrib4ubvARB),
+    NAME_FUNC_OFFSET( 7777, glVertexAttrib4uivARB, glVertexAttrib4uivARB, NULL, _gloffset_VertexAttrib4uivARB),
+    NAME_FUNC_OFFSET( 7799, glVertexAttrib4usvARB, glVertexAttrib4usvARB, NULL, _gloffset_VertexAttrib4usvARB),
+    NAME_FUNC_OFFSET( 7821, glVertexAttribPointerARB, glVertexAttribPointerARB, NULL, _gloffset_VertexAttribPointerARB),
+    NAME_FUNC_OFFSET( 7846, glBindBufferARB, glBindBufferARB, NULL, _gloffset_BindBufferARB),
+    NAME_FUNC_OFFSET( 7862, glBufferDataARB, glBufferDataARB, NULL, _gloffset_BufferDataARB),
+    NAME_FUNC_OFFSET( 7878, glBufferSubDataARB, glBufferSubDataARB, NULL, _gloffset_BufferSubDataARB),
+    NAME_FUNC_OFFSET( 7897, glDeleteBuffersARB, glDeleteBuffersARB, NULL, _gloffset_DeleteBuffersARB),
+    NAME_FUNC_OFFSET( 7916, glGenBuffersARB, glGenBuffersARB, NULL, _gloffset_GenBuffersARB),
+    NAME_FUNC_OFFSET( 7932, glGetBufferParameterivARB, glGetBufferParameterivARB, NULL, _gloffset_GetBufferParameterivARB),
+    NAME_FUNC_OFFSET( 7958, glGetBufferPointervARB, glGetBufferPointervARB, NULL, _gloffset_GetBufferPointervARB),
+    NAME_FUNC_OFFSET( 7981, glGetBufferSubDataARB, glGetBufferSubDataARB, NULL, _gloffset_GetBufferSubDataARB),
+    NAME_FUNC_OFFSET( 8003, glIsBufferARB, glIsBufferARB, NULL, _gloffset_IsBufferARB),
+    NAME_FUNC_OFFSET( 8017, glMapBufferARB, glMapBufferARB, NULL, _gloffset_MapBufferARB),
+    NAME_FUNC_OFFSET( 8032, glUnmapBufferARB, glUnmapBufferARB, NULL, _gloffset_UnmapBufferARB),
+    NAME_FUNC_OFFSET( 8049, glBeginQueryARB, glBeginQueryARB, NULL, _gloffset_BeginQueryARB),
+    NAME_FUNC_OFFSET( 8065, glDeleteQueriesARB, glDeleteQueriesARB, NULL, _gloffset_DeleteQueriesARB),
+    NAME_FUNC_OFFSET( 8084, glEndQueryARB, glEndQueryARB, NULL, _gloffset_EndQueryARB),
+    NAME_FUNC_OFFSET( 8098, glGenQueriesARB, glGenQueriesARB, NULL, _gloffset_GenQueriesARB),
+    NAME_FUNC_OFFSET( 8114, glGetQueryObjectivARB, glGetQueryObjectivARB, NULL, _gloffset_GetQueryObjectivARB),
+    NAME_FUNC_OFFSET( 8136, glGetQueryObjectuivARB, glGetQueryObjectuivARB, NULL, _gloffset_GetQueryObjectuivARB),
+    NAME_FUNC_OFFSET( 8159, glGetQueryivARB, glGetQueryivARB, NULL, _gloffset_GetQueryivARB),
+    NAME_FUNC_OFFSET( 8175, glIsQueryARB, glIsQueryARB, NULL, _gloffset_IsQueryARB),
+    NAME_FUNC_OFFSET( 8188, glAttachObjectARB, glAttachObjectARB, NULL, _gloffset_AttachObjectARB),
+    NAME_FUNC_OFFSET( 8206, glCompileShaderARB, glCompileShaderARB, NULL, _gloffset_CompileShaderARB),
+    NAME_FUNC_OFFSET( 8225, glCreateProgramObjectARB, glCreateProgramObjectARB, NULL, _gloffset_CreateProgramObjectARB),
+    NAME_FUNC_OFFSET( 8250, glCreateShaderObjectARB, glCreateShaderObjectARB, NULL, _gloffset_CreateShaderObjectARB),
+    NAME_FUNC_OFFSET( 8274, glDeleteObjectARB, glDeleteObjectARB, NULL, _gloffset_DeleteObjectARB),
+    NAME_FUNC_OFFSET( 8292, glDetachObjectARB, glDetachObjectARB, NULL, _gloffset_DetachObjectARB),
+    NAME_FUNC_OFFSET( 8310, glGetActiveUniformARB, glGetActiveUniformARB, NULL, _gloffset_GetActiveUniformARB),
+    NAME_FUNC_OFFSET( 8332, glGetAttachedObjectsARB, glGetAttachedObjectsARB, NULL, _gloffset_GetAttachedObjectsARB),
+    NAME_FUNC_OFFSET( 8356, glGetHandleARB, glGetHandleARB, NULL, _gloffset_GetHandleARB),
+    NAME_FUNC_OFFSET( 8371, glGetInfoLogARB, glGetInfoLogARB, NULL, _gloffset_GetInfoLogARB),
+    NAME_FUNC_OFFSET( 8387, glGetObjectParameterfvARB, glGetObjectParameterfvARB, NULL, _gloffset_GetObjectParameterfvARB),
+    NAME_FUNC_OFFSET( 8413, glGetObjectParameterivARB, glGetObjectParameterivARB, NULL, _gloffset_GetObjectParameterivARB),
+    NAME_FUNC_OFFSET( 8439, glGetShaderSourceARB, glGetShaderSourceARB, NULL, _gloffset_GetShaderSourceARB),
+    NAME_FUNC_OFFSET( 8460, glGetUniformLocationARB, glGetUniformLocationARB, NULL, _gloffset_GetUniformLocationARB),
+    NAME_FUNC_OFFSET( 8484, glGetUniformfvARB, glGetUniformfvARB, NULL, _gloffset_GetUniformfvARB),
+    NAME_FUNC_OFFSET( 8502, glGetUniformivARB, glGetUniformivARB, NULL, _gloffset_GetUniformivARB),
+    NAME_FUNC_OFFSET( 8520, glLinkProgramARB, glLinkProgramARB, NULL, _gloffset_LinkProgramARB),
+    NAME_FUNC_OFFSET( 8537, glShaderSourceARB, glShaderSourceARB, NULL, _gloffset_ShaderSourceARB),
+    NAME_FUNC_OFFSET( 8555, glUniform1fARB, glUniform1fARB, NULL, _gloffset_Uniform1fARB),
+    NAME_FUNC_OFFSET( 8570, glUniform1fvARB, glUniform1fvARB, NULL, _gloffset_Uniform1fvARB),
+    NAME_FUNC_OFFSET( 8586, glUniform1iARB, glUniform1iARB, NULL, _gloffset_Uniform1iARB),
+    NAME_FUNC_OFFSET( 8601, glUniform1ivARB, glUniform1ivARB, NULL, _gloffset_Uniform1ivARB),
+    NAME_FUNC_OFFSET( 8617, glUniform2fARB, glUniform2fARB, NULL, _gloffset_Uniform2fARB),
+    NAME_FUNC_OFFSET( 8632, glUniform2fvARB, glUniform2fvARB, NULL, _gloffset_Uniform2fvARB),
+    NAME_FUNC_OFFSET( 8648, glUniform2iARB, glUniform2iARB, NULL, _gloffset_Uniform2iARB),
+    NAME_FUNC_OFFSET( 8663, glUniform2ivARB, glUniform2ivARB, NULL, _gloffset_Uniform2ivARB),
+    NAME_FUNC_OFFSET( 8679, glUniform3fARB, glUniform3fARB, NULL, _gloffset_Uniform3fARB),
+    NAME_FUNC_OFFSET( 8694, glUniform3fvARB, glUniform3fvARB, NULL, _gloffset_Uniform3fvARB),
+    NAME_FUNC_OFFSET( 8710, glUniform3iARB, glUniform3iARB, NULL, _gloffset_Uniform3iARB),
+    NAME_FUNC_OFFSET( 8725, glUniform3ivARB, glUniform3ivARB, NULL, _gloffset_Uniform3ivARB),
+    NAME_FUNC_OFFSET( 8741, glUniform4fARB, glUniform4fARB, NULL, _gloffset_Uniform4fARB),
+    NAME_FUNC_OFFSET( 8756, glUniform4fvARB, glUniform4fvARB, NULL, _gloffset_Uniform4fvARB),
+    NAME_FUNC_OFFSET( 8772, glUniform4iARB, glUniform4iARB, NULL, _gloffset_Uniform4iARB),
+    NAME_FUNC_OFFSET( 8787, glUniform4ivARB, glUniform4ivARB, NULL, _gloffset_Uniform4ivARB),
+    NAME_FUNC_OFFSET( 8803, glUniformMatrix2fvARB, glUniformMatrix2fvARB, NULL, _gloffset_UniformMatrix2fvARB),
+    NAME_FUNC_OFFSET( 8825, glUniformMatrix3fvARB, glUniformMatrix3fvARB, NULL, _gloffset_UniformMatrix3fvARB),
+    NAME_FUNC_OFFSET( 8847, glUniformMatrix4fvARB, glUniformMatrix4fvARB, NULL, _gloffset_UniformMatrix4fvARB),
+    NAME_FUNC_OFFSET( 8869, glUseProgramObjectARB, glUseProgramObjectARB, NULL, _gloffset_UseProgramObjectARB),
+    NAME_FUNC_OFFSET( 8891, glValidateProgramARB, glValidateProgramARB, NULL, _gloffset_ValidateProgramARB),
+    NAME_FUNC_OFFSET( 8912, glBindAttribLocationARB, glBindAttribLocationARB, NULL, _gloffset_BindAttribLocationARB),
+    NAME_FUNC_OFFSET( 8936, glGetActiveAttribARB, glGetActiveAttribARB, NULL, _gloffset_GetActiveAttribARB),
+    NAME_FUNC_OFFSET( 8957, glGetAttribLocationARB, glGetAttribLocationARB, NULL, _gloffset_GetAttribLocationARB),
+    NAME_FUNC_OFFSET( 8980, glDrawBuffersARB, glDrawBuffersARB, NULL, _gloffset_DrawBuffersARB),
+    NAME_FUNC_OFFSET( 8997, glRenderbufferStorageMultisample, glRenderbufferStorageMultisample, NULL, _gloffset_RenderbufferStorageMultisample),
+    NAME_FUNC_OFFSET( 9030, glFlushMappedBufferRange, glFlushMappedBufferRange, NULL, _gloffset_FlushMappedBufferRange),
+    NAME_FUNC_OFFSET( 9055, glMapBufferRange, glMapBufferRange, NULL, _gloffset_MapBufferRange),
+    NAME_FUNC_OFFSET( 9072, glBindVertexArray, glBindVertexArray, NULL, _gloffset_BindVertexArray),
+    NAME_FUNC_OFFSET( 9090, glGenVertexArrays, glGenVertexArrays, NULL, _gloffset_GenVertexArrays),
+    NAME_FUNC_OFFSET( 9108, glCopyBufferSubData, glCopyBufferSubData, NULL, _gloffset_CopyBufferSubData),
+    NAME_FUNC_OFFSET( 9128, glClientWaitSync, glClientWaitSync, NULL, _gloffset_ClientWaitSync),
+    NAME_FUNC_OFFSET( 9145, glDeleteSync, glDeleteSync, NULL, _gloffset_DeleteSync),
+    NAME_FUNC_OFFSET( 9158, glFenceSync, glFenceSync, NULL, _gloffset_FenceSync),
+    NAME_FUNC_OFFSET( 9170, glGetInteger64v, glGetInteger64v, NULL, _gloffset_GetInteger64v),
+    NAME_FUNC_OFFSET( 9186, glGetSynciv, glGetSynciv, NULL, _gloffset_GetSynciv),
+    NAME_FUNC_OFFSET( 9198, glIsSync, glIsSync, NULL, _gloffset_IsSync),
+    NAME_FUNC_OFFSET( 9207, glWaitSync, glWaitSync, NULL, _gloffset_WaitSync),
+    NAME_FUNC_OFFSET( 9218, glDrawElementsBaseVertex, glDrawElementsBaseVertex, NULL, _gloffset_DrawElementsBaseVertex),
+    NAME_FUNC_OFFSET( 9243, glDrawRangeElementsBaseVertex, glDrawRangeElementsBaseVertex, NULL, _gloffset_DrawRangeElementsBaseVertex),
+    NAME_FUNC_OFFSET( 9273, glMultiDrawElementsBaseVertex, glMultiDrawElementsBaseVertex, NULL, _gloffset_MultiDrawElementsBaseVertex),
+    NAME_FUNC_OFFSET( 9303, glPolygonOffsetEXT, glPolygonOffsetEXT, NULL, _gloffset_PolygonOffsetEXT),
+    NAME_FUNC_OFFSET( 9322, gl_dispatch_stub_580, gl_dispatch_stub_580, NULL, _gloffset_GetPixelTexGenParameterfvSGIS),
+    NAME_FUNC_OFFSET( 9354, gl_dispatch_stub_581, gl_dispatch_stub_581, NULL, _gloffset_GetPixelTexGenParameterivSGIS),
+    NAME_FUNC_OFFSET( 9386, gl_dispatch_stub_582, gl_dispatch_stub_582, NULL, _gloffset_PixelTexGenParameterfSGIS),
+    NAME_FUNC_OFFSET( 9414, gl_dispatch_stub_583, gl_dispatch_stub_583, NULL, _gloffset_PixelTexGenParameterfvSGIS),
+    NAME_FUNC_OFFSET( 9443, gl_dispatch_stub_584, gl_dispatch_stub_584, NULL, _gloffset_PixelTexGenParameteriSGIS),
+    NAME_FUNC_OFFSET( 9471, gl_dispatch_stub_585, gl_dispatch_stub_585, NULL, _gloffset_PixelTexGenParameterivSGIS),
+    NAME_FUNC_OFFSET( 9500, gl_dispatch_stub_586, gl_dispatch_stub_586, NULL, _gloffset_SampleMaskSGIS),
+    NAME_FUNC_OFFSET( 9517, gl_dispatch_stub_587, gl_dispatch_stub_587, NULL, _gloffset_SamplePatternSGIS),
+    NAME_FUNC_OFFSET( 9537, glColorPointerEXT, glColorPointerEXT, NULL, _gloffset_ColorPointerEXT),
+    NAME_FUNC_OFFSET( 9555, glEdgeFlagPointerEXT, glEdgeFlagPointerEXT, NULL, _gloffset_EdgeFlagPointerEXT),
+    NAME_FUNC_OFFSET( 9576, glIndexPointerEXT, glIndexPointerEXT, NULL, _gloffset_IndexPointerEXT),
+    NAME_FUNC_OFFSET( 9594, glNormalPointerEXT, glNormalPointerEXT, NULL, _gloffset_NormalPointerEXT),
+    NAME_FUNC_OFFSET( 9613, glTexCoordPointerEXT, glTexCoordPointerEXT, NULL, _gloffset_TexCoordPointerEXT),
+    NAME_FUNC_OFFSET( 9634, glVertexPointerEXT, glVertexPointerEXT, NULL, _gloffset_VertexPointerEXT),
+    NAME_FUNC_OFFSET( 9653, glPointParameterfEXT, glPointParameterfEXT, NULL, _gloffset_PointParameterfEXT),
+    NAME_FUNC_OFFSET( 9674, glPointParameterfvEXT, glPointParameterfvEXT, NULL, _gloffset_PointParameterfvEXT),
+    NAME_FUNC_OFFSET( 9696, glLockArraysEXT, glLockArraysEXT, NULL, _gloffset_LockArraysEXT),
+    NAME_FUNC_OFFSET( 9712, glUnlockArraysEXT, glUnlockArraysEXT, NULL, _gloffset_UnlockArraysEXT),
+    NAME_FUNC_OFFSET( 9730, gl_dispatch_stub_598, gl_dispatch_stub_598, NULL, _gloffset_CullParameterdvEXT),
+    NAME_FUNC_OFFSET( 9751, gl_dispatch_stub_599, gl_dispatch_stub_599, NULL, _gloffset_CullParameterfvEXT),
+    NAME_FUNC_OFFSET( 9772, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, _gloffset_SecondaryColor3bEXT),
+    NAME_FUNC_OFFSET( 9794, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, _gloffset_SecondaryColor3bvEXT),
+    NAME_FUNC_OFFSET( 9817, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, _gloffset_SecondaryColor3dEXT),
+    NAME_FUNC_OFFSET( 9839, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, _gloffset_SecondaryColor3dvEXT),
+    NAME_FUNC_OFFSET( 9862, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, _gloffset_SecondaryColor3fEXT),
+    NAME_FUNC_OFFSET( 9884, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, _gloffset_SecondaryColor3fvEXT),
+    NAME_FUNC_OFFSET( 9907, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, _gloffset_SecondaryColor3iEXT),
+    NAME_FUNC_OFFSET( 9929, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, _gloffset_SecondaryColor3ivEXT),
+    NAME_FUNC_OFFSET( 9952, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, _gloffset_SecondaryColor3sEXT),
+    NAME_FUNC_OFFSET( 9974, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, _gloffset_SecondaryColor3svEXT),
+    NAME_FUNC_OFFSET( 9997, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, _gloffset_SecondaryColor3ubEXT),
+    NAME_FUNC_OFFSET(10020, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, _gloffset_SecondaryColor3ubvEXT),
+    NAME_FUNC_OFFSET(10044, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, _gloffset_SecondaryColor3uiEXT),
+    NAME_FUNC_OFFSET(10067, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, _gloffset_SecondaryColor3uivEXT),
+    NAME_FUNC_OFFSET(10091, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, _gloffset_SecondaryColor3usEXT),
+    NAME_FUNC_OFFSET(10114, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, _gloffset_SecondaryColor3usvEXT),
+    NAME_FUNC_OFFSET(10138, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, _gloffset_SecondaryColorPointerEXT),
+    NAME_FUNC_OFFSET(10165, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, _gloffset_MultiDrawArraysEXT),
+    NAME_FUNC_OFFSET(10186, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, _gloffset_MultiDrawElementsEXT),
+    NAME_FUNC_OFFSET(10209, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, _gloffset_FogCoordPointerEXT),
+    NAME_FUNC_OFFSET(10230, glFogCoorddEXT, glFogCoorddEXT, NULL, _gloffset_FogCoorddEXT),
+    NAME_FUNC_OFFSET(10245, glFogCoorddvEXT, glFogCoorddvEXT, NULL, _gloffset_FogCoorddvEXT),
+    NAME_FUNC_OFFSET(10261, glFogCoordfEXT, glFogCoordfEXT, NULL, _gloffset_FogCoordfEXT),
+    NAME_FUNC_OFFSET(10276, glFogCoordfvEXT, glFogCoordfvEXT, NULL, _gloffset_FogCoordfvEXT),
+    NAME_FUNC_OFFSET(10292, gl_dispatch_stub_624, gl_dispatch_stub_624, NULL, _gloffset_PixelTexGenSGIX),
+    NAME_FUNC_OFFSET(10310, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, _gloffset_BlendFuncSeparateEXT),
+    NAME_FUNC_OFFSET(10333, glFlushVertexArrayRangeNV, glFlushVertexArrayRangeNV, NULL, _gloffset_FlushVertexArrayRangeNV),
+    NAME_FUNC_OFFSET(10359, glVertexArrayRangeNV, glVertexArrayRangeNV, NULL, _gloffset_VertexArrayRangeNV),
+    NAME_FUNC_OFFSET(10380, glCombinerInputNV, glCombinerInputNV, NULL, _gloffset_CombinerInputNV),
+    NAME_FUNC_OFFSET(10398, glCombinerOutputNV, glCombinerOutputNV, NULL, _gloffset_CombinerOutputNV),
+    NAME_FUNC_OFFSET(10417, glCombinerParameterfNV, glCombinerParameterfNV, NULL, _gloffset_CombinerParameterfNV),
+    NAME_FUNC_OFFSET(10440, glCombinerParameterfvNV, glCombinerParameterfvNV, NULL, _gloffset_CombinerParameterfvNV),
+    NAME_FUNC_OFFSET(10464, glCombinerParameteriNV, glCombinerParameteriNV, NULL, _gloffset_CombinerParameteriNV),
+    NAME_FUNC_OFFSET(10487, glCombinerParameterivNV, glCombinerParameterivNV, NULL, _gloffset_CombinerParameterivNV),
+    NAME_FUNC_OFFSET(10511, glFinalCombinerInputNV, glFinalCombinerInputNV, NULL, _gloffset_FinalCombinerInputNV),
+    NAME_FUNC_OFFSET(10534, glGetCombinerInputParameterfvNV, glGetCombinerInputParameterfvNV, NULL, _gloffset_GetCombinerInputParameterfvNV),
+    NAME_FUNC_OFFSET(10566, glGetCombinerInputParameterivNV, glGetCombinerInputParameterivNV, NULL, _gloffset_GetCombinerInputParameterivNV),
+    NAME_FUNC_OFFSET(10598, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterfvNV, NULL, _gloffset_GetCombinerOutputParameterfvNV),
+    NAME_FUNC_OFFSET(10631, glGetCombinerOutputParameterivNV, glGetCombinerOutputParameterivNV, NULL, _gloffset_GetCombinerOutputParameterivNV),
+    NAME_FUNC_OFFSET(10664, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterfvNV, NULL, _gloffset_GetFinalCombinerInputParameterfvNV),
+    NAME_FUNC_OFFSET(10701, glGetFinalCombinerInputParameterivNV, glGetFinalCombinerInputParameterivNV, NULL, _gloffset_GetFinalCombinerInputParameterivNV),
+    NAME_FUNC_OFFSET(10738, glResizeBuffersMESA, glResizeBuffersMESA, NULL, _gloffset_ResizeBuffersMESA),
+    NAME_FUNC_OFFSET(10758, glWindowPos2dMESA, glWindowPos2dMESA, NULL, _gloffset_WindowPos2dMESA),
+    NAME_FUNC_OFFSET(10776, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, _gloffset_WindowPos2dvMESA),
+    NAME_FUNC_OFFSET(10795, glWindowPos2fMESA, glWindowPos2fMESA, NULL, _gloffset_WindowPos2fMESA),
+    NAME_FUNC_OFFSET(10813, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, _gloffset_WindowPos2fvMESA),
+    NAME_FUNC_OFFSET(10832, glWindowPos2iMESA, glWindowPos2iMESA, NULL, _gloffset_WindowPos2iMESA),
+    NAME_FUNC_OFFSET(10850, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, _gloffset_WindowPos2ivMESA),
+    NAME_FUNC_OFFSET(10869, glWindowPos2sMESA, glWindowPos2sMESA, NULL, _gloffset_WindowPos2sMESA),
+    NAME_FUNC_OFFSET(10887, glWindowPos2svMESA, glWindowPos2svMESA, NULL, _gloffset_WindowPos2svMESA),
+    NAME_FUNC_OFFSET(10906, glWindowPos3dMESA, glWindowPos3dMESA, NULL, _gloffset_WindowPos3dMESA),
+    NAME_FUNC_OFFSET(10924, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, _gloffset_WindowPos3dvMESA),
+    NAME_FUNC_OFFSET(10943, glWindowPos3fMESA, glWindowPos3fMESA, NULL, _gloffset_WindowPos3fMESA),
+    NAME_FUNC_OFFSET(10961, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, _gloffset_WindowPos3fvMESA),
+    NAME_FUNC_OFFSET(10980, glWindowPos3iMESA, glWindowPos3iMESA, NULL, _gloffset_WindowPos3iMESA),
+    NAME_FUNC_OFFSET(10998, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, _gloffset_WindowPos3ivMESA),
+    NAME_FUNC_OFFSET(11017, glWindowPos3sMESA, glWindowPos3sMESA, NULL, _gloffset_WindowPos3sMESA),
+    NAME_FUNC_OFFSET(11035, glWindowPos3svMESA, glWindowPos3svMESA, NULL, _gloffset_WindowPos3svMESA),
+    NAME_FUNC_OFFSET(11054, glWindowPos4dMESA, glWindowPos4dMESA, NULL, _gloffset_WindowPos4dMESA),
+    NAME_FUNC_OFFSET(11072, glWindowPos4dvMESA, glWindowPos4dvMESA, NULL, _gloffset_WindowPos4dvMESA),
+    NAME_FUNC_OFFSET(11091, glWindowPos4fMESA, glWindowPos4fMESA, NULL, _gloffset_WindowPos4fMESA),
+    NAME_FUNC_OFFSET(11109, glWindowPos4fvMESA, glWindowPos4fvMESA, NULL, _gloffset_WindowPos4fvMESA),
+    NAME_FUNC_OFFSET(11128, glWindowPos4iMESA, glWindowPos4iMESA, NULL, _gloffset_WindowPos4iMESA),
+    NAME_FUNC_OFFSET(11146, glWindowPos4ivMESA, glWindowPos4ivMESA, NULL, _gloffset_WindowPos4ivMESA),
+    NAME_FUNC_OFFSET(11165, glWindowPos4sMESA, glWindowPos4sMESA, NULL, _gloffset_WindowPos4sMESA),
+    NAME_FUNC_OFFSET(11183, glWindowPos4svMESA, glWindowPos4svMESA, NULL, _gloffset_WindowPos4svMESA),
+    NAME_FUNC_OFFSET(11202, gl_dispatch_stub_666, gl_dispatch_stub_666, NULL, _gloffset_MultiModeDrawArraysIBM),
+    NAME_FUNC_OFFSET(11227, gl_dispatch_stub_667, gl_dispatch_stub_667, NULL, _gloffset_MultiModeDrawElementsIBM),
+    NAME_FUNC_OFFSET(11254, gl_dispatch_stub_668, gl_dispatch_stub_668, NULL, _gloffset_DeleteFencesNV),
+    NAME_FUNC_OFFSET(11271, gl_dispatch_stub_669, gl_dispatch_stub_669, NULL, _gloffset_FinishFenceNV),
+    NAME_FUNC_OFFSET(11287, gl_dispatch_stub_670, gl_dispatch_stub_670, NULL, _gloffset_GenFencesNV),
+    NAME_FUNC_OFFSET(11301, gl_dispatch_stub_671, gl_dispatch_stub_671, NULL, _gloffset_GetFenceivNV),
+    NAME_FUNC_OFFSET(11316, gl_dispatch_stub_672, gl_dispatch_stub_672, NULL, _gloffset_IsFenceNV),
+    NAME_FUNC_OFFSET(11328, gl_dispatch_stub_673, gl_dispatch_stub_673, NULL, _gloffset_SetFenceNV),
+    NAME_FUNC_OFFSET(11341, gl_dispatch_stub_674, gl_dispatch_stub_674, NULL, _gloffset_TestFenceNV),
+    NAME_FUNC_OFFSET(11355, glAreProgramsResidentNV, glAreProgramsResidentNV, NULL, _gloffset_AreProgramsResidentNV),
+    NAME_FUNC_OFFSET(11379, glBindProgramNV, glBindProgramNV, NULL, _gloffset_BindProgramNV),
+    NAME_FUNC_OFFSET(11395, glDeleteProgramsNV, glDeleteProgramsNV, NULL, _gloffset_DeleteProgramsNV),
+    NAME_FUNC_OFFSET(11414, glExecuteProgramNV, glExecuteProgramNV, NULL, _gloffset_ExecuteProgramNV),
+    NAME_FUNC_OFFSET(11433, glGenProgramsNV, glGenProgramsNV, NULL, _gloffset_GenProgramsNV),
+    NAME_FUNC_OFFSET(11449, glGetProgramParameterdvNV, glGetProgramParameterdvNV, NULL, _gloffset_GetProgramParameterdvNV),
+    NAME_FUNC_OFFSET(11475, glGetProgramParameterfvNV, glGetProgramParameterfvNV, NULL, _gloffset_GetProgramParameterfvNV),
+    NAME_FUNC_OFFSET(11501, glGetProgramStringNV, glGetProgramStringNV, NULL, _gloffset_GetProgramStringNV),
+    NAME_FUNC_OFFSET(11522, glGetProgramivNV, glGetProgramivNV, NULL, _gloffset_GetProgramivNV),
+    NAME_FUNC_OFFSET(11539, glGetTrackMatrixivNV, glGetTrackMatrixivNV, NULL, _gloffset_GetTrackMatrixivNV),
+    NAME_FUNC_OFFSET(11560, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, _gloffset_GetVertexAttribPointervNV),
+    NAME_FUNC_OFFSET(11588, glGetVertexAttribdvNV, glGetVertexAttribdvNV, NULL, _gloffset_GetVertexAttribdvNV),
+    NAME_FUNC_OFFSET(11610, glGetVertexAttribfvNV, glGetVertexAttribfvNV, NULL, _gloffset_GetVertexAttribfvNV),
+    NAME_FUNC_OFFSET(11632, glGetVertexAttribivNV, glGetVertexAttribivNV, NULL, _gloffset_GetVertexAttribivNV),
+    NAME_FUNC_OFFSET(11654, glIsProgramNV, glIsProgramNV, NULL, _gloffset_IsProgramNV),
+    NAME_FUNC_OFFSET(11668, glLoadProgramNV, glLoadProgramNV, NULL, _gloffset_LoadProgramNV),
+    NAME_FUNC_OFFSET(11684, glProgramParameters4dvNV, glProgramParameters4dvNV, NULL, _gloffset_ProgramParameters4dvNV),
+    NAME_FUNC_OFFSET(11709, glProgramParameters4fvNV, glProgramParameters4fvNV, NULL, _gloffset_ProgramParameters4fvNV),
+    NAME_FUNC_OFFSET(11734, glRequestResidentProgramsNV, glRequestResidentProgramsNV, NULL, _gloffset_RequestResidentProgramsNV),
+    NAME_FUNC_OFFSET(11762, glTrackMatrixNV, glTrackMatrixNV, NULL, _gloffset_TrackMatrixNV),
+    NAME_FUNC_OFFSET(11778, glVertexAttrib1dNV, glVertexAttrib1dNV, NULL, _gloffset_VertexAttrib1dNV),
+    NAME_FUNC_OFFSET(11797, glVertexAttrib1dvNV, glVertexAttrib1dvNV, NULL, _gloffset_VertexAttrib1dvNV),
+    NAME_FUNC_OFFSET(11817, glVertexAttrib1fNV, glVertexAttrib1fNV, NULL, _gloffset_VertexAttrib1fNV),
+    NAME_FUNC_OFFSET(11836, glVertexAttrib1fvNV, glVertexAttrib1fvNV, NULL, _gloffset_VertexAttrib1fvNV),
+    NAME_FUNC_OFFSET(11856, glVertexAttrib1sNV, glVertexAttrib1sNV, NULL, _gloffset_VertexAttrib1sNV),
+    NAME_FUNC_OFFSET(11875, glVertexAttrib1svNV, glVertexAttrib1svNV, NULL, _gloffset_VertexAttrib1svNV),
+    NAME_FUNC_OFFSET(11895, glVertexAttrib2dNV, glVertexAttrib2dNV, NULL, _gloffset_VertexAttrib2dNV),
+    NAME_FUNC_OFFSET(11914, glVertexAttrib2dvNV, glVertexAttrib2dvNV, NULL, _gloffset_VertexAttrib2dvNV),
+    NAME_FUNC_OFFSET(11934, glVertexAttrib2fNV, glVertexAttrib2fNV, NULL, _gloffset_VertexAttrib2fNV),
+    NAME_FUNC_OFFSET(11953, glVertexAttrib2fvNV, glVertexAttrib2fvNV, NULL, _gloffset_VertexAttrib2fvNV),
+    NAME_FUNC_OFFSET(11973, glVertexAttrib2sNV, glVertexAttrib2sNV, NULL, _gloffset_VertexAttrib2sNV),
+    NAME_FUNC_OFFSET(11992, glVertexAttrib2svNV, glVertexAttrib2svNV, NULL, _gloffset_VertexAttrib2svNV),
+    NAME_FUNC_OFFSET(12012, glVertexAttrib3dNV, glVertexAttrib3dNV, NULL, _gloffset_VertexAttrib3dNV),
+    NAME_FUNC_OFFSET(12031, glVertexAttrib3dvNV, glVertexAttrib3dvNV, NULL, _gloffset_VertexAttrib3dvNV),
+    NAME_FUNC_OFFSET(12051, glVertexAttrib3fNV, glVertexAttrib3fNV, NULL, _gloffset_VertexAttrib3fNV),
+    NAME_FUNC_OFFSET(12070, glVertexAttrib3fvNV, glVertexAttrib3fvNV, NULL, _gloffset_VertexAttrib3fvNV),
+    NAME_FUNC_OFFSET(12090, glVertexAttrib3sNV, glVertexAttrib3sNV, NULL, _gloffset_VertexAttrib3sNV),
+    NAME_FUNC_OFFSET(12109, glVertexAttrib3svNV, glVertexAttrib3svNV, NULL, _gloffset_VertexAttrib3svNV),
+    NAME_FUNC_OFFSET(12129, glVertexAttrib4dNV, glVertexAttrib4dNV, NULL, _gloffset_VertexAttrib4dNV),
+    NAME_FUNC_OFFSET(12148, glVertexAttrib4dvNV, glVertexAttrib4dvNV, NULL, _gloffset_VertexAttrib4dvNV),
+    NAME_FUNC_OFFSET(12168, glVertexAttrib4fNV, glVertexAttrib4fNV, NULL, _gloffset_VertexAttrib4fNV),
+    NAME_FUNC_OFFSET(12187, glVertexAttrib4fvNV, glVertexAttrib4fvNV, NULL, _gloffset_VertexAttrib4fvNV),
+    NAME_FUNC_OFFSET(12207, glVertexAttrib4sNV, glVertexAttrib4sNV, NULL, _gloffset_VertexAttrib4sNV),
+    NAME_FUNC_OFFSET(12226, glVertexAttrib4svNV, glVertexAttrib4svNV, NULL, _gloffset_VertexAttrib4svNV),
+    NAME_FUNC_OFFSET(12246, glVertexAttrib4ubNV, glVertexAttrib4ubNV, NULL, _gloffset_VertexAttrib4ubNV),
+    NAME_FUNC_OFFSET(12266, glVertexAttrib4ubvNV, glVertexAttrib4ubvNV, NULL, _gloffset_VertexAttrib4ubvNV),
+    NAME_FUNC_OFFSET(12287, glVertexAttribPointerNV, glVertexAttribPointerNV, NULL, _gloffset_VertexAttribPointerNV),
+    NAME_FUNC_OFFSET(12311, glVertexAttribs1dvNV, glVertexAttribs1dvNV, NULL, _gloffset_VertexAttribs1dvNV),
+    NAME_FUNC_OFFSET(12332, glVertexAttribs1fvNV, glVertexAttribs1fvNV, NULL, _gloffset_VertexAttribs1fvNV),
+    NAME_FUNC_OFFSET(12353, glVertexAttribs1svNV, glVertexAttribs1svNV, NULL, _gloffset_VertexAttribs1svNV),
+    NAME_FUNC_OFFSET(12374, glVertexAttribs2dvNV, glVertexAttribs2dvNV, NULL, _gloffset_VertexAttribs2dvNV),
+    NAME_FUNC_OFFSET(12395, glVertexAttribs2fvNV, glVertexAttribs2fvNV, NULL, _gloffset_VertexAttribs2fvNV),
+    NAME_FUNC_OFFSET(12416, glVertexAttribs2svNV, glVertexAttribs2svNV, NULL, _gloffset_VertexAttribs2svNV),
+    NAME_FUNC_OFFSET(12437, glVertexAttribs3dvNV, glVertexAttribs3dvNV, NULL, _gloffset_VertexAttribs3dvNV),
+    NAME_FUNC_OFFSET(12458, glVertexAttribs3fvNV, glVertexAttribs3fvNV, NULL, _gloffset_VertexAttribs3fvNV),
+    NAME_FUNC_OFFSET(12479, glVertexAttribs3svNV, glVertexAttribs3svNV, NULL, _gloffset_VertexAttribs3svNV),
+    NAME_FUNC_OFFSET(12500, glVertexAttribs4dvNV, glVertexAttribs4dvNV, NULL, _gloffset_VertexAttribs4dvNV),
+    NAME_FUNC_OFFSET(12521, glVertexAttribs4fvNV, glVertexAttribs4fvNV, NULL, _gloffset_VertexAttribs4fvNV),
+    NAME_FUNC_OFFSET(12542, glVertexAttribs4svNV, glVertexAttribs4svNV, NULL, _gloffset_VertexAttribs4svNV),
+    NAME_FUNC_OFFSET(12563, glVertexAttribs4ubvNV, glVertexAttribs4ubvNV, NULL, _gloffset_VertexAttribs4ubvNV),
+    NAME_FUNC_OFFSET(12585, glGetTexBumpParameterfvATI, glGetTexBumpParameterfvATI, NULL, _gloffset_GetTexBumpParameterfvATI),
+    NAME_FUNC_OFFSET(12612, glGetTexBumpParameterivATI, glGetTexBumpParameterivATI, NULL, _gloffset_GetTexBumpParameterivATI),
+    NAME_FUNC_OFFSET(12639, glTexBumpParameterfvATI, glTexBumpParameterfvATI, NULL, _gloffset_TexBumpParameterfvATI),
+    NAME_FUNC_OFFSET(12663, glTexBumpParameterivATI, glTexBumpParameterivATI, NULL, _gloffset_TexBumpParameterivATI),
+    NAME_FUNC_OFFSET(12687, glAlphaFragmentOp1ATI, glAlphaFragmentOp1ATI, NULL, _gloffset_AlphaFragmentOp1ATI),
+    NAME_FUNC_OFFSET(12709, glAlphaFragmentOp2ATI, glAlphaFragmentOp2ATI, NULL, _gloffset_AlphaFragmentOp2ATI),
+    NAME_FUNC_OFFSET(12731, glAlphaFragmentOp3ATI, glAlphaFragmentOp3ATI, NULL, _gloffset_AlphaFragmentOp3ATI),
+    NAME_FUNC_OFFSET(12753, glBeginFragmentShaderATI, glBeginFragmentShaderATI, NULL, _gloffset_BeginFragmentShaderATI),
+    NAME_FUNC_OFFSET(12778, glBindFragmentShaderATI, glBindFragmentShaderATI, NULL, _gloffset_BindFragmentShaderATI),
+    NAME_FUNC_OFFSET(12802, glColorFragmentOp1ATI, glColorFragmentOp1ATI, NULL, _gloffset_ColorFragmentOp1ATI),
+    NAME_FUNC_OFFSET(12824, glColorFragmentOp2ATI, glColorFragmentOp2ATI, NULL, _gloffset_ColorFragmentOp2ATI),
+    NAME_FUNC_OFFSET(12846, glColorFragmentOp3ATI, glColorFragmentOp3ATI, NULL, _gloffset_ColorFragmentOp3ATI),
+    NAME_FUNC_OFFSET(12868, glDeleteFragmentShaderATI, glDeleteFragmentShaderATI, NULL, _gloffset_DeleteFragmentShaderATI),
+    NAME_FUNC_OFFSET(12894, glEndFragmentShaderATI, glEndFragmentShaderATI, NULL, _gloffset_EndFragmentShaderATI),
+    NAME_FUNC_OFFSET(12917, glGenFragmentShadersATI, glGenFragmentShadersATI, NULL, _gloffset_GenFragmentShadersATI),
+    NAME_FUNC_OFFSET(12941, glPassTexCoordATI, glPassTexCoordATI, NULL, _gloffset_PassTexCoordATI),
+    NAME_FUNC_OFFSET(12959, glSampleMapATI, glSampleMapATI, NULL, _gloffset_SampleMapATI),
+    NAME_FUNC_OFFSET(12974, glSetFragmentShaderConstantATI, glSetFragmentShaderConstantATI, NULL, _gloffset_SetFragmentShaderConstantATI),
+    NAME_FUNC_OFFSET(13005, glPointParameteriNV, glPointParameteriNV, NULL, _gloffset_PointParameteriNV),
+    NAME_FUNC_OFFSET(13025, glPointParameterivNV, glPointParameterivNV, NULL, _gloffset_PointParameterivNV),
+    NAME_FUNC_OFFSET(13046, gl_dispatch_stub_755, gl_dispatch_stub_755, NULL, _gloffset_ActiveStencilFaceEXT),
+    NAME_FUNC_OFFSET(13069, gl_dispatch_stub_756, gl_dispatch_stub_756, NULL, _gloffset_BindVertexArrayAPPLE),
+    NAME_FUNC_OFFSET(13092, gl_dispatch_stub_757, gl_dispatch_stub_757, NULL, _gloffset_DeleteVertexArraysAPPLE),
+    NAME_FUNC_OFFSET(13118, gl_dispatch_stub_758, gl_dispatch_stub_758, NULL, _gloffset_GenVertexArraysAPPLE),
+    NAME_FUNC_OFFSET(13141, gl_dispatch_stub_759, gl_dispatch_stub_759, NULL, _gloffset_IsVertexArrayAPPLE),
+    NAME_FUNC_OFFSET(13162, glGetProgramNamedParameterdvNV, glGetProgramNamedParameterdvNV, NULL, _gloffset_GetProgramNamedParameterdvNV),
+    NAME_FUNC_OFFSET(13193, glGetProgramNamedParameterfvNV, glGetProgramNamedParameterfvNV, NULL, _gloffset_GetProgramNamedParameterfvNV),
+    NAME_FUNC_OFFSET(13224, glProgramNamedParameter4dNV, glProgramNamedParameter4dNV, NULL, _gloffset_ProgramNamedParameter4dNV),
+    NAME_FUNC_OFFSET(13252, glProgramNamedParameter4dvNV, glProgramNamedParameter4dvNV, NULL, _gloffset_ProgramNamedParameter4dvNV),
+    NAME_FUNC_OFFSET(13281, glProgramNamedParameter4fNV, glProgramNamedParameter4fNV, NULL, _gloffset_ProgramNamedParameter4fNV),
+    NAME_FUNC_OFFSET(13309, glProgramNamedParameter4fvNV, glProgramNamedParameter4fvNV, NULL, _gloffset_ProgramNamedParameter4fvNV),
+    NAME_FUNC_OFFSET(13338, gl_dispatch_stub_766, gl_dispatch_stub_766, NULL, _gloffset_DepthBoundsEXT),
+    NAME_FUNC_OFFSET(13355, gl_dispatch_stub_767, gl_dispatch_stub_767, NULL, _gloffset_BlendEquationSeparateEXT),
+    NAME_FUNC_OFFSET(13382, glBindFramebufferEXT, glBindFramebufferEXT, NULL, _gloffset_BindFramebufferEXT),
+    NAME_FUNC_OFFSET(13403, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, _gloffset_BindRenderbufferEXT),
+    NAME_FUNC_OFFSET(13425, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, _gloffset_CheckFramebufferStatusEXT),
+    NAME_FUNC_OFFSET(13453, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, _gloffset_DeleteFramebuffersEXT),
+    NAME_FUNC_OFFSET(13477, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, _gloffset_DeleteRenderbuffersEXT),
+    NAME_FUNC_OFFSET(13502, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, _gloffset_FramebufferRenderbufferEXT),
+    NAME_FUNC_OFFSET(13531, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, _gloffset_FramebufferTexture1DEXT),
+    NAME_FUNC_OFFSET(13557, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, _gloffset_FramebufferTexture2DEXT),
+    NAME_FUNC_OFFSET(13583, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, _gloffset_FramebufferTexture3DEXT),
+    NAME_FUNC_OFFSET(13609, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, _gloffset_GenFramebuffersEXT),
+    NAME_FUNC_OFFSET(13630, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, _gloffset_GenRenderbuffersEXT),
+    NAME_FUNC_OFFSET(13652, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, _gloffset_GenerateMipmapEXT),
+    NAME_FUNC_OFFSET(13672, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, _gloffset_GetFramebufferAttachmentParameterivEXT),
+    NAME_FUNC_OFFSET(13713, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, _gloffset_GetRenderbufferParameterivEXT),
+    NAME_FUNC_OFFSET(13745, glIsFramebufferEXT, glIsFramebufferEXT, NULL, _gloffset_IsFramebufferEXT),
+    NAME_FUNC_OFFSET(13764, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, _gloffset_IsRenderbufferEXT),
+    NAME_FUNC_OFFSET(13784, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, _gloffset_RenderbufferStorageEXT),
+    NAME_FUNC_OFFSET(13809, gl_dispatch_stub_785, gl_dispatch_stub_785, NULL, _gloffset_BlitFramebufferEXT),
+    NAME_FUNC_OFFSET(13830, gl_dispatch_stub_786, gl_dispatch_stub_786, NULL, _gloffset_BufferParameteriAPPLE),
+    NAME_FUNC_OFFSET(13854, gl_dispatch_stub_787, gl_dispatch_stub_787, NULL, _gloffset_FlushMappedBufferRangeAPPLE),
+    NAME_FUNC_OFFSET(13884, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, _gloffset_FramebufferTextureLayerEXT),
+    NAME_FUNC_OFFSET(13913, glColorMaskIndexedEXT, glColorMaskIndexedEXT, NULL, _gloffset_ColorMaskIndexedEXT),
+    NAME_FUNC_OFFSET(13935, glDisableIndexedEXT, glDisableIndexedEXT, NULL, _gloffset_DisableIndexedEXT),
+    NAME_FUNC_OFFSET(13955, glEnableIndexedEXT, glEnableIndexedEXT, NULL, _gloffset_EnableIndexedEXT),
+    NAME_FUNC_OFFSET(13974, glGetBooleanIndexedvEXT, glGetBooleanIndexedvEXT, NULL, _gloffset_GetBooleanIndexedvEXT),
+    NAME_FUNC_OFFSET(13998, glGetIntegerIndexedvEXT, glGetIntegerIndexedvEXT, NULL, _gloffset_GetIntegerIndexedvEXT),
+    NAME_FUNC_OFFSET(14022, glIsEnabledIndexedEXT, glIsEnabledIndexedEXT, NULL, _gloffset_IsEnabledIndexedEXT),
+    NAME_FUNC_OFFSET(14044, glBeginConditionalRenderNV, glBeginConditionalRenderNV, NULL, _gloffset_BeginConditionalRenderNV),
+    NAME_FUNC_OFFSET(14071, glEndConditionalRenderNV, glEndConditionalRenderNV, NULL, _gloffset_EndConditionalRenderNV),
+    NAME_FUNC_OFFSET(14096, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, _gloffset_BeginTransformFeedbackEXT),
+    NAME_FUNC_OFFSET(14124, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, _gloffset_BindBufferBaseEXT),
+    NAME_FUNC_OFFSET(14144, glBindBufferOffsetEXT, glBindBufferOffsetEXT, NULL, _gloffset_BindBufferOffsetEXT),
+    NAME_FUNC_OFFSET(14166, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, _gloffset_BindBufferRangeEXT),
+    NAME_FUNC_OFFSET(14187, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, _gloffset_EndTransformFeedbackEXT),
+    NAME_FUNC_OFFSET(14213, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, _gloffset_GetTransformFeedbackVaryingEXT),
+    NAME_FUNC_OFFSET(14246, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, _gloffset_TransformFeedbackVaryingsEXT),
+    NAME_FUNC_OFFSET(14277, glProvokingVertexEXT, glProvokingVertexEXT, NULL, _gloffset_ProvokingVertexEXT),
+    NAME_FUNC_OFFSET(14298, gl_dispatch_stub_805, gl_dispatch_stub_805, NULL, _gloffset_GetTexParameterPointervAPPLE),
+    NAME_FUNC_OFFSET(14329, gl_dispatch_stub_806, gl_dispatch_stub_806, NULL, _gloffset_TextureRangeAPPLE),
+    NAME_FUNC_OFFSET(14349, glGetObjectParameterivAPPLE, glGetObjectParameterivAPPLE, NULL, _gloffset_GetObjectParameterivAPPLE),
+    NAME_FUNC_OFFSET(14377, glObjectPurgeableAPPLE, glObjectPurgeableAPPLE, NULL, _gloffset_ObjectPurgeableAPPLE),
+    NAME_FUNC_OFFSET(14400, glObjectUnpurgeableAPPLE, glObjectUnpurgeableAPPLE, NULL, _gloffset_ObjectUnpurgeableAPPLE),
+    NAME_FUNC_OFFSET(14425, gl_dispatch_stub_810, gl_dispatch_stub_810, NULL, _gloffset_StencilFuncSeparateATI),
+    NAME_FUNC_OFFSET(14450, gl_dispatch_stub_811, gl_dispatch_stub_811, NULL, _gloffset_ProgramEnvParameters4fvEXT),
+    NAME_FUNC_OFFSET(14479, gl_dispatch_stub_812, gl_dispatch_stub_812, NULL, _gloffset_ProgramLocalParameters4fvEXT),
+    NAME_FUNC_OFFSET(14510, gl_dispatch_stub_813, gl_dispatch_stub_813, NULL, _gloffset_GetQueryObjecti64vEXT),
+    NAME_FUNC_OFFSET(14534, gl_dispatch_stub_814, gl_dispatch_stub_814, NULL, _gloffset_GetQueryObjectui64vEXT),
+    NAME_FUNC_OFFSET(14559, glEGLImageTargetRenderbufferStorageOES, glEGLImageTargetRenderbufferStorageOES, NULL, _gloffset_EGLImageTargetRenderbufferStorageOES),
+    NAME_FUNC_OFFSET(14598, glEGLImageTargetTexture2DOES, glEGLImageTargetTexture2DOES, NULL, _gloffset_EGLImageTargetTexture2DOES),
+    NAME_FUNC_OFFSET(14627, glArrayElement, glArrayElement, NULL, _gloffset_ArrayElement),
+    NAME_FUNC_OFFSET(14645, glBindTexture, glBindTexture, NULL, _gloffset_BindTexture),
+    NAME_FUNC_OFFSET(14662, glDrawArrays, glDrawArrays, NULL, _gloffset_DrawArrays),
+    NAME_FUNC_OFFSET(14678, glAreTexturesResident, glAreTexturesResidentEXT, glAreTexturesResidentEXT, _gloffset_AreTexturesResident),
+    NAME_FUNC_OFFSET(14703, glCopyTexImage1D, glCopyTexImage1D, NULL, _gloffset_CopyTexImage1D),
+    NAME_FUNC_OFFSET(14723, glCopyTexImage2D, glCopyTexImage2D, NULL, _gloffset_CopyTexImage2D),
+    NAME_FUNC_OFFSET(14743, glCopyTexSubImage1D, glCopyTexSubImage1D, NULL, _gloffset_CopyTexSubImage1D),
+    NAME_FUNC_OFFSET(14766, glCopyTexSubImage2D, glCopyTexSubImage2D, NULL, _gloffset_CopyTexSubImage2D),
+    NAME_FUNC_OFFSET(14789, glDeleteTextures, glDeleteTexturesEXT, glDeleteTexturesEXT, _gloffset_DeleteTextures),
+    NAME_FUNC_OFFSET(14809, glGenTextures, glGenTexturesEXT, glGenTexturesEXT, _gloffset_GenTextures),
+    NAME_FUNC_OFFSET(14826, glGetPointerv, glGetPointerv, NULL, _gloffset_GetPointerv),
+    NAME_FUNC_OFFSET(14843, glIsTexture, glIsTextureEXT, glIsTextureEXT, _gloffset_IsTexture),
+    NAME_FUNC_OFFSET(14858, glPrioritizeTextures, glPrioritizeTextures, NULL, _gloffset_PrioritizeTextures),
+    NAME_FUNC_OFFSET(14882, glTexSubImage1D, glTexSubImage1D, NULL, _gloffset_TexSubImage1D),
+    NAME_FUNC_OFFSET(14901, glTexSubImage2D, glTexSubImage2D, NULL, _gloffset_TexSubImage2D),
+    NAME_FUNC_OFFSET(14920, glBlendColor, glBlendColor, NULL, _gloffset_BlendColor),
+    NAME_FUNC_OFFSET(14936, glBlendEquation, glBlendEquation, NULL, _gloffset_BlendEquation),
+    NAME_FUNC_OFFSET(14955, glDrawRangeElements, glDrawRangeElements, NULL, _gloffset_DrawRangeElements),
+    NAME_FUNC_OFFSET(14978, glColorTable, glColorTable, NULL, _gloffset_ColorTable),
+    NAME_FUNC_OFFSET(14994, glColorTable, glColorTable, NULL, _gloffset_ColorTable),
+    NAME_FUNC_OFFSET(15010, glColorTableParameterfv, glColorTableParameterfv, NULL, _gloffset_ColorTableParameterfv),
+    NAME_FUNC_OFFSET(15037, glColorTableParameteriv, glColorTableParameteriv, NULL, _gloffset_ColorTableParameteriv),
+    NAME_FUNC_OFFSET(15064, glCopyColorTable, glCopyColorTable, NULL, _gloffset_CopyColorTable),
+    NAME_FUNC_OFFSET(15084, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, _gloffset_GetColorTable),
+    NAME_FUNC_OFFSET(15103, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, _gloffset_GetColorTable),
+    NAME_FUNC_OFFSET(15122, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, _gloffset_GetColorTableParameterfv),
+    NAME_FUNC_OFFSET(15152, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, _gloffset_GetColorTableParameterfv),
+    NAME_FUNC_OFFSET(15182, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, _gloffset_GetColorTableParameteriv),
+    NAME_FUNC_OFFSET(15212, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, _gloffset_GetColorTableParameteriv),
+    NAME_FUNC_OFFSET(15242, glColorSubTable, glColorSubTable, NULL, _gloffset_ColorSubTable),
+    NAME_FUNC_OFFSET(15261, glCopyColorSubTable, glCopyColorSubTable, NULL, _gloffset_CopyColorSubTable),
+    NAME_FUNC_OFFSET(15284, glConvolutionFilter1D, glConvolutionFilter1D, NULL, _gloffset_ConvolutionFilter1D),
+    NAME_FUNC_OFFSET(15309, glConvolutionFilter2D, glConvolutionFilter2D, NULL, _gloffset_ConvolutionFilter2D),
+    NAME_FUNC_OFFSET(15334, glConvolutionParameterf, glConvolutionParameterf, NULL, _gloffset_ConvolutionParameterf),
+    NAME_FUNC_OFFSET(15361, glConvolutionParameterfv, glConvolutionParameterfv, NULL, _gloffset_ConvolutionParameterfv),
+    NAME_FUNC_OFFSET(15389, glConvolutionParameteri, glConvolutionParameteri, NULL, _gloffset_ConvolutionParameteri),
+    NAME_FUNC_OFFSET(15416, glConvolutionParameteriv, glConvolutionParameteriv, NULL, _gloffset_ConvolutionParameteriv),
+    NAME_FUNC_OFFSET(15444, glCopyConvolutionFilter1D, glCopyConvolutionFilter1D, NULL, _gloffset_CopyConvolutionFilter1D),
+    NAME_FUNC_OFFSET(15473, glCopyConvolutionFilter2D, glCopyConvolutionFilter2D, NULL, _gloffset_CopyConvolutionFilter2D),
+    NAME_FUNC_OFFSET(15502, glGetConvolutionFilter, gl_dispatch_stub_356, gl_dispatch_stub_356, _gloffset_GetConvolutionFilter),
+    NAME_FUNC_OFFSET(15528, glGetConvolutionParameterfv, gl_dispatch_stub_357, gl_dispatch_stub_357, _gloffset_GetConvolutionParameterfv),
+    NAME_FUNC_OFFSET(15559, glGetConvolutionParameteriv, gl_dispatch_stub_358, gl_dispatch_stub_358, _gloffset_GetConvolutionParameteriv),
+    NAME_FUNC_OFFSET(15590, glGetSeparableFilter, gl_dispatch_stub_359, gl_dispatch_stub_359, _gloffset_GetSeparableFilter),
+    NAME_FUNC_OFFSET(15614, glSeparableFilter2D, glSeparableFilter2D, NULL, _gloffset_SeparableFilter2D),
+    NAME_FUNC_OFFSET(15637, glGetHistogram, gl_dispatch_stub_361, gl_dispatch_stub_361, _gloffset_GetHistogram),
+    NAME_FUNC_OFFSET(15655, glGetHistogramParameterfv, gl_dispatch_stub_362, gl_dispatch_stub_362, _gloffset_GetHistogramParameterfv),
+    NAME_FUNC_OFFSET(15684, glGetHistogramParameteriv, gl_dispatch_stub_363, gl_dispatch_stub_363, _gloffset_GetHistogramParameteriv),
+    NAME_FUNC_OFFSET(15713, glGetMinmax, gl_dispatch_stub_364, gl_dispatch_stub_364, _gloffset_GetMinmax),
+    NAME_FUNC_OFFSET(15728, glGetMinmaxParameterfv, gl_dispatch_stub_365, gl_dispatch_stub_365, _gloffset_GetMinmaxParameterfv),
+    NAME_FUNC_OFFSET(15754, glGetMinmaxParameteriv, gl_dispatch_stub_366, gl_dispatch_stub_366, _gloffset_GetMinmaxParameteriv),
+    NAME_FUNC_OFFSET(15780, glHistogram, glHistogram, NULL, _gloffset_Histogram),
+    NAME_FUNC_OFFSET(15795, glMinmax, glMinmax, NULL, _gloffset_Minmax),
+    NAME_FUNC_OFFSET(15807, glResetHistogram, glResetHistogram, NULL, _gloffset_ResetHistogram),
+    NAME_FUNC_OFFSET(15827, glResetMinmax, glResetMinmax, NULL, _gloffset_ResetMinmax),
+    NAME_FUNC_OFFSET(15844, glTexImage3D, glTexImage3D, NULL, _gloffset_TexImage3D),
+    NAME_FUNC_OFFSET(15860, glTexSubImage3D, glTexSubImage3D, NULL, _gloffset_TexSubImage3D),
+    NAME_FUNC_OFFSET(15879, glCopyTexSubImage3D, glCopyTexSubImage3D, NULL, _gloffset_CopyTexSubImage3D),
+    NAME_FUNC_OFFSET(15902, glActiveTextureARB, glActiveTextureARB, NULL, _gloffset_ActiveTextureARB),
+    NAME_FUNC_OFFSET(15918, glClientActiveTextureARB, glClientActiveTextureARB, NULL, _gloffset_ClientActiveTextureARB),
+    NAME_FUNC_OFFSET(15940, glMultiTexCoord1dARB, glMultiTexCoord1dARB, NULL, _gloffset_MultiTexCoord1dARB),
+    NAME_FUNC_OFFSET(15958, glMultiTexCoord1dvARB, glMultiTexCoord1dvARB, NULL, _gloffset_MultiTexCoord1dvARB),
+    NAME_FUNC_OFFSET(15977, glMultiTexCoord1fARB, glMultiTexCoord1fARB, NULL, _gloffset_MultiTexCoord1fARB),
+    NAME_FUNC_OFFSET(15995, glMultiTexCoord1fvARB, glMultiTexCoord1fvARB, NULL, _gloffset_MultiTexCoord1fvARB),
+    NAME_FUNC_OFFSET(16014, glMultiTexCoord1iARB, glMultiTexCoord1iARB, NULL, _gloffset_MultiTexCoord1iARB),
+    NAME_FUNC_OFFSET(16032, glMultiTexCoord1ivARB, glMultiTexCoord1ivARB, NULL, _gloffset_MultiTexCoord1ivARB),
+    NAME_FUNC_OFFSET(16051, glMultiTexCoord1sARB, glMultiTexCoord1sARB, NULL, _gloffset_MultiTexCoord1sARB),
+    NAME_FUNC_OFFSET(16069, glMultiTexCoord1svARB, glMultiTexCoord1svARB, NULL, _gloffset_MultiTexCoord1svARB),
+    NAME_FUNC_OFFSET(16088, glMultiTexCoord2dARB, glMultiTexCoord2dARB, NULL, _gloffset_MultiTexCoord2dARB),
+    NAME_FUNC_OFFSET(16106, glMultiTexCoord2dvARB, glMultiTexCoord2dvARB, NULL, _gloffset_MultiTexCoord2dvARB),
+    NAME_FUNC_OFFSET(16125, glMultiTexCoord2fARB, glMultiTexCoord2fARB, NULL, _gloffset_MultiTexCoord2fARB),
+    NAME_FUNC_OFFSET(16143, glMultiTexCoord2fvARB, glMultiTexCoord2fvARB, NULL, _gloffset_MultiTexCoord2fvARB),
+    NAME_FUNC_OFFSET(16162, glMultiTexCoord2iARB, glMultiTexCoord2iARB, NULL, _gloffset_MultiTexCoord2iARB),
+    NAME_FUNC_OFFSET(16180, glMultiTexCoord2ivARB, glMultiTexCoord2ivARB, NULL, _gloffset_MultiTexCoord2ivARB),
+    NAME_FUNC_OFFSET(16199, glMultiTexCoord2sARB, glMultiTexCoord2sARB, NULL, _gloffset_MultiTexCoord2sARB),
+    NAME_FUNC_OFFSET(16217, glMultiTexCoord2svARB, glMultiTexCoord2svARB, NULL, _gloffset_MultiTexCoord2svARB),
+    NAME_FUNC_OFFSET(16236, glMultiTexCoord3dARB, glMultiTexCoord3dARB, NULL, _gloffset_MultiTexCoord3dARB),
+    NAME_FUNC_OFFSET(16254, glMultiTexCoord3dvARB, glMultiTexCoord3dvARB, NULL, _gloffset_MultiTexCoord3dvARB),
+    NAME_FUNC_OFFSET(16273, glMultiTexCoord3fARB, glMultiTexCoord3fARB, NULL, _gloffset_MultiTexCoord3fARB),
+    NAME_FUNC_OFFSET(16291, glMultiTexCoord3fvARB, glMultiTexCoord3fvARB, NULL, _gloffset_MultiTexCoord3fvARB),
+    NAME_FUNC_OFFSET(16310, glMultiTexCoord3iARB, glMultiTexCoord3iARB, NULL, _gloffset_MultiTexCoord3iARB),
+    NAME_FUNC_OFFSET(16328, glMultiTexCoord3ivARB, glMultiTexCoord3ivARB, NULL, _gloffset_MultiTexCoord3ivARB),
+    NAME_FUNC_OFFSET(16347, glMultiTexCoord3sARB, glMultiTexCoord3sARB, NULL, _gloffset_MultiTexCoord3sARB),
+    NAME_FUNC_OFFSET(16365, glMultiTexCoord3svARB, glMultiTexCoord3svARB, NULL, _gloffset_MultiTexCoord3svARB),
+    NAME_FUNC_OFFSET(16384, glMultiTexCoord4dARB, glMultiTexCoord4dARB, NULL, _gloffset_MultiTexCoord4dARB),
+    NAME_FUNC_OFFSET(16402, glMultiTexCoord4dvARB, glMultiTexCoord4dvARB, NULL, _gloffset_MultiTexCoord4dvARB),
+    NAME_FUNC_OFFSET(16421, glMultiTexCoord4fARB, glMultiTexCoord4fARB, NULL, _gloffset_MultiTexCoord4fARB),
+    NAME_FUNC_OFFSET(16439, glMultiTexCoord4fvARB, glMultiTexCoord4fvARB, NULL, _gloffset_MultiTexCoord4fvARB),
+    NAME_FUNC_OFFSET(16458, glMultiTexCoord4iARB, glMultiTexCoord4iARB, NULL, _gloffset_MultiTexCoord4iARB),
+    NAME_FUNC_OFFSET(16476, glMultiTexCoord4ivARB, glMultiTexCoord4ivARB, NULL, _gloffset_MultiTexCoord4ivARB),
+    NAME_FUNC_OFFSET(16495, glMultiTexCoord4sARB, glMultiTexCoord4sARB, NULL, _gloffset_MultiTexCoord4sARB),
+    NAME_FUNC_OFFSET(16513, glMultiTexCoord4svARB, glMultiTexCoord4svARB, NULL, _gloffset_MultiTexCoord4svARB),
+    NAME_FUNC_OFFSET(16532, glStencilOpSeparate, glStencilOpSeparate, NULL, _gloffset_StencilOpSeparate),
+    NAME_FUNC_OFFSET(16555, glDrawArraysInstanced, glDrawArraysInstanced, NULL, _gloffset_DrawArraysInstanced),
+    NAME_FUNC_OFFSET(16580, glDrawArraysInstanced, glDrawArraysInstanced, NULL, _gloffset_DrawArraysInstanced),
+    NAME_FUNC_OFFSET(16605, glDrawElementsInstanced, glDrawElementsInstanced, NULL, _gloffset_DrawElementsInstanced),
+    NAME_FUNC_OFFSET(16632, glDrawElementsInstanced, glDrawElementsInstanced, NULL, _gloffset_DrawElementsInstanced),
+    NAME_FUNC_OFFSET(16659, glLoadTransposeMatrixdARB, glLoadTransposeMatrixdARB, NULL, _gloffset_LoadTransposeMatrixdARB),
+    NAME_FUNC_OFFSET(16682, glLoadTransposeMatrixfARB, glLoadTransposeMatrixfARB, NULL, _gloffset_LoadTransposeMatrixfARB),
+    NAME_FUNC_OFFSET(16705, glMultTransposeMatrixdARB, glMultTransposeMatrixdARB, NULL, _gloffset_MultTransposeMatrixdARB),
+    NAME_FUNC_OFFSET(16728, glMultTransposeMatrixfARB, glMultTransposeMatrixfARB, NULL, _gloffset_MultTransposeMatrixfARB),
+    NAME_FUNC_OFFSET(16751, glSampleCoverageARB, glSampleCoverageARB, NULL, _gloffset_SampleCoverageARB),
+    NAME_FUNC_OFFSET(16768, glCompressedTexImage1DARB, glCompressedTexImage1DARB, NULL, _gloffset_CompressedTexImage1DARB),
+    NAME_FUNC_OFFSET(16791, glCompressedTexImage2DARB, glCompressedTexImage2DARB, NULL, _gloffset_CompressedTexImage2DARB),
+    NAME_FUNC_OFFSET(16814, glCompressedTexImage3DARB, glCompressedTexImage3DARB, NULL, _gloffset_CompressedTexImage3DARB),
+    NAME_FUNC_OFFSET(16837, glCompressedTexSubImage1DARB, glCompressedTexSubImage1DARB, NULL, _gloffset_CompressedTexSubImage1DARB),
+    NAME_FUNC_OFFSET(16863, glCompressedTexSubImage2DARB, glCompressedTexSubImage2DARB, NULL, _gloffset_CompressedTexSubImage2DARB),
+    NAME_FUNC_OFFSET(16889, glCompressedTexSubImage3DARB, glCompressedTexSubImage3DARB, NULL, _gloffset_CompressedTexSubImage3DARB),
+    NAME_FUNC_OFFSET(16915, glGetCompressedTexImageARB, glGetCompressedTexImageARB, NULL, _gloffset_GetCompressedTexImageARB),
+    NAME_FUNC_OFFSET(16939, glDisableVertexAttribArrayARB, glDisableVertexAttribArrayARB, NULL, _gloffset_DisableVertexAttribArrayARB),
+    NAME_FUNC_OFFSET(16966, glEnableVertexAttribArrayARB, glEnableVertexAttribArrayARB, NULL, _gloffset_EnableVertexAttribArrayARB),
+    NAME_FUNC_OFFSET(16992, glGetVertexAttribdvARB, glGetVertexAttribdvARB, NULL, _gloffset_GetVertexAttribdvARB),
+    NAME_FUNC_OFFSET(17012, glGetVertexAttribfvARB, glGetVertexAttribfvARB, NULL, _gloffset_GetVertexAttribfvARB),
+    NAME_FUNC_OFFSET(17032, glGetVertexAttribivARB, glGetVertexAttribivARB, NULL, _gloffset_GetVertexAttribivARB),
+    NAME_FUNC_OFFSET(17052, glProgramEnvParameter4dARB, glProgramEnvParameter4dARB, NULL, _gloffset_ProgramEnvParameter4dARB),
+    NAME_FUNC_OFFSET(17075, glProgramEnvParameter4dvARB, glProgramEnvParameter4dvARB, NULL, _gloffset_ProgramEnvParameter4dvARB),
+    NAME_FUNC_OFFSET(17099, glProgramEnvParameter4fARB, glProgramEnvParameter4fARB, NULL, _gloffset_ProgramEnvParameter4fARB),
+    NAME_FUNC_OFFSET(17122, glProgramEnvParameter4fvARB, glProgramEnvParameter4fvARB, NULL, _gloffset_ProgramEnvParameter4fvARB),
+    NAME_FUNC_OFFSET(17146, glVertexAttrib1dARB, glVertexAttrib1dARB, NULL, _gloffset_VertexAttrib1dARB),
+    NAME_FUNC_OFFSET(17163, glVertexAttrib1dvARB, glVertexAttrib1dvARB, NULL, _gloffset_VertexAttrib1dvARB),
+    NAME_FUNC_OFFSET(17181, glVertexAttrib1fARB, glVertexAttrib1fARB, NULL, _gloffset_VertexAttrib1fARB),
+    NAME_FUNC_OFFSET(17198, glVertexAttrib1fvARB, glVertexAttrib1fvARB, NULL, _gloffset_VertexAttrib1fvARB),
+    NAME_FUNC_OFFSET(17216, glVertexAttrib1sARB, glVertexAttrib1sARB, NULL, _gloffset_VertexAttrib1sARB),
+    NAME_FUNC_OFFSET(17233, glVertexAttrib1svARB, glVertexAttrib1svARB, NULL, _gloffset_VertexAttrib1svARB),
+    NAME_FUNC_OFFSET(17251, glVertexAttrib2dARB, glVertexAttrib2dARB, NULL, _gloffset_VertexAttrib2dARB),
+    NAME_FUNC_OFFSET(17268, glVertexAttrib2dvARB, glVertexAttrib2dvARB, NULL, _gloffset_VertexAttrib2dvARB),
+    NAME_FUNC_OFFSET(17286, glVertexAttrib2fARB, glVertexAttrib2fARB, NULL, _gloffset_VertexAttrib2fARB),
+    NAME_FUNC_OFFSET(17303, glVertexAttrib2fvARB, glVertexAttrib2fvARB, NULL, _gloffset_VertexAttrib2fvARB),
+    NAME_FUNC_OFFSET(17321, glVertexAttrib2sARB, glVertexAttrib2sARB, NULL, _gloffset_VertexAttrib2sARB),
+    NAME_FUNC_OFFSET(17338, glVertexAttrib2svARB, glVertexAttrib2svARB, NULL, _gloffset_VertexAttrib2svARB),
+    NAME_FUNC_OFFSET(17356, glVertexAttrib3dARB, glVertexAttrib3dARB, NULL, _gloffset_VertexAttrib3dARB),
+    NAME_FUNC_OFFSET(17373, glVertexAttrib3dvARB, glVertexAttrib3dvARB, NULL, _gloffset_VertexAttrib3dvARB),
+    NAME_FUNC_OFFSET(17391, glVertexAttrib3fARB, glVertexAttrib3fARB, NULL, _gloffset_VertexAttrib3fARB),
+    NAME_FUNC_OFFSET(17408, glVertexAttrib3fvARB, glVertexAttrib3fvARB, NULL, _gloffset_VertexAttrib3fvARB),
+    NAME_FUNC_OFFSET(17426, glVertexAttrib3sARB, glVertexAttrib3sARB, NULL, _gloffset_VertexAttrib3sARB),
+    NAME_FUNC_OFFSET(17443, glVertexAttrib3svARB, glVertexAttrib3svARB, NULL, _gloffset_VertexAttrib3svARB),
+    NAME_FUNC_OFFSET(17461, glVertexAttrib4NbvARB, glVertexAttrib4NbvARB, NULL, _gloffset_VertexAttrib4NbvARB),
+    NAME_FUNC_OFFSET(17480, glVertexAttrib4NivARB, glVertexAttrib4NivARB, NULL, _gloffset_VertexAttrib4NivARB),
+    NAME_FUNC_OFFSET(17499, glVertexAttrib4NsvARB, glVertexAttrib4NsvARB, NULL, _gloffset_VertexAttrib4NsvARB),
+    NAME_FUNC_OFFSET(17518, glVertexAttrib4NubARB, glVertexAttrib4NubARB, NULL, _gloffset_VertexAttrib4NubARB),
+    NAME_FUNC_OFFSET(17537, glVertexAttrib4NubvARB, glVertexAttrib4NubvARB, NULL, _gloffset_VertexAttrib4NubvARB),
+    NAME_FUNC_OFFSET(17557, glVertexAttrib4NuivARB, glVertexAttrib4NuivARB, NULL, _gloffset_VertexAttrib4NuivARB),
+    NAME_FUNC_OFFSET(17577, glVertexAttrib4NusvARB, glVertexAttrib4NusvARB, NULL, _gloffset_VertexAttrib4NusvARB),
+    NAME_FUNC_OFFSET(17597, glVertexAttrib4bvARB, glVertexAttrib4bvARB, NULL, _gloffset_VertexAttrib4bvARB),
+    NAME_FUNC_OFFSET(17615, glVertexAttrib4dARB, glVertexAttrib4dARB, NULL, _gloffset_VertexAttrib4dARB),
+    NAME_FUNC_OFFSET(17632, glVertexAttrib4dvARB, glVertexAttrib4dvARB, NULL, _gloffset_VertexAttrib4dvARB),
+    NAME_FUNC_OFFSET(17650, glVertexAttrib4fARB, glVertexAttrib4fARB, NULL, _gloffset_VertexAttrib4fARB),
+    NAME_FUNC_OFFSET(17667, glVertexAttrib4fvARB, glVertexAttrib4fvARB, NULL, _gloffset_VertexAttrib4fvARB),
+    NAME_FUNC_OFFSET(17685, glVertexAttrib4ivARB, glVertexAttrib4ivARB, NULL, _gloffset_VertexAttrib4ivARB),
+    NAME_FUNC_OFFSET(17703, glVertexAttrib4sARB, glVertexAttrib4sARB, NULL, _gloffset_VertexAttrib4sARB),
+    NAME_FUNC_OFFSET(17720, glVertexAttrib4svARB, glVertexAttrib4svARB, NULL, _gloffset_VertexAttrib4svARB),
+    NAME_FUNC_OFFSET(17738, glVertexAttrib4ubvARB, glVertexAttrib4ubvARB, NULL, _gloffset_VertexAttrib4ubvARB),
+    NAME_FUNC_OFFSET(17757, glVertexAttrib4uivARB, glVertexAttrib4uivARB, NULL, _gloffset_VertexAttrib4uivARB),
+    NAME_FUNC_OFFSET(17776, glVertexAttrib4usvARB, glVertexAttrib4usvARB, NULL, _gloffset_VertexAttrib4usvARB),
+    NAME_FUNC_OFFSET(17795, glVertexAttribPointerARB, glVertexAttribPointerARB, NULL, _gloffset_VertexAttribPointerARB),
+    NAME_FUNC_OFFSET(17817, glBindBufferARB, glBindBufferARB, NULL, _gloffset_BindBufferARB),
+    NAME_FUNC_OFFSET(17830, glBufferDataARB, glBufferDataARB, NULL, _gloffset_BufferDataARB),
+    NAME_FUNC_OFFSET(17843, glBufferSubDataARB, glBufferSubDataARB, NULL, _gloffset_BufferSubDataARB),
+    NAME_FUNC_OFFSET(17859, glDeleteBuffersARB, glDeleteBuffersARB, NULL, _gloffset_DeleteBuffersARB),
+    NAME_FUNC_OFFSET(17875, glGenBuffersARB, glGenBuffersARB, NULL, _gloffset_GenBuffersARB),
+    NAME_FUNC_OFFSET(17888, glGetBufferParameterivARB, glGetBufferParameterivARB, NULL, _gloffset_GetBufferParameterivARB),
+    NAME_FUNC_OFFSET(17911, glGetBufferPointervARB, glGetBufferPointervARB, NULL, _gloffset_GetBufferPointervARB),
+    NAME_FUNC_OFFSET(17931, glGetBufferSubDataARB, glGetBufferSubDataARB, NULL, _gloffset_GetBufferSubDataARB),
+    NAME_FUNC_OFFSET(17950, glIsBufferARB, glIsBufferARB, NULL, _gloffset_IsBufferARB),
+    NAME_FUNC_OFFSET(17961, glMapBufferARB, glMapBufferARB, NULL, _gloffset_MapBufferARB),
+    NAME_FUNC_OFFSET(17973, glUnmapBufferARB, glUnmapBufferARB, NULL, _gloffset_UnmapBufferARB),
+    NAME_FUNC_OFFSET(17987, glBeginQueryARB, glBeginQueryARB, NULL, _gloffset_BeginQueryARB),
+    NAME_FUNC_OFFSET(18000, glDeleteQueriesARB, glDeleteQueriesARB, NULL, _gloffset_DeleteQueriesARB),
+    NAME_FUNC_OFFSET(18016, glEndQueryARB, glEndQueryARB, NULL, _gloffset_EndQueryARB),
+    NAME_FUNC_OFFSET(18027, glGenQueriesARB, glGenQueriesARB, NULL, _gloffset_GenQueriesARB),
+    NAME_FUNC_OFFSET(18040, glGetQueryObjectivARB, glGetQueryObjectivARB, NULL, _gloffset_GetQueryObjectivARB),
+    NAME_FUNC_OFFSET(18059, glGetQueryObjectuivARB, glGetQueryObjectuivARB, NULL, _gloffset_GetQueryObjectuivARB),
+    NAME_FUNC_OFFSET(18079, glGetQueryivARB, glGetQueryivARB, NULL, _gloffset_GetQueryivARB),
+    NAME_FUNC_OFFSET(18092, glIsQueryARB, glIsQueryARB, NULL, _gloffset_IsQueryARB),
+    NAME_FUNC_OFFSET(18102, glCompileShaderARB, glCompileShaderARB, NULL, _gloffset_CompileShaderARB),
+    NAME_FUNC_OFFSET(18118, glGetActiveUniformARB, glGetActiveUniformARB, NULL, _gloffset_GetActiveUniformARB),
+    NAME_FUNC_OFFSET(18137, glGetShaderSourceARB, glGetShaderSourceARB, NULL, _gloffset_GetShaderSourceARB),
+    NAME_FUNC_OFFSET(18155, glGetUniformLocationARB, glGetUniformLocationARB, NULL, _gloffset_GetUniformLocationARB),
+    NAME_FUNC_OFFSET(18176, glGetUniformfvARB, glGetUniformfvARB, NULL, _gloffset_GetUniformfvARB),
+    NAME_FUNC_OFFSET(18191, glGetUniformivARB, glGetUniformivARB, NULL, _gloffset_GetUniformivARB),
+    NAME_FUNC_OFFSET(18206, glLinkProgramARB, glLinkProgramARB, NULL, _gloffset_LinkProgramARB),
+    NAME_FUNC_OFFSET(18220, glShaderSourceARB, glShaderSourceARB, NULL, _gloffset_ShaderSourceARB),
+    NAME_FUNC_OFFSET(18235, glUniform1fARB, glUniform1fARB, NULL, _gloffset_Uniform1fARB),
+    NAME_FUNC_OFFSET(18247, glUniform1fvARB, glUniform1fvARB, NULL, _gloffset_Uniform1fvARB),
+    NAME_FUNC_OFFSET(18260, glUniform1iARB, glUniform1iARB, NULL, _gloffset_Uniform1iARB),
+    NAME_FUNC_OFFSET(18272, glUniform1ivARB, glUniform1ivARB, NULL, _gloffset_Uniform1ivARB),
+    NAME_FUNC_OFFSET(18285, glUniform2fARB, glUniform2fARB, NULL, _gloffset_Uniform2fARB),
+    NAME_FUNC_OFFSET(18297, glUniform2fvARB, glUniform2fvARB, NULL, _gloffset_Uniform2fvARB),
+    NAME_FUNC_OFFSET(18310, glUniform2iARB, glUniform2iARB, NULL, _gloffset_Uniform2iARB),
+    NAME_FUNC_OFFSET(18322, glUniform2ivARB, glUniform2ivARB, NULL, _gloffset_Uniform2ivARB),
+    NAME_FUNC_OFFSET(18335, glUniform3fARB, glUniform3fARB, NULL, _gloffset_Uniform3fARB),
+    NAME_FUNC_OFFSET(18347, glUniform3fvARB, glUniform3fvARB, NULL, _gloffset_Uniform3fvARB),
+    NAME_FUNC_OFFSET(18360, glUniform3iARB, glUniform3iARB, NULL, _gloffset_Uniform3iARB),
+    NAME_FUNC_OFFSET(18372, glUniform3ivARB, glUniform3ivARB, NULL, _gloffset_Uniform3ivARB),
+    NAME_FUNC_OFFSET(18385, glUniform4fARB, glUniform4fARB, NULL, _gloffset_Uniform4fARB),
+    NAME_FUNC_OFFSET(18397, glUniform4fvARB, glUniform4fvARB, NULL, _gloffset_Uniform4fvARB),
+    NAME_FUNC_OFFSET(18410, glUniform4iARB, glUniform4iARB, NULL, _gloffset_Uniform4iARB),
+    NAME_FUNC_OFFSET(18422, glUniform4ivARB, glUniform4ivARB, NULL, _gloffset_Uniform4ivARB),
+    NAME_FUNC_OFFSET(18435, glUniformMatrix2fvARB, glUniformMatrix2fvARB, NULL, _gloffset_UniformMatrix2fvARB),
+    NAME_FUNC_OFFSET(18454, glUniformMatrix3fvARB, glUniformMatrix3fvARB, NULL, _gloffset_UniformMatrix3fvARB),
+    NAME_FUNC_OFFSET(18473, glUniformMatrix4fvARB, glUniformMatrix4fvARB, NULL, _gloffset_UniformMatrix4fvARB),
+    NAME_FUNC_OFFSET(18492, glUseProgramObjectARB, glUseProgramObjectARB, NULL, _gloffset_UseProgramObjectARB),
+    NAME_FUNC_OFFSET(18505, glValidateProgramARB, glValidateProgramARB, NULL, _gloffset_ValidateProgramARB),
+    NAME_FUNC_OFFSET(18523, glBindAttribLocationARB, glBindAttribLocationARB, NULL, _gloffset_BindAttribLocationARB),
+    NAME_FUNC_OFFSET(18544, glGetActiveAttribARB, glGetActiveAttribARB, NULL, _gloffset_GetActiveAttribARB),
+    NAME_FUNC_OFFSET(18562, glGetAttribLocationARB, glGetAttribLocationARB, NULL, _gloffset_GetAttribLocationARB),
+    NAME_FUNC_OFFSET(18582, glDrawBuffersARB, glDrawBuffersARB, NULL, _gloffset_DrawBuffersARB),
+    NAME_FUNC_OFFSET(18596, glDrawBuffersARB, glDrawBuffersARB, NULL, _gloffset_DrawBuffersARB),
+    NAME_FUNC_OFFSET(18613, glRenderbufferStorageMultisample, glRenderbufferStorageMultisample, NULL, _gloffset_RenderbufferStorageMultisample),
+    NAME_FUNC_OFFSET(18649, gl_dispatch_stub_586, gl_dispatch_stub_586, NULL, _gloffset_SampleMaskSGIS),
+    NAME_FUNC_OFFSET(18665, gl_dispatch_stub_587, gl_dispatch_stub_587, NULL, _gloffset_SamplePatternSGIS),
+    NAME_FUNC_OFFSET(18684, glPointParameterfEXT, glPointParameterfEXT, NULL, _gloffset_PointParameterfEXT),
+    NAME_FUNC_OFFSET(18702, glPointParameterfEXT, glPointParameterfEXT, NULL, _gloffset_PointParameterfEXT),
+    NAME_FUNC_OFFSET(18723, glPointParameterfEXT, glPointParameterfEXT, NULL, _gloffset_PointParameterfEXT),
+    NAME_FUNC_OFFSET(18745, glPointParameterfvEXT, glPointParameterfvEXT, NULL, _gloffset_PointParameterfvEXT),
+    NAME_FUNC_OFFSET(18764, glPointParameterfvEXT, glPointParameterfvEXT, NULL, _gloffset_PointParameterfvEXT),
+    NAME_FUNC_OFFSET(18786, glPointParameterfvEXT, glPointParameterfvEXT, NULL, _gloffset_PointParameterfvEXT),
+    NAME_FUNC_OFFSET(18809, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, _gloffset_SecondaryColor3bEXT),
+    NAME_FUNC_OFFSET(18828, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, _gloffset_SecondaryColor3bvEXT),
+    NAME_FUNC_OFFSET(18848, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, _gloffset_SecondaryColor3dEXT),
+    NAME_FUNC_OFFSET(18867, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, _gloffset_SecondaryColor3dvEXT),
+    NAME_FUNC_OFFSET(18887, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, _gloffset_SecondaryColor3fEXT),
+    NAME_FUNC_OFFSET(18906, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, _gloffset_SecondaryColor3fvEXT),
+    NAME_FUNC_OFFSET(18926, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, _gloffset_SecondaryColor3iEXT),
+    NAME_FUNC_OFFSET(18945, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, _gloffset_SecondaryColor3ivEXT),
+    NAME_FUNC_OFFSET(18965, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, _gloffset_SecondaryColor3sEXT),
+    NAME_FUNC_OFFSET(18984, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, _gloffset_SecondaryColor3svEXT),
+    NAME_FUNC_OFFSET(19004, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, _gloffset_SecondaryColor3ubEXT),
+    NAME_FUNC_OFFSET(19024, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, _gloffset_SecondaryColor3ubvEXT),
+    NAME_FUNC_OFFSET(19045, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, _gloffset_SecondaryColor3uiEXT),
+    NAME_FUNC_OFFSET(19065, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, _gloffset_SecondaryColor3uivEXT),
+    NAME_FUNC_OFFSET(19086, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, _gloffset_SecondaryColor3usEXT),
+    NAME_FUNC_OFFSET(19106, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, _gloffset_SecondaryColor3usvEXT),
+    NAME_FUNC_OFFSET(19127, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, _gloffset_SecondaryColorPointerEXT),
+    NAME_FUNC_OFFSET(19151, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, _gloffset_MultiDrawArraysEXT),
+    NAME_FUNC_OFFSET(19169, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, _gloffset_MultiDrawElementsEXT),
+    NAME_FUNC_OFFSET(19189, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, _gloffset_FogCoordPointerEXT),
+    NAME_FUNC_OFFSET(19207, glFogCoorddEXT, glFogCoorddEXT, NULL, _gloffset_FogCoorddEXT),
+    NAME_FUNC_OFFSET(19219, glFogCoorddvEXT, glFogCoorddvEXT, NULL, _gloffset_FogCoorddvEXT),
+    NAME_FUNC_OFFSET(19232, glFogCoordfEXT, glFogCoordfEXT, NULL, _gloffset_FogCoordfEXT),
+    NAME_FUNC_OFFSET(19244, glFogCoordfvEXT, glFogCoordfvEXT, NULL, _gloffset_FogCoordfvEXT),
+    NAME_FUNC_OFFSET(19257, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, _gloffset_BlendFuncSeparateEXT),
+    NAME_FUNC_OFFSET(19277, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, _gloffset_BlendFuncSeparateEXT),
+    NAME_FUNC_OFFSET(19301, glWindowPos2dMESA, glWindowPos2dMESA, NULL, _gloffset_WindowPos2dMESA),
+    NAME_FUNC_OFFSET(19315, glWindowPos2dMESA, glWindowPos2dMESA, NULL, _gloffset_WindowPos2dMESA),
+    NAME_FUNC_OFFSET(19332, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, _gloffset_WindowPos2dvMESA),
+    NAME_FUNC_OFFSET(19347, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, _gloffset_WindowPos2dvMESA),
+    NAME_FUNC_OFFSET(19365, glWindowPos2fMESA, glWindowPos2fMESA, NULL, _gloffset_WindowPos2fMESA),
+    NAME_FUNC_OFFSET(19379, glWindowPos2fMESA, glWindowPos2fMESA, NULL, _gloffset_WindowPos2fMESA),
+    NAME_FUNC_OFFSET(19396, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, _gloffset_WindowPos2fvMESA),
+    NAME_FUNC_OFFSET(19411, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, _gloffset_WindowPos2fvMESA),
+    NAME_FUNC_OFFSET(19429, glWindowPos2iMESA, glWindowPos2iMESA, NULL, _gloffset_WindowPos2iMESA),
+    NAME_FUNC_OFFSET(19443, glWindowPos2iMESA, glWindowPos2iMESA, NULL, _gloffset_WindowPos2iMESA),
+    NAME_FUNC_OFFSET(19460, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, _gloffset_WindowPos2ivMESA),
+    NAME_FUNC_OFFSET(19475, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, _gloffset_WindowPos2ivMESA),
+    NAME_FUNC_OFFSET(19493, glWindowPos2sMESA, glWindowPos2sMESA, NULL, _gloffset_WindowPos2sMESA),
+    NAME_FUNC_OFFSET(19507, glWindowPos2sMESA, glWindowPos2sMESA, NULL, _gloffset_WindowPos2sMESA),
+    NAME_FUNC_OFFSET(19524, glWindowPos2svMESA, glWindowPos2svMESA, NULL, _gloffset_WindowPos2svMESA),
+    NAME_FUNC_OFFSET(19539, glWindowPos2svMESA, glWindowPos2svMESA, NULL, _gloffset_WindowPos2svMESA),
+    NAME_FUNC_OFFSET(19557, glWindowPos3dMESA, glWindowPos3dMESA, NULL, _gloffset_WindowPos3dMESA),
+    NAME_FUNC_OFFSET(19571, glWindowPos3dMESA, glWindowPos3dMESA, NULL, _gloffset_WindowPos3dMESA),
+    NAME_FUNC_OFFSET(19588, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, _gloffset_WindowPos3dvMESA),
+    NAME_FUNC_OFFSET(19603, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, _gloffset_WindowPos3dvMESA),
+    NAME_FUNC_OFFSET(19621, glWindowPos3fMESA, glWindowPos3fMESA, NULL, _gloffset_WindowPos3fMESA),
+    NAME_FUNC_OFFSET(19635, glWindowPos3fMESA, glWindowPos3fMESA, NULL, _gloffset_WindowPos3fMESA),
+    NAME_FUNC_OFFSET(19652, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, _gloffset_WindowPos3fvMESA),
+    NAME_FUNC_OFFSET(19667, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, _gloffset_WindowPos3fvMESA),
+    NAME_FUNC_OFFSET(19685, glWindowPos3iMESA, glWindowPos3iMESA, NULL, _gloffset_WindowPos3iMESA),
+    NAME_FUNC_OFFSET(19699, glWindowPos3iMESA, glWindowPos3iMESA, NULL, _gloffset_WindowPos3iMESA),
+    NAME_FUNC_OFFSET(19716, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, _gloffset_WindowPos3ivMESA),
+    NAME_FUNC_OFFSET(19731, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, _gloffset_WindowPos3ivMESA),
+    NAME_FUNC_OFFSET(19749, glWindowPos3sMESA, glWindowPos3sMESA, NULL, _gloffset_WindowPos3sMESA),
+    NAME_FUNC_OFFSET(19763, glWindowPos3sMESA, glWindowPos3sMESA, NULL, _gloffset_WindowPos3sMESA),
+    NAME_FUNC_OFFSET(19780, glWindowPos3svMESA, glWindowPos3svMESA, NULL, _gloffset_WindowPos3svMESA),
+    NAME_FUNC_OFFSET(19795, glWindowPos3svMESA, glWindowPos3svMESA, NULL, _gloffset_WindowPos3svMESA),
+    NAME_FUNC_OFFSET(19813, glBindProgramNV, glBindProgramNV, NULL, _gloffset_BindProgramNV),
+    NAME_FUNC_OFFSET(19830, glDeleteProgramsNV, glDeleteProgramsNV, NULL, _gloffset_DeleteProgramsNV),
+    NAME_FUNC_OFFSET(19850, glGenProgramsNV, glGenProgramsNV, NULL, _gloffset_GenProgramsNV),
+    NAME_FUNC_OFFSET(19867, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, _gloffset_GetVertexAttribPointervNV),
+    NAME_FUNC_OFFSET(19893, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, _gloffset_GetVertexAttribPointervNV),
+    NAME_FUNC_OFFSET(19922, glIsProgramNV, glIsProgramNV, NULL, _gloffset_IsProgramNV),
+    NAME_FUNC_OFFSET(19937, glPointParameteriNV, glPointParameteriNV, NULL, _gloffset_PointParameteriNV),
+    NAME_FUNC_OFFSET(19955, glPointParameterivNV, glPointParameterivNV, NULL, _gloffset_PointParameterivNV),
+    NAME_FUNC_OFFSET(19974, gl_dispatch_stub_757, gl_dispatch_stub_757, NULL, _gloffset_DeleteVertexArraysAPPLE),
+    NAME_FUNC_OFFSET(19995, gl_dispatch_stub_759, gl_dispatch_stub_759, NULL, _gloffset_IsVertexArrayAPPLE),
+    NAME_FUNC_OFFSET(20011, gl_dispatch_stub_767, gl_dispatch_stub_767, NULL, _gloffset_BlendEquationSeparateEXT),
+    NAME_FUNC_OFFSET(20035, gl_dispatch_stub_767, gl_dispatch_stub_767, NULL, _gloffset_BlendEquationSeparateEXT),
+    NAME_FUNC_OFFSET(20062, glBindFramebufferEXT, glBindFramebufferEXT, NULL, _gloffset_BindFramebufferEXT),
+    NAME_FUNC_OFFSET(20080, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, _gloffset_BindRenderbufferEXT),
+    NAME_FUNC_OFFSET(20099, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, _gloffset_CheckFramebufferStatusEXT),
+    NAME_FUNC_OFFSET(20124, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, _gloffset_DeleteFramebuffersEXT),
+    NAME_FUNC_OFFSET(20145, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, _gloffset_DeleteRenderbuffersEXT),
+    NAME_FUNC_OFFSET(20167, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, _gloffset_FramebufferRenderbufferEXT),
+    NAME_FUNC_OFFSET(20193, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, _gloffset_FramebufferTexture1DEXT),
+    NAME_FUNC_OFFSET(20216, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, _gloffset_FramebufferTexture2DEXT),
+    NAME_FUNC_OFFSET(20239, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, _gloffset_FramebufferTexture3DEXT),
+    NAME_FUNC_OFFSET(20262, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, _gloffset_GenFramebuffersEXT),
+    NAME_FUNC_OFFSET(20280, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, _gloffset_GenRenderbuffersEXT),
+    NAME_FUNC_OFFSET(20299, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, _gloffset_GenerateMipmapEXT),
+    NAME_FUNC_OFFSET(20316, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, _gloffset_GetFramebufferAttachmentParameterivEXT),
+    NAME_FUNC_OFFSET(20354, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, _gloffset_GetRenderbufferParameterivEXT),
+    NAME_FUNC_OFFSET(20383, glIsFramebufferEXT, glIsFramebufferEXT, NULL, _gloffset_IsFramebufferEXT),
+    NAME_FUNC_OFFSET(20399, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, _gloffset_IsRenderbufferEXT),
+    NAME_FUNC_OFFSET(20416, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, _gloffset_RenderbufferStorageEXT),
+    NAME_FUNC_OFFSET(20438, gl_dispatch_stub_785, gl_dispatch_stub_785, NULL, _gloffset_BlitFramebufferEXT),
+    NAME_FUNC_OFFSET(20456, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, _gloffset_FramebufferTextureLayerEXT),
+    NAME_FUNC_OFFSET(20482, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, _gloffset_BeginTransformFeedbackEXT),
+    NAME_FUNC_OFFSET(20507, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, _gloffset_BindBufferBaseEXT),
+    NAME_FUNC_OFFSET(20524, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, _gloffset_BindBufferRangeEXT),
+    NAME_FUNC_OFFSET(20542, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, _gloffset_EndTransformFeedbackEXT),
+    NAME_FUNC_OFFSET(20565, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, _gloffset_GetTransformFeedbackVaryingEXT),
+    NAME_FUNC_OFFSET(20595, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, _gloffset_TransformFeedbackVaryingsEXT),
+    NAME_FUNC_OFFSET(20623, glProvokingVertexEXT, glProvokingVertexEXT, NULL, _gloffset_ProvokingVertexEXT),
+    NAME_FUNC_OFFSET(-1, NULL, NULL, NULL, 0)
+};
+
+#undef NAME_FUNC_OFFSET
diff --git a/src/mapi/glapi/glthread.c b/src/mapi/glapi/glthread.c
new file mode 100644 (file)
index 0000000..f365d17
--- /dev/null
@@ -0,0 +1,263 @@
+/*
+ * Mesa 3-D graphics library
+ * Version:  6.5.1
+ *
+ * Copyright (C) 1999-2006  Brian Paul   All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+
+/*
+ * XXX There's probably some work to do in order to make this file
+ * truly reusable outside of Mesa.  First, the glheader.h include must go.
+ */
+
+#ifdef HAVE_DIX_CONFIG_H
+#include <dix-config.h>
+#include "glapi/mesa.h"
+#else
+#include "main/compiler.h"
+#endif
+
+#include "glapi/glthread.h"
+
+
+/*
+ * This file should still compile even when THREADS is not defined.
+ * This is to make things easier to deal with on the makefile scene..
+ */
+#ifdef THREADS
+#include <errno.h>
+
+/*
+ * Error messages
+ */
+#define INIT_TSD_ERROR "_glthread_: failed to allocate key for thread specific data"
+#define GET_TSD_ERROR "_glthread_: failed to get thread specific data"
+#define SET_TSD_ERROR "_glthread_: thread failed to set thread specific data"
+
+
+/*
+ * Magic number to determine if a TSD object has been initialized.
+ * Kind of a hack but there doesn't appear to be a better cross-platform
+ * solution.
+ */
+#define INIT_MAGIC 0xff8adc98
+
+
+
+/*
+ * POSIX Threads -- The best way to go if your platform supports them.
+ *                  Solaris >= 2.5 have POSIX threads, IRIX >= 6.4 reportedly
+ *                  has them, and many of the free Unixes now have them.
+ *                  Be sure to use appropriate -mt or -D_REENTRANT type
+ *                  compile flags when building.
+ */
+#ifdef PTHREADS
+
+PUBLIC unsigned long
+_glthread_GetID(void)
+{
+   return (unsigned long) pthread_self();
+}
+
+
+void
+_glthread_InitTSD(_glthread_TSD *tsd)
+{
+   if (pthread_key_create(&tsd->key, NULL/*free*/) != 0) {
+      perror(INIT_TSD_ERROR);
+      exit(-1);
+   }
+   tsd->initMagic = INIT_MAGIC;
+}
+
+
+void *
+_glthread_GetTSD(_glthread_TSD *tsd)
+{
+   if (tsd->initMagic != (int) INIT_MAGIC) {
+      _glthread_InitTSD(tsd);
+   }
+   return pthread_getspecific(tsd->key);
+}
+
+
+void
+_glthread_SetTSD(_glthread_TSD *tsd, void *ptr)
+{
+   if (tsd->initMagic != (int) INIT_MAGIC) {
+      _glthread_InitTSD(tsd);
+   }
+   if (pthread_setspecific(tsd->key, ptr) != 0) {
+      perror(SET_TSD_ERROR);
+      exit(-1);
+   }
+}
+
+#endif /* PTHREADS */
+
+
+
+/*
+ * Win32 Threads.  The only available option for Windows 95/NT.
+ * Be sure that you compile using the Multithreaded runtime, otherwise
+ * bad things will happen.
+ */
+#ifdef WIN32_THREADS
+
+static void InsteadOf_exit(int nCode)
+{
+   DWORD dwErr = GetLastError();
+}
+
+PUBLIC unsigned long
+_glthread_GetID(void)
+{
+   return GetCurrentThreadId();
+}
+
+
+void
+_glthread_InitTSD(_glthread_TSD *tsd)
+{
+   tsd->key = TlsAlloc();
+   if (tsd->key == TLS_OUT_OF_INDEXES) {
+      perror(INIT_TSD_ERROR);
+      InsteadOf_exit(-1);
+   }
+   tsd->initMagic = INIT_MAGIC;
+}
+
+
+void
+_glthread_DestroyTSD(_glthread_TSD *tsd)
+{
+   if (tsd->initMagic != INIT_MAGIC) {
+      return;
+   }
+   TlsFree(tsd->key);
+   tsd->initMagic = 0x0;
+}
+
+
+void *
+_glthread_GetTSD(_glthread_TSD *tsd)
+{
+   if (tsd->initMagic != INIT_MAGIC) {
+      _glthread_InitTSD(tsd);
+   }
+   return TlsGetValue(tsd->key);
+}
+
+
+void
+_glthread_SetTSD(_glthread_TSD *tsd, void *ptr)
+{
+   /* the following code assumes that the _glthread_TSD has been initialized
+      to zero at creation */
+   if (tsd->initMagic != INIT_MAGIC) {
+      _glthread_InitTSD(tsd);
+   }
+   if (TlsSetValue(tsd->key, ptr) == 0) {
+      perror(SET_TSD_ERROR);
+      InsteadOf_exit(-1);
+   }
+}
+
+#endif /* WIN32_THREADS */
+
+/*
+ * BeOS threads
+ */
+#ifdef BEOS_THREADS
+
+PUBLIC unsigned long
+_glthread_GetID(void)
+{
+   return (unsigned long) find_thread(NULL);
+}
+
+void
+_glthread_InitTSD(_glthread_TSD *tsd)
+{
+   tsd->key = tls_allocate();
+   tsd->initMagic = INIT_MAGIC;
+}
+
+void *
+_glthread_GetTSD(_glthread_TSD *tsd)
+{
+   if (tsd->initMagic != (int) INIT_MAGIC) {
+      _glthread_InitTSD(tsd);
+   }
+   return tls_get(tsd->key);
+}
+
+void
+_glthread_SetTSD(_glthread_TSD *tsd, void *ptr)
+{
+   if (tsd->initMagic != (int) INIT_MAGIC) {
+      _glthread_InitTSD(tsd);
+   }
+   tls_set(tsd->key, ptr);
+}
+
+#endif /* BEOS_THREADS */
+
+
+
+#else  /* THREADS */
+
+
+/*
+ * no-op functions
+ */
+
+PUBLIC unsigned long
+_glthread_GetID(void)
+{
+   return 0;
+}
+
+
+void
+_glthread_InitTSD(_glthread_TSD *tsd)
+{
+   (void) tsd;
+}
+
+
+void *
+_glthread_GetTSD(_glthread_TSD *tsd)
+{
+   (void) tsd;
+   return NULL;
+}
+
+
+void
+_glthread_SetTSD(_glthread_TSD *tsd, void *ptr)
+{
+   (void) tsd;
+   (void) ptr;
+}
+
+
+#endif /* THREADS */
diff --git a/src/mapi/glapi/glthread.h b/src/mapi/glapi/glthread.h
new file mode 100644 (file)
index 0000000..4fe9928
--- /dev/null
@@ -0,0 +1,255 @@
+/*
+ * Mesa 3-D graphics library
+ * Version:  6.5.2
+ *
+ * Copyright (C) 1999-2006  Brian Paul   All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+ * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ */
+
+
+/*
+ * Thread support for gl dispatch.
+ *
+ * Initial version by John Stone (j.stone@acm.org) (johns@cs.umr.edu)
+ *                and Christoph Poliwoda (poliwoda@volumegraphics.com)
+ * Revised by Keith Whitwell
+ * Adapted for new gl dispatcher by Brian Paul
+ *
+ *
+ *
+ * DOCUMENTATION
+ *
+ * This thread module exports the following types:
+ *   _glthread_TSD     Thread-specific data area
+ *   _glthread_Thread  Thread datatype
+ *   _glthread_Mutex   Mutual exclusion lock
+ *
+ * Macros:
+ *   _glthread_DECLARE_STATIC_MUTEX(name)   Declare a non-local mutex
+ *   _glthread_INIT_MUTEX(name)             Initialize a mutex
+ *   _glthread_LOCK_MUTEX(name)             Lock a mutex
+ *   _glthread_UNLOCK_MUTEX(name)           Unlock a mutex
+ *
+ * Functions:
+ *   _glthread_GetID(v)      Get integer thread ID
+ *   _glthread_InitTSD()     Initialize thread-specific data
+ *   _glthread_GetTSD()      Get thread-specific data
+ *   _glthread_SetTSD()      Set thread-specific data
+ *
+ */
+
+/*
+ * If this file is accidentally included by a non-threaded build,
+ * it should not cause the build to fail, or otherwise cause problems.
+ * In general, it should only be included when needed however.
+ */
+
+#ifndef GLTHREAD_H
+#define GLTHREAD_H
+
+
+#if defined(PTHREADS) || defined(WIN32_THREADS) || defined(BEOS_THREADS)
+#ifndef THREADS
+#define THREADS
+#endif
+#endif
+
+
+/*
+ * POSIX threads. This should be your choice in the Unix world
+ * whenever possible.  When building with POSIX threads, be sure
+ * to enable any compiler flags which will cause the MT-safe
+ * libc (if one exists) to be used when linking, as well as any
+ * header macros for MT-safe errno, etc.  For Solaris, this is the -mt
+ * compiler flag.  On Solaris with gcc, use -D_REENTRANT to enable
+ * proper compiling for MT-safe libc etc.
+ */
+#if defined(PTHREADS)
+#include <pthread.h> /* POSIX threads headers */
+
+typedef struct {
+   pthread_key_t  key;
+   int initMagic;
+} _glthread_TSD;
+
+typedef pthread_t _glthread_Thread;
+
+typedef pthread_mutex_t _glthread_Mutex;
+
+#define _glthread_DECLARE_STATIC_MUTEX(name) \
+   static _glthread_Mutex name = PTHREAD_MUTEX_INITIALIZER
+
+#define _glthread_INIT_MUTEX(name) \
+   pthread_mutex_init(&(name), NULL)
+
+#define _glthread_DESTROY_MUTEX(name) \
+   pthread_mutex_destroy(&(name))
+
+#define _glthread_LOCK_MUTEX(name) \
+   (void) pthread_mutex_lock(&(name))
+
+#define _glthread_UNLOCK_MUTEX(name) \
+   (void) pthread_mutex_unlock(&(name))
+
+#endif /* PTHREADS */
+
+
+/*
+ * Windows threads. Should work with Windows NT and 95.
+ * IMPORTANT: Link with multithreaded runtime library when THREADS are
+ * used!
+ */
+#ifdef WIN32_THREADS
+#include <windows.h>
+
+typedef struct {
+   DWORD key;
+   int   initMagic;
+} _glthread_TSD;
+
+typedef HANDLE _glthread_Thread;
+
+typedef CRITICAL_SECTION _glthread_Mutex;
+
+#define _glthread_DECLARE_STATIC_MUTEX(name) \
+   /* static */ _glthread_Mutex name = { 0, 0, 0, 0, 0, 0 }
+
+#define _glthread_INIT_MUTEX(name) \
+   InitializeCriticalSection(&name)
+
+#define _glthread_DESTROY_MUTEX(name) \
+   DeleteCriticalSection(&name)
+
+#define _glthread_LOCK_MUTEX(name) \
+   EnterCriticalSection(&name)
+
+#define _glthread_UNLOCK_MUTEX(name) \
+   LeaveCriticalSection(&name)
+
+#endif /* WIN32_THREADS */
+
+
+/*
+ * BeOS threads. R5.x required.
+ */
+#ifdef BEOS_THREADS
+
+/* Problem with OS.h and this file on haiku */
+#ifndef __HAIKU__
+#include <kernel/OS.h>
+#endif
+
+#include <support/TLS.h>
+
+/* The only two typedefs required here
+ * this is cause of the OS.h problem
+ */
+#ifdef __HAIKU__
+typedef int32 thread_id;
+typedef int32 sem_id;
+#endif
+
+typedef struct {
+   int32        key;
+   int          initMagic;
+} _glthread_TSD;
+
+typedef thread_id _glthread_Thread;
+
+/* Use Benaphore, aka speeder semaphore */
+typedef struct {
+    int32   lock;
+    sem_id  sem;
+} benaphore;
+typedef benaphore _glthread_Mutex;
+
+#define _glthread_DECLARE_STATIC_MUTEX(name) \
+   static _glthread_Mutex name = { 0, 0 }
+
+#define _glthread_INIT_MUTEX(name) \
+   name.sem = create_sem(0, #name"_benaphore"), \
+   name.lock = 0
+
+#define _glthread_DESTROY_MUTEX(name) \
+   delete_sem(name.sem), \
+   name.lock = 0
+
+#define _glthread_LOCK_MUTEX(name) \
+   if (name.sem == 0) \
+      _glthread_INIT_MUTEX(name); \
+   if (atomic_add(&(name.lock), 1) >= 1) \
+      acquire_sem(name.sem)
+
+#define _glthread_UNLOCK_MUTEX(name) \
+   if (atomic_add(&(name.lock), -1) > 1) \
+      release_sem(name.sem)
+
+#endif /* BEOS_THREADS */
+
+
+/*
+ * THREADS not defined
+ */
+#ifndef THREADS
+
+typedef unsigned _glthread_TSD;
+
+typedef unsigned _glthread_Thread;
+
+typedef unsigned _glthread_Mutex;
+
+#define _glthread_DECLARE_STATIC_MUTEX(name)  static _glthread_Mutex name = 0
+
+#define _glthread_INIT_MUTEX(name)  (void) name
+
+#define _glthread_DESTROY_MUTEX(name)  (void) name
+
+#define _glthread_LOCK_MUTEX(name)  (void) name
+
+#define _glthread_UNLOCK_MUTEX(name)  (void) name
+
+#endif /* THREADS */
+
+
+
+/*
+ * Platform independent thread specific data API.
+ */
+
+extern unsigned long
+_glthread_GetID(void);
+
+
+extern void
+_glthread_InitTSD(_glthread_TSD *);
+
+
+extern void
+_glthread_DestroyTSD(_glthread_TSD *); /* WIN32 only */
+
+
+extern void *
+_glthread_GetTSD(_glthread_TSD *);
+
+
+extern void
+_glthread_SetTSD(_glthread_TSD *, void *);
+
+
+#endif /* THREADS_H */
diff --git a/src/mapi/glapi/sources.mak b/src/mapi/glapi/sources.mak
new file mode 100644 (file)
index 0000000..8e1e82f
--- /dev/null
@@ -0,0 +1,19 @@
+# src/mapi/glapi/sources.mak
+
+GLAPI_SOURCES = \
+       glapi.c \
+       glapi_dispatch.c \
+       glapi_entrypoint.c \
+       glapi_execmem.c \
+       glapi_getproc.c \
+       glapi_nop.c \
+       glthread.c
+
+X86_API =                      \
+       glapi_x86.S
+
+X86-64_API =                   \
+       glapi_x86-64.S
+
+SPARC_API =                    \
+       glapi_sparc.S
index 72f983e10a059fecbc64cd2848ea349ce002ded2..332063a507e36c9bc48618348d40303580b17797 100644 (file)
@@ -21,15 +21,8 @@ CFLAGS += $(API_DEFINES)
 
 # Default: build dependencies, then asm_subdirs, GLSL built-in lib,
 # then convenience libs (.a) and finally the device drivers:
-default: depend es_glapi asm_subdirs glsl_builtin libmesa.a libmesagallium.a \
-       libglapi.a driver_subdirs
-
-es_glapi:
-       @for api in $(APIS) ; do                        \
-           case "$$api" in                             \
-               es1|es2) $(MAKE) -C es/glapi $$api;;    \
-           esac;                                       \
-       done
+default: depend asm_subdirs glsl_builtin libmesa.a libmesagallium.a \
+       driver_subdirs
 
 main/api_exec_es1.c: main/APIspec.xml main/es_generator.py main/APIspecutil.py main/APIspec.py
        $(PYTHON2) $(PYTHON_FLAGS) main/es_generator.py -S main/APIspec.xml -V GLES1.1 > $@
@@ -54,13 +47,9 @@ libmesa.a: $(MESA_OBJECTS) $(GLSL_LIBS)
 libmesagallium.a: $(MESA_GALLIUM_OBJECTS) $(GLSL_LIBS)
        @ $(MKLIB) -o mesagallium -static $(MESA_GALLIUM_OBJECTS) $(GLSL_LIBS)
 
-# Make archive of gl* API dispatcher functions only
-libglapi.a: $(GLAPI_OBJECTS)
-       @ $(MKLIB) -o glapi -static $(GLAPI_OBJECTS)
-
 ######################################################################
 # Device drivers
-driver_subdirs: libmesa.a libglapi.a libmesagallium.a
+driver_subdirs: libmesa.a libmesagallium.a
        @ (cd drivers && $(MAKE))
 
 
@@ -218,7 +207,7 @@ tags:
 clean:
        -rm -f */*.o
        -rm -f */*/*.o
-       -rm -f depend depend.bak libmesa.a libglapi.a libmesagallium.a
+       -rm -f depend depend.bak libmesa.a libmesagallium.a
        -rm -f drivers/*/*.o
        -rm -f *.pc
        -rm -f shader/slang/library/*_gc.h
index 9cc5d4931111812c24d5a2197f6baa3d00a2b2f3..bf4ad6d26199846c86fa66549e49108e61c30fff 100644 (file)
@@ -9,6 +9,7 @@ if env['platform'] != 'winddk':
        env = env.Clone()
        
        env.Append(CPPPATH = [
+               '#/src/mapi',
                '#/src/mesa',
        ])
        
@@ -247,16 +248,6 @@ if env['platform'] != 'winddk':
                slang_sources
        )
 
-       glapi_sources = [
-               'glapi/glapi.c',
-               'glapi/glapi_dispatch.c',
-               'glapi/glapi_entrypoint.c',
-               'glapi/glapi_execmem.c',
-               'glapi/glapi_getproc.c',
-               'glapi/glapi_nop.c',
-               'glapi/glthread.c',
-       ]
-       
        #
        # Assembly sources
        #
@@ -290,9 +281,6 @@ if env['platform'] != 'winddk':
                        'x86/sse_normal.S',
                        'x86/read_rgba_span_x86.S',
                ]
-               glapi_sources += [
-                       'glapi/glapi_x86.S',
-               ]
        elif gcc and env['machine'] == 'x86_64':
                env.Append(CPPDEFINES = [
                        'USE_X86_64_ASM', 
@@ -301,9 +289,6 @@ if env['platform'] != 'winddk':
                        'x86-64/x86-64.c',
                        'x86-64/xform4.S',
                ]
-               glapi_sources += [
-                       'glapi/glapi_x86-64.S'
-               ]
        elif gcc and env['machine'] == 'ppc':
                env.Append(CPPDEFINES = [
                        'USE_PPC_ASM', 
@@ -312,8 +297,6 @@ if env['platform'] != 'winddk':
                mesa_sources += [
                        'ppc/common_ppc.c',
                ]
-               glapi_sources += [
-               ]
        elif gcc and env['machine'] == 'sparc':
                mesa_sources += [
                        'sparc/sparc.c',
@@ -321,9 +304,6 @@ if env['platform'] != 'winddk':
                        'sparc/norm.S',
                        'sparc/xform.S',
                ]
-               glapi_sources += [
-                       'glapi/glapi_sparc.S'
-               ]
        else:
                pass
        
@@ -354,10 +334,3 @@ if env['platform'] != 'winddk':
                source = mesa_sources,
        )
        Export('mesa')
-       
-       glapi = env.ConvenienceLibrary(
-               target = 'glapi',
-               source = glapi_sources,
-       )
-       Export('glapi')
-
index 4b9a0c1786daea6bd232a4358fbe434271a1d00a..8cb25439e4843ba15c36c1bf605bc10255163c9e 100644 (file)
@@ -26,6 +26,7 @@ SHARED_INCLUDES = \
        -I$(TOP)/src/mesa/drivers/dri/common \
        -Iserver \
        -I$(TOP)/include \
+       -I$(TOP)/src/mapi \
        -I$(TOP)/src/mesa \
        -I$(TOP)/src/egl/main \
        -I$(TOP)/src/egl/drivers/dri \
index ee73f29a46ae942cc294dc9b26287e4fb8cb5b18..5120e1ac9e559bbdc5fd025867a6cb475f5f5c98 100644 (file)
@@ -11,10 +11,11 @@ OBJECTS = $(SOURCES:.c=.o)
 
 INCLUDE_DIRS = \
        -I$(TOP)/include \
+       -I$(TOP)/src/mapi \
        -I$(TOP)/src/mesa \
        -I$(TOP)/src/mesa/main
 
-CORE_MESA = $(TOP)/src/mesa/libmesa.a $(TOP)/src/mesa/libglapi.a
+CORE_MESA = $(TOP)/src/mesa/libmesa.a $(TOP)/src/mapi/glapi/libglapi.a
 
 
 .c.o:
index 7dcf9a6541ae2bc4a37b9c696f629f5cbcf3d584..6da9f93f59a8616a2407ee7770149027915480c9 100644 (file)
@@ -11,11 +11,12 @@ OBJECTS = \
        glslcompiler.o \
        ../common/driverfuncs.o \
        ../../libmesa.a \
-       ../../libglapi.a
+       $(TOP)/src/mapi/glapi/libglapi.a
 
 INCLUDES = \
        -I$(TOP)/include \
        -I$(TOP)/include/GL/internal \
+       -I$(TOP)/src/mapi \
        -I$(TOP)/src/mesa \
        -I$(TOP)/src/mesa/main \
        -I$(TOP)/src/mesa/glapi \
index 9010bbd130a5ed10bf67e5f3b1b3c02d4c4860a7..ea49a89659058752364bb9d47a6cc0f1ab9ed594 100644 (file)
@@ -16,6 +16,7 @@ OBJECTS = $(SOURCES:.c=.o)
 
 INCLUDE_DIRS = \
        -I$(TOP)/include \
+       -I$(TOP)/src/mapi \
        -I$(TOP)/src/mesa \
        -I$(TOP)/src/mesa/main
 
@@ -23,7 +24,7 @@ INCLUDE_DIRS = \
 ifeq ($(DRIVER_DIRS), osmesa)
 CORE_MESA = \
        $(TOP)/src/mesa/libmesa.a \
-       $(TOP)/src/mesa/libglapi.a \
+       $(TOP)/src/mapi/glapi/libglapi.a \
        $(TOP)/src/glsl/cl/libglslcl.a \
        $(TOP)/src/glsl/pp/libglslpp.a
 else
index 5e427d2d5c6013dbfd1e0b4cd923bbd616a0e952..b5b0c1f11a872af629996f1ac23a3e59accd0254 100644 (file)
@@ -40,11 +40,12 @@ OBJECTS = $(SOURCES:.c=.o)
 
 INCLUDE_DIRS = \
        -I$(TOP)/include \
+       -I$(TOP)/src/mapi \
        -I$(TOP)/src/mesa \
        -I$(TOP)/src/mesa/main \
        $(X11_INCLUDES)
 
-CORE_MESA = $(TOP)/src/mesa/libmesa.a $(TOP)/src/mesa/libglapi.a
+CORE_MESA = $(TOP)/src/mesa/libmesa.a $(TOP)/src/mapi/glapi/libglapi.a
 
 
 
index 5498b086aab6d6b8a1a20cda65ef61da3697b728..426799abf1b46451f2686beed8b906469b388472 100644 (file)
@@ -6,18 +6,16 @@ MESA := ..
 include $(TOP)/configs/current
 include sources.mak
 
-ES1_LIBS := libes1gallium.a libes1api.a
-ES2_LIBS := libes2gallium.a libes2api.a
+ES1_LIBS := libes1gallium.a
+ES2_LIBS := libes2gallium.a
 
 # Default rule: create ES1 and ES2 libs
-.PHONY: default es1 es2
-default: depend es1 es2
+.PHONY: default subdirs es1 es2
+default: depend subdirs es1 es2
 
 es1: $(ES1_LIBS)
-       @rm -f subdirs-stamp-tmp
 
 es2: $(ES2_LIBS)
-       @rm -f subdirs-stamp-tmp
 
 ES1_CPPFLAGS := -DFEATURE_ES1=1 -D__GL_EXPORTS
 ES2_CPPFLAGS := -DFEATURE_ES2=1 -D__GL_EXPORTS
@@ -28,11 +26,9 @@ ES2_OBJ_DIR := objs-es2
 # adjust output dirs
 ES1_OBJECTS := $(addprefix $(ES1_OBJ_DIR)/, $(ES1_OBJECTS))
 ES1_GALLIUM_OBJECTS := $(addprefix $(ES1_OBJ_DIR)/, $(ES1_GALLIUM_OBJECTS))
-ES1_API_OBJECTS := $(addprefix $(ES1_OBJ_DIR)/, $(ES1_API_OBJECTS))
 
 ES2_OBJECTS := $(addprefix $(ES2_OBJ_DIR)/, $(ES2_OBJECTS))
 ES2_GALLIUM_OBJECTS := $(addprefix $(ES2_OBJ_DIR)/, $(ES2_GALLIUM_OBJECTS))
-ES2_API_OBJECTS := $(addprefix $(ES2_OBJ_DIR)/, $(ES2_API_OBJECTS))
 
 # compile either ES1 or ES2 sources
 define es-compile
@@ -76,36 +72,22 @@ libes1gallium.a: $(ES1_GALLIUM_OBJECTS) $(GLSL_LIBS)
 libes2gallium.a: $(ES2_GALLIUM_OBJECTS) $(GLSL_LIBS)
        @$(MKLIB) -o es2gallium -static $(ES2_GALLIUM_OBJECTS) $(GLSL_LIBS)
 
-libes1api.a: $(ES1_API_OBJECTS)
-       @$(MKLIB) -o es1api -static $(ES1_API_OBJECTS)
-
-libes2api.a: $(ES2_API_OBJECTS)
-       @$(MKLIB) -o es2api -static $(ES2_API_OBJECTS)
-
 .PHONY: clean
 clean:
        -rm -f $(ES1_LIBS) $(ES2_LIBS)
        -rm -rf $(ES1_OBJ_DIR) $(ES2_OBJ_DIR)
-       -rm -f $(GENERATED_SOURCES)
        -rm -f depend depend.bak
-       -rm -f subdirs-stamp-tmp
-       @$(MAKE) -C glapi clean
 
 # nothing to install
 install:
 
-subdirs-stamp-tmp:
+subdirs:
        @$(MAKE) -C $(MESA) asm_subdirs
        @$(MAKE) -C $(MESA) glsl_builtin
-       @$(MAKE) -C glapi
-       @touch subdirs-stamp-tmp
 
 # sort to avoid duplicates
 ALL_SOURCES := $(sort $(ES1_ALL_SOURCES) $(ES2_ALL_SOURCES))
 
-# need to make sure the subdirs are processed first
-$(ALL_SOURCES): | subdirs-stamp-tmp
-
 depend: $(ALL_SOURCES)
        @echo "running $(MKDEP)"
        @touch depend
diff --git a/src/mesa/es/glapi/Makefile b/src/mesa/es/glapi/Makefile
deleted file mode 100644 (file)
index d12b8a5..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-TOP = ../../../..
-GLAPI = ../../glapi/gen
-include $(TOP)/configs/current
-
-OUTPUTS :=                     \
-       glapi/glapidispatch.h   \
-       glapi/glapioffsets.h    \
-       glapi/glapitable.h      \
-       glapi/glapitemp.h       \
-       glapi/glprocs.h         \
-       glapi/glapi_sparc.S     \
-       glapi/glapi_x86-64.S    \
-       glapi/glapi_x86.S       \
-       main/remap_helper.h
-
-COMMON = gl_XML.py glX_XML.py license.py typeexpr.py
-COMMON := $(addprefix $(GLAPI)/, $(COMMON))
-
-ES1_APIXML := es1_API.xml
-ES2_APIXML := es2_API.xml
-ES1_OUTPUT_DIR := glapi-es1
-ES2_OUTPUT_DIR := glapi-es2
-
-ES1_DEPS = $(ES1_APIXML) base1_API.xml es1_EXT.xml es_EXT.xml \
-          es1_COMPAT.xml es_COMPAT.xml
-ES2_DEPS = $(ES2_APIXML) base2_API.xml es2_EXT.xml es_EXT.xml \
-          es2_COMPAT.xml es_COMPAT.xml
-
-ES1_OUTPUTS := $(addprefix $(ES1_OUTPUT_DIR)/, $(OUTPUTS))
-ES2_OUTPUTS := $(addprefix $(ES2_OUTPUT_DIR)/, $(OUTPUTS))
-
-all: es1 es2
-
-es1: $(ES1_OUTPUTS)
-es2: $(ES2_OUTPUTS)
-
-$(ES1_OUTPUTS): APIXML := $(ES1_APIXML)
-$(ES2_OUTPUTS): APIXML := $(ES2_APIXML)
-$(ES1_OUTPUTS): $(ES1_DEPS)
-$(ES2_OUTPUTS): $(ES2_DEPS)
-
-define gen-glapi
-       @mkdir -p $(dir $@)
-       $(PYTHON2) $(PYTHON_FLAGS) $< -f $(APIXML) $(1) > $@
-endef
-
-%/glapidispatch.h: $(GLAPI)/gl_table.py $(COMMON)
-       $(call gen-glapi,-c -m remap_table)
-
-%/glapioffsets.h: $(GLAPI)/gl_offsets.py $(COMMON)
-       $(call gen-glapi,-c)
-
-%/glapitable.h: $(GLAPI)/gl_table.py $(COMMON)
-       $(call gen-glapi,-c)
-
-%/glapitemp.h: $(GLAPI)/gl_apitemp.py $(COMMON)
-       $(call gen-glapi,-c)
-
-%/glprocs.h: $(GLAPI)/gl_procs.py $(COMMON)
-       $(call gen-glapi,-c)
-
-%/glapi_sparc.S: $(GLAPI)/gl_SPARC_asm.py $(COMMON)
-       $(call gen-glapi)
-
-%/glapi_x86-64.S: $(GLAPI)/gl_x86-64_asm.py $(COMMON)
-       $(call gen-glapi)
-
-%/glapi_x86.S: $(GLAPI)/gl_x86_asm.py $(COMMON)
-       $(call gen-glapi)
-
-%/main/remap_helper.h: $(GLAPI)/remap_helper.py $(COMMON)
-       $(call gen-glapi)
-
-verify_xml:
-       @if [ ! -f gl.h ]; then \
-               echo "Please copy gl.h and gl2.h to this directory"; \
-               exit 1; \
-       fi
-       @echo "Verifying that es1_API.xml covers OpenGL ES 1.1..."
-       @$(PYTHON2) $(PYTHON_FLAGS) gl_parse_header.py gl.h > tmp.xml
-       @$(PYTHON2) $(PYTHON_FLAGS) gl_compare.py difference tmp.xml es1_API.xml
-       @echo "Verifying that es2_API.xml covers OpenGL ES 2.0..."
-       @$(PYTHON2) $(PYTHON_FLAGS) gl_parse_header.py gl2.h > tmp.xml
-       @$(PYTHON2) $(PYTHON_FLAGS) gl_compare.py difference tmp.xml es2_API.xml
-       @rm -f tmp.xml
-
-clean:
-       -rm -rf $(ES1_OUTPUT_DIR) $(ES2_OUTPUT_DIR)
-       -rm -f *~ *.pyc *.pyo
diff --git a/src/mesa/es/glapi/base1_API.xml b/src/mesa/es/glapi/base1_API.xml
deleted file mode 100644 (file)
index 72e4128..0000000
+++ /dev/null
@@ -1,744 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "../../glapi/gen/gl_API.dtd">
-
-<!-- OpenGL and OpenGL ES 1.x APIs
-     This file defines the base categories that can be shared by all APIs.
-     They are defined in an incremental fashion.
--->
-
-<OpenGLAPI>
-
-<!-- base subset of OpenGL 1.0 -->
-<category name="base1.0">
-    <enum name="FALSE"                                    value="0x0"/>
-    <enum name="TRUE"                                     value="0x1"/>
-    <enum name="ZERO"                                     value="0x0"/>
-    <enum name="ONE"                                      value="0x1"/>
-    <enum name="NO_ERROR"                                 value="0x0"/>
-
-    <enum name="POINTS"                                   value="0x0000"/>
-    <enum name="LINES"                                    value="0x0001"/>
-    <enum name="LINE_LOOP"                                value="0x0002"/>
-    <enum name="LINE_STRIP"                               value="0x0003"/>
-    <enum name="TRIANGLES"                                value="0x0004"/>
-    <enum name="TRIANGLE_STRIP"                           value="0x0005"/>
-    <enum name="TRIANGLE_FAN"                             value="0x0006"/>
-    <enum name="NEVER"                                    value="0x0200"/>
-    <enum name="LESS"                                     value="0x0201"/>
-    <enum name="EQUAL"                                    value="0x0202"/>
-    <enum name="LEQUAL"                                   value="0x0203"/>
-    <enum name="GREATER"                                  value="0x0204"/>
-    <enum name="NOTEQUAL"                                 value="0x0205"/>
-    <enum name="GEQUAL"                                   value="0x0206"/>
-    <enum name="ALWAYS"                                   value="0x0207"/>
-    <enum name="SRC_COLOR"                                value="0x0300"/>
-    <enum name="ONE_MINUS_SRC_COLOR"                      value="0x0301"/>
-    <enum name="SRC_ALPHA"                                value="0x0302"/>
-    <enum name="ONE_MINUS_SRC_ALPHA"                      value="0x0303"/>
-    <enum name="DST_ALPHA"                                value="0x0304"/>
-    <enum name="ONE_MINUS_DST_ALPHA"                      value="0x0305"/>
-    <enum name="DST_COLOR"                                value="0x0306"/>
-    <enum name="ONE_MINUS_DST_COLOR"                      value="0x0307"/>
-    <enum name="SRC_ALPHA_SATURATE"                       value="0x0308"/>
-    <enum name="FRONT"                                    value="0x0404"/>
-    <enum name="BACK"                                     value="0x0405"/>
-    <enum name="FRONT_AND_BACK"                           value="0x0408"/>
-    <enum name="INVALID_ENUM"                             value="0x0500"/>
-    <enum name="INVALID_VALUE"                            value="0x0501"/>
-    <enum name="INVALID_OPERATION"                        value="0x0502"/>
-    <enum name="OUT_OF_MEMORY"                            value="0x0505"/>
-    <enum name="CW"                                       value="0x0900"/>
-    <enum name="CCW"                                      value="0x0901"/>
-    <enum name="CULL_FACE"                     count="1"  value="0x0B44">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DEPTH_TEST"                    count="1"  value="0x0B71">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_TEST"                  count="1"  value="0x0B90">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DITHER"                        count="1"  value="0x0BD0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLEND"                         count="1"  value="0x0BE2">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SCISSOR_TEST"                  count="1"  value="0x0C11">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="UNPACK_ALIGNMENT"              count="1"  value="0x0CF5">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PACK_ALIGNMENT"                count="1"  value="0x0D05">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_TEXTURE_SIZE"              count="1"  value="0x0D33">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_VIEWPORT_DIMS"             count="2"  value="0x0D3A">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SUBPIXEL_BITS"                 count="1"  value="0x0D50">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="RED_BITS"                      count="1"  value="0x0D52">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="GREEN_BITS"                    count="1"  value="0x0D53">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLUE_BITS"                     count="1"  value="0x0D54">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ALPHA_BITS"                    count="1"  value="0x0D55">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DEPTH_BITS"                    count="1"  value="0x0D56">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_BITS"                  count="1"  value="0x0D57">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_2D"                    count="1"  value="0x0DE1">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DONT_CARE"                                value="0x1100"/>
-    <enum name="FASTEST"                                  value="0x1101"/>
-    <enum name="NICEST"                                   value="0x1102"/>
-    <enum name="BYTE"                          count="1"  value="0x1400">
-        <size name="CallLists"/>
-    </enum>
-    <enum name="UNSIGNED_BYTE"                 count="1"  value="0x1401">
-        <size name="CallLists"/>
-    </enum>
-    <enum name="SHORT"                         count="2"  value="0x1402">
-        <size name="CallLists"/>
-    </enum>
-    <enum name="UNSIGNED_SHORT"                count="2"  value="0x1403">
-        <size name="CallLists"/>
-    </enum>
-    <enum name="FLOAT"                         count="4"  value="0x1406">
-        <size name="CallLists"/>
-    </enum>
-    <enum name="INVERT"                                   value="0x150A"/>
-    <enum name="TEXTURE"                                  value="0x1702"/>
-    <enum name="ALPHA"                                    value="0x1906"/>
-    <enum name="RGB"                                      value="0x1907"/>
-    <enum name="RGBA"                                     value="0x1908"/>
-    <enum name="LUMINANCE"                                value="0x1909"/>
-    <enum name="LUMINANCE_ALPHA"                          value="0x190A"/>
-    <enum name="KEEP"                                     value="0x1E00"/>
-    <enum name="REPLACE"                                  value="0x1E01"/>
-    <enum name="INCR"                                     value="0x1E02"/>
-    <enum name="DECR"                                     value="0x1E03"/>
-    <enum name="VENDOR"                                   value="0x1F00"/>
-    <enum name="RENDERER"                                 value="0x1F01"/>
-    <enum name="VERSION"                                  value="0x1F02"/>
-    <enum name="EXTENSIONS"                               value="0x1F03"/>
-    <enum name="NEAREST"                                  value="0x2600"/>
-    <enum name="LINEAR"                                   value="0x2601"/>
-    <enum name="NEAREST_MIPMAP_NEAREST"                   value="0x2700"/>
-    <enum name="LINEAR_MIPMAP_NEAREST"                    value="0x2701"/>
-    <enum name="NEAREST_MIPMAP_LINEAR"                    value="0x2702"/>
-    <enum name="LINEAR_MIPMAP_LINEAR"                     value="0x2703"/>
-    <enum name="TEXTURE_MAG_FILTER"            count="1"  value="0x2800">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_MIN_FILTER"            count="1"  value="0x2801">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_WRAP_S"                count="1"  value="0x2802">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_WRAP_T"                count="1"  value="0x2803">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="REPEAT"                                   value="0x2901"/>
-
-    <enum name="DEPTH_BUFFER_BIT"                         value="0x00000100"/>
-    <enum name="STENCIL_BUFFER_BIT"                       value="0x00000400"/>
-    <enum name="COLOR_BUFFER_BIT"                         value="0x00004000"/>
-
-    <type name="float"   size="4"  float="true"    glx_name="FLOAT32"/>
-    <type name="clampf"  size="4"  float="true"    glx_name="FLOAT32"/>
-
-    <type name="int"     size="4"                  glx_name="CARD32"/>
-    <type name="uint"    size="4"  unsigned="true" glx_name="CARD32"/>
-    <type name="sizei"   size="4"                  glx_name="CARD32"/>
-    <type name="enum"    size="4"  unsigned="true" glx_name="ENUM"/>
-    <type name="bitfield" size="4" unsigned="true" glx_name="CARD32"/>
-
-    <type name="short"   size="2"                  glx_name="CARD16"/>
-    <type name="ushort"  size="2"  unsigned="true" glx_name="CARD16"/>
-
-    <type name="byte"    size="1"                  glx_name="CARD8"/>
-    <type name="ubyte"   size="1"  unsigned="true" glx_name="CARD8"/>
-    <type name="boolean" size="1"  unsigned="true" glx_name="CARD8"/>
-
-    <type name="void"    size="1"/>
-
-    <function name="BlendFunc" offset="241">
-        <param name="sfactor" type="GLenum"/>
-        <param name="dfactor" type="GLenum"/>
-        <glx rop="160"/>
-    </function>
-
-    <function name="Clear" offset="203">
-        <param name="mask" type="GLbitfield"/>
-        <glx rop="127"/>
-    </function>
-
-    <function name="ClearColor" offset="206">
-        <param name="red" type="GLclampf"/>
-        <param name="green" type="GLclampf"/>
-        <param name="blue" type="GLclampf"/>
-        <param name="alpha" type="GLclampf"/>
-        <glx rop="130"/>
-    </function>
-
-    <function name="ClearStencil" offset="207">
-        <param name="s" type="GLint"/>
-        <glx rop="131"/>
-    </function>
-
-    <function name="ColorMask" offset="210">
-        <param name="red" type="GLboolean"/>
-        <param name="green" type="GLboolean"/>
-        <param name="blue" type="GLboolean"/>
-        <param name="alpha" type="GLboolean"/>
-        <glx rop="134"/>
-    </function>
-
-    <function name="CullFace" offset="152">
-        <param name="mode" type="GLenum"/>
-        <glx rop="79"/>
-    </function>
-
-    <function name="DepthFunc" offset="245">
-        <param name="func" type="GLenum"/>
-        <glx rop="164"/>
-    </function>
-
-    <function name="DepthMask" offset="211">
-        <param name="flag" type="GLboolean"/>
-        <glx rop="135"/>
-    </function>
-
-    <function name="Disable" offset="214">
-        <param name="cap" type="GLenum"/>
-        <glx rop="138" handcode="client"/>
-    </function>
-
-    <function name="Enable" offset="215">
-        <param name="cap" type="GLenum"/>
-        <glx rop="139" handcode="client"/>
-    </function>
-
-    <function name="Finish" offset="216">
-        <glx sop="108" handcode="true"/>
-    </function>
-
-    <function name="Flush" offset="217">
-        <glx sop="142" handcode="true"/>
-    </function>
-
-    <function name="FrontFace" offset="157">
-        <param name="mode" type="GLenum"/>
-        <glx rop="84"/>
-    </function>
-
-    <function name="GetError" offset="261">
-        <return type="GLenum"/>
-        <glx sop="115" handcode="client"/>
-    </function>
-
-    <function name="GetIntegerv" offset="263">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="117" handcode="client"/>
-    </function>
-
-    <function name="GetString" offset="275">
-        <param name="name" type="GLenum"/>
-        <return type="const GLubyte *"/>
-        <glx sop="129" handcode="true"/>
-    </function>
-
-    <function name="Hint" offset="158">
-        <param name="target" type="GLenum"/>
-        <param name="mode" type="GLenum"/>
-        <glx rop="85"/>
-    </function>
-
-    <function name="LineWidth" offset="168">
-        <param name="width" type="GLfloat"/>
-        <glx rop="95"/>
-    </function>
-
-    <function name="PixelStorei" offset="250">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx sop="110" handcode="client"/>
-    </function>
-
-    <function name="ReadPixels" offset="256">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="GLvoid *" output="true"  img_width="width" img_height="height" img_format="format" img_type="type" img_target="0"/>
-        <glx sop="111"/>
-    </function>
-
-    <function name="Scissor" offset="176">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <glx rop="103"/>
-    </function>
-
-    <function name="StencilFunc" offset="243">
-        <param name="func" type="GLenum"/>
-        <param name="ref" type="GLint"/>
-        <param name="mask" type="GLuint"/>
-        <glx rop="162"/>
-    </function>
-
-    <function name="StencilMask" offset="209">
-        <param name="mask" type="GLuint"/>
-        <glx rop="133"/>
-    </function>
-
-    <function name="StencilOp" offset="244">
-        <param name="fail" type="GLenum"/>
-        <param name="zfail" type="GLenum"/>
-        <param name="zpass" type="GLenum"/>
-        <glx rop="163"/>
-    </function>
-
-    <function name="TexParameterf" offset="178">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="105"/>
-    </function>
-
-    <function name="Viewport" offset="305">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <glx rop="191"/>
-    </function>
-
-    <!-- these are not in OpenGL ES 1.0 -->
-    <enum name="LINE_WIDTH"                    count="1"  value="0x0B21">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CULL_FACE_MODE"                count="1"  value="0x0B45">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FRONT_FACE"                    count="1"  value="0x0B46">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DEPTH_RANGE"                   count="2"  value="0x0B70">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DEPTH_WRITEMASK"               count="1"  value="0x0B72">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DEPTH_CLEAR_VALUE"             count="1"  value="0x0B73">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DEPTH_FUNC"                    count="1"  value="0x0B74">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_CLEAR_VALUE"           count="1"  value="0x0B91">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_FUNC"                  count="1"  value="0x0B92">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_VALUE_MASK"            count="1"  value="0x0B93">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_FAIL"                  count="1"  value="0x0B94">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_PASS_DEPTH_FAIL"       count="1"  value="0x0B95">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_PASS_DEPTH_PASS"       count="1"  value="0x0B96">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_REF"                   count="1"  value="0x0B97">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_WRITEMASK"             count="1"  value="0x0B98">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VIEWPORT"                      count="4"  value="0x0BA2">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SCISSOR_BOX"                   count="4"  value="0x0C10">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_CLEAR_VALUE"             count="4"  value="0x0C22">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_WRITEMASK"               count="4"  value="0x0C23">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="TexParameterfv" offset="179">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="106"/>
-    </function>
-
-    <function name="TexParameteri" offset="180">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="107"/>
-    </function>
-
-    <function name="TexParameteriv" offset="181">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="108"/>
-    </function>
-
-    <function name="GetBooleanv" offset="258">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLboolean *" output="true" variable_param="pname"/>
-        <glx sop="112" handcode="client"/>
-    </function>
-
-    <function name="GetFloatv" offset="262">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="116" handcode="client"/>
-    </function>
-
-    <function name="GetTexParameterfv" offset="282">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="136"/>
-    </function>
-
-    <function name="GetTexParameteriv" offset="283">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="137"/>
-    </function>
-
-    <function name="IsEnabled" offset="286">
-        <param name="cap" type="GLenum"/>
-        <return type="GLboolean"/>
-        <glx sop="140" handcode="client"/>
-    </function>
-</category>
-
-<!-- base subset of OpenGL 1.1 -->
-<category name="base1.1">
-    <enum name="POLYGON_OFFSET_FILL"                      value="0x8037"/>
-
-    <function name="BindTexture" offset="307">
-        <param name="target" type="GLenum"/>
-        <param name="texture" type="GLuint"/>
-        <glx rop="4117"/>
-    </function>
-
-    <function name="CopyTexImage2D" offset="324">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <glx rop="4120"/>
-    </function>
-
-    <function name="CopyTexSubImage2D" offset="326">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <glx rop="4122"/>
-    </function>
-
-    <function name="DeleteTextures" offset="327">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="textures" type="const GLuint *" count="n"/>
-        <glx sop="144"/>
-    </function>
-
-    <function name="DrawArrays" offset="310">
-        <param name="mode" type="GLenum"/>
-        <param name="first" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <glx rop="193" handcode="true"/>
-    </function>
-
-    <function name="DrawElements" offset="311">
-        <param name="mode" type="GLenum"/>
-        <param name="count" type="GLsizei"/>
-        <param name="type" type="GLenum"/>
-        <param name="indices" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="GenTextures" offset="328">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="textures" type="GLuint *" output="true" count="n"/>
-        <glx sop="145" always_array="true"/>
-    </function>
-
-    <function name="PolygonOffset" offset="319">
-        <param name="factor" type="GLfloat"/>
-        <param name="units" type="GLfloat"/>
-        <glx rop="192"/>
-    </function>
-
-    <function name="TexSubImage2D" offset="333">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="UNUSED" type="GLuint" padding="true"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_xoff="xoffset" img_yoff="yoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
-        <glx rop="4100" large="true"/>
-    </function>
-
-    <!-- these are not in OpenGL ES 1.0 -->
-    <enum name="POLYGON_OFFSET_UNITS"          count="1"  value="0x2A00">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POLYGON_OFFSET_FACTOR"         count="1"  value="0x8038">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_BINDING_2D"            count="1"  value="0x8069">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="IsTexture" offset="330">
-        <param name="texture" type="GLuint"/>
-        <return type="GLboolean"/>
-        <glx sop="146"/>
-    </function>
-</category>
-
-<!-- base subset of OpenGL 1.2 -->
-<category name="base1.2">
-    <enum name="UNSIGNED_SHORT_4_4_4_4"                   value="0x8033"/>
-    <enum name="UNSIGNED_SHORT_5_5_5_1"                   value="0x8034"/>
-    <enum name="CLAMP_TO_EDGE"                            value="0x812F"/>
-    <enum name="UNSIGNED_SHORT_5_6_5"                     value="0x8363"/>
-    <enum name="ALIASED_POINT_SIZE_RANGE"      count="2"  value="0x846D">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ALIASED_LINE_WIDTH_RANGE"      count="2"  value="0x846E">
-        <size name="Get" mode="get"/>
-    </enum>
-</category>
-
-<!-- base subset of OpenGL 1.3 -->
-<category name="base1.3">
-    <enum name="SAMPLE_ALPHA_TO_COVERAGE"      count="1"  value="0x809E">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLE_COVERAGE"               count="1"  value="0x80A0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE0"                                 value="0x84C0"/>
-    <enum name="TEXTURE1"                                 value="0x84C1"/>
-    <enum name="TEXTURE2"                                 value="0x84C2"/>
-    <enum name="TEXTURE3"                                 value="0x84C3"/>
-    <enum name="TEXTURE4"                                 value="0x84C4"/>
-    <enum name="TEXTURE5"                                 value="0x84C5"/>
-    <enum name="TEXTURE6"                                 value="0x84C6"/>
-    <enum name="TEXTURE7"                                 value="0x84C7"/>
-    <enum name="TEXTURE8"                                 value="0x84C8"/>
-    <enum name="TEXTURE9"                                 value="0x84C9"/>
-    <enum name="TEXTURE10"                                value="0x84CA"/>
-    <enum name="TEXTURE11"                                value="0x84CB"/>
-    <enum name="TEXTURE12"                                value="0x84CC"/>
-    <enum name="TEXTURE13"                                value="0x84CD"/>
-    <enum name="TEXTURE14"                                value="0x84CE"/>
-    <enum name="TEXTURE15"                                value="0x84CF"/>
-    <enum name="TEXTURE16"                                value="0x84D0"/>
-    <enum name="TEXTURE17"                                value="0x84D1"/>
-    <enum name="TEXTURE18"                                value="0x84D2"/>
-    <enum name="TEXTURE19"                                value="0x84D3"/>
-    <enum name="TEXTURE20"                                value="0x84D4"/>
-    <enum name="TEXTURE21"                                value="0x84D5"/>
-    <enum name="TEXTURE22"                                value="0x84D6"/>
-    <enum name="TEXTURE23"                                value="0x84D7"/>
-    <enum name="TEXTURE24"                                value="0x84D8"/>
-    <enum name="TEXTURE25"                                value="0x84D9"/>
-    <enum name="TEXTURE26"                                value="0x84DA"/>
-    <enum name="TEXTURE27"                                value="0x84DB"/>
-    <enum name="TEXTURE28"                                value="0x84DC"/>
-    <enum name="TEXTURE29"                                value="0x84DD"/>
-    <enum name="TEXTURE30"                                value="0x84DE"/>
-    <enum name="TEXTURE31"                                value="0x84DF"/>
-    <enum name="NUM_COMPRESSED_TEXTURE_FORMATS" count="1" value="0x86A2">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COMPRESSED_TEXTURE_FORMATS"    count="-1"  value="0x86A3">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="ActiveTexture" offset="374">
-        <param name="texture" type="GLenum"/>
-        <glx rop="197"/>
-    </function>
-
-    <function name="CompressedTexImage2D" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="imageSize" type="GLsizei" counter="true"/>
-        <param name="data" type="const GLvoid *" count="imageSize"/>
-        <glx rop="215" handcode="client"/>
-    </function>
-
-    <function name="CompressedTexSubImage2D" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="imageSize" type="GLsizei" counter="true"/>
-        <param name="data" type="const GLvoid *" count="imageSize"/>
-        <glx rop="218" handcode="client"/>
-    </function>
-
-    <function name="SampleCoverage" offset="assign">
-        <param name="value" type="GLclampf"/>
-        <param name="invert" type="GLboolean"/>
-        <glx rop="229"/>
-    </function>
-
-    <!-- these are not in OpenGL ES 1.0 -->
-    <enum name="SAMPLE_BUFFERS"                count="1"  value="0x80A8">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLES"                       count="1"  value="0x80A9">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLE_COVERAGE_VALUE"         count="1"  value="0x80AA">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLE_COVERAGE_INVERT"        count="1"  value="0x80AB">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ACTIVE_TEXTURE"                count="1"  value="0x84E0">
-        <size name="Get" mode="get"/>
-    </enum>
-</category>
-
-<!-- base subset of OpenGL 1.4 -->
-<category name="base1.4">
-    <enum name="GENERATE_MIPMAP_HINT"                     value="0x8192"/>
-</category>
-
-<!-- base subset of OpenGL 1.5 -->
-<category name="base1.5">
-    <enum name="BUFFER_SIZE"                              value="0x8764"/>
-    <enum name="BUFFER_USAGE"                             value="0x8765"/>
-    <enum name="ARRAY_BUFFER"                             value="0x8892"/>
-    <enum name="ELEMENT_ARRAY_BUFFER"                     value="0x8893"/>
-    <enum name="ARRAY_BUFFER_BINDING"                     value="0x8894"/>
-    <enum name="ELEMENT_ARRAY_BUFFER_BINDING"             value="0x8895"/>
-    <enum name="STATIC_DRAW"                              value="0x88E4"/>
-    <enum name="DYNAMIC_DRAW"                             value="0x88E8"/>
-
-    <type name="intptr"   size="4"                  glx_name="CARD32"/>
-    <type name="sizeiptr" size="4"                  glx_name="CARD32"/>
-
-    <function name="BindBuffer" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="buffer" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="BufferData" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="size" type="GLsizeiptr" counter="true"/>
-        <param name="data" type="const GLvoid *" count="size" img_null_flag="true"/>
-        <param name="usage" type="GLenum"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="BufferSubData" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="offset" type="GLintptr"/>
-        <param name="size" type="GLsizeiptr" counter="true"/>
-        <param name="data" type="const GLvoid *" count="size"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="DeleteBuffers" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="buffer" type="const GLuint *" count="n"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GenBuffers" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="buffer" type="GLuint *" output="true" count="n"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetBufferParameteriv" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="IsBuffer" offset="assign">
-        <param name="buffer" type="GLuint"/>
-        <return type="GLboolean"/>
-        <glx ignore="true"/>
-    </function>
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/es/glapi/base2_API.xml b/src/mesa/es/glapi/base2_API.xml
deleted file mode 100644 (file)
index 5657b8e..0000000
+++ /dev/null
@@ -1,533 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "../../glapi/gen/gl_API.dtd">
-
-<!-- OpenGL and OpenGL ES 2.x APIs -->
-
-<OpenGLAPI>
-
-<xi:include href="base1_API.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<!-- base subset of OpenGL 2.0 -->
-<category name="base2.0">
-    <enum name="BLEND_EQUATION_RGB"            count="1"  value="0x8009"> <!-- same as BLEND_EQUATION -->
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ATTRIB_ARRAY_ENABLED"   count="1"  value="0x8622">
-        <size name="GetVertexAttribdv" mode="get"/>
-        <size name="GetVertexAttribfv" mode="get"/>
-        <size name="GetVertexAttribiv" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ATTRIB_ARRAY_SIZE"      count="1"  value="0x8623">
-        <size name="GetVertexAttribdv" mode="get"/>
-        <size name="GetVertexAttribfv" mode="get"/>
-        <size name="GetVertexAttribiv" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ATTRIB_ARRAY_STRIDE"     count="1" value="0x8624">
-        <size name="GetVertexAttribdv" mode="get"/>
-        <size name="GetVertexAttribfv" mode="get"/>
-        <size name="GetVertexAttribiv" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ATTRIB_ARRAY_TYPE"      count="1"  value="0x8625">
-        <size name="GetVertexAttribdv" mode="get"/>
-        <size name="GetVertexAttribfv" mode="get"/>
-        <size name="GetVertexAttribiv" mode="get"/>
-    </enum>
-    <enum name="CURRENT_VERTEX_ATTRIB"         count="1"  value="0x8626">
-        <size name="GetVertexAttribdv" mode="get"/>
-        <size name="GetVertexAttribfv" mode="get"/>
-        <size name="GetVertexAttribiv" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ATTRIB_ARRAY_POINTER"              value="0x8645"/>
-    <enum name="STENCIL_BACK_FUNC"             count="1"  value="0x8800">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_BACK_FAIL"             count="1"  value="0x8801">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_BACK_PASS_DEPTH_FAIL"  count="1"  value="0x8802">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_BACK_PASS_DEPTH_PASS"  count="1"  value="0x8803">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLEND_EQUATION_ALPHA"          count="1"  value="0x883D">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_VERTEX_ATTRIBS"            count="1"  value="0x8869">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ATTRIB_ARRAY_NORMALIZED"           value="0x886A"/>
-    <enum name="MAX_TEXTURE_IMAGE_UNITS"       count="1"  value="0x8872">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FRAGMENT_SHADER"                          value="0x8B30"/>
-    <enum name="VERTEX_SHADER"                            value="0x8B31"/>
-    <enum name="MAX_VERTEX_TEXTURE_IMAGE_UNITS"           value="0x8B4C"/>
-    <enum name="MAX_COMBINED_TEXTURE_IMAGE_UNITS"         value="0x8B4D"/>
-    <enum name="SHADER_TYPE"                              value="0x8B4F"/>
-    <enum name="FLOAT_VEC2"                               value="0x8B50"/>
-    <enum name="FLOAT_VEC3"                               value="0x8B51"/>
-    <enum name="FLOAT_VEC4"                               value="0x8B52"/>
-    <enum name="INT_VEC2"                                 value="0x8B53"/>
-    <enum name="INT_VEC3"                                 value="0x8B54"/>
-    <enum name="INT_VEC4"                                 value="0x8B55"/>
-    <enum name="BOOL"                                     value="0x8B56"/>
-    <enum name="BOOL_VEC2"                                value="0x8B57"/>
-    <enum name="BOOL_VEC3"                                value="0x8B58"/>
-    <enum name="BOOL_VEC4"                                value="0x8B59"/>
-    <enum name="FLOAT_MAT2"                               value="0x8B5A"/>
-    <enum name="FLOAT_MAT3"                               value="0x8B5B"/>
-    <enum name="FLOAT_MAT4"                               value="0x8B5C"/>
-    <enum name="SAMPLER_2D"                               value="0x8B5E"/>
-    <enum name="SAMPLER_CUBE"                             value="0x8B60"/>
-    <enum name="DELETE_STATUS"                            value="0x8B80"/>
-    <enum name="COMPILE_STATUS"                           value="0x8B81"/>
-    <enum name="LINK_STATUS"                              value="0x8B82"/>
-    <enum name="VALIDATE_STATUS"                          value="0x8B83"/>
-    <enum name="INFO_LOG_LENGTH"                          value="0x8B84"/>
-    <enum name="ATTACHED_SHADERS"                         value="0x8B85"/>
-    <enum name="ACTIVE_UNIFORMS"                          value="0x8B86"/>
-    <enum name="ACTIVE_UNIFORM_MAX_LENGTH"                value="0x8B87"/>
-    <enum name="SHADER_SOURCE_LENGTH"                     value="0x8B88"/>
-    <enum name="ACTIVE_ATTRIBUTES"                        value="0x8B89"/>
-    <enum name="ACTIVE_ATTRIBUTE_MAX_LENGTH"              value="0x8B8A"/>
-    <enum name="SHADING_LANGUAGE_VERSION"                 value="0x8B8C"/>
-    <enum name="CURRENT_PROGRAM"                          value="0x8B8D"/>
-    <enum name="STENCIL_BACK_REF"                         value="0x8CA3"/>
-    <enum name="STENCIL_BACK_VALUE_MASK"                  value="0x8CA4"/>
-    <enum name="STENCIL_BACK_WRITEMASK"                   value="0x8CA5"/>
-
-    <type name="char"    size="1"                  glx_name="CARD8"/>
-
-    <function name="AttachShader" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="shader" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="BindAttribLocation" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="index" type="GLuint"/>
-        <param name="name" type="const GLchar *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="BlendEquationSeparate" offset="assign">
-        <param name="modeRGB" type="GLenum"/>
-        <param name="modeA" type="GLenum"/>
-        <glx rop="4228"/>
-    </function>
-
-    <function name="CompileShader" offset="assign">
-        <param name="shader" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="CreateProgram" offset="assign">
-        <return type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="CreateShader" offset="assign">
-        <param name="type" type="GLenum"/>
-        <return type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="DeleteProgram" offset="assign">
-        <param name="program" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="DeleteShader" offset="assign">
-        <param name="program" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="DetachShader" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="shader" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="DisableVertexAttribArray" offset="assign">
-        <param name="index" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="EnableVertexAttribArray" offset="assign">
-        <param name="index" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetActiveAttrib" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="index" type="GLuint"/>
-        <param name="bufSize" type="GLsizei "/>
-        <param name="length" type="GLsizei *" output="true"/>
-        <param name="size" type="GLint *" output="true"/>
-        <param name="type" type="GLenum *" output="true"/>
-        <param name="name" type="GLchar *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetActiveUniform" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="index" type="GLuint"/>
-        <param name="bufSize" type="GLsizei"/>
-        <param name="length" type="GLsizei *" output="true"/>
-        <param name="size" type="GLint *" output="true"/>
-        <param name="type" type="GLenum *" output="true"/>
-        <param name="name" type="GLchar *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetAttachedShaders" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="maxCount" type="GLsizei"/>
-        <param name="count" type="GLsizei *" output="true"/>
-        <param name="obj" type="GLuint *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetAttribLocation" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="name" type="const GLchar *"/>
-        <return type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetProgramiv" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetProgramInfoLog" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="bufSize" type="GLsizei"/>
-        <param name="length" type="GLsizei *"/>
-        <param name="infoLog" type="GLchar *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetShaderiv" offset="assign">
-        <param name="shader" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetShaderInfoLog" offset="assign">
-        <param name="shader" type="GLuint"/>
-        <param name="bufSize" type="GLsizei"/>
-        <param name="length" type="GLsizei *"/>
-        <param name="infoLog" type="GLchar *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetShaderSource" offset="assign">
-        <param name="shader" type="GLuint"/>
-        <param name="bufSize" type="GLsizei"/>
-        <param name="length" type="GLsizei *" output="true"/>
-        <param name="source" type="GLchar *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetUniformfv" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="location" type="GLint"/>
-        <param name="params" type="GLfloat *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetUniformiv" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="location" type="GLint"/>
-        <param name="params" type="GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetUniformLocation" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="name" type="const GLchar *"/>
-        <return type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetVertexAttribfv" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetVertexAttribiv" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetVertexAttribPointerv" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="pointer" type="GLvoid **" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="IsProgram" offset="assign">
-        <param name="program" type="GLuint"/>
-        <return type="GLboolean"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="IsShader" offset="assign">
-        <param name="shader" type="GLuint"/>
-        <return type="GLboolean"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="LinkProgram" offset="assign">
-        <param name="program" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="ShaderSource" offset="assign">
-        <param name="shader" type="GLuint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="string" type="const GLchar **"/>
-        <param name="length" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="StencilFuncSeparate" offset="assign">
-        <param name="face" type="GLenum"/>
-        <param name="func" type="GLenum"/>
-        <param name="ref" type="GLint"/>
-        <param name="mask" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="StencilOpSeparate" offset="assign">
-        <param name="face" type="GLenum"/>
-        <param name="sfail" type="GLenum"/>
-        <param name="zfail" type="GLenum"/>
-        <param name="zpass" type="GLenum"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="StencilMaskSeparate" offset="assign">
-        <param name="face" type="GLenum"/>
-        <param name="mask" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform1f" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform1fv" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform1i" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform1iv" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform2f" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLfloat"/>
-        <param name="v1" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform2fv" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform2i" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLint"/>
-        <param name="v1" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform2iv" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform3f" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLfloat"/>
-        <param name="v1" type="GLfloat"/>
-        <param name="v2" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform3fv" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform3i" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLint"/>
-        <param name="v1" type="GLint"/>
-        <param name="v2" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform3iv" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform4f" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLfloat"/>
-        <param name="v1" type="GLfloat"/>
-        <param name="v2" type="GLfloat"/>
-        <param name="v3" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform4fv" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform4i" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLint"/>
-        <param name="v1" type="GLint"/>
-        <param name="v2" type="GLint"/>
-        <param name="v3" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform4iv" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="UniformMatrix2fv" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="transpose" type="GLboolean"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="UniformMatrix3fv" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="transpose" type="GLboolean"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="UniformMatrix4fv" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="transpose" type="GLboolean"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="UseProgram" offset="assign">
-        <param name="program" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="ValidateProgram" offset="assign">
-        <param name="program" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="VertexAttrib1f" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-    </function>
-
-    <function name="VertexAttrib1fv" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="VertexAttrib2f" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-    </function>
-
-    <function name="VertexAttrib2fv" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="VertexAttrib3f" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="VertexAttrib3fv" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="VertexAttrib4f" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <param name="w" type="GLfloat"/>
-    </function>
-
-    <function name="VertexAttrib4fv" offset="assign">
-       <param name="index" type="GLuint"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="VertexAttribPointer" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="normalized" type="GLboolean"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-    </function>
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/es/glapi/es1_API.xml b/src/mesa/es/glapi/es1_API.xml
deleted file mode 100644 (file)
index 1ac1467..0000000
+++ /dev/null
@@ -1,1100 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "../../glapi/gen/gl_API.dtd">
-
-<!-- OpenGL ES 1.x API -->
-
-<OpenGLAPI>
-
-<xi:include href="base1_API.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<!-- core subset of OpenGL 1.3 defined in OpenGL ES 1.0 -->
-<category name="core1.0">
-    <!-- addition to base1.0 -->
-    <enum name="ADD"                                      value="0x0104"/>
-    <enum name="STACK_OVERFLOW"                           value="0x0503"/>
-    <enum name="STACK_UNDERFLOW"                          value="0x0504"/>
-    <enum name="EXP"                                      value="0x0800"/>
-    <enum name="EXP2"                                     value="0x0801"/>
-    <enum name="POINT_SMOOTH"                  count="1"  value="0x0B10">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LINE_SMOOTH"                   count="1"  value="0x0B20">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHTING"                      count="1"  value="0x0B50">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT_MODEL_TWO_SIDE"          count="1"  value="0x0B52">
-        <size name="LightModelfv"/>
-        <size name="LightModeliv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT_MODEL_AMBIENT"           count="4"  value="0x0B53">
-        <size name="LightModelfv"/>
-        <size name="LightModeliv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_MATERIAL"                count="1"  value="0x0B57">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG"                           count="1"  value="0x0B60">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_DENSITY"                   count="1"  value="0x0B62">
-        <size name="Fogfv"/>
-        <size name="Fogiv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_START"                     count="1"  value="0x0B63">
-        <size name="Fogfv"/>
-        <size name="Fogiv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_END"                       count="1"  value="0x0B64">
-        <size name="Fogfv"/>
-        <size name="Fogiv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_MODE"                      count="1"  value="0x0B65">
-        <size name="Fogfv"/>
-        <size name="Fogiv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_COLOR"                     count="4"  value="0x0B66">
-        <size name="Fogfv"/>
-        <size name="Fogiv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="NORMALIZE"                     count="1"  value="0x0BA1">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ALPHA_TEST"                    count="1"  value="0x0BC0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PERSPECTIVE_CORRECTION_HINT"   count="1"  value="0x0C50">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POINT_SMOOTH_HINT"             count="1"  value="0x0C51">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LINE_SMOOTH_HINT"              count="1"  value="0x0C52">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POLYGON_SMOOTH_HINT"           count="1"  value="0x0C53">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_HINT"                      count="1"  value="0x0C54">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_LIGHTS"                    count="1"  value="0x0D31">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_MODELVIEW_STACK_DEPTH"     count="1"  value="0x0D36">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_PROJECTION_STACK_DEPTH"    count="1"  value="0x0D38">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_TEXTURE_STACK_DEPTH"       count="1"  value="0x0D39">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="AMBIENT"                       count="4"  value="0x1200">
-        <size name="Materialfv"/>
-        <size name="Materialiv"/>
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetMaterialfv" mode="get"/>
-        <size name="GetMaterialiv" mode="get"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="DIFFUSE"                       count="4"  value="0x1201">
-        <size name="Materialfv"/>
-        <size name="Materialiv"/>
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetMaterialfv" mode="get"/>
-        <size name="GetMaterialiv" mode="get"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="SPECULAR"                      count="4"  value="0x1202">
-        <size name="Materialfv"/>
-        <size name="Materialiv"/>
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetMaterialfv" mode="get"/>
-        <size name="GetMaterialiv" mode="get"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="POSITION"                      count="4"  value="0x1203">
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="SPOT_DIRECTION"                count="3"  value="0x1204">
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="SPOT_EXPONENT"                 count="1"  value="0x1205">
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="SPOT_CUTOFF"                   count="1"  value="0x1206">
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="CONSTANT_ATTENUATION"          count="1"  value="0x1207">
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="LINEAR_ATTENUATION"            count="1"  value="0x1208">
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="QUADRATIC_ATTENUATION"         count="1"  value="0x1209">
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="CLEAR"                                    value="0x1500"/>
-    <enum name="AND"                                      value="0x1501"/>
-    <enum name="AND_REVERSE"                              value="0x1502"/>
-    <enum name="COPY"                                     value="0x1503"/>
-    <enum name="AND_INVERTED"                             value="0x1504"/>
-    <enum name="NOOP"                                     value="0x1505"/>
-    <enum name="XOR"                                      value="0x1506"/>
-    <enum name="OR"                                       value="0x1507"/>
-    <enum name="NOR"                                      value="0x1508"/>
-    <enum name="EQUIV"                                    value="0x1509"/>
-    <enum name="OR_REVERSE"                               value="0x150B"/>
-    <enum name="COPY_INVERTED"                            value="0x150C"/>
-    <enum name="OR_INVERTED"                              value="0x150D"/>
-    <enum name="NAND"                                     value="0x150E"/>
-    <enum name="SET"                                      value="0x150F"/>
-    <enum name="EMISSION"                      count="4"  value="0x1600">
-        <size name="Materialfv"/>
-        <size name="Materialiv"/>
-        <size name="GetMaterialfv" mode="get"/>
-        <size name="GetMaterialiv" mode="get"/>
-    </enum>
-    <enum name="SHININESS"                     count="1"  value="0x1601">
-        <size name="Materialfv"/>
-        <size name="Materialiv"/>
-        <size name="GetMaterialfv" mode="get"/>
-        <size name="GetMaterialiv" mode="get"/>
-    </enum>
-    <enum name="AMBIENT_AND_DIFFUSE"           count="4"  value="0x1602">
-        <size name="Materialfv"/>
-        <size name="Materialiv"/>
-        <size name="GetMaterialfv" mode="get"/>
-        <size name="GetMaterialiv" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW"                                value="0x1700"/>
-    <enum name="PROJECTION"                               value="0x1701"/>
-    <enum name="FLAT"                                     value="0x1D00"/>
-    <enum name="SMOOTH"                                   value="0x1D01"/>
-    <enum name="MODULATE"                                 value="0x2100"/>
-    <enum name="DECAL"                                    value="0x2101"/>
-    <enum name="TEXTURE_ENV_MODE"              count="1"  value="0x2200">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_ENV_COLOR"             count="4"  value="0x2201">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_ENV"                              value="0x2300"/>
-    <enum name="LIGHT0"                        count="1"  value="0x4000">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT1"                        count="1"  value="0x4001">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT2"                        count="1"  value="0x4002">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT3"                        count="1"  value="0x4003">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT4"                        count="1"  value="0x4004">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT5"                        count="1"  value="0x4005">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT6"                        count="1"  value="0x4006">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT7"                        count="1"  value="0x4007">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="AlphaFunc" offset="240">
-        <param name="func" type="GLenum"/>
-        <param name="ref" type="GLclampf"/>
-        <glx rop="159"/>
-    </function>
-
-    <function name="Color4f" offset="29" vectorequiv="Color4fv">
-        <param name="red" type="GLfloat"/>
-        <param name="green" type="GLfloat"/>
-        <param name="blue" type="GLfloat"/>
-        <param name="alpha" type="GLfloat"/>
-    </function>
-
-    <function name="Fogf" offset="153">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="80"/>
-    </function>
-
-    <function name="Fogfv" offset="154">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="81"/>
-    </function>
-
-    <function name="Lightf" offset="159">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="86"/>
-    </function>
-
-    <function name="Lightfv" offset="160">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="87"/>
-    </function>
-
-    <function name="LightModelf" offset="163">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="90"/>
-    </function>
-
-    <function name="LightModelfv" offset="164">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="91"/>
-    </function>
-
-    <function name="LoadIdentity" offset="290">
-        <glx rop="176"/>
-    </function>
-
-    <function name="LoadMatrixf" offset="291">
-        <param name="m" type="const GLfloat *" count="16"/>
-        <glx rop="177"/>
-    </function>
-
-    <function name="LogicOp" offset="242">
-        <param name="opcode" type="GLenum"/>
-        <glx rop="161"/>
-    </function>
-
-    <function name="Materialf" offset="169">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="96"/>
-    </function>
-
-    <function name="Materialfv" offset="170">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="97"/>
-    </function>
-
-    <function name="MatrixMode" offset="293">
-        <param name="mode" type="GLenum"/>
-        <glx rop="179"/>
-    </function>
-
-    <function name="MultMatrixf" offset="294">
-        <param name="m" type="const GLfloat *" count="16"/>
-        <glx rop="180"/>
-    </function>
-
-    <function name="Normal3f" offset="56" vectorequiv="Normal3fv">
-        <param name="nx" type="GLfloat"/>
-        <param name="ny" type="GLfloat"/>
-        <param name="nz" type="GLfloat"/>
-    </function>
-
-    <function name="PointSize" offset="173">
-        <param name="size" type="GLfloat"/>
-        <glx rop="100"/>
-    </function>
-
-    <function name="PopMatrix" offset="297">
-        <glx rop="183"/>
-    </function>
-
-    <function name="PushMatrix" offset="298">
-        <glx rop="184"/>
-    </function>
-
-    <function name="Rotatef" offset="300">
-        <param name="angle" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <glx rop="186"/>
-    </function>
-
-    <function name="Scalef" offset="302">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <glx rop="188"/>
-    </function>
-
-    <function name="ShadeModel" offset="177">
-        <param name="mode" type="GLenum"/>
-        <glx rop="104"/>
-    </function>
-
-    <function name="TexEnvf" offset="184">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="111"/>
-    </function>
-
-    <function name="TexEnvfv" offset="185">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="112"/>
-    </function>
-
-    <function name="TexImage2D" offset="183">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="target" img_send_null="true" img_pad_dimensions="true"/>
-        <glx rop="110" large="true"/>
-    </function>
-
-    <function name="Translatef" offset="304">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <glx rop="190"/>
-    </function>
-
-    <!-- addition to base1.1 -->
-    <enum name="COLOR_LOGIC_OP"                           value="0x0BF2"/>
-    <enum name="VERTEX_ARRAY"                  count="1"  value="0x8074">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="NORMAL_ARRAY"                  count="1"  value="0x8075">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_ARRAY"                   count="1"  value="0x8076">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COORD_ARRAY"           count="1"  value="0x8078">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="ColorPointer" offset="308">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="DisableClientState" offset="309">
-        <param name="array" type="GLenum"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="EnableClientState" offset="313">
-        <param name="array" type="GLenum"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="NormalPointer" offset="318">
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="TexCoordPointer" offset="320">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="VertexPointer" offset="321">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <!-- addition to base1.2 -->
-    <enum name="SMOOTH_POINT_SIZE_RANGE"       count="2"  value="0x0B12">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SMOOTH_LINE_WIDTH_RANGE"       count="2"  value="0x0B22">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="RESCALE_NORMAL"                count="1"  value="0x803A">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_ELEMENTS_VERTICES"         count="1"  value="0x80E8">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_ELEMENTS_INDICES"          count="1"  value="0x80E9">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <!-- addition to base1.3 -->
-    <enum name="MULTISAMPLE"                   count="1"  value="0x809D">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLE_ALPHA_TO_ONE"           count="1"  value="0x809F">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_TEXTURE_UNITS"             count="1"  value="0x84E2">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="ClientActiveTexture" offset="375">
-        <param name="texture" type="GLenum"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="MultiTexCoord4f" offset="402" vectorequiv="MultiTexCoord4fv">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="r" type="GLfloat"/>
-        <param name="q" type="GLfloat"/>
-    </function>
-</category>
-
-<!-- core subset of OpenGL 1.5 defined in OpenGL ES 1.1 -->
-<category name="core1.1">
-    <!-- addition to base1.0 -->
-    <enum name="CURRENT_COLOR"                 count="4"  value="0x0B00">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CURRENT_NORMAL"                count="3"  value="0x0B02">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CURRENT_TEXTURE_COORDS"        count="4"  value="0x0B03">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POINT_SIZE"                    count="1"  value="0x0B11">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SHADE_MODEL"                   count="1"  value="0x0B54">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MATRIX_MODE"                   count="1"  value="0x0BA0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW_STACK_DEPTH"         count="1"  value="0x0BA3">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PROJECTION_STACK_DEPTH"        count="1"  value="0x0BA4">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_STACK_DEPTH"           count="1"  value="0x0BA5">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW_MATRIX"              count="16" value="0x0BA6">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PROJECTION_MATRIX"             count="16" value="0x0BA7">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_MATRIX"                count="16" value="0x0BA8">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ALPHA_TEST_FUNC"               count="1"  value="0x0BC1">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ALPHA_TEST_REF"                count="1"  value="0x0BC2">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLEND_DST"                     count="1"  value="0x0BE0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLEND_SRC"                     count="1"  value="0x0BE1">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LOGIC_OP_MODE"                 count="1"  value="0x0BF0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ALPHA_SCALE"                   count="1"  value="0x0D1C">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_CLIP_PLANES"               count="1"  value="0x0D32">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CLIP_PLANE0"                   count="1"  value="0x3000">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CLIP_PLANE1"                   count="1"  value="0x3001">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CLIP_PLANE2"                   count="1"  value="0x3002">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CLIP_PLANE3"                   count="1"  value="0x3003">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CLIP_PLANE4"                   count="1"  value="0x3004">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CLIP_PLANE5"                   count="1"  value="0x3005">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="Color4ub" offset="35" vectorequiv="Color4ubv">
-        <param name="red" type="GLubyte"/>
-        <param name="green" type="GLubyte"/>
-        <param name="blue" type="GLubyte"/>
-        <param name="alpha" type="GLubyte"/>
-    </function>
-
-    <function name="GetLightfv" offset="264">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="118"/>
-    </function>
-
-    <function name="GetMaterialfv" offset="269">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="123"/>
-    </function>
-
-    <function name="GetTexEnvfv" offset="276">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="130"/>
-    </function>
-
-    <function name="GetTexEnviv" offset="277">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="131"/>
-    </function>
-
-    <function name="TexEnvi" offset="186">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="113"/>
-    </function>
-
-    <function name="TexEnviv" offset="187">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="114"/>
-    </function>
-
-    <!-- addition to base1.1 -->
-    <enum name="VERTEX_ARRAY_SIZE"             count="1"  value="0x807A">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ARRAY_TYPE"             count="1"  value="0x807B">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ARRAY_STRIDE"           count="1"  value="0x807C">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="NORMAL_ARRAY_TYPE"             count="1"  value="0x807E">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="NORMAL_ARRAY_STRIDE"           count="1"  value="0x807F">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_ARRAY_SIZE"              count="1"  value="0x8081">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_ARRAY_TYPE"              count="1"  value="0x8082">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_ARRAY_STRIDE"            count="1"  value="0x8083">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COORD_ARRAY_SIZE"      count="1"  value="0x8088">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COORD_ARRAY_TYPE"      count="1"  value="0x8089">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COORD_ARRAY_STRIDE"    count="1"  value="0x808A">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ARRAY_POINTER"                     value="0x808E"/>
-    <enum name="NORMAL_ARRAY_POINTER"                     value="0x808F"/>
-    <enum name="COLOR_ARRAY_POINTER"                      value="0x8090"/>
-    <enum name="TEXTURE_COORD_ARRAY_POINTER"              value="0x8092"/>
-
-    <function name="GetPointerv" offset="329">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLvoid **" output="true"/>
-        <glx handcode="true"/>
-    </function>
-
-    <!-- addition to base1.2 -->
-
-    <!-- addition to base1.3 -->
-    <enum name="CLIENT_ACTIVE_TEXTURE"         count="1"  value="0x84E1">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SUBTRACT"                                 value="0x84E7"/>
-    <enum name="COMBINE"                                  value="0x8570"/>
-    <enum name="COMBINE_RGB"                   count="1"  value="0x8571">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="COMBINE_ALPHA"                 count="1"  value="0x8572">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="RGB_SCALE"                     count="1"  value="0x8573">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="ADD_SIGNED"                               value="0x8574"/>
-    <enum name="INTERPOLATE"                              value="0x8575"/>
-    <enum name="CONSTANT"                                 value="0x8576"/>
-    <enum name="PRIMARY_COLOR"                            value="0x8577"/>
-    <enum name="PREVIOUS"                                 value="0x8578"/>
-    <enum name="OPERAND0_RGB"                  count="1"  value="0x8590">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="OPERAND1_RGB"                  count="1"  value="0x8591">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="OPERAND2_RGB"                  count="1"  value="0x8592">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="OPERAND0_ALPHA"                count="1"  value="0x8598">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="OPERAND1_ALPHA"                count="1"  value="0x8599">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="OPERAND2_ALPHA"                count="1"  value="0x859A">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="DOT3_RGB"                                 value="0x86AE"/>
-    <enum name="DOT3_RGBA"                                value="0x86AF"/>
-
-    <!-- addition to base1.4 -->
-    <enum name="POINT_SIZE_MIN"                count="1"  value="0x8126">
-        <size name="PointParameterfv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POINT_SIZE_MAX"                count="1"  value="0x8127">
-        <size name="PointParameterfv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POINT_FADE_THRESHOLD_SIZE"     count="1"  value="0x8128">
-        <size name="PointParameterfv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POINT_DISTANCE_ATTENUATION"    count="3"  value="0x8129">
-        <size name="PointParameterfv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="GENERATE_MIPMAP"               count="1"  value="0x8191">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-
-    <function name="PointParameterf" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="2065"/>
-    </function>
-
-    <function name="PointParameterfv" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="2066"/>
-    </function>
-
-    <!-- addition to base1.5 -->
-    <enum name="SRC0_RGB"                                 value="0x8580"/>
-    <enum name="SRC1_RGB"                                 value="0x8581"/>
-    <enum name="SRC2_RGB"                                 value="0x8582"/>
-    <enum name="SRC0_ALPHA"                               value="0x8588"/>
-    <enum name="SRC1_ALPHA"                               value="0x8589"/>
-    <enum name="SRC2_ALPHA"                               value="0x858A"/>
-    <enum name="VERTEX_ARRAY_BUFFER_BINDING"   count="1"  value="0x8896">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="NORMAL_ARRAY_BUFFER_BINDING"   count="1"  value="0x8897">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_ARRAY_BUFFER_BINDING"    count="1"  value="0x8898">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COORD_ARRAY_BUFFER_BINDING" count="1" value="0x889A">
-        <size name="Get" mode="get"/>
-    </enum>
-</category>
-
-<!-- OpenGL ES 1.0 -->
-<category name="es1.0">
-    <!-- addition to core1.0 -->
-
-    <!-- from GL_OES_fixed_point -->
-    <enum name="FIXED"                                    value="0x140C"/>
-
-    <type name="fixed"   size="4"                                    />
-    <type name="clampx"  size="4"                                    />
-
-    <function name="AlphaFuncx" offset="assign">
-        <param name="func" type="GLenum"/>
-        <param name="ref" type="GLclampx"/>
-    </function>
-
-    <function name="ClearColorx" offset="assign">
-        <param name="red" type="GLclampx"/>
-        <param name="green" type="GLclampx"/>
-        <param name="blue" type="GLclampx"/>
-        <param name="alpha" type="GLclampx"/>
-    </function>
-
-    <function name="ClearDepthx" offset="assign">
-        <param name="depth" type="GLclampx"/>
-    </function>
-
-    <function name="Color4x" offset="assign">
-        <param name="red" type="GLfixed"/>
-        <param name="green" type="GLfixed"/>
-        <param name="blue" type="GLfixed"/>
-        <param name="alpha" type="GLfixed"/>
-    </function>
-
-    <function name="DepthRangex" offset="assign">
-        <param name="zNear" type="GLclampx"/>
-        <param name="zFar" type="GLclampx"/>
-    </function>
-
-    <function name="Fogx" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfixed"/>
-    </function>
-
-    <function name="Fogxv" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfixed *" variable_param="pname"/>
-    </function>
-
-    <function name="Frustumx" offset="assign">
-        <param name="left" type="GLfixed"/>
-        <param name="right" type="GLfixed"/>
-        <param name="bottom" type="GLfixed"/>
-        <param name="top" type="GLfixed"/>
-        <param name="zNear" type="GLfixed"/>
-        <param name="zFar" type="GLfixed"/>
-    </function>
-
-    <function name="LightModelx" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfixed"/>
-    </function>
-
-    <function name="LightModelxv" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfixed *" variable_param="pname"/>
-    </function>
-
-    <function name="Lightx" offset="assign">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfixed"/>
-    </function>
-
-    <function name="Lightxv" offset="assign">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfixed *" variable_param="pname"/>
-    </function>
-
-    <function name="LineWidthx" offset="assign">
-        <param name="width" type="GLfixed"/>
-    </function>
-
-    <function name="LoadMatrixx" offset="assign">
-        <param name="m" type="const GLfixed *" count="16"/>
-    </function>
-
-    <function name="Materialx" offset="assign">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfixed"/>
-    </function>
-
-    <function name="Materialxv" offset="assign">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfixed *" variable_param="pname"/>
-    </function>
-
-    <function name="MultMatrixx" offset="assign">
-        <param name="m" type="const GLfixed *" count="16"/>
-    </function>
-
-    <function name="MultiTexCoord4x" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLfixed"/>
-        <param name="t" type="GLfixed"/>
-        <param name="r" type="GLfixed"/>
-        <param name="q" type="GLfixed"/>
-    </function>
-
-    <function name="Normal3x" offset="assign">
-        <param name="nx" type="GLfixed"/>
-        <param name="ny" type="GLfixed"/>
-        <param name="nz" type="GLfixed"/>
-    </function>
-
-    <function name="Orthox" offset="assign">
-        <param name="left" type="GLfixed"/>
-        <param name="right" type="GLfixed"/>
-        <param name="bottom" type="GLfixed"/>
-        <param name="top" type="GLfixed"/>
-        <param name="zNear" type="GLfixed"/>
-        <param name="zFar" type="GLfixed"/>
-    </function>
-
-    <function name="PointSizex" offset="assign">
-        <param name="size" type="GLfixed"/>
-    </function>
-
-    <function name="PolygonOffsetx" offset="assign">
-        <param name="factor" type="GLfixed"/>
-        <param name="units" type="GLfixed"/>
-    </function>
-
-    <function name="Rotatex" offset="assign">
-        <param name="angle" type="GLfixed"/>
-        <param name="x" type="GLfixed"/>
-        <param name="y" type="GLfixed"/>
-        <param name="z" type="GLfixed"/>
-    </function>
-
-    <function name="SampleCoveragex" offset="assign">
-        <param name="value" type="GLclampx"/>
-        <param name="invert" type="GLboolean"/>
-    </function>
-
-    <function name="Scalex" offset="assign">
-        <param name="x" type="GLfixed"/>
-        <param name="y" type="GLfixed"/>
-        <param name="z" type="GLfixed"/>
-    </function>
-
-    <function name="TexEnvx" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfixed"/>
-    </function>
-
-    <function name="TexEnvxv" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfixed *" variable_param="pname"/>
-    </function>
-
-    <function name="TexParameterx" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfixed"/>
-    </function>
-
-    <function name="Translatex" offset="assign">
-        <param name="x" type="GLfixed"/>
-        <param name="y" type="GLfixed"/>
-        <param name="z" type="GLfixed"/>
-    </function>
-
-    <!-- from GL_OES_single_precision -->
-    <function name="ClearDepthf" offset="assign">
-        <param name="depth" type="GLclampf"/>
-    </function>
-
-    <function name="DepthRangef" offset="assign">
-        <param name="zNear" type="GLclampf"/>
-        <param name="zFar" type="GLclampf"/>
-    </function>
-
-    <function name="Frustumf" offset="assign">
-        <param name="left" type="GLfloat"/>
-        <param name="right" type="GLfloat"/>
-        <param name="bottom" type="GLfloat"/>
-        <param name="top" type="GLfloat"/>
-        <param name="zNear" type="GLfloat"/>
-        <param name="zFar" type="GLfloat"/>
-    </function>
-
-    <function name="Orthof" offset="assign">
-        <param name="left" type="GLfloat"/>
-        <param name="right" type="GLfloat"/>
-        <param name="bottom" type="GLfloat"/>
-        <param name="top" type="GLfloat"/>
-        <param name="zNear" type="GLfloat"/>
-        <param name="zFar" type="GLfloat"/>
-    </function>
-</category>
-
-<!-- OpenGL ES 1.1 -->
-<category name="es1.1">
-    <!-- addition to core1.1 -->
-
-    <!-- from GL_OES_fixed_point -->
-    <function name="ClipPlanex" offset="assign">
-        <param name="plane" type="GLenum"/>
-        <param name="equation" type="const GLfixed *" count="4"/>
-    </function>
-
-    <function name="GetClipPlanex" offset="assign">
-        <param name="plane" type="GLenum"/>
-        <param name="equation" type="GLfixed *" output="true" count="4"/>
-    </function>
-
-    <function name="GetFixedv" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
-    </function>
-
-    <function name="GetLightxv" offset="assign">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
-    </function>
-
-    <function name="GetMaterialxv" offset="assign">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
-    </function>
-
-    <function name="GetTexEnvxv" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
-    </function>
-
-    <function name="GetTexParameterxv" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
-    </function>
-
-    <function name="PointParameterx" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfixed"/>
-    </function>
-
-    <function name="PointParameterxv" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfixed *"/>
-    </function>
-
-    <function name="TexParameterxv" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfixed *" variable_param="pname"/>
-    </function>
-
-    <!-- from GL_OES_matrix_get -->
-    <enum name="MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES"   value="0x898D"/>
-    <enum name="PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES"  value="0x898E"/>
-    <enum name="TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES"    value="0x898F"/>
-
-    <!-- from GL_OES_single_precision -->
-    <function name="ClipPlanef" offset="assign">
-        <param name="plane" type="GLenum"/>
-        <param name="equation" type="const GLfloat *" count="4"/>
-    </function>
-
-    <function name="GetClipPlanef" offset="assign">
-        <param name="plane" type="GLenum"/>
-        <param name="equation" type="GLfloat *" output="true" count="4"/>
-    </function>
-</category>
-
-<xi:include href="es1_EXT.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-<xi:include href="es1_COMPAT.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-</OpenGLAPI>
diff --git a/src/mesa/es/glapi/es1_COMPAT.xml b/src/mesa/es/glapi/es1_COMPAT.xml
deleted file mode 100644 (file)
index 1f45a8c..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "../../glapi/gen/gl_API.dtd">
-
-<OpenGLAPI>
-
-<!-- This file defines the functions that are needed by Mesa.  It
-     makes sure the generated glapi headers are compatible with Mesa.
-     It mainly consists of missing functions and aliases in OpenGL ES.
--->
-
-<xi:include href="es_COMPAT.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<!-- except for those defined by es_COMPAT.xml, these are also needed -->
-<category name="compat">
-    <!-- OpenGL 1.0 -->
-    <function name="TexGenf" alias="TexGenfOES" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="117"/>
-    </function>
-
-    <function name="TexGenfv" alias="TexGenfvOES" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="118"/>
-    </function>
-
-    <function name="TexGeni" alias="TexGeniOES" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="119"/>
-    </function>
-
-    <function name="TexGeniv" alias="TexGenivOES" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="120"/>
-    </function>
-
-    <function name="GetTexGenfv" alias="GetTexGenfvOES" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="133"/>
-    </function>
-
-    <function name="GetTexGeniv" alias="GetTexGenivOES" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="134"/>
-    </function>
-
-    <!-- OpenGL 1.2 -->
-    <function name="BlendColor" offset="336" static_dispatch="false">
-        <param name="red" type="GLclampf"/>
-        <param name="green" type="GLclampf"/>
-        <param name="blue" type="GLclampf"/>
-        <param name="alpha" type="GLclampf"/>
-        <glx rop="4096"/>
-    </function>
-
-    <function name="BlendEquation" alias="BlendEquationOES" static_dispatch="false">
-        <param name="mode" type="GLenum"/>
-        <glx rop="4097"/>
-    </function>
-
-    <function name="TexImage3D" offset="371" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_format="format" img_type="type" img_target="target" img_null_flag="true" img_pad_dimensions="true"/>
-        <glx rop="4114" large="true"/>
-    </function>
-
-    <function name="TexSubImage3D" offset="372" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="UNUSED" type="GLuint" padding="true"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_xoff="xoffset" img_yoff="yoffset" img_zoff="zoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
-        <glx rop="4115" large="true"/>
-    </function>
-
-    <function name="CopyTexSubImage3D" offset="373" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <glx rop="4123"/>
-    </function>
-
-    <!-- GL_ARB_multitexture -->
-    <function name="ActiveTextureARB" alias="ActiveTexture" static_dispatch="false">
-        <param name="texture" type="GLenum"/>
-        <glx rop="197"/>
-    </function>
-
-    <function name="ClientActiveTextureARB" alias="ClientActiveTexture" static_dispatch="false">
-        <param name="texture" type="GLenum"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="MultiTexCoord4fARB" alias="MultiTexCoord4f" vectorequiv="MultiTexCoord4fvARB" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="r" type="GLfloat"/>
-        <param name="q" type="GLfloat"/>
-    </function>
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/es/glapi/es1_EXT.xml b/src/mesa/es/glapi/es1_EXT.xml
deleted file mode 100644 (file)
index d4abd81..0000000
+++ /dev/null
@@ -1,699 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "../../glapi/gen/gl_API.dtd">
-
-<!-- OpenGL ES 1.x extensions -->
-
-<OpenGLAPI>
-
-<xi:include href="es_EXT.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<!-- part of es1.1 extension pack -->
-<category name="GL_OES_blend_equation_separate" number="1">
-    <enum name="BLEND_EQUATION_RGB_OES"        count="1"  value="0x8009">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLEND_EQUATION_ALPHA_OES"      count="1"  value="0x883D">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="BlendEquationSeparateOES" offset="assign">
-        <param name="modeRGB" type="GLenum"/>
-        <param name="modeA" type="GLenum"/>
-        <glx rop="4228"/>
-    </function>
-</category>
-
-<!-- part of es1.1 extension pack -->
-<category name="GL_OES_blend_func_separate" number="2">
-    <enum name="BLEND_DST_RGB_OES"             count="1"  value="0x80C8">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLEND_SRC_RGB_OES"             count="1"  value="0x80C9">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLEND_DST_ALPHA_OES"           count="1"  value="0x80CA">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLEND_SRC_ALPHA_OES"           count="1"  value="0x80CB">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="BlendFuncSeparateOES" offset="assign">
-        <param name="sfactorRGB" type="GLenum"/>
-        <param name="dfactorRGB" type="GLenum"/>
-        <param name="sfactorAlpha" type="GLenum"/>
-        <param name="dfactorAlpha" type="GLenum"/>
-        <glx rop="4134"/>
-    </function>
-</category>
-
-<!-- part of es1.1 extension pack -->
-<category name="GL_OES_blend_subtract" number="3">
-    <enum name="FUNC_ADD_OES"                             value="0x8006"/>
-    <enum name="BLEND_EQUATION_OES"            count="1"  value="0x8009">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FUNC_SUBTRACT_OES"                        value="0x800A"/>
-    <enum name="FUNC_REVERSE_SUBTRACT_OES"                value="0x800B"/>
-
-    <function name="BlendEquationOES" offset="337">
-        <param name="mode" type="GLenum"/>
-        <glx rop="4097"/>
-    </function>
-</category>
-
-<!-- core addition to es1.0 and later -->
-<category name="GL_OES_byte_coordinates" number="4">
-    <enum name="BYTE"                                     value="0x1400"/>
-</category>
-
-<!-- optional for es1.1 -->
-<category name="GL_OES_draw_texture" number="7">
-    <enum name="TEXTURE_CROP_RECT_OES"                    value="0x8B9D"/>
-
-    <function name="DrawTexiOES" offset="assign">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="z" type="GLint"/>
-        <param name="width" type="GLint"/>
-        <param name="height" type="GLint"/>
-    </function>
-
-    <function name="DrawTexivOES" offset="assign">
-        <param name="coords" type="const GLint *" count="5"/>
-    </function>
-
-    <function name="DrawTexfOES" offset="assign">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <param name="width" type="GLfloat"/>
-        <param name="height" type="GLfloat"/>
-    </function>
-
-    <function name="DrawTexfvOES" offset="assign">
-        <param name="coords" type="const GLfloat *" count="5"/>
-    </function>
-
-    <function name="DrawTexsOES" offset="assign">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-        <param name="width" type="GLshort"/>
-        <param name="height" type="GLshort"/>
-    </function>
-
-    <function name="DrawTexsvOES" offset="assign">
-        <param name="coords" type="const GLshort *" count="5"/>
-    </function>
-
-    <function name="DrawTexxOES" offset="assign">
-        <param name="x" type="GLfixed"/>
-        <param name="y" type="GLfixed"/>
-        <param name="z" type="GLfixed"/>
-        <param name="width" type="GLfixed"/>
-        <param name="height" type="GLfixed"/>
-    </function>
-
-    <function name="DrawTexxvOES" offset="assign">
-        <param name="coords" type="const GLfixed *" count="5"/>
-    </function>
-
-    <!-- TexParameter{ifx}v is skipped here -->
-</category>
-
-<!-- core addition to es1.0 and later -->
-<category name="GL_OES_fixed_point" number="9">
-    <enum name="FIXED_OES"                                value="0x140C"/>
-
-    <!-- additon to es1.0 -->
-    <function name="AlphaFuncxOES" alias="AlphaFuncx">
-        <param name="func" type="GLenum"/>
-        <param name="ref" type="GLclampx"/>
-    </function>
-
-    <function name="ClearColorxOES" alias="ClearColorx">
-        <param name="red" type="GLclampx"/>
-        <param name="green" type="GLclampx"/>
-        <param name="blue" type="GLclampx"/>
-        <param name="alpha" type="GLclampx"/>
-    </function>
-
-    <function name="ClearDepthxOES" alias="ClearDepthx">
-        <param name="depth" type="GLclampx"/>
-    </function>
-
-    <function name="Color4xOES" alias="Color4x">
-        <param name="red" type="GLfixed"/>
-        <param name="green" type="GLfixed"/>
-        <param name="blue" type="GLfixed"/>
-        <param name="alpha" type="GLfixed"/>
-    </function>
-
-    <function name="DepthRangexOES" alias="DepthRangex">
-        <param name="zNear" type="GLclampx"/>
-        <param name="zFar" type="GLclampx"/>
-    </function>
-
-    <function name="FogxOES" alias="Fogx">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfixed"/>
-    </function>
-
-    <function name="FogxvOES" alias="Fogxv">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfixed *" variable_param="pname"/>
-    </function>
-
-    <function name="FrustumxOES" alias="Frustumx">
-        <param name="left" type="GLfixed"/>
-        <param name="right" type="GLfixed"/>
-        <param name="bottom" type="GLfixed"/>
-        <param name="top" type="GLfixed"/>
-        <param name="zNear" type="GLfixed"/>
-        <param name="zFar" type="GLfixed"/>
-    </function>
-
-    <function name="LightModelxOES" alias="LightModelx">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfixed"/>
-    </function>
-
-    <function name="LightModelxvOES" alias="LightModelxv">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfixed *" variable_param="pname"/>
-    </function>
-
-    <function name="LightxOES" alias="Lightx">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfixed"/>
-    </function>
-
-    <function name="LightxvOES" alias="Lightxv">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfixed *" variable_param="pname"/>
-    </function>
-
-    <function name="LineWidthxOES" alias="LineWidthx">
-        <param name="width" type="GLfixed"/>
-    </function>
-
-    <function name="LoadMatrixxOES" alias="LoadMatrixx">
-        <param name="m" type="const GLfixed *" count="16"/>
-    </function>
-
-    <function name="MaterialxOES" alias="Materialx">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfixed"/>
-    </function>
-
-    <function name="MaterialxvOES" alias="Materialxv">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfixed *" variable_param="pname"/>
-    </function>
-
-    <function name="MultiTexCoord4xOES" alias="MultiTexCoord4x">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLfixed"/>
-        <param name="t" type="GLfixed"/>
-        <param name="r" type="GLfixed"/>
-        <param name="q" type="GLfixed"/>
-    </function>
-
-    <function name="MultMatrixxOES" alias="MultMatrixx">
-        <param name="m" type="const GLfixed *" count="16"/>
-    </function>
-
-    <function name="Normal3xOES" alias="Normal3x">
-        <param name="nx" type="GLfixed"/>
-        <param name="ny" type="GLfixed"/>
-        <param name="nz" type="GLfixed"/>
-    </function>
-
-    <function name="OrthoxOES" alias="Orthox">
-        <param name="left" type="GLfixed"/>
-        <param name="right" type="GLfixed"/>
-        <param name="bottom" type="GLfixed"/>
-        <param name="top" type="GLfixed"/>
-        <param name="zNear" type="GLfixed"/>
-        <param name="zFar" type="GLfixed"/>
-    </function>
-
-    <function name="PointSizexOES" alias="PointSizex">
-        <param name="size" type="GLfixed"/>
-    </function>
-
-    <function name="PolygonOffsetxOES" alias="PolygonOffsetx">
-        <param name="factor" type="GLfixed"/>
-        <param name="units" type="GLfixed"/>
-    </function>
-
-    <function name="RotatexOES" alias="Rotatex">
-        <param name="angle" type="GLfixed"/>
-        <param name="x" type="GLfixed"/>
-        <param name="y" type="GLfixed"/>
-        <param name="z" type="GLfixed"/>
-    </function>
-
-    <function name="SampleCoveragexOES" alias="SampleCoveragex">
-        <param name="value" type="GLclampx"/>
-        <param name="invert" type="GLboolean"/>
-    </function>
-
-    <function name="ScalexOES" alias="Scalex">
-        <param name="x" type="GLfixed"/>
-        <param name="y" type="GLfixed"/>
-        <param name="z" type="GLfixed"/>
-    </function>
-
-    <function name="TexEnvxOES" alias="TexEnvx">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfixed"/>
-    </function>
-
-    <function name="TexEnvxvOES" alias="TexEnvxv">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfixed *" variable_param="pname"/>
-    </function>
-
-    <function name="TexParameterxOES" alias="TexParameterx">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfixed"/>
-    </function>
-
-    <function name="TranslatexOES" alias="Translatex">
-        <param name="x" type="GLfixed"/>
-        <param name="y" type="GLfixed"/>
-        <param name="z" type="GLfixed"/>
-    </function>
-
-    <!-- additon to es1.1 -->
-    <function name="ClipPlanexOES" alias="ClipPlanex">
-        <param name="plane" type="GLenum"/>
-        <param name="equation" type="const GLfixed *" count="4"/>
-    </function>
-
-    <function name="GetClipPlanexOES" alias="GetClipPlanex">
-        <param name="plane" type="GLenum"/>
-        <param name="equation" type="GLfixed *" output="true" count="4"/>
-    </function>
-
-    <function name="GetFixedvOES" alias="GetFixedv">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
-    </function>
-
-    <function name="GetLightxvOES" alias="GetLightxv">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
-    </function>
-
-    <function name="GetMaterialxvOES" alias="GetMaterialxv">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
-    </function>
-
-    <function name="GetTexEnvxvOES" alias="GetTexEnvxv">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
-    </function>
-
-    <function name="GetTexParameterxvOES" alias="GetTexParameterxv">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
-    </function>
-
-    <function name="PointParameterxOES" alias="PointParameterx">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfixed"/>
-    </function>
-
-    <function name="PointParameterxvOES" alias="PointParameterxv">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfixed *"/>
-    </function>
-
-    <function name="TexParameterxvOES" alias="TexParameterxv">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfixed *" variable_param="pname"/>
-    </function>
-</category>
-
-<!-- part of es1.1 extension pack -->
-<category name="GL_OES_framebuffer_object" number="10">
-    <enum name="NONE_OES"                                 value="0"/>
-    <enum name="INVALID_FRAMEBUFFER_OPERATION_OES"        value="0x0506"/>
-    <enum name="RGBA4_OES"                                value="0x8056"/>
-    <enum name="RGB5_A1_OES"                              value="0x8057"/>
-    <enum name="DEPTH_COMPONENT16_OES"                    value="0x81A5"/>
-
-    <enum name="MAX_RENDERBUFFER_SIZE_OES"                value="0x84E8"/>
-    <enum name="FRAMEBUFFER_BINDING_OES"                  value="0x8CA6"/>
-    <enum name="RENDERBUFFER_BINDING_OES"                 value="0x8CA7"/>
-    <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES"   value="0x8CD0"/>
-    <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES"   value="0x8CD1"/>
-    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES" value="0x8CD2"/>
-    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES" value="0x8CD3"/>
-    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES" value="0x8CD4"/>
-    <enum name="FRAMEBUFFER_COMPLETE_OES"                 value="0x8CD5"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES"    value="0x8CD6"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES" value="0x8CD7"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES"    value="0x8CD9"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_FORMATS_OES"       value="0x8CDA"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_OES"   value="0x8CDB"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES"   value="0x8CDC"/>
-    <enum name="FRAMEBUFFER_UNSUPPORTED_OES"              value="0x8CDD"/>
-    <enum name="COLOR_ATTACHMENT0_OES"                    value="0x8CE0"/>
-    <enum name="DEPTH_ATTACHMENT_OES"                     value="0x8D00"/>
-    <enum name="STENCIL_ATTACHMENT_OES"                   value="0x8D20"/>
-    <enum name="FRAMEBUFFER_OES"                          value="0x8D40"/>
-    <enum name="RENDERBUFFER_OES"                         value="0x8D41"/>
-    <enum name="RENDERBUFFER_WIDTH_OES"                   value="0x8D42"/>
-    <enum name="RENDERBUFFER_HEIGHT_OES"                  value="0x8D43"/>
-    <enum name="RENDERBUFFER_INTERNAL_FORMAT_OES"         value="0x8D44"/>
-    <enum name="STENCIL_INDEX1_OES"                       value="0x8D46"/>
-    <enum name="STENCIL_INDEX4_OES"                       value="0x8D47"/>
-    <enum name="STENCIL_INDEX8_OES"                       value="0x8D48"/>
-    <enum name="RENDERBUFFER_RED_SIZE_OES"                value="0x8D50"/>
-    <enum name="RENDERBUFFER_GREEN_SIZE_OES"              value="0x8D51"/>
-    <enum name="RENDERBUFFER_BLUE_SIZE_OES"               value="0x8D52"/>
-    <enum name="RENDERBUFFER_ALPHA_SIZE_OES"              value="0x8D53"/>
-    <enum name="RENDERBUFFER_DEPTH_SIZE_OES"              value="0x8D54"/>
-    <enum name="RENDERBUFFER_STENCIL_SIZE_OES"            value="0x8D55"/>
-    <enum name="RGB565_OES"                               value="0x8D62"/>
-
-    <function name="BindFramebufferOES" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="framebuffer" type="GLuint"/>
-    </function>
-
-    <function name="BindRenderbufferOES" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="renderbuffer" type="GLuint"/>
-    </function>
-
-    <function name="CheckFramebufferStatusOES" offset="assign">
-        <param name="target" type="GLenum"/>
-       <return type="GLenum"/>
-    </function>
-
-    <function name="DeleteFramebuffersOES" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="framebuffers" type="const GLuint *" count="n"/>
-    </function>
-
-    <function name="DeleteRenderbuffersOES" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="renderbuffers" type="const GLuint *" count="n"/>
-    </function>
-
-    <function name="FramebufferRenderbufferOES" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="renderbuffertarget" type="GLenum"/>
-        <param name="renderbuffer" type="GLuint"/>
-    </function>
-
-    <function name="FramebufferTexture2DOES" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="textarget" type="GLenum"/>
-        <param name="texture" type="GLuint"/>
-        <param name="level" type="GLint"/>
-    </function>
-
-    <function name="GenerateMipmapOES" offset="assign">
-        <param name="target" type="GLenum"/>
-    </function>
-
-    <function name="GenFramebuffersOES" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="framebuffers" type="GLuint *" count="n" output="true"/>
-    </function>
-
-    <function name="GenRenderbuffersOES" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="renderbuffers" type="GLuint *" count="n" output="true"/>
-    </function>
-
-    <function name="GetFramebufferAttachmentParameterivOES" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true"/>
-    </function>
-
-    <function name="GetRenderbufferParameterivOES" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true"/>
-    </function>
-
-    <function name="IsFramebufferOES" offset="assign">
-        <param name="framebuffer" type="GLuint"/>
-       <return type="GLboolean"/>
-    </function>
-
-    <function name="IsRenderbufferOES" offset="assign">
-        <param name="renderbuffer" type="GLuint"/>
-       <return type="GLboolean"/>
-    </function>
-
-    <function name="RenderbufferStorageOES" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-    </function>
-</category>
-
-<!-- core addition to es1.1 -->
-<category name="GL_OES_matrix_get" number="11">
-    <enum name="MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES"   value="0x898D"/>
-    <enum name="PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES"  value="0x898E"/>
-    <enum name="TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES"    value="0x898F"/>
-</category>
-
-<!-- optional for es1.1 -->
-<category name="GL_OES_matrix_palette" number="12">
-    <enum name="MAX_VERTEX_UNITS_OES"                     value="0x86A4"/>
-    <enum name="WEIGHT_ARRAY_TYPE_OES"                    value="0x86A9"/>
-    <enum name="WEIGHT_ARRAY_STRIDE_OES"                  value="0x86AA"/>
-    <enum name="WEIGHT_ARRAY_SIZE_OES"                    value="0x86AB"/>
-    <enum name="WEIGHT_ARRAY_POINTER_OES"                 value="0x86AC"/>
-    <enum name="WEIGHT_ARRAY_OES"                         value="0x86AD"/>
-    <enum name="MATRIX_PALETTE_OES"                       value="0x8840"/>
-    <enum name="MAX_PALETTE_MATRICES_OES"                 value="0x8842"/>
-    <enum name="CURRENT_PALETTE_MATRIX_OES"               value="0x8843"/>
-    <enum name="MATRIX_INDEX_ARRAY_OES"                   value="0x8844"/>
-    <enum name="MATRIX_INDEX_ARRAY_SIZE_OES"              value="0x8846"/>
-    <enum name="MATRIX_INDEX_ARRAY_TYPE_OES"              value="0x8847"/>
-    <enum name="MATRIX_INDEX_ARRAY_STRIDE_OES"            value="0x8848"/>
-    <enum name="MATRIX_INDEX_ARRAY_POINTER_OES"           value="0x8849"/>
-    <enum name="WEIGHT_ARRAY_BUFFER_BINDING_OES"          value="0x889E"/>
-    <enum name="MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES"    value="0x8B9E"/>
-
-    <function name="CurrentPaletteMatrixOES">
-        <param name="matrixpaletteindex" type="GLuint"/>
-    </function>
-
-    <function name="LoadPaletteFromModelViewMatrixOES">
-    </function>
-
-    <function name="MatrixIndexPointerOES">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-    </function>
-
-    <function name="WeightPointerOES">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-    </function>
-</category>
-
-<!-- required for es1.1 -->
-<category name="GL_OES_point_size_array" number="14">
-    <enum name="POINT_SIZE_ARRAY_TYPE_OES"                value="0x898A"/>
-    <enum name="POINT_SIZE_ARRAY_STRIDE_OES"             value="0x898B"/>
-    <enum name="POINT_SIZE_ARRAY_POINTER_OES"            value="0x898C"/>
-    <enum name="POINT_SIZE_ARRAY_OES"                     value="0x8B9C"/>
-    <enum name="POINT_SIZE_ARRAY_BUFFER_BINDING_OES"     value="0x8B9F"/>
-
-    <function name="PointSizePointerOES" offset="assign">
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-    </function>
-</category>
-
-<!-- required for es1.1 -->
-<category name="GL_OES_point_sprite" number="15">
-    <enum name="POINT_SPRITE_OES"                         value="0x8861"/>
-    <enum name="COORD_REPLACE_OES"                       value="0x8862"/>
-</category>
-
-<!-- optional for es1.0 -->
-<category name="GL_OES_query_matrix" number="16">
-    <function name="QueryMatrixxOES" offset="assign">
-        <param name="mantissa" type="GLfixed *" count="16" />
-        <param name="exponent" type="GLint *" count="16" />
-       <return type="GLbitfield"/>
-    </function>
-</category>
-
-<!-- required for es1.0 and later -->
-<category name="GL_OES_read_format" number="17">
-    <enum name="IMPLEMENTATION_COLOR_READ_TYPE_OES"       value="0x8B9A"/>
-    <enum name="IMPLEMENTATION_COLOR_READ_FORMAT_OES"     value="0x8B9B"/>
-</category>
-
-<!-- core addition to es1.0 and later -->
-<category name="GL_OES_single_precision" number="18">
-    <!-- additon to es1.0 -->
-    <function name="ClearDepthfOES" alias="ClearDepthf">
-        <param name="depth" type="GLclampf"/>
-    </function>
-
-    <function name="DepthRangefOES" alias="DepthRangef">
-        <param name="zNear" type="GLclampf"/>
-        <param name="zFar" type="GLclampf"/>
-    </function>
-
-    <function name="FrustumfOES" alias="Frustumf">
-        <param name="left" type="GLfloat"/>
-        <param name="right" type="GLfloat"/>
-        <param name="bottom" type="GLfloat"/>
-        <param name="top" type="GLfloat"/>
-        <param name="zNear" type="GLfloat"/>
-        <param name="zFar" type="GLfloat"/>
-    </function>
-
-    <function name="OrthofOES" alias="Orthof">
-        <param name="left" type="GLfloat"/>
-        <param name="right" type="GLfloat"/>
-        <param name="bottom" type="GLfloat"/>
-        <param name="top" type="GLfloat"/>
-        <param name="zNear" type="GLfloat"/>
-        <param name="zFar" type="GLfloat"/>
-    </function>
-
-    <!-- additon to es1.1 -->
-    <function name="ClipPlanefOES" alias="ClipPlanef">
-        <param name="plane" type="GLenum"/>
-        <param name="equation" type="const GLfloat *" count="4"/>
-    </function>
-
-    <function name="GetClipPlanefOES" alias="GetClipPlanef">
-        <param name="plane" type="GLenum"/>
-        <param name="equation" type="GLfloat *" output="true" count="4"/>
-    </function>
-</category>
-
-<!-- part of es1.1 extension pack -->
-<category name="GL_OES_texture_cube_map" number="20">
-    <enum name="TEXTURE_GEN_MODE_OES"                  value="0x2500"/>
-    <enum name="NORMAL_MAP_OES"                        value="0x8511"/>
-    <enum name="REFLECTION_MAP_OES"                    value="0x8512"/>
-    <enum name="TEXTURE_CUBE_MAP_OES"                  value="0x8513"/>
-    <enum name="TEXTURE_BINDING_CUBE_MAP_OES"          value="0x8514"/>
-    <enum name="TEXTURE_CUBE_MAP_POSITIVE_X_OES"       value="0x8515"/>
-    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_X_OES"       value="0x8516"/>
-    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Y_OES"       value="0x8517"/>
-    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Y_OES"       value="0x8518"/>
-    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Z_OES"       value="0x8519"/>
-    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Z_OES"       value="0x851A"/>
-    <enum name="MAX_CUBE_MAP_TEXTURE_SIZE_OES"         value="0x851C"/>
-    <enum name="TEXTURE_GEN_STR_OES"                   value="0x8D60"/>
-
-    <function name="GetTexGenfvOES" offset="279">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="133"/>
-    </function>
-
-    <function name="GetTexGenivOES" offset="280">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="134"/>
-    </function>
-
-    <function name="GetTexGenxvOES" offset="assign">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfixed *" output="true" variable_param="pname"/>
-    </function>
-
-    <function name="TexGenfOES" offset="190">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="117"/>
-    </function>
-
-    <function name="TexGenfvOES" offset="191">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="118"/>
-    </function>
-
-    <function name="TexGeniOES" offset="192">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="119"/>
-    </function>
-
-    <function name="TexGenivOES" offset="193">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="120"/>
-    </function>
-
-    <function name="TexGenxOES" offset="assign">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-    </function>
-
-    <function name="TexGenxvOES" offset="assign">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfixed *" variable_param="pname"/>
-    </function>
-</category>
-
-<category name="GL_OES_texture_env_crossbar" number="21">
-    <!-- No new functions, types, enums. -->
-</category>
-
-<category name="GL_OES_texture_mirrored_repeat" number="22">
-    <!-- No new functions, types, enums. -->
-</category>
-
-<category name="GL_EXT_texture_lod_bias" number="60">
-    <enum name="TEXTURE_FILTER_CONTROL_EXT"               value="0x8500"/>
-    <enum name="TEXTURE_LOD_BIAS_EXT"                     value="0x8501"/>
-    <enum name="MAX_TEXTURE_LOD_BIAS_EXT"                 value="0x84FD"/>
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/es/glapi/es2_API.xml b/src/mesa/es/glapi/es2_API.xml
deleted file mode 100644 (file)
index b476dbe..0000000
+++ /dev/null
@@ -1,294 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "../../glapi/gen/gl_API.dtd">
-
-<!-- OpenGL ES 2.x API -->
-
-<OpenGLAPI>
-
-<xi:include href="base2_API.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<!-- core subset of OpenGL 2.0 defined in OpenGL ES 2.0 -->
-<category name="core2.0">
-    <!-- addition to base1.0 -->
-    <enum name="NONE"                                     value="0x0"/>
-    <enum name="INT"                           count="4"  value="0x1404">
-        <size name="CallLists"/>
-    </enum>
-    <enum name="UNSIGNED_INT"                  count="4"  value="0x1405">
-        <size name="CallLists"/>
-    </enum>
-    <enum name="STENCIL_INDEX"                            value="0x1901"/>
-    <enum name="DEPTH_COMPONENT"                          value="0x1902"/>
-
-    <function name="TexImage2D" offset="183">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLint"/> <!-- XXX the actual type is GLenum... -->
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="target" img_send_null="true" img_pad_dimensions="true"/>
-        <glx rop="110" large="true"/>
-    </function>
-
-    <!-- addition to base1.1 -->
-    <enum name="RGBA4"                                    value="0x8056"/>
-    <enum name="RGB5_A1"                                  value="0x8057"/>
-
-    <!-- addition to base1.2 -->
-    <enum name="CONSTANT_COLOR"                           value="0x8001"/>
-    <enum name="ONE_MINUS_CONSTANT_COLOR"                 value="0x8002"/>
-    <enum name="CONSTANT_ALPHA"                           value="0x8003"/>
-    <enum name="ONE_MINUS_CONSTANT_ALPHA"                 value="0x8004"/>
-    <enum name="BLEND_COLOR"                   count="4"  value="0x8005">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FUNC_ADD"                                 value="0x8006"/>
-    <enum name="BLEND_EQUATION"                count="1"  value="0x8009">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FUNC_SUBTRACT"                            value="0x800A"/>
-    <enum name="FUNC_REVERSE_SUBTRACT"                    value="0x800B"/>
-
-    <function name="BlendColor" offset="336">
-        <param name="red" type="GLclampf"/>
-        <param name="green" type="GLclampf"/>
-        <param name="blue" type="GLclampf"/>
-        <param name="alpha" type="GLclampf"/>
-        <glx rop="4096"/>
-    </function>
-
-    <function name="BlendEquation" offset="337">
-        <param name="mode" type="GLenum"/>
-        <glx rop="4097"/>
-    </function>
-
-    <!-- addition to base1.3 -->
-    <enum name="TEXTURE_CUBE_MAP"              count="1"  value="0x8513">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_BINDING_CUBE_MAP"      count="1"  value="0x8514">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_CUBE_MAP_POSITIVE_X"              value="0x8515"/>
-    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_X"              value="0x8516"/>
-    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Y"              value="0x8517"/>
-    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Y"              value="0x8518"/>
-    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Z"              value="0x8519"/>
-    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Z"              value="0x851A"/>
-    <enum name="MAX_CUBE_MAP_TEXTURE_SIZE"     count="1"  value="0x851C">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <!-- addition to base1.4 -->
-    <enum name="BLEND_DST_RGB"                 count="1"  value="0x80C8">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLEND_SRC_RGB"                 count="1"  value="0x80C9">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLEND_DST_ALPHA"               count="1"  value="0x80CA">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLEND_SRC_ALPHA"               count="1"  value="0x80CB">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DEPTH_COMPONENT16"                        value="0x81A5"/>
-    <enum name="MIRRORED_REPEAT"                          value="0x8370"/>
-    <enum name="INCR_WRAP"                                value="0x8507"/>
-    <enum name="DECR_WRAP"                                value="0x8508"/>
-
-    <function name="BlendFuncSeparate" offset="assign">
-        <param name="sfactorRGB" type="GLenum"/>
-        <param name="dfactorRGB" type="GLenum"/>
-        <param name="sfactorAlpha" type="GLenum"/>
-        <param name="dfactorAlpha" type="GLenum"/>
-        <glx rop="4134"/>
-    </function>
-
-    <!-- addition to base1.5 -->
-    <enum name="VERTEX_ATTRIB_ARRAY_BUFFER_BINDING" count="1" value="0x889F">
-        <size name="GetVertexAttribdv" mode="get"/>
-        <size name="GetVertexAttribfv" mode="get"/>
-        <size name="GetVertexAttribiv" mode="get"/>
-    </enum>
-    <enum name="STREAM_DRAW"                              value="0x88E0"/>
-
-    <!-- addition to base2.0 -->
-    <!-- base2.0 should have everything defined -->
-</category>
-
-<!-- OpenGL ES 2.0 -->
-<category name="es2.0">
-    <!-- addition to core2.0 -->
-    <enum name="LOW_FLOAT"                                    value="0x8DF0"/>
-    <enum name="MEDIUM_FLOAT"                                 value="0x8DF1"/>
-    <enum name="HIGH_FLOAT"                                   value="0x8DF2"/>
-    <enum name="LOW_INT"                                      value="0x8DF3"/>
-    <enum name="MEDIUM_INT"                                   value="0x8DF4"/>
-    <enum name="HIGH_INT"                                     value="0x8DF5"/>
-    <enum name="SHADER_BINARY_FORMATS"                        value="0x8DF8"/>
-    <enum name="NUM_SHADER_BINARY_FORMATS"                    value="0x8DF9"/>
-    <enum name="SHADER_COMPILER"                              value="0x8DFA"/>
-    <enum name="MAX_VERTEX_UNIFORM_VECTORS"                   value="0x8DFB"/>
-    <enum name="MAX_VARYING_VECTORS"                          value="0x8DFC"/>
-    <enum name="MAX_FRAGMENT_UNIFORM_VECTORS"                 value="0x8DFD"/>
-
-    <function name="GetShaderPrecisionFormat" offset="assign">
-        <param name="shadertype" type="GLenum"/>
-        <param name="precisiontype" type="GLenum"/>
-        <param name="range" type="GLint *"/>
-        <param name="precision" type="GLint *"/>
-    </function>
-
-    <function name="ReleaseShaderCompiler" offset="assign">
-    </function>
-
-    <function name="ShaderBinary" offset="assign">
-        <param name="n" type="GLsizei"/>
-        <param name="shaders" type="const GLuint *"/>
-        <param name="binaryformat" type="GLenum"/>
-        <param name="binary" type="const GLvoid *"/>
-        <param name="length" type="GLsizei"/>
-    </function>
-
-    <!-- from GL_OES_fixed_point -->
-    <enum name="FIXED"                                    value="0x140C"/>
-    <type name="fixed"   size="4"                                    />
-
-    <!-- from GL_OES_framebuffer_object -->
-    <enum name="INVALID_FRAMEBUFFER_OPERATION"                value="0x0506"/>
-    <enum name="MAX_RENDERBUFFER_SIZE"                        value="0x84E8"/>
-    <enum name="FRAMEBUFFER_BINDING"                          value="0x8CA6"/>
-    <enum name="RENDERBUFFER_BINDING"                         value="0x8CA7"/>
-    <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE"           value="0x8CD0"/>
-    <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_NAME"           value="0x8CD1"/>
-    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL"         value="0x8CD2"/>
-    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE" value="0x8CD3"/>
-    <enum name="FRAMEBUFFER_COMPLETE"                         value="0x8CD5"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_ATTACHMENT"            value="0x8CD6"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT"    value="0x8CD7"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_DIMENSIONS"            value="0x8CD9"/>
-    <enum name="FRAMEBUFFER_UNSUPPORTED"                      value="0x8CDD"/>
-    <enum name="COLOR_ATTACHMENT0"                            value="0x8CE0"/>
-    <enum name="DEPTH_ATTACHMENT"                             value="0x8D00"/>
-    <enum name="STENCIL_ATTACHMENT"                           value="0x8D20"/>
-    <enum name="FRAMEBUFFER"                                  value="0x8D40"/>
-    <enum name="RENDERBUFFER"                                 value="0x8D41"/>
-    <enum name="RENDERBUFFER_WIDTH"                           value="0x8D42"/>
-    <enum name="RENDERBUFFER_HEIGHT"                          value="0x8D43"/>
-    <enum name="RENDERBUFFER_INTERNAL_FORMAT"                 value="0x8D44"/>
-    <enum name="STENCIL_INDEX8"                               value="0x8D48"/>
-    <enum name="RENDERBUFFER_RED_SIZE"                        value="0x8D50"/>
-    <enum name="RENDERBUFFER_GREEN_SIZE"                      value="0x8D51"/>
-    <enum name="RENDERBUFFER_BLUE_SIZE"                       value="0x8D52"/>
-    <enum name="RENDERBUFFER_ALPHA_SIZE"                      value="0x8D53"/>
-    <enum name="RENDERBUFFER_DEPTH_SIZE"                      value="0x8D54"/>
-    <enum name="RENDERBUFFER_STENCIL_SIZE"                    value="0x8D55"/>
-    <enum name="RGB565"                                       value="0x8D62"/>
-
-    <function name="BindFramebuffer" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="framebuffer" type="GLuint"/>
-    </function>
-
-    <function name="BindRenderbuffer" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="renderbuffer" type="GLuint"/>
-    </function>
-
-    <function name="CheckFramebufferStatus" offset="assign">
-        <param name="target" type="GLenum"/>
-       <return type="GLenum"/>
-    </function>
-
-    <function name="DeleteFramebuffers" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="framebuffers" type="const GLuint *" count="n"/>
-    </function>
-
-    <function name="DeleteRenderbuffers" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="renderbuffers" type="const GLuint *" count="n"/>
-    </function>
-
-    <function name="FramebufferRenderbuffer" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="renderbuffertarget" type="GLenum"/>
-        <param name="renderbuffer" type="GLuint"/>
-    </function>
-
-    <function name="FramebufferTexture2D" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="textarget" type="GLenum"/>
-        <param name="texture" type="GLuint"/>
-        <param name="level" type="GLint"/>
-    </function>
-
-    <function name="GenerateMipmap" offset="assign">
-        <param name="target" type="GLenum"/>
-    </function>
-
-    <function name="GenFramebuffers" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="framebuffers" type="GLuint *" count="n" output="true"/>
-    </function>
-
-    <function name="GenRenderbuffers" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="renderbuffers" type="GLuint *" count="n" output="true"/>
-    </function>
-
-    <function name="GetFramebufferAttachmentParameteriv" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true"/>
-    </function>
-
-    <function name="GetRenderbufferParameteriv" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true"/>
-    </function>
-
-    <function name="IsFramebuffer" offset="assign">
-        <param name="framebuffer" type="GLuint"/>
-       <return type="GLboolean"/>
-    </function>
-
-    <function name="IsRenderbuffer" offset="assign">
-        <param name="renderbuffer" type="GLuint"/>
-       <return type="GLboolean"/>
-    </function>
-
-    <function name="RenderbufferStorage" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-    </function>
-
-    <!-- from GL_OES_read_format -->
-    <enum name="IMPLEMENTATION_COLOR_READ_TYPE"           value="0x8B9A"/>
-    <enum name="IMPLEMENTATION_COLOR_READ_FORMAT"         value="0x8B9B"/>
-
-    <!-- from GL_OES_single_precision -->
-    <function name="ClearDepthf" offset="assign">
-        <param name="depth" type="GLclampf"/>
-    </function>
-
-    <function name="DepthRangef" offset="assign">
-        <param name="zNear" type="GLclampf"/>
-        <param name="zFar" type="GLclampf"/>
-    </function>
-</category>
-
-<xi:include href="es2_EXT.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-<xi:include href="es2_COMPAT.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-</OpenGLAPI>
diff --git a/src/mesa/es/glapi/es2_COMPAT.xml b/src/mesa/es/glapi/es2_COMPAT.xml
deleted file mode 100644 (file)
index 5ecd4a1..0000000
+++ /dev/null
@@ -1,368 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "../../glapi/gen/gl_API.dtd">
-
-<OpenGLAPI>
-
-<!-- This file defines the functions that are needed by Mesa.  It
-     makes sure the generated glapi headers are compatible with Mesa.
-     It mainly consists of missing functions and aliases in OpenGL ES.
--->
-
-<xi:include href="es_COMPAT.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<!-- except for those defined by es_COMPAT.xml, these are also needed -->
-<category name="compat">
-    <!-- OpenGL 1.0 -->
-    <function name="Color4f" offset="29" vectorequiv="Color4fv" static_dispatch="false">
-        <param name="red" type="GLfloat"/>
-        <param name="green" type="GLfloat"/>
-        <param name="blue" type="GLfloat"/>
-        <param name="alpha" type="GLfloat"/>
-    </function>
-
-    <function name="Color4ub" offset="35" vectorequiv="Color4ubv" static_dispatch="false">
-        <param name="red" type="GLubyte"/>
-        <param name="green" type="GLubyte"/>
-        <param name="blue" type="GLubyte"/>
-        <param name="alpha" type="GLubyte"/>
-    </function>
-
-    <function name="Normal3f" offset="56" vectorequiv="Normal3fv" static_dispatch="false">
-        <param name="nx" type="GLfloat"/>
-        <param name="ny" type="GLfloat"/>
-        <param name="nz" type="GLfloat"/>
-    </function>
-
-    <function name="Fogf" offset="153" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="80"/>
-    </function>
-
-    <function name="Fogfv" offset="154" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="81"/>
-    </function>
-
-    <function name="Lightf" offset="159" static_dispatch="false">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="86"/>
-    </function>
-
-    <function name="Lightfv" offset="160" static_dispatch="false">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="87"/>
-    </function>
-
-    <function name="LightModelf" offset="163" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="90"/>
-    </function>
-
-    <function name="LightModelfv" offset="164" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="91"/>
-    </function>
-
-    <function name="Materialf" offset="169" static_dispatch="false">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="96"/>
-    </function>
-
-    <function name="Materialfv" offset="170" static_dispatch="false">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="97"/>
-    </function>
-
-    <function name="PointSize" offset="173" static_dispatch="false">
-        <param name="size" type="GLfloat"/>
-        <glx rop="100"/>
-    </function>
-
-    <function name="ShadeModel" offset="177" static_dispatch="false">
-        <param name="mode" type="GLenum"/>
-        <glx rop="104"/>
-    </function>
-
-    <function name="TexEnvf" offset="184" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="111"/>
-    </function>
-
-    <function name="TexEnvfv" offset="185" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="112"/>
-    </function>
-
-    <function name="TexEnvi" offset="186" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="113"/>
-    </function>
-
-    <function name="TexEnviv" offset="187" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="114"/>
-    </function>
-
-    <function name="TexGenf" offset="190" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="117"/>
-    </function>
-
-    <function name="TexGenfv" offset="191" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="118"/>
-    </function>
-
-    <function name="TexGeni" offset="192" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="119"/>
-    </function>
-
-    <function name="TexGeniv" offset="193" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="120"/>
-    </function>
-
-    <function name="AlphaFunc" offset="240" static_dispatch="false">
-        <param name="func" type="GLenum"/>
-        <param name="ref" type="GLclampf"/>
-        <glx rop="159"/>
-    </function>
-
-    <function name="LogicOp" offset="242" static_dispatch="false">
-        <param name="opcode" type="GLenum"/>
-        <glx rop="161"/>
-    </function>
-
-    <function name="GetLightfv" offset="264" static_dispatch="false">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="118"/>
-    </function>
-
-    <function name="GetMaterialfv" offset="269" static_dispatch="false">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="123"/>
-    </function>
-
-    <function name="GetTexEnvfv" offset="276" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="130"/>
-    </function>
-
-    <function name="GetTexEnviv" offset="277" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="131"/>
-    </function>
-
-    <function name="GetTexGenfv" offset="279" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="133"/>
-    </function>
-
-    <function name="GetTexGeniv" offset="280" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="134"/>
-    </function>
-
-    <function name="LoadIdentity" offset="290" static_dispatch="false">
-        <glx rop="176"/>
-    </function>
-
-    <function name="LoadMatrixf" offset="291" static_dispatch="false">
-        <param name="m" type="const GLfloat *" count="16"/>
-        <glx rop="177"/>
-    </function>
-
-    <function name="MatrixMode" offset="293" static_dispatch="false">
-        <param name="mode" type="GLenum"/>
-        <glx rop="179"/>
-    </function>
-
-    <function name="MultMatrixf" offset="294" static_dispatch="false">
-        <param name="m" type="const GLfloat *" count="16"/>
-        <glx rop="180"/>
-    </function>
-
-    <function name="PopMatrix" offset="297" static_dispatch="false">
-        <glx rop="183"/>
-    </function>
-
-    <function name="PushMatrix" offset="298" static_dispatch="false">
-        <glx rop="184"/>
-    </function>
-
-    <function name="Rotatef" offset="300" static_dispatch="false">
-        <param name="angle" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <glx rop="186"/>
-    </function>
-
-    <function name="Scalef" offset="302" static_dispatch="false">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <glx rop="188"/>
-    </function>
-
-    <function name="Translatef" offset="304" static_dispatch="false">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <glx rop="190"/>
-    </function>
-
-    <!-- OpenGL 1.1 -->
-    <function name="ColorPointer" offset="308" static_dispatch="false">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="DisableClientState" offset="309" static_dispatch="false">
-        <param name="array" type="GLenum"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="EnableClientState" offset="313" static_dispatch="false">
-        <param name="array" type="GLenum"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="NormalPointer" offset="318" static_dispatch="false">
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="TexCoordPointer" offset="320" static_dispatch="false">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="VertexPointer" offset="321" static_dispatch="false">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="GetPointerv" offset="329" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLvoid **" output="true"/>
-        <glx handcode="true"/>
-    </function>
-
-    <!-- OpenGL 1.2 -->
-    <function name="TexImage3D" alias="TexImage3DOES" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_format="format" img_type="type" img_target="target" img_null_flag="true" img_pad_dimensions="true"/>
-        <glx rop="4114" large="true"/>
-    </function>
-
-    <function name="TexSubImage3D" alias="TexSubImage3DOES" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="UNUSED" type="GLuint" padding="true"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_xoff="xoffset" img_yoff="yoffset" img_zoff="zoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
-        <glx rop="4115" large="true"/>
-    </function>
-
-    <function name="CopyTexSubImage3D" alias="CopyTexSubImage3DOES" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <glx rop="4123"/>
-    </function>
-
-    <!-- GL_ARB_multitexture -->
-    <function name="ActiveTextureARB" alias="ActiveTexture" static_dispatch="false">
-        <param name="texture" type="GLenum"/>
-        <glx rop="197"/>
-    </function>
-
-    <function name="ClientActiveTextureARB" offset="375" static_dispatch="false">
-        <param name="texture" type="GLenum"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="MultiTexCoord4fARB" offset="402" vectorequiv="MultiTexCoord4fvARB" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="r" type="GLfloat"/>
-        <param name="q" type="GLfloat"/>
-    </function>
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/es/glapi/es2_EXT.xml b/src/mesa/es/glapi/es2_EXT.xml
deleted file mode 100644 (file)
index dcf9858..0000000
+++ /dev/null
@@ -1,162 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "../../glapi/gen/gl_API.dtd">
-
-<!-- OpenGL ES 2.x extensions -->
-
-<OpenGLAPI>
-
-<xi:include href="es_EXT.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<category name="GL_OES_texture_3D" number="34">
-    <enum name="TEXTURE_BINDING_3D_OES"                   value="0x806A"/>
-    <enum name="TEXTURE_3D_OES"                           value="0x806F"/>
-    <enum name="TEXTURE_WRAP_R_OES"                       value="0x8072"/>
-    <enum name="MAX_3D_TEXTURE_SIZE_OES"                  value="0x8073"/>
-    <enum name="SAMPLER_3D_OES"                           value="0x8B5F"/>
-    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES" value="0x8CD4"/>
-
-    <function name="CompressedTexImage3DOES" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="imageSize" type="GLsizei" counter="true"/>
-        <param name="data" type="const GLvoid *" count="imageSize"/>
-        <glx rop="216" handcode="client"/>
-    </function>
-
-    <function name="CompressedTexSubImage3DOES" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="imageSize" type="GLsizei" counter="true"/>
-        <param name="data" type="const GLvoid *" count="imageSize"/>
-        <glx rop="219" handcode="client"/>
-    </function>
-
-    <function name="CopyTexSubImage3DOES" offset="373">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <glx rop="4123"/>
-    </function>
-
-    <function name="FramebufferTexture3DOES" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="textarget" type="GLenum"/>
-        <param name="texture" type="GLuint"/>
-        <param name="level" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-        <glx rop="4323"/>
-    </function>
-
-    <function name="TexImage3DOES" offset="371">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_format="format" img_type="type" img_target="target" img_null_flag="true" img_pad_dimensions="true"/>
-        <glx rop="4114" large="true"/>
-    </function>
-
-    <function name="TexSubImage3DOES" offset="372">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="UNUSED" type="GLuint" padding="true"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_xoff="xoffset" img_yoff="yoffset" img_zoff="zoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
-        <glx rop="4115" large="true"/>
-    </function>
-</category>
-
-<!-- the other name is OES_texture_float_linear -->
-<category name="OES_texture_half_float_linear" number="35">
-    <!-- No new functions, types, enums. -->
-</category>
-
-<!-- the other name is OES_texture_float -->
-<category name="OES_texture_half_float" number="36">
-    <enum name="HALF_FLOAT_OES"                           value="0x8D61"/>
-</category>
-
-<category name="GL_OES_texture_npot" number="37">
-    <!-- No new functions, types, enums. -->
-</category>
-
-<category name="GL_OES_vertex_half_float" number="38">
-    <enum name="HALF_FLOAT_OES"                           value="0x8D61"/>
-</category>
-
-<category name="GL_EXT_texture_type_2_10_10_10_REV" number="42">
-    <enum name="UNSIGNED_INT_2_10_10_10_REV_EXT"          value="0x8368"/>
-</category>
-
-<category name="GL_OES_packed_depth_stencil" number="43">
-    <enum name="DEPTH_STENCIL_OES"                        value="0x84F9"/>
-    <enum name="UNSIGNED_INT_24_8_OES"                    value="0x84FA"/>
-    <enum name="DEPTH24_STENCIL8_OES"                     value="0x88F0"/>
-</category>
-
-<category name="GL_OES_depth_texture" number="44">
-    <!-- No new functions, types, enums. -->
-</category>
-
-<category name="GL_OES_standard_derivatives" number="45">
-    <enum name="FRAGMENT_SHADER_DERIVATIVE_HINT_OES"      value="0x8B8B"/>
-</category>
-
-<category name="GL_OES_vertex_type_10_10_10_2" number="46">
-    <enum name="UNSIGNED_INT_10_10_10_2_OES"              value="0x8DF6"/>
-    <enum name="INT_10_10_10_2_OES"                       value="0x8DF7"/>
-</category>
-
-<category name="GL_OES_get_program_binary" number="47">
-    <enum name="PROGRAM_BINARY_LENGTH_OES"                value="0x8741"/>
-    <enum name="NUM_PROGRAM_BINARY_FORMATS_OES"           value="0x87FE"/>
-    <enum name="PROGRAM_BINARY_FORMATS_OES"               value="0x87FF"/>
-
-    <function name="GetProgramBinaryOES" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="bufSize" type="GLsizei"/>
-        <param name="length" type="GLsizei *"/>
-        <param name="binaryFormat" type="GLenum *"/>
-        <param name="binary" type="GLvoid *"/>
-    </function>
-
-    <function name="ProgramBinaryOES" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="binaryFormat" type="GLenum"/>
-        <param name="binary" type="const GLvoid *"/>
-        <param name="length" type="GLint"/>
-    </function>
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/es/glapi/es_COMPAT.xml b/src/mesa/es/glapi/es_COMPAT.xml
deleted file mode 100644 (file)
index 1bd66da..0000000
+++ /dev/null
@@ -1,2646 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "../../glapi/gen/gl_API.dtd">
-
-<OpenGLAPI>
-
-<!-- This file defines the following categories
-
-         a subset of 1.0
-         a subset of 1.1
-         a subset of 1.2
-         a subset of GL_ARB_multitexture
-         GL_APPLE_vertex_array_object
-
-     to make sure the generated glapi headers are compatible with Mesa.
-     It is included by es1_COMPAT.xml and es2_COMPAT.xml.
--->
-
-<category name="1.0">
-    <type name="double"  size="8"  float="true"    glx_name="FLOAT64"/>
-    <type name="clampd"  size="8"  float="true"    glx_name="FLOAT64"/>
-
-    <type name="float"   size="4"  float="true"    glx_name="FLOAT32"/>
-    <type name="clampf"  size="4"  float="true"    glx_name="FLOAT32"/>
-
-    <type name="int"     size="4"                  glx_name="CARD32"/>
-    <type name="uint"    size="4"  unsigned="true" glx_name="CARD32"/>
-    <type name="sizei"   size="4"  unsigned="true" glx_name="CARD32"/>
-    <type name="enum"    size="4"  unsigned="true" glx_name="ENUM"/>
-    <type name="bitfield" size="4" unsigned="true" glx_name="CARD32"/>
-
-    <type name="short"   size="2"                  glx_name="CARD16"/>
-    <type name="ushort"  size="2"  unsigned="true" glx_name="CARD16"/>
-
-    <type name="byte"    size="1"                  glx_name="CARD8"/>
-    <type name="ubyte"   size="1"  unsigned="true" glx_name="CARD8"/>
-    <type name="boolean" size="1"  unsigned="true" glx_name="CARD8"/>
-
-    <type name="void"    size="1"/>
-
-    <function name="NewList" offset="0" static_dispatch="false">
-        <param name="list" type="GLuint"/>
-        <param name="mode" type="GLenum"/>
-        <glx sop="101"/>
-    </function>
-
-    <function name="EndList" offset="1" static_dispatch="false">
-        <glx sop="102"/>
-    </function>
-
-    <function name="CallList" offset="2" static_dispatch="false">
-        <param name="list" type="GLuint"/>
-        <glx rop="1"/>
-    </function>
-
-    <function name="CallLists" offset="3" static_dispatch="false">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="type" type="GLenum"/>
-        <param name="lists" type="const GLvoid *" variable_param="type" count="n"/>
-        <glx rop="2" large="true"/>
-    </function>
-
-    <function name="DeleteLists" offset="4" static_dispatch="false">
-        <param name="list" type="GLuint"/>
-        <param name="range" type="GLsizei"/>
-        <glx sop="103"/>
-    </function>
-
-    <function name="GenLists" offset="5" static_dispatch="false">
-        <param name="range" type="GLsizei"/>
-        <return type="GLuint"/>
-        <glx sop="104"/>
-    </function>
-
-    <function name="ListBase" offset="6" static_dispatch="false">
-        <param name="base" type="GLuint"/>
-        <glx rop="3"/>
-    </function>
-
-    <function name="Begin" offset="7" static_dispatch="false">
-        <param name="mode" type="GLenum"/>
-        <glx rop="4"/>
-    </function>
-
-    <function name="Bitmap" offset="8" static_dispatch="false">
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="xorig" type="GLfloat"/>
-        <param name="yorig" type="GLfloat"/>
-        <param name="xmove" type="GLfloat"/>
-        <param name="ymove" type="GLfloat"/>
-        <param name="bitmap" type="const GLubyte *" img_width="width" img_height="height" img_format="GL_COLOR_INDEX" img_type="GL_BITMAP" img_target="0" img_pad_dimensions="false"/>
-        <glx rop="5" large="true"/>
-    </function>
-
-    <function name="Color3b" offset="9" vectorequiv="Color3bv" static_dispatch="false">
-        <param name="red" type="GLbyte"/>
-        <param name="green" type="GLbyte"/>
-        <param name="blue" type="GLbyte"/>
-    </function>
-
-    <function name="Color3bv" offset="10" static_dispatch="false">
-        <param name="v" type="const GLbyte *" count="3"/>
-        <glx rop="6"/>
-    </function>
-
-    <function name="Color3d" offset="11" vectorequiv="Color3dv" static_dispatch="false">
-        <param name="red" type="GLdouble"/>
-        <param name="green" type="GLdouble"/>
-        <param name="blue" type="GLdouble"/>
-    </function>
-
-    <function name="Color3dv" offset="12" static_dispatch="false">
-        <param name="v" type="const GLdouble *" count="3"/>
-        <glx rop="7"/>
-    </function>
-
-    <function name="Color3f" offset="13" vectorequiv="Color3fv" static_dispatch="false">
-        <param name="red" type="GLfloat"/>
-        <param name="green" type="GLfloat"/>
-        <param name="blue" type="GLfloat"/>
-    </function>
-
-    <function name="Color3fv" offset="14" static_dispatch="false">
-        <param name="v" type="const GLfloat *" count="3"/>
-        <glx rop="8"/>
-    </function>
-
-    <function name="Color3i" offset="15" vectorequiv="Color3iv" static_dispatch="false">
-        <param name="red" type="GLint"/>
-        <param name="green" type="GLint"/>
-        <param name="blue" type="GLint"/>
-    </function>
-
-    <function name="Color3iv" offset="16" static_dispatch="false">
-        <param name="v" type="const GLint *" count="3"/>
-        <glx rop="9"/>
-    </function>
-
-    <function name="Color3s" offset="17" vectorequiv="Color3sv" static_dispatch="false">
-        <param name="red" type="GLshort"/>
-        <param name="green" type="GLshort"/>
-        <param name="blue" type="GLshort"/>
-    </function>
-
-    <function name="Color3sv" offset="18" static_dispatch="false">
-        <param name="v" type="const GLshort *" count="3"/>
-        <glx rop="10"/>
-    </function>
-
-    <function name="Color3ub" offset="19" vectorequiv="Color3ubv" static_dispatch="false">
-        <param name="red" type="GLubyte"/>
-        <param name="green" type="GLubyte"/>
-        <param name="blue" type="GLubyte"/>
-    </function>
-
-    <function name="Color3ubv" offset="20" static_dispatch="false">
-        <param name="v" type="const GLubyte *" count="3"/>
-        <glx rop="11"/>
-    </function>
-
-    <function name="Color3ui" offset="21" vectorequiv="Color3uiv" static_dispatch="false">
-        <param name="red" type="GLuint"/>
-        <param name="green" type="GLuint"/>
-        <param name="blue" type="GLuint"/>
-    </function>
-
-    <function name="Color3uiv" offset="22" static_dispatch="false">
-        <param name="v" type="const GLuint *" count="3"/>
-        <glx rop="12"/>
-    </function>
-
-    <function name="Color3us" offset="23" vectorequiv="Color3usv" static_dispatch="false">
-        <param name="red" type="GLushort"/>
-        <param name="green" type="GLushort"/>
-        <param name="blue" type="GLushort"/>
-    </function>
-
-    <function name="Color3usv" offset="24" static_dispatch="false">
-        <param name="v" type="const GLushort *" count="3"/>
-        <glx rop="13"/>
-    </function>
-
-    <function name="Color4b" offset="25" vectorequiv="Color4bv" static_dispatch="false">
-        <param name="red" type="GLbyte"/>
-        <param name="green" type="GLbyte"/>
-        <param name="blue" type="GLbyte"/>
-        <param name="alpha" type="GLbyte"/>
-    </function>
-
-    <function name="Color4bv" offset="26" static_dispatch="false">
-        <param name="v" type="const GLbyte *" count="4"/>
-        <glx rop="14"/>
-    </function>
-
-    <function name="Color4d" offset="27" vectorequiv="Color4dv" static_dispatch="false">
-        <param name="red" type="GLdouble"/>
-        <param name="green" type="GLdouble"/>
-        <param name="blue" type="GLdouble"/>
-        <param name="alpha" type="GLdouble"/>
-    </function>
-
-    <function name="Color4dv" offset="28" static_dispatch="false">
-        <param name="v" type="const GLdouble *" count="4"/>
-        <glx rop="15"/>
-    </function>
-
-    <!--function name="Color4f" offset="29" vectorequiv="Color4fv" static_dispatch="false">
-        <param name="red" type="GLfloat"/>
-        <param name="green" type="GLfloat"/>
-        <param name="blue" type="GLfloat"/>
-        <param name="alpha" type="GLfloat"/>
-    </function-->
-
-    <function name="Color4fv" offset="30" static_dispatch="false">
-        <param name="v" type="const GLfloat *" count="4"/>
-        <glx rop="16"/>
-    </function>
-
-    <function name="Color4i" offset="31" vectorequiv="Color4iv" static_dispatch="false">
-        <param name="red" type="GLint"/>
-        <param name="green" type="GLint"/>
-        <param name="blue" type="GLint"/>
-        <param name="alpha" type="GLint"/>
-    </function>
-
-    <function name="Color4iv" offset="32" static_dispatch="false">
-        <param name="v" type="const GLint *" count="4"/>
-        <glx rop="17"/>
-    </function>
-
-    <function name="Color4s" offset="33" vectorequiv="Color4sv" static_dispatch="false">
-        <param name="red" type="GLshort"/>
-        <param name="green" type="GLshort"/>
-        <param name="blue" type="GLshort"/>
-        <param name="alpha" type="GLshort"/>
-    </function>
-
-    <function name="Color4sv" offset="34" static_dispatch="false">
-        <param name="v" type="const GLshort *" count="4"/>
-        <glx rop="18"/>
-    </function>
-
-    <!--function name="Color4ub" offset="35" vectorequiv="Color4ubv" static_dispatch="false">
-        <param name="red" type="GLubyte"/>
-        <param name="green" type="GLubyte"/>
-        <param name="blue" type="GLubyte"/>
-        <param name="alpha" type="GLubyte"/>
-    </function-->
-
-    <function name="Color4ubv" offset="36" static_dispatch="false">
-        <param name="v" type="const GLubyte *" count="4"/>
-        <glx rop="19"/>
-    </function>
-
-    <function name="Color4ui" offset="37" vectorequiv="Color4uiv" static_dispatch="false">
-        <param name="red" type="GLuint"/>
-        <param name="green" type="GLuint"/>
-        <param name="blue" type="GLuint"/>
-        <param name="alpha" type="GLuint"/>
-    </function>
-
-    <function name="Color4uiv" offset="38" static_dispatch="false">
-        <param name="v" type="const GLuint *" count="4"/>
-        <glx rop="20"/>
-    </function>
-
-    <function name="Color4us" offset="39" vectorequiv="Color4usv" static_dispatch="false">
-        <param name="red" type="GLushort"/>
-        <param name="green" type="GLushort"/>
-        <param name="blue" type="GLushort"/>
-        <param name="alpha" type="GLushort"/>
-    </function>
-
-    <function name="Color4usv" offset="40" static_dispatch="false">
-        <param name="v" type="const GLushort *" count="4"/>
-        <glx rop="21"/>
-    </function>
-
-    <function name="EdgeFlag" offset="41" vectorequiv="EdgeFlagv" static_dispatch="false">
-        <param name="flag" type="GLboolean"/>
-    </function>
-
-    <function name="EdgeFlagv" offset="42" static_dispatch="false">
-        <param name="flag" type="const GLboolean *" count="1"/>
-        <glx rop="22"/>
-    </function>
-
-    <function name="End" offset="43" static_dispatch="false">
-        <glx rop="23"/>
-    </function>
-
-    <function name="Indexd" offset="44" vectorequiv="Indexdv" static_dispatch="false">
-        <param name="c" type="GLdouble"/>
-    </function>
-
-    <function name="Indexdv" offset="45" static_dispatch="false">
-        <param name="c" type="const GLdouble *" count="1"/>
-        <glx rop="24"/>
-    </function>
-
-    <function name="Indexf" offset="46" vectorequiv="Indexfv" static_dispatch="false">
-        <param name="c" type="GLfloat"/>
-    </function>
-
-    <function name="Indexfv" offset="47" static_dispatch="false">
-        <param name="c" type="const GLfloat *" count="1"/>
-        <glx rop="25"/>
-    </function>
-
-    <function name="Indexi" offset="48" vectorequiv="Indexiv" static_dispatch="false">
-        <param name="c" type="GLint"/>
-    </function>
-
-    <function name="Indexiv" offset="49" static_dispatch="false">
-        <param name="c" type="const GLint *" count="1"/>
-        <glx rop="26"/>
-    </function>
-
-    <function name="Indexs" offset="50" vectorequiv="Indexsv" static_dispatch="false">
-        <param name="c" type="GLshort"/>
-    </function>
-
-    <function name="Indexsv" offset="51" static_dispatch="false">
-        <param name="c" type="const GLshort *" count="1"/>
-        <glx rop="27"/>
-    </function>
-
-    <function name="Normal3b" offset="52" vectorequiv="Normal3bv" static_dispatch="false">
-        <param name="nx" type="GLbyte"/>
-        <param name="ny" type="GLbyte"/>
-        <param name="nz" type="GLbyte"/>
-    </function>
-
-    <function name="Normal3bv" offset="53" static_dispatch="false">
-        <param name="v" type="const GLbyte *" count="3"/>
-        <glx rop="28"/>
-    </function>
-
-    <function name="Normal3d" offset="54" vectorequiv="Normal3dv" static_dispatch="false">
-        <param name="nx" type="GLdouble"/>
-        <param name="ny" type="GLdouble"/>
-        <param name="nz" type="GLdouble"/>
-    </function>
-
-    <function name="Normal3dv" offset="55" static_dispatch="false">
-        <param name="v" type="const GLdouble *" count="3"/>
-        <glx rop="29"/>
-    </function>
-
-    <!--function name="Normal3f" offset="56" vectorequiv="Normal3fv" static_dispatch="false">
-        <param name="nx" type="GLfloat"/>
-        <param name="ny" type="GLfloat"/>
-        <param name="nz" type="GLfloat"/>
-    </function-->
-
-    <function name="Normal3fv" offset="57" static_dispatch="false">
-        <param name="v" type="const GLfloat *" count="3"/>
-        <glx rop="30"/>
-    </function>
-
-    <function name="Normal3i" offset="58" vectorequiv="Normal3iv" static_dispatch="false">
-        <param name="nx" type="GLint"/>
-        <param name="ny" type="GLint"/>
-        <param name="nz" type="GLint"/>
-    </function>
-
-    <function name="Normal3iv" offset="59" static_dispatch="false">
-        <param name="v" type="const GLint *" count="3"/>
-        <glx rop="31"/>
-    </function>
-
-    <function name="Normal3s" offset="60" vectorequiv="Normal3sv" static_dispatch="false">
-        <param name="nx" type="GLshort"/>
-        <param name="ny" type="GLshort"/>
-        <param name="nz" type="GLshort"/>
-    </function>
-
-    <function name="Normal3sv" offset="61" static_dispatch="false">
-        <param name="v" type="const GLshort *" count="3"/>
-        <glx rop="32"/>
-    </function>
-
-    <function name="RasterPos2d" offset="62" vectorequiv="RasterPos2dv" static_dispatch="false">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-    </function>
-
-    <function name="RasterPos2dv" offset="63" static_dispatch="false">
-        <param name="v" type="const GLdouble *" count="2"/>
-        <glx rop="33"/>
-    </function>
-
-    <function name="RasterPos2f" offset="64" vectorequiv="RasterPos2fv" static_dispatch="false">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-    </function>
-
-    <function name="RasterPos2fv" offset="65" static_dispatch="false">
-        <param name="v" type="const GLfloat *" count="2"/>
-        <glx rop="34"/>
-    </function>
-
-    <function name="RasterPos2i" offset="66" vectorequiv="RasterPos2iv" static_dispatch="false">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-    </function>
-
-    <function name="RasterPos2iv" offset="67" static_dispatch="false">
-        <param name="v" type="const GLint *" count="2"/>
-        <glx rop="35"/>
-    </function>
-
-    <function name="RasterPos2s" offset="68" vectorequiv="RasterPos2sv" static_dispatch="false">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-    </function>
-
-    <function name="RasterPos2sv" offset="69" static_dispatch="false">
-        <param name="v" type="const GLshort *" count="2"/>
-        <glx rop="36"/>
-    </function>
-
-    <function name="RasterPos3d" offset="70" vectorequiv="RasterPos3dv" static_dispatch="false">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-    </function>
-
-    <function name="RasterPos3dv" offset="71" static_dispatch="false">
-        <param name="v" type="const GLdouble *" count="3"/>
-        <glx rop="37"/>
-    </function>
-
-    <function name="RasterPos3f" offset="72" vectorequiv="RasterPos3fv" static_dispatch="false">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="RasterPos3fv" offset="73" static_dispatch="false">
-        <param name="v" type="const GLfloat *" count="3"/>
-        <glx rop="38"/>
-    </function>
-
-    <function name="RasterPos3i" offset="74" vectorequiv="RasterPos3iv" static_dispatch="false">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="z" type="GLint"/>
-    </function>
-
-    <function name="RasterPos3iv" offset="75" static_dispatch="false">
-        <param name="v" type="const GLint *" count="3"/>
-        <glx rop="39"/>
-    </function>
-
-    <function name="RasterPos3s" offset="76" vectorequiv="RasterPos3sv" static_dispatch="false">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-    </function>
-
-    <function name="RasterPos3sv" offset="77" static_dispatch="false">
-        <param name="v" type="const GLshort *" count="3"/>
-        <glx rop="40"/>
-    </function>
-
-    <function name="RasterPos4d" offset="78" vectorequiv="RasterPos4dv" static_dispatch="false">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <param name="w" type="GLdouble"/>
-    </function>
-
-    <function name="RasterPos4dv" offset="79" static_dispatch="false">
-        <param name="v" type="const GLdouble *" count="4"/>
-        <glx rop="41"/>
-    </function>
-
-    <function name="RasterPos4f" offset="80" vectorequiv="RasterPos4fv" static_dispatch="false">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <param name="w" type="GLfloat"/>
-    </function>
-
-    <function name="RasterPos4fv" offset="81" static_dispatch="false">
-        <param name="v" type="const GLfloat *" count="4"/>
-        <glx rop="42"/>
-    </function>
-
-    <function name="RasterPos4i" offset="82" vectorequiv="RasterPos4iv" static_dispatch="false">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="z" type="GLint"/>
-        <param name="w" type="GLint"/>
-    </function>
-
-    <function name="RasterPos4iv" offset="83" static_dispatch="false">
-        <param name="v" type="const GLint *" count="4"/>
-        <glx rop="43"/>
-    </function>
-
-    <function name="RasterPos4s" offset="84" vectorequiv="RasterPos4sv" static_dispatch="false">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-        <param name="w" type="GLshort"/>
-    </function>
-
-    <function name="RasterPos4sv" offset="85" static_dispatch="false">
-        <param name="v" type="const GLshort *" count="4"/>
-        <glx rop="44"/>
-    </function>
-
-    <function name="Rectd" offset="86" vectorequiv="Rectdv" static_dispatch="false">
-        <param name="x1" type="GLdouble"/>
-        <param name="y1" type="GLdouble"/>
-        <param name="x2" type="GLdouble"/>
-        <param name="y2" type="GLdouble"/>
-    </function>
-
-    <function name="Rectdv" offset="87" static_dispatch="false">
-        <param name="v1" type="const GLdouble *" count="2"/>
-        <param name="v2" type="const GLdouble *" count="2"/>
-        <glx rop="45"/>
-    </function>
-
-    <function name="Rectf" offset="88" vectorequiv="Rectfv" static_dispatch="false">
-        <param name="x1" type="GLfloat"/>
-        <param name="y1" type="GLfloat"/>
-        <param name="x2" type="GLfloat"/>
-        <param name="y2" type="GLfloat"/>
-    </function>
-
-    <function name="Rectfv" offset="89" static_dispatch="false">
-        <param name="v1" type="const GLfloat *" count="2"/>
-        <param name="v2" type="const GLfloat *" count="2"/>
-        <glx rop="46"/>
-    </function>
-
-    <function name="Recti" offset="90" vectorequiv="Rectiv" static_dispatch="false">
-        <param name="x1" type="GLint"/>
-        <param name="y1" type="GLint"/>
-        <param name="x2" type="GLint"/>
-        <param name="y2" type="GLint"/>
-    </function>
-
-    <function name="Rectiv" offset="91" static_dispatch="false">
-        <param name="v1" type="const GLint *" count="2"/>
-        <param name="v2" type="const GLint *" count="2"/>
-        <glx rop="47"/>
-    </function>
-
-    <function name="Rects" offset="92" vectorequiv="Rectsv" static_dispatch="false">
-        <param name="x1" type="GLshort"/>
-        <param name="y1" type="GLshort"/>
-        <param name="x2" type="GLshort"/>
-        <param name="y2" type="GLshort"/>
-    </function>
-
-    <function name="Rectsv" offset="93" static_dispatch="false">
-        <param name="v1" type="const GLshort *" count="2"/>
-        <param name="v2" type="const GLshort *" count="2"/>
-        <glx rop="48"/>
-    </function>
-
-    <function name="TexCoord1d" offset="94" vectorequiv="TexCoord1dv" static_dispatch="false">
-        <param name="s" type="GLdouble"/>
-    </function>
-
-    <function name="TexCoord1dv" offset="95" static_dispatch="false">
-        <param name="v" type="const GLdouble *" count="1"/>
-        <glx rop="49"/>
-    </function>
-
-    <function name="TexCoord1f" offset="96" vectorequiv="TexCoord1fv" static_dispatch="false">
-        <param name="s" type="GLfloat"/>
-    </function>
-
-    <function name="TexCoord1fv" offset="97" static_dispatch="false">
-        <param name="v" type="const GLfloat *" count="1"/>
-        <glx rop="50"/>
-    </function>
-
-    <function name="TexCoord1i" offset="98" vectorequiv="TexCoord1iv" static_dispatch="false">
-        <param name="s" type="GLint"/>
-    </function>
-
-    <function name="TexCoord1iv" offset="99" static_dispatch="false">
-        <param name="v" type="const GLint *" count="1"/>
-        <glx rop="51"/>
-    </function>
-
-    <function name="TexCoord1s" offset="100" vectorequiv="TexCoord1sv" static_dispatch="false">
-        <param name="s" type="GLshort"/>
-    </function>
-
-    <function name="TexCoord1sv" offset="101" static_dispatch="false">
-        <param name="v" type="const GLshort *" count="1"/>
-        <glx rop="52"/>
-    </function>
-
-    <function name="TexCoord2d" offset="102" vectorequiv="TexCoord2dv" static_dispatch="false">
-        <param name="s" type="GLdouble"/>
-        <param name="t" type="GLdouble"/>
-    </function>
-
-    <function name="TexCoord2dv" offset="103" static_dispatch="false">
-        <param name="v" type="const GLdouble *" count="2"/>
-        <glx rop="53"/>
-    </function>
-
-    <function name="TexCoord2f" offset="104" vectorequiv="TexCoord2fv" static_dispatch="false">
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-    </function>
-
-    <function name="TexCoord2fv" offset="105" static_dispatch="false">
-        <param name="v" type="const GLfloat *" count="2"/>
-        <glx rop="54"/>
-    </function>
-
-    <function name="TexCoord2i" offset="106" vectorequiv="TexCoord2iv" static_dispatch="false">
-        <param name="s" type="GLint"/>
-        <param name="t" type="GLint"/>
-    </function>
-
-    <function name="TexCoord2iv" offset="107" static_dispatch="false">
-        <param name="v" type="const GLint *" count="2"/>
-        <glx rop="55"/>
-    </function>
-
-    <function name="TexCoord2s" offset="108" vectorequiv="TexCoord2sv" static_dispatch="false">
-        <param name="s" type="GLshort"/>
-        <param name="t" type="GLshort"/>
-    </function>
-
-    <function name="TexCoord2sv" offset="109" static_dispatch="false">
-        <param name="v" type="const GLshort *" count="2"/>
-        <glx rop="56"/>
-    </function>
-
-    <function name="TexCoord3d" offset="110" vectorequiv="TexCoord3dv" static_dispatch="false">
-        <param name="s" type="GLdouble"/>
-        <param name="t" type="GLdouble"/>
-        <param name="r" type="GLdouble"/>
-    </function>
-
-    <function name="TexCoord3dv" offset="111" static_dispatch="false">
-        <param name="v" type="const GLdouble *" count="3"/>
-        <glx rop="57"/>
-    </function>
-
-    <function name="TexCoord3f" offset="112" vectorequiv="TexCoord3fv" static_dispatch="false">
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="r" type="GLfloat"/>
-    </function>
-
-    <function name="TexCoord3fv" offset="113" static_dispatch="false">
-        <param name="v" type="const GLfloat *" count="3"/>
-        <glx rop="58"/>
-    </function>
-
-    <function name="TexCoord3i" offset="114" vectorequiv="TexCoord3iv" static_dispatch="false">
-        <param name="s" type="GLint"/>
-        <param name="t" type="GLint"/>
-        <param name="r" type="GLint"/>
-    </function>
-
-    <function name="TexCoord3iv" offset="115" static_dispatch="false">
-        <param name="v" type="const GLint *" count="3"/>
-        <glx rop="59"/>
-    </function>
-
-    <function name="TexCoord3s" offset="116" vectorequiv="TexCoord3sv" static_dispatch="false">
-        <param name="s" type="GLshort"/>
-        <param name="t" type="GLshort"/>
-        <param name="r" type="GLshort"/>
-    </function>
-
-    <function name="TexCoord3sv" offset="117" static_dispatch="false">
-        <param name="v" type="const GLshort *" count="3"/>
-        <glx rop="60"/>
-    </function>
-
-    <function name="TexCoord4d" offset="118" vectorequiv="TexCoord4dv" static_dispatch="false">
-        <param name="s" type="GLdouble"/>
-        <param name="t" type="GLdouble"/>
-        <param name="r" type="GLdouble"/>
-        <param name="q" type="GLdouble"/>
-    </function>
-
-    <function name="TexCoord4dv" offset="119" static_dispatch="false">
-        <param name="v" type="const GLdouble *" count="4"/>
-        <glx rop="61"/>
-    </function>
-
-    <function name="TexCoord4f" offset="120" vectorequiv="TexCoord4fv" static_dispatch="false">
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="r" type="GLfloat"/>
-        <param name="q" type="GLfloat"/>
-    </function>
-
-    <function name="TexCoord4fv" offset="121" static_dispatch="false">
-        <param name="v" type="const GLfloat *" count="4"/>
-        <glx rop="62"/>
-    </function>
-
-    <function name="TexCoord4i" offset="122" vectorequiv="TexCoord4iv" static_dispatch="false">
-        <param name="s" type="GLint"/>
-        <param name="t" type="GLint"/>
-        <param name="r" type="GLint"/>
-        <param name="q" type="GLint"/>
-    </function>
-
-    <function name="TexCoord4iv" offset="123" static_dispatch="false">
-        <param name="v" type="const GLint *" count="4"/>
-        <glx rop="63"/>
-    </function>
-
-    <function name="TexCoord4s" offset="124" vectorequiv="TexCoord4sv" static_dispatch="false">
-        <param name="s" type="GLshort"/>
-        <param name="t" type="GLshort"/>
-        <param name="r" type="GLshort"/>
-        <param name="q" type="GLshort"/>
-    </function>
-
-    <function name="TexCoord4sv" offset="125" static_dispatch="false">
-        <param name="v" type="const GLshort *" count="4"/>
-        <glx rop="64"/>
-    </function>
-
-    <function name="Vertex2d" offset="126" vectorequiv="Vertex2dv" static_dispatch="false">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-    </function>
-
-    <function name="Vertex2dv" offset="127" static_dispatch="false">
-        <param name="v" type="const GLdouble *" count="2"/>
-        <glx rop="65"/>
-    </function>
-
-    <function name="Vertex2f" offset="128" vectorequiv="Vertex2fv" static_dispatch="false">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-    </function>
-
-    <function name="Vertex2fv" offset="129" static_dispatch="false">
-        <param name="v" type="const GLfloat *" count="2"/>
-        <glx rop="66"/>
-    </function>
-
-    <function name="Vertex2i" offset="130" vectorequiv="Vertex2iv" static_dispatch="false">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-    </function>
-
-    <function name="Vertex2iv" offset="131" static_dispatch="false">
-        <param name="v" type="const GLint *" count="2"/>
-        <glx rop="67"/>
-    </function>
-
-    <function name="Vertex2s" offset="132" vectorequiv="Vertex2sv" static_dispatch="false">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-    </function>
-
-    <function name="Vertex2sv" offset="133" static_dispatch="false">
-        <param name="v" type="const GLshort *" count="2"/>
-        <glx rop="68"/>
-    </function>
-
-    <function name="Vertex3d" offset="134" vectorequiv="Vertex3dv" static_dispatch="false">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-    </function>
-
-    <function name="Vertex3dv" offset="135" static_dispatch="false">
-        <param name="v" type="const GLdouble *" count="3"/>
-        <glx rop="69"/>
-    </function>
-
-    <function name="Vertex3f" offset="136" vectorequiv="Vertex3fv" static_dispatch="false">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="Vertex3fv" offset="137" static_dispatch="false">
-        <param name="v" type="const GLfloat *" count="3"/>
-        <glx rop="70"/>
-    </function>
-
-    <function name="Vertex3i" offset="138" vectorequiv="Vertex3iv" static_dispatch="false">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="z" type="GLint"/>
-    </function>
-
-    <function name="Vertex3iv" offset="139" static_dispatch="false">
-        <param name="v" type="const GLint *" count="3"/>
-        <glx rop="71"/>
-    </function>
-
-    <function name="Vertex3s" offset="140" vectorequiv="Vertex3sv" static_dispatch="false">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-    </function>
-
-    <function name="Vertex3sv" offset="141" static_dispatch="false">
-        <param name="v" type="const GLshort *" count="3"/>
-        <glx rop="72"/>
-    </function>
-
-    <function name="Vertex4d" offset="142" vectorequiv="Vertex4dv" static_dispatch="false">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <param name="w" type="GLdouble"/>
-    </function>
-
-    <function name="Vertex4dv" offset="143" static_dispatch="false">
-        <param name="v" type="const GLdouble *" count="4"/>
-        <glx rop="73"/>
-    </function>
-
-    <function name="Vertex4f" offset="144" vectorequiv="Vertex4fv" static_dispatch="false">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <param name="w" type="GLfloat"/>
-    </function>
-
-    <function name="Vertex4fv" offset="145" static_dispatch="false">
-        <param name="v" type="const GLfloat *" count="4"/>
-        <glx rop="74"/>
-    </function>
-
-    <function name="Vertex4i" offset="146" vectorequiv="Vertex4iv" static_dispatch="false">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="z" type="GLint"/>
-        <param name="w" type="GLint"/>
-    </function>
-
-    <function name="Vertex4iv" offset="147" static_dispatch="false">
-        <param name="v" type="const GLint *" count="4"/>
-        <glx rop="75"/>
-    </function>
-
-    <function name="Vertex4s" offset="148" vectorequiv="Vertex4sv" static_dispatch="false">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-        <param name="w" type="GLshort"/>
-    </function>
-
-    <function name="Vertex4sv" offset="149" static_dispatch="false">
-        <param name="v" type="const GLshort *" count="4"/>
-        <glx rop="76"/>
-    </function>
-
-    <function name="ClipPlane" offset="150" static_dispatch="false">
-        <param name="plane" type="GLenum"/>
-        <param name="equation" type="const GLdouble *" count="4"/>
-        <glx rop="77"/>
-    </function>
-
-    <function name="ColorMaterial" offset="151" static_dispatch="false">
-        <param name="face" type="GLenum"/>
-        <param name="mode" type="GLenum"/>
-        <glx rop="78"/>
-    </function>
-
-    <!--function name="CullFace" offset="152" static_dispatch="false">
-        <param name="mode" type="GLenum"/>
-        <glx rop="79"/>
-    </function>
-
-    <function name="Fogf" offset="153" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="80"/>
-    </function>
-
-    <function name="Fogfv" offset="154" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="81"/>
-    </function-->
-
-    <function name="Fogi" offset="155" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="82"/>
-    </function>
-
-    <function name="Fogiv" offset="156" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="83"/>
-    </function>
-
-    <!--function name="FrontFace" offset="157" static_dispatch="false">
-        <param name="mode" type="GLenum"/>
-        <glx rop="84"/>
-    </function>
-
-    <function name="Hint" offset="158" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="mode" type="GLenum"/>
-        <glx rop="85"/>
-    </function>
-
-    <function name="Lightf" offset="159" static_dispatch="false">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="86"/>
-    </function>
-
-    <function name="Lightfv" offset="160" static_dispatch="false">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="87"/>
-    </function-->
-
-    <function name="Lighti" offset="161" static_dispatch="false">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="88"/>
-    </function>
-
-    <function name="Lightiv" offset="162" static_dispatch="false">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="89"/>
-    </function>
-
-    <!--function name="LightModelf" offset="163" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="90"/>
-    </function>
-
-    <function name="LightModelfv" offset="164" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="91"/>
-    </function-->
-
-    <function name="LightModeli" offset="165" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="92"/>
-    </function>
-
-    <function name="LightModeliv" offset="166" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="93"/>
-    </function>
-
-    <function name="LineStipple" offset="167" static_dispatch="false">
-        <param name="factor" type="GLint"/>
-        <param name="pattern" type="GLushort"/>
-        <glx rop="94"/>
-    </function>
-
-    <!--function name="LineWidth" offset="168" static_dispatch="false">
-        <param name="width" type="GLfloat"/>
-        <glx rop="95"/>
-    </function>
-
-    <function name="Materialf" offset="169" static_dispatch="false">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="96"/>
-    </function>
-
-    <function name="Materialfv" offset="170" static_dispatch="false">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="97"/>
-    </function-->
-
-    <function name="Materiali" offset="171" static_dispatch="false">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="98"/>
-    </function>
-
-    <function name="Materialiv" offset="172" static_dispatch="false">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="99"/>
-    </function>
-
-    <!--function name="PointSize" offset="173" static_dispatch="false">
-        <param name="size" type="GLfloat"/>
-        <glx rop="100"/>
-    </function-->
-
-    <function name="PolygonMode" offset="174" static_dispatch="false">
-        <param name="face" type="GLenum"/>
-        <param name="mode" type="GLenum"/>
-        <glx rop="101"/>
-    </function>
-
-    <function name="PolygonStipple" offset="175" static_dispatch="false">
-        <param name="mask" type="const GLubyte *" img_width="32" img_height="32" img_format="GL_COLOR_INDEX" img_type="GL_BITMAP" img_target="0" img_pad_dimensions="false"/>
-        <glx rop="102"/>
-    </function>
-
-    <!--function name="Scissor" offset="176" static_dispatch="false">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <glx rop="103"/>
-    </function>
-
-    <function name="ShadeModel" offset="177" static_dispatch="false">
-        <param name="mode" type="GLenum"/>
-        <glx rop="104"/>
-    </function>
-
-    <function name="TexParameterf" offset="178" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="105"/>
-    </function>
-
-    <function name="TexParameterfv" offset="179" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="106"/>
-    </function>
-
-    <function name="TexParameteri" offset="180" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="107"/>
-    </function>
-
-    <function name="TexParameteriv" offset="181" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="108"/>
-    </function-->
-
-    <function name="TexImage1D" offset="182" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_format="format" img_type="type" img_target="target" img_send_null="true" img_pad_dimensions="true"/>
-        <glx rop="109" large="true"/>
-    </function>
-
-    <!--function name="TexImage2D" offset="183" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="target" img_send_null="true" img_pad_dimensions="true"/>
-        <glx rop="110" large="true"/>
-    </function>
-
-    <function name="TexEnvf" offset="184" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="111"/>
-    </function>
-
-    <function name="TexEnvfv" offset="185" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="112"/>
-    </function>
-
-    <function name="TexEnvi" offset="186" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="113"/>
-    </function>
-
-    <function name="TexEnviv" offset="187" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="114"/>
-    </function-->
-
-    <function name="TexGend" offset="188" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLdouble"/>
-        <glx rop="115"/>
-    </function>
-
-    <function name="TexGendv" offset="189" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLdouble *" variable_param="pname"/>
-        <glx rop="116"/>
-    </function>
-
-    <!--function name="TexGenf" offset="190" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="117"/>
-    </function>
-
-    <function name="TexGenfv" offset="191" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="118"/>
-    </function>
-
-    <function name="TexGeni" offset="192" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="119"/>
-    </function>
-
-    <function name="TexGeniv" offset="193" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="120"/>
-    </function-->
-
-    <function name="FeedbackBuffer" offset="194" static_dispatch="false">
-        <param name="size" type="GLsizei"/>
-        <param name="type" type="GLenum"/>
-        <param name="buffer" type="GLfloat *" output="true"/>
-        <glx sop="105" handcode="true"/>
-    </function>
-
-    <function name="SelectBuffer" offset="195" static_dispatch="false">
-        <param name="size" type="GLsizei"/>
-        <param name="buffer" type="GLuint *" output="true"/>
-        <glx sop="106" handcode="true"/>
-    </function>
-
-    <function name="RenderMode" offset="196" static_dispatch="false">
-        <param name="mode" type="GLenum"/>
-        <return type="GLint"/>
-        <glx sop="107" handcode="true"/>
-    </function>
-
-    <function name="InitNames" offset="197" static_dispatch="false">
-        <glx rop="121"/>
-    </function>
-
-    <function name="LoadName" offset="198" static_dispatch="false">
-        <param name="name" type="GLuint"/>
-        <glx rop="122"/>
-    </function>
-
-    <function name="PassThrough" offset="199" static_dispatch="false">
-        <param name="token" type="GLfloat"/>
-        <glx rop="123"/>
-    </function>
-
-    <function name="PopName" offset="200" static_dispatch="false">
-        <glx rop="124"/>
-    </function>
-
-    <function name="PushName" offset="201" static_dispatch="false">
-        <param name="name" type="GLuint"/>
-        <glx rop="125"/>
-    </function>
-
-    <function name="DrawBuffer" offset="202" static_dispatch="false">
-        <param name="mode" type="GLenum"/>
-        <glx rop="126"/>
-    </function>
-
-    <!--function name="Clear" offset="203" static_dispatch="false">
-        <param name="mask" type="GLbitfield"/>
-        <glx rop="127"/>
-    </function-->
-
-    <function name="ClearAccum" offset="204" static_dispatch="false">
-        <param name="red" type="GLfloat"/>
-        <param name="green" type="GLfloat"/>
-        <param name="blue" type="GLfloat"/>
-        <param name="alpha" type="GLfloat"/>
-        <glx rop="128"/>
-    </function>
-
-    <function name="ClearIndex" offset="205" static_dispatch="false">
-        <param name="c" type="GLfloat"/>
-        <glx rop="129"/>
-    </function>
-
-    <!--function name="ClearColor" offset="206" static_dispatch="false">
-        <param name="red" type="GLclampf"/>
-        <param name="green" type="GLclampf"/>
-        <param name="blue" type="GLclampf"/>
-        <param name="alpha" type="GLclampf"/>
-        <glx rop="130"/>
-    </function>
-
-    <function name="ClearStencil" offset="207" static_dispatch="false">
-        <param name="s" type="GLint"/>
-        <glx rop="131"/>
-    </function-->
-
-    <function name="ClearDepth" offset="208" static_dispatch="false">
-        <param name="depth" type="GLclampd"/>
-        <glx rop="132"/>
-    </function>
-
-    <!--function name="StencilMask" offset="209" static_dispatch="false">
-        <param name="mask" type="GLuint"/>
-        <glx rop="133"/>
-    </function>
-
-    <function name="ColorMask" offset="210" static_dispatch="false">
-        <param name="red" type="GLboolean"/>
-        <param name="green" type="GLboolean"/>
-        <param name="blue" type="GLboolean"/>
-        <param name="alpha" type="GLboolean"/>
-        <glx rop="134"/>
-    </function>
-
-    <function name="DepthMask" offset="211" static_dispatch="false">
-        <param name="flag" type="GLboolean"/>
-        <glx rop="135"/>
-    </function-->
-
-    <function name="IndexMask" offset="212" static_dispatch="false">
-        <param name="mask" type="GLuint"/>
-        <glx rop="136"/>
-    </function>
-
-    <function name="Accum" offset="213" static_dispatch="false">
-        <param name="op" type="GLenum"/>
-        <param name="value" type="GLfloat"/>
-        <glx rop="137"/>
-    </function>
-
-    <!--function name="Disable" offset="214" static_dispatch="false">
-        <param name="cap" type="GLenum"/>
-        <glx rop="138" handcode="client"/>
-    </function>
-
-    <function name="Enable" offset="215" static_dispatch="false">
-        <param name="cap" type="GLenum"/>
-        <glx rop="139" handcode="client"/>
-    </function>
-
-    <function name="Finish" offset="216" static_dispatch="false">
-        <glx sop="108" handcode="true"/>
-    </function>
-
-    <function name="Flush" offset="217" static_dispatch="false">
-        <glx sop="142" handcode="true"/>
-    </function-->
-
-    <function name="PopAttrib" offset="218" static_dispatch="false">
-        <glx rop="141"/>
-    </function>
-
-    <function name="PushAttrib" offset="219" static_dispatch="false">
-        <param name="mask" type="GLbitfield"/>
-        <glx rop="142"/>
-    </function>
-
-    <function name="Map1d" offset="220" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="u1" type="GLdouble"/>
-        <param name="u2" type="GLdouble"/>
-        <param name="stride" type="GLint" client_only="true"/>
-        <param name="order" type="GLint"/>
-        <param name="points" type="const GLdouble *" variable_param="order"/>
-        <glx rop="143" handcode="true"/>
-    </function>
-
-    <function name="Map1f" offset="221" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="u1" type="GLfloat"/>
-        <param name="u2" type="GLfloat"/>
-        <param name="stride" type="GLint" client_only="true"/>
-        <param name="order" type="GLint"/>
-        <param name="points" type="const GLfloat *" variable_param="order"/>
-        <glx rop="144" handcode="true"/>
-    </function>
-
-    <function name="Map2d" offset="222" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="u1" type="GLdouble"/>
-        <param name="u2" type="GLdouble"/>
-        <param name="ustride" type="GLint" client_only="true"/>
-        <param name="uorder" type="GLint"/>
-        <param name="v1" type="GLdouble"/>
-        <param name="v2" type="GLdouble"/>
-        <param name="vstride" type="GLint" client_only="true"/>
-        <param name="vorder" type="GLint"/>
-        <param name="points" type="const GLdouble *" variable_param="uorder"/>
-        <glx rop="145" handcode="true"/>
-    </function>
-
-    <function name="Map2f" offset="223" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="u1" type="GLfloat"/>
-        <param name="u2" type="GLfloat"/>
-        <param name="ustride" type="GLint" client_only="true"/>
-        <param name="uorder" type="GLint"/>
-        <param name="v1" type="GLfloat"/>
-        <param name="v2" type="GLfloat"/>
-        <param name="vstride" type="GLint" client_only="true"/>
-        <param name="vorder" type="GLint"/>
-        <param name="points" type="const GLfloat *" variable_param="uorder"/>
-        <glx rop="146" handcode="true"/>
-    </function>
-
-    <function name="MapGrid1d" offset="224" static_dispatch="false">
-        <param name="un" type="GLint"/>
-        <param name="u1" type="GLdouble"/>
-        <param name="u2" type="GLdouble"/>
-        <glx rop="147"/>
-    </function>
-
-    <function name="MapGrid1f" offset="225" static_dispatch="false">
-        <param name="un" type="GLint"/>
-        <param name="u1" type="GLfloat"/>
-        <param name="u2" type="GLfloat"/>
-        <glx rop="148"/>
-    </function>
-
-    <function name="MapGrid2d" offset="226" static_dispatch="false">
-        <param name="un" type="GLint"/>
-        <param name="u1" type="GLdouble"/>
-        <param name="u2" type="GLdouble"/>
-        <param name="vn" type="GLint"/>
-        <param name="v1" type="GLdouble"/>
-        <param name="v2" type="GLdouble"/>
-        <glx rop="149"/>
-    </function>
-
-    <function name="MapGrid2f" offset="227" static_dispatch="false">
-        <param name="un" type="GLint"/>
-        <param name="u1" type="GLfloat"/>
-        <param name="u2" type="GLfloat"/>
-        <param name="vn" type="GLint"/>
-        <param name="v1" type="GLfloat"/>
-        <param name="v2" type="GLfloat"/>
-        <glx rop="150"/>
-    </function>
-
-    <function name="EvalCoord1d" offset="228" vectorequiv="EvalCoord1dv" static_dispatch="false">
-        <param name="u" type="GLdouble"/>
-    </function>
-
-    <function name="EvalCoord1dv" offset="229" static_dispatch="false">
-        <param name="u" type="const GLdouble *" count="1"/>
-        <glx rop="151"/>
-    </function>
-
-    <function name="EvalCoord1f" offset="230" vectorequiv="EvalCoord1fv" static_dispatch="false">
-        <param name="u" type="GLfloat"/>
-    </function>
-
-    <function name="EvalCoord1fv" offset="231" static_dispatch="false">
-        <param name="u" type="const GLfloat *" count="1"/>
-        <glx rop="152"/>
-    </function>
-
-    <function name="EvalCoord2d" offset="232" vectorequiv="EvalCoord2dv" static_dispatch="false">
-        <param name="u" type="GLdouble"/>
-        <param name="v" type="GLdouble"/>
-    </function>
-
-    <function name="EvalCoord2dv" offset="233" static_dispatch="false">
-        <param name="u" type="const GLdouble *" count="2"/>
-        <glx rop="153"/>
-    </function>
-
-    <function name="EvalCoord2f" offset="234" vectorequiv="EvalCoord2fv" static_dispatch="false">
-        <param name="u" type="GLfloat"/>
-        <param name="v" type="GLfloat"/>
-    </function>
-
-    <function name="EvalCoord2fv" offset="235" static_dispatch="false">
-        <param name="u" type="const GLfloat *" count="2"/>
-        <glx rop="154"/>
-    </function>
-
-    <function name="EvalMesh1" offset="236" static_dispatch="false">
-        <param name="mode" type="GLenum"/>
-        <param name="i1" type="GLint"/>
-        <param name="i2" type="GLint"/>
-        <glx rop="155"/>
-    </function>
-
-    <function name="EvalPoint1" offset="237" static_dispatch="false">
-        <param name="i" type="GLint"/>
-        <glx rop="156"/>
-    </function>
-
-    <function name="EvalMesh2" offset="238" static_dispatch="false">
-        <param name="mode" type="GLenum"/>
-        <param name="i1" type="GLint"/>
-        <param name="i2" type="GLint"/>
-        <param name="j1" type="GLint"/>
-        <param name="j2" type="GLint"/>
-        <glx rop="157"/>
-    </function>
-
-    <function name="EvalPoint2" offset="239" static_dispatch="false">
-        <param name="i" type="GLint"/>
-        <param name="j" type="GLint"/>
-        <glx rop="158"/>
-    </function>
-
-    <!--function name="AlphaFunc" offset="240" static_dispatch="false">
-        <param name="func" type="GLenum"/>
-        <param name="ref" type="GLclampf"/>
-        <glx rop="159"/>
-    </function>
-
-    <function name="BlendFunc" offset="241" static_dispatch="false">
-        <param name="sfactor" type="GLenum"/>
-        <param name="dfactor" type="GLenum"/>
-        <glx rop="160"/>
-    </function>
-
-    <function name="LogicOp" offset="242" static_dispatch="false">
-        <param name="opcode" type="GLenum"/>
-        <glx rop="161"/>
-    </function>
-
-    <function name="StencilFunc" offset="243" static_dispatch="false">
-        <param name="func" type="GLenum"/>
-        <param name="ref" type="GLint"/>
-        <param name="mask" type="GLuint"/>
-        <glx rop="162"/>
-    </function>
-
-    <function name="StencilOp" offset="244" static_dispatch="false">
-        <param name="fail" type="GLenum"/>
-        <param name="zfail" type="GLenum"/>
-        <param name="zpass" type="GLenum"/>
-        <glx rop="163"/>
-    </function>
-
-    <function name="DepthFunc" offset="245" static_dispatch="false">
-        <param name="func" type="GLenum"/>
-        <glx rop="164"/>
-    </function-->
-
-    <function name="PixelZoom" offset="246" static_dispatch="false">
-        <param name="xfactor" type="GLfloat"/>
-        <param name="yfactor" type="GLfloat"/>
-        <glx rop="165"/>
-    </function>
-
-    <function name="PixelTransferf" offset="247" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="166"/>
-    </function>
-
-    <function name="PixelTransferi" offset="248" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="167"/>
-    </function>
-
-    <function name="PixelStoref" offset="249" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx sop="109" handcode="client"/>
-    </function>
-
-    <!--function name="PixelStorei" offset="250" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx sop="110" handcode="client"/>
-    </function-->
-
-    <function name="PixelMapfv" offset="251" static_dispatch="false">
-        <param name="map" type="GLenum"/>
-        <param name="mapsize" type="GLsizei" counter="true"/>
-        <param name="values" type="const GLfloat *" count="mapsize"/>
-        <glx rop="168" large="true"/>
-    </function>
-
-    <function name="PixelMapuiv" offset="252" static_dispatch="false">
-        <param name="map" type="GLenum"/>
-        <param name="mapsize" type="GLsizei" counter="true"/>
-        <param name="values" type="const GLuint *" count="mapsize"/>
-        <glx rop="169" large="true"/>
-    </function>
-
-    <function name="PixelMapusv" offset="253" static_dispatch="false">
-        <param name="map" type="GLenum"/>
-        <param name="mapsize" type="GLsizei" counter="true"/>
-        <param name="values" type="const GLushort *" count="mapsize"/>
-        <glx rop="170" large="true"/>
-    </function>
-
-    <function name="ReadBuffer" offset="254" static_dispatch="false">
-        <param name="mode" type="GLenum"/>
-        <glx rop="171"/>
-    </function>
-
-    <function name="CopyPixels" offset="255" static_dispatch="false">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="type" type="GLenum"/>
-        <glx rop="172"/>
-    </function>
-
-    <!--function name="ReadPixels" offset="256" static_dispatch="false">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="GLvoid *" output="true"  img_width="width" img_height="height" img_format="format" img_type="type" img_target="0"/>
-        <glx sop="111"/>
-    </function-->
-
-    <function name="DrawPixels" offset="257" static_dispatch="false">
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="0" img_pad_dimensions="false"/>
-        <glx rop="173" large="true"/>
-    </function>
-
-    <!--function name="GetBooleanv" offset="258" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLboolean *" output="true" variable_param="pname"/>
-        <glx sop="112" handcode="client"/>
-    </function-->
-
-    <function name="GetClipPlane" offset="259" static_dispatch="false">
-        <param name="plane" type="GLenum"/>
-        <param name="equation" type="GLdouble *" output="true" count="4"/>
-        <glx sop="113" always_array="true"/>
-    </function>
-
-    <function name="GetDoublev" offset="260" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
-        <glx sop="114" handcode="client"/>
-    </function>
-
-    <!--function name="GetError" offset="261" static_dispatch="false">
-        <return type="GLenum"/>
-        <glx sop="115" handcode="client"/>
-    </function>
-
-    <function name="GetFloatv" offset="262" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="116" handcode="client"/>
-    </function>
-
-    <function name="GetIntegerv" offset="263" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="117" handcode="client"/>
-    </function>
-
-    <function name="GetLightfv" offset="264" static_dispatch="false">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="118"/>
-    </function-->
-
-    <function name="GetLightiv" offset="265" static_dispatch="false">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="119"/>
-    </function>
-
-    <function name="GetMapdv" offset="266" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="query" type="GLenum"/>
-        <param name="v" type="GLdouble *" output="true" variable_param="target query"/>
-        <glx sop="120"/>
-    </function>
-
-    <function name="GetMapfv" offset="267" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="query" type="GLenum"/>
-        <param name="v" type="GLfloat *" output="true" variable_param="target query"/>
-        <glx sop="121"/>
-    </function>
-
-    <function name="GetMapiv" offset="268" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="query" type="GLenum"/>
-        <param name="v" type="GLint *" output="true" variable_param="target query"/>
-        <glx sop="122"/>
-    </function>
-
-    <!--function name="GetMaterialfv" offset="269" static_dispatch="false">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="123"/>
-    </function-->
-
-    <function name="GetMaterialiv" offset="270" static_dispatch="false">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="124"/>
-    </function>
-
-    <function name="GetPixelMapfv" offset="271" static_dispatch="false">
-        <param name="map" type="GLenum"/>
-        <param name="values" type="GLfloat *" output="true" variable_param="map"/>
-        <glx sop="125"/>
-    </function>
-
-    <function name="GetPixelMapuiv" offset="272" static_dispatch="false">
-        <param name="map" type="GLenum"/>
-        <param name="values" type="GLuint *" output="true" variable_param="map"/>
-        <glx sop="126"/>
-    </function>
-
-    <function name="GetPixelMapusv" offset="273" static_dispatch="false">
-        <param name="map" type="GLenum"/>
-        <param name="values" type="GLushort *" output="true" variable_param="map"/>
-        <glx sop="127"/>
-    </function>
-
-    <function name="GetPolygonStipple" offset="274" static_dispatch="false">
-        <param name="mask" type="GLubyte *" output="true" img_width="32" img_height="32" img_format="GL_COLOR_INDEX" img_type="GL_BITMAP"/>
-        <glx sop="128"/>
-    </function>
-
-    <!--function name="GetString" offset="275" static_dispatch="false">
-        <param name="name" type="GLenum"/>
-        <return type="const GLubyte *"/>
-        <glx sop="129" handcode="true"/>
-    </function>
-
-    <function name="GetTexEnvfv" offset="276" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="130"/>
-    </function>
-
-    <function name="GetTexEnviv" offset="277" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="131"/>
-    </function-->
-
-    <function name="GetTexGendv" offset="278" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
-        <glx sop="132"/>
-    </function>
-
-    <!--function name="GetTexGenfv" offset="279" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="133"/>
-    </function>
-
-    <function name="GetTexGeniv" offset="280" static_dispatch="false">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="134"/>
-    </function-->
-
-    <function name="GetTexImage" offset="281" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="GLvoid *" output="true" img_width="width" img_height="height" img_depth="depth" img_format="format" img_type="type"/>
-        <glx sop="135" dimensions_in_reply="true"/>
-    </function>
-
-    <!--function name="GetTexParameterfv" offset="282" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="136"/>
-    </function>
-
-    <function name="GetTexParameteriv" offset="283" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="137"/>
-    </function-->
-
-    <function name="GetTexLevelParameterfv" offset="284" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="138"/>
-    </function>
-
-    <function name="GetTexLevelParameteriv" offset="285" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="139"/>
-    </function>
-
-    <!--function name="IsEnabled" offset="286" static_dispatch="false">
-        <param name="cap" type="GLenum"/>
-        <return type="GLboolean"/>
-        <glx sop="140" handcode="client"/>
-    </function-->
-
-    <function name="IsList" offset="287" static_dispatch="false">
-        <param name="list" type="GLuint"/>
-        <return type="GLboolean"/>
-        <glx sop="141"/>
-    </function>
-
-    <function name="DepthRange" offset="288" static_dispatch="false">
-        <param name="zNear" type="GLclampd"/>
-        <param name="zFar" type="GLclampd"/>
-        <glx rop="174"/>
-    </function>
-
-    <function name="Frustum" offset="289" static_dispatch="false">
-        <param name="left" type="GLdouble"/>
-        <param name="right" type="GLdouble"/>
-        <param name="bottom" type="GLdouble"/>
-        <param name="top" type="GLdouble"/>
-        <param name="zNear" type="GLdouble"/>
-        <param name="zFar" type="GLdouble"/>
-        <glx rop="175"/>
-    </function>
-
-    <!--function name="LoadIdentity" offset="290" static_dispatch="false">
-        <glx rop="176"/>
-    </function>
-
-    <function name="LoadMatrixf" offset="291" static_dispatch="false">
-        <param name="m" type="const GLfloat *" count="16"/>
-        <glx rop="177"/>
-    </function-->
-
-    <function name="LoadMatrixd" offset="292" static_dispatch="false">
-        <param name="m" type="const GLdouble *" count="16"/>
-        <glx rop="178"/>
-    </function>
-
-    <!--function name="MatrixMode" offset="293" static_dispatch="false">
-        <param name="mode" type="GLenum"/>
-        <glx rop="179"/>
-    </function>
-
-    <function name="MultMatrixf" offset="294" static_dispatch="false">
-        <param name="m" type="const GLfloat *" count="16"/>
-        <glx rop="180"/>
-    </function-->
-
-    <function name="MultMatrixd" offset="295" static_dispatch="false">
-        <param name="m" type="const GLdouble *" count="16"/>
-        <glx rop="181"/>
-    </function>
-
-    <function name="Ortho" offset="296" static_dispatch="false">
-        <param name="left" type="GLdouble"/>
-        <param name="right" type="GLdouble"/>
-        <param name="bottom" type="GLdouble"/>
-        <param name="top" type="GLdouble"/>
-        <param name="zNear" type="GLdouble"/>
-        <param name="zFar" type="GLdouble"/>
-        <glx rop="182"/>
-    </function>
-
-    <!--function name="PopMatrix" offset="297" static_dispatch="false">
-        <glx rop="183"/>
-    </function>
-
-    <function name="PushMatrix" offset="298" static_dispatch="false">
-        <glx rop="184"/>
-    </function-->
-
-    <function name="Rotated" offset="299" static_dispatch="false">
-        <param name="angle" type="GLdouble"/>
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <glx rop="185"/>
-    </function>
-
-    <!--function name="Rotatef" offset="300" static_dispatch="false">
-        <param name="angle" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <glx rop="186"/>
-    </function-->
-
-    <function name="Scaled" offset="301" static_dispatch="false">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <glx rop="187"/>
-    </function>
-
-    <!--function name="Scalef" offset="302" static_dispatch="false">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <glx rop="188"/>
-    </function-->
-
-    <function name="Translated" offset="303" static_dispatch="false">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <glx rop="189"/>
-    </function>
-
-    <!--function name="Translatef" offset="304" static_dispatch="false">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <glx rop="190"/>
-    </function>
-
-    <function name="Viewport" offset="305" static_dispatch="false">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <glx rop="191"/>
-    </function-->
-</category>
-
-<category name="1.1">
-    <function name="ArrayElement" offset="306" static_dispatch="false">
-        <param name="i" type="GLint"/>
-        <glx handcode="true"/>
-    </function>
-
-    <!--function name="ColorPointer" offset="308" static_dispatch="false">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="DisableClientState" offset="309" static_dispatch="false">
-        <param name="array" type="GLenum"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="DrawArrays" offset="310" static_dispatch="false">
-        <param name="mode" type="GLenum"/>
-        <param name="first" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <glx rop="193" handcode="true"/>
-    </function>
-
-    <function name="DrawElements" offset="311" static_dispatch="false">
-        <param name="mode" type="GLenum"/>
-        <param name="count" type="GLsizei"/>
-        <param name="type" type="GLenum"/>
-        <param name="indices" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function-->
-
-    <function name="EdgeFlagPointer" offset="312" static_dispatch="false">
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <!--function name="EnableClientState" offset="313" static_dispatch="false">
-        <param name="array" type="GLenum"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="GetPointerv" offset="329" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLvoid **" output="true"/>
-        <glx handcode="true"/>
-    </function-->
-
-    <function name="IndexPointer" offset="314" static_dispatch="false">
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="InterleavedArrays" offset="317" static_dispatch="false">
-        <param name="format" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <!--function name="NormalPointer" offset="318" static_dispatch="false">
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="TexCoordPointer" offset="320" static_dispatch="false">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="VertexPointer" offset="321" static_dispatch="false">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="PolygonOffset" offset="319" static_dispatch="false">
-        <param name="factor" type="GLfloat"/>
-        <param name="units" type="GLfloat"/>
-        <glx rop="192"/>
-    </function-->
-
-    <function name="CopyTexImage1D" offset="323" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <glx rop="4119"/>
-    </function>
-
-    <!--function name="CopyTexImage2D" offset="324" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <glx rop="4120"/>
-    </function-->
-
-    <function name="CopyTexSubImage1D" offset="325" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <glx rop="4121"/>
-    </function>
-
-    <!--function name="CopyTexSubImage2D" offset="326" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <glx rop="4122"/>
-    </function-->
-
-    <function name="TexSubImage1D" offset="332" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="UNUSED" type="GLuint" padding="true"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_xoff="xoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
-        <glx rop="4099" large="true"/>
-    </function>
-
-    <!--function name="TexSubImage2D" offset="333" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="UNUSED" type="GLuint" padding="true"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_xoff="xoffset" img_yoff="yoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
-        <glx rop="4100" large="true"/>
-    </function-->
-
-    <function name="AreTexturesResident" offset="322" static_dispatch="false">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="textures" type="const GLuint *" count="n"/>
-        <param name="residences" type="GLboolean *" output="true" count="n"/>
-        <return type="GLboolean"/>
-        <glx sop="143" handcode="client" always_array="true"/>
-    </function>
-
-    <!--function name="BindTexture" offset="307" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="texture" type="GLuint"/>
-        <glx rop="4117"/>
-    </function>
-
-    <function name="DeleteTextures" offset="327" static_dispatch="false">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="textures" type="const GLuint *" count="n"/>
-        <glx sop="144"/>
-    </function>
-
-    <function name="GenTextures" offset="328" static_dispatch="false">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="textures" type="GLuint *" output="true" count="n"/>
-        <glx sop="145" always_array="true"/>
-    </function>
-
-    <function name="IsTexture" offset="330" static_dispatch="false">
-        <param name="texture" type="GLuint"/>
-        <return type="GLboolean"/>
-        <glx sop="146"/>
-    </function-->
-
-    <function name="PrioritizeTextures" offset="331" static_dispatch="false">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="textures" type="const GLuint *" count="n"/>
-        <param name="priorities" type="const GLclampf *" count="n"/>
-        <glx rop="4118"/>
-    </function>
-
-    <function name="Indexub" offset="315" vectorequiv="Indexubv" static_dispatch="false">
-        <param name="c" type="GLubyte"/>
-    </function>
-
-    <function name="Indexubv" offset="316" static_dispatch="false">
-        <param name="c" type="const GLubyte *" count="1"/>
-        <glx rop="194"/>
-    </function>
-
-    <function name="PopClientAttrib" offset="334" static_dispatch="false">
-        <glx handcode="true"/>
-    </function>
-
-    <function name="PushClientAttrib" offset="335" static_dispatch="false">
-        <param name="mask" type="GLbitfield"/>
-        <glx handcode="true"/>
-    </function>
-</category>
-
-<category name="1.2">
-    <!--function name="BlendColor" offset="336" static_dispatch="false">
-        <param name="red" type="GLclampf"/>
-        <param name="green" type="GLclampf"/>
-        <param name="blue" type="GLclampf"/>
-        <param name="alpha" type="GLclampf"/>
-        <glx rop="4096"/>
-    </function>
-
-    <function name="BlendEquation" offset="337" static_dispatch="false">
-        <param name="mode" type="GLenum"/>
-        <glx rop="4097"/>
-    </function-->
-
-    <function name="DrawRangeElements" offset="338" static_dispatch="false">
-        <param name="mode" type="GLenum"/>
-        <param name="start" type="GLuint"/>
-        <param name="end" type="GLuint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="type" type="GLenum"/>
-        <param name="indices" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="ColorTable" offset="339" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="table" type="const GLvoid *" img_width="width" img_pad_dimensions="false" img_format="format" img_type="type" img_target="target"/>
-        <glx rop="2053" large="true"/>
-    </function>
-
-    <function name="ColorTableParameterfv" offset="340" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="2054"/>
-    </function>
-
-    <function name="ColorTableParameteriv" offset="341" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="2055"/>
-    </function>
-
-    <function name="CopyColorTable" offset="342" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <glx rop="2056"/>
-    </function>
-
-    <function name="GetColorTable" offset="343" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="table" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
-        <glx sop="147" dimensions_in_reply="true"/>
-    </function>
-
-    <function name="GetColorTableParameterfv" offset="344" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="148"/>
-    </function>
-
-    <function name="GetColorTableParameteriv" offset="345" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="149"/>
-    </function>
-
-    <function name="ColorSubTable" offset="346" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="start" type="GLsizei"/>
-        <param name="count" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="data" type="const GLvoid *" img_width="count" img_pad_dimensions="false" img_format="format" img_type="type" img_target="target"/>
-        <glx rop="195" large="true"/>
-    </function>
-
-    <function name="CopyColorSubTable" offset="347" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="start" type="GLsizei"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <glx rop="196"/>
-    </function>
-
-    <function name="ConvolutionFilter1D" offset="348" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="image" type="const GLvoid *" img_width="width" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
-        <glx rop="4101" large="true"/>
-    </function>
-
-    <function name="ConvolutionFilter2D" offset="349" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="image" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
-        <glx rop="4102" large="true"/>
-    </function>
-
-    <function name="ConvolutionParameterf" offset="350" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat"/>
-        <glx rop="4103"/>
-    </function>
-
-    <function name="ConvolutionParameterfv" offset="351" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="4104"/>
-    </function>
-
-    <function name="ConvolutionParameteri" offset="352" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint"/>
-        <glx rop="4105"/>
-    </function>
-
-    <function name="ConvolutionParameteriv" offset="353" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="4106"/>
-    </function>
-
-    <function name="CopyConvolutionFilter1D" offset="354" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <glx rop="4107"/>
-    </function>
-
-    <function name="CopyConvolutionFilter2D" offset="355" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <glx rop="4108"/>
-    </function>
-
-    <function name="GetConvolutionFilter" offset="356" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="image" type="GLvoid *" output="true" img_width="width" img_height="height" img_format="format" img_type="type"/>
-        <glx sop="150" dimensions_in_reply="true"/>
-    </function>
-
-    <function name="GetConvolutionParameterfv" offset="357" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="151"/>
-    </function>
-
-    <function name="GetConvolutionParameteriv" offset="358" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="152"/>
-    </function>
-
-    <function name="GetSeparableFilter" offset="359" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="row" type="GLvoid *" output="true"/>
-        <param name="column" type="GLvoid *" output="true"/>
-        <param name="span" type="GLvoid *" output="true"/>
-        <glx sop="153" handcode="true"/>
-    </function>
-
-    <function name="SeparableFilter2D" offset="360" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="row" type="const GLvoid *"/>
-        <param name="column" type="const GLvoid *"/>
-        <glx rop="4109" handcode="true"/>
-    </function>
-
-    <function name="GetHistogram" offset="361" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="reset" type="GLboolean"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="values" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
-        <glx sop="154" dimensions_in_reply="true" img_reset="reset"/>
-    </function>
-
-    <function name="GetHistogramParameterfv" offset="362" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="155"/>
-    </function>
-
-    <function name="GetHistogramParameteriv" offset="363" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="156"/>
-    </function>
-
-    <function name="GetMinmax" offset="364" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="reset" type="GLboolean"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="values" type="GLvoid *" output="true" img_width="2" img_format="format" img_type="type"/>
-        <glx sop="157" img_reset="reset"/>
-    </function>
-
-    <function name="GetMinmaxParameterfv" offset="365" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="158"/>
-    </function>
-
-    <function name="GetMinmaxParameteriv" offset="366" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="159"/>
-    </function>
-
-    <function name="Histogram" offset="367" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="sink" type="GLboolean"/>
-        <glx rop="4110"/>
-    </function>
-
-    <function name="Minmax" offset="368" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="sink" type="GLboolean"/>
-        <glx rop="4111"/>
-    </function>
-
-    <function name="ResetHistogram" offset="369" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <glx rop="4112"/>
-    </function>
-
-    <function name="ResetMinmax" offset="370" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <glx rop="4113"/>
-    </function>
-
-    <!--function name="TexImage3D" offset="371" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_format="format" img_type="type" img_target="target" img_null_flag="true" img_pad_dimensions="true"/>
-        <glx rop="4114" large="true"/>
-    </function>
-
-    <function name="TexSubImage3D" offset="372" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="UNUSED" type="GLuint" padding="true"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_xoff="xoffset" img_yoff="yoffset" img_zoff="zoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
-        <glx rop="4115" large="true"/>
-    </function>
-
-    <function name="CopyTexSubImage3D" offset="373" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <glx rop="4123"/>
-    </function-->
-</category>
-
-<category name="GL_ARB_multitexture" number="1">
-    <!--function name="ActiveTextureARB" offset="374" static_dispatch="false">
-        <param name="texture" type="GLenum"/>
-        <glx rop="197"/>
-    </function>
-
-    <function name="ClientActiveTextureARB" offset="375" static_dispatch="false">
-        <param name="texture" type="GLenum"/>
-        <glx handcode="true"/>
-    </function-->
-
-    <function name="MultiTexCoord1dARB" offset="376" vectorequiv="MultiTexCoord1dvARB" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLdouble"/>
-    </function>
-
-    <function name="MultiTexCoord1dvARB" offset="377" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLdouble *" count="1"/>
-        <glx rop="198"/>
-    </function>
-
-    <function name="MultiTexCoord1fARB" offset="378" vectorequiv="MultiTexCoord1fvARB" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLfloat"/>
-    </function>
-
-    <function name="MultiTexCoord1fvARB" offset="379" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLfloat *" count="1"/>
-        <glx rop="199"/>
-    </function>
-
-    <function name="MultiTexCoord1iARB" offset="380" vectorequiv="MultiTexCoord1ivARB" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLint"/>
-    </function>
-
-    <function name="MultiTexCoord1ivARB" offset="381" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLint *" count="1"/>
-        <glx rop="200"/>
-    </function>
-
-    <function name="MultiTexCoord1sARB" offset="382" vectorequiv="MultiTexCoord1svARB" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLshort"/>
-    </function>
-
-    <function name="MultiTexCoord1svARB" offset="383" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLshort *" count="1"/>
-        <glx rop="201"/>
-    </function>
-
-    <function name="MultiTexCoord2dARB" offset="384" vectorequiv="MultiTexCoord2dvARB" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLdouble"/>
-        <param name="t" type="GLdouble"/>
-    </function>
-
-    <function name="MultiTexCoord2dvARB" offset="385" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLdouble *" count="2"/>
-        <glx rop="202"/>
-    </function>
-
-    <function name="MultiTexCoord2fARB" offset="386" vectorequiv="MultiTexCoord2fvARB" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-    </function>
-
-    <function name="MultiTexCoord2fvARB" offset="387" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLfloat *" count="2"/>
-        <glx rop="203"/>
-    </function>
-
-    <function name="MultiTexCoord2iARB" offset="388" vectorequiv="MultiTexCoord2ivARB" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLint"/>
-        <param name="t" type="GLint"/>
-    </function>
-
-    <function name="MultiTexCoord2ivARB" offset="389" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLint *" count="2"/>
-        <glx rop="204"/>
-    </function>
-
-    <function name="MultiTexCoord2sARB" offset="390" vectorequiv="MultiTexCoord2svARB" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLshort"/>
-        <param name="t" type="GLshort"/>
-    </function>
-
-    <function name="MultiTexCoord2svARB" offset="391" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLshort *" count="2"/>
-        <glx rop="205"/>
-    </function>
-
-    <function name="MultiTexCoord3dARB" offset="392" vectorequiv="MultiTexCoord3dvARB" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLdouble"/>
-        <param name="t" type="GLdouble"/>
-        <param name="r" type="GLdouble"/>
-    </function>
-
-    <function name="MultiTexCoord3dvARB" offset="393" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLdouble *" count="3"/>
-        <glx rop="206"/>
-    </function>
-
-    <function name="MultiTexCoord3fARB" offset="394" vectorequiv="MultiTexCoord3fvARB" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="r" type="GLfloat"/>
-    </function>
-
-    <function name="MultiTexCoord3fvARB" offset="395" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLfloat *" count="3"/>
-        <glx rop="207"/>
-    </function>
-
-    <function name="MultiTexCoord3iARB" offset="396" vectorequiv="MultiTexCoord3ivARB" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLint"/>
-        <param name="t" type="GLint"/>
-        <param name="r" type="GLint"/>
-    </function>
-
-    <function name="MultiTexCoord3ivARB" offset="397" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLint *" count="3"/>
-        <glx rop="208"/>
-    </function>
-
-    <function name="MultiTexCoord3sARB" offset="398" vectorequiv="MultiTexCoord3svARB" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLshort"/>
-        <param name="t" type="GLshort"/>
-        <param name="r" type="GLshort"/>
-    </function>
-
-    <function name="MultiTexCoord3svARB" offset="399" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLshort *" count="3"/>
-        <glx rop="209"/>
-    </function>
-
-    <function name="MultiTexCoord4dARB" offset="400" vectorequiv="MultiTexCoord4dvARB" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLdouble"/>
-        <param name="t" type="GLdouble"/>
-        <param name="r" type="GLdouble"/>
-        <param name="q" type="GLdouble"/>
-    </function>
-
-    <function name="MultiTexCoord4dvARB" offset="401" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLdouble *" count="4"/>
-        <glx rop="210"/>
-    </function>
-
-    <!--function name="MultiTexCoord4fARB" offset="402" vectorequiv="MultiTexCoord4fvARB" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="r" type="GLfloat"/>
-        <param name="q" type="GLfloat"/>
-    </function-->
-
-    <function name="MultiTexCoord4fvARB" offset="403" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLfloat *" count="4"/>
-        <glx rop="211"/>
-    </function>
-
-    <function name="MultiTexCoord4iARB" offset="404" vectorequiv="MultiTexCoord4ivARB" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLint"/>
-        <param name="t" type="GLint"/>
-        <param name="r" type="GLint"/>
-        <param name="q" type="GLint"/>
-    </function>
-
-    <function name="MultiTexCoord4ivARB" offset="405" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLint *" count="4"/>
-        <glx rop="212"/>
-    </function>
-
-    <function name="MultiTexCoord4sARB" offset="406" vectorequiv="MultiTexCoord4svARB" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLshort"/>
-        <param name="t" type="GLshort"/>
-        <param name="r" type="GLshort"/>
-        <param name="q" type="GLshort"/>
-    </function>
-
-    <function name="MultiTexCoord4svARB" offset="407" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLshort *" count="4"/>
-        <glx rop="213"/>
-    </function>
-</category>
-
-<xi:include href="../../glapi/gen/APPLE_vertex_array_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-</OpenGLAPI>
diff --git a/src/mesa/es/glapi/es_EXT.xml b/src/mesa/es/glapi/es_EXT.xml
deleted file mode 100644 (file)
index 291a53b..0000000
+++ /dev/null
@@ -1,125 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "../../glapi/gen/gl_API.dtd">
-
-<!-- OpenGL ES extensions -->
-
-<OpenGLAPI>
-
-<category name="GL_OES_compressed_paletted_texture" number="6">
-    <enum name="PALETTE4_RGB8_OES"                        value="0x8B90"/>
-    <enum name="PALETTE4_RGBA8_OES"                       value="0x8B91"/>
-    <enum name="PALETTE4_R5_G6_B5_OES"                    value="0x8B92"/>
-    <enum name="PALETTE4_RGBA4_OES"                       value="0x8B93"/>
-    <enum name="PALETTE4_RGB5_A1_OES"                     value="0x8B94"/>
-    <enum name="PALETTE8_RGB8_OES"                        value="0x8B95"/>
-    <enum name="PALETTE8_RGBA8_OES"                       value="0x8B96"/>
-    <enum name="PALETTE8_R5_G6_B5_OES"                    value="0x8B97"/>
-    <enum name="PALETTE8_RGBA4_OES"                       value="0x8B98"/>
-    <enum name="PALETTE8_RGB5_A1_OES"                     value="0x8B99"/>
-</category>
-
-<!-- 23. GL_OES_EGL_image -->
-<xi:include href="../../glapi/gen/OES_EGL_image.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<category name="GL_OES_depth24" number="24">
-    <enum name="DEPTH_COMPONENT24_OES"                    value="0x81A6"/>
-</category>
-
-<category name="GL_OES_depth32" number="25">
-    <enum name="DEPTH_COMPONENT32_OES"                    value="0x81A7"/>
-</category>
-
-<category name="GL_OES_element_index_uint" number="26">
-    <!-- No new functions, types, enums. -->
-</category>
-
-<category name="GL_OES_fbo_render_mipmap" number="27">
-    <!-- No new functions, types, enums. -->
-</category>
-
-<category name="GL_OES_mapbuffer" number="29">
-    <enum name="WRITE_ONLY_OES"                           value="0x88B9"/>
-    <enum name="BUFFER_ACCESS_OES"                        value="0x88BB"/>
-    <enum name="BUFFER_MAPPED_OES"                        value="0x88BC"/>
-    <enum name="BUFFER_MAP_POINTER_OES"                   value="0x88BD"/>
-
-    <function name="GetBufferPointervOES" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLvoid **"/>
-    </function>
-
-    <function name="MapBufferOES" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="access" type="GLenum"/>
-       <return type="GLvoid *"/>
-    </function>
-
-    <function name="UnmapBufferOES" offset="assign">
-        <param name="target" type="GLenum"/>
-       <return type="GLboolean"/>
-    </function>
-</category>
-
-<category name="GL_OES_rgb8_rgba8" number="30">
-    <enum name="RGB8_OES"                                 value="0x8051"/>
-    <enum name="RGBA8_OES"                                value="0x8058"/>
-</category>
-
-<category name="GL_OES_stencil1" number="31">
-    <enum name="STENCIL_INDEX1_OES"                       value="0x8D46"/>
-</category>
-
-<category name="GL_OES_stencil4" number="32">
-    <enum name="STENCIL_INDEX4_OES"                       value="0x8D47"/>
-</category>
-
-<category name="GL_OES_stencil8" number="33">
-    <enum name="STENCIL_INDEX8_OES"                       value="0x8D48"/>
-</category>
-
-<category name="GL_EXT_texture_filter_anisotropic" number="41">
-    <enum name="TEXTURE_MAX_ANISOTROPY_EXT"               value="0x84FE"/>
-    <enum name="MAX_TEXTURE_MAX_ANISOTROPY_EXT"           value="0x84FF"/>
-</category>
-
-<category name="GL_EXT_texture_compression_dxt1" number="49">
-    <enum name="COMPRESSED_RGB_S3TC_DXT1_EXT"             value="0x83F0"/>
-    <enum name="COMPRESSED_RGBA_S3TC_DXT1_EXT"            value="0x83F1"/>
-</category>
-
-<category name="GL_EXT_texture_format_BGRA8888" number="51">
-    <enum name="BGRA_EXT"                              value="0x80E1"/>
-</category>
-
-<category name="GL_EXT_blend_minmax" number="65">
-    <enum name="MIN_EXT"                               value="0x8007"/>
-    <enum name="MAX_EXT"                               value="0x8008"/>
-</category>
-
-<category name="GL_EXT_read_format_bgra" number="66">
-    <enum name="BGRA_EXT"                              value="0x80E1"/>
-    <enum name="UNSIGNED_SHORT_4_4_4_4_REV_EXT"        value="0x8365"/>
-    <enum name="UNSIGNED_SHORT_1_5_5_5_REV_EXT"        value="0x8366"/>
-</category>
-
-<category name="GL_EXT_multi_draw_arrays" number="69">
-    <function name="MultiDrawArraysEXT" offset="assign">
-        <param name="mode" type="GLenum"/>
-        <param name="first" type="GLint *"/> <!-- Spec bug. Should be const. -->
-        <param name="count" type="GLsizei *"/> <!-- Spec bug. Should be const. -->
-        <param name="primcount" type="GLsizei"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="MultiDrawElementsEXT" offset="assign">
-        <param name="mode" type="GLenum"/>
-        <param name="count" type="const GLsizei *"/>
-        <param name="type" type="GLenum"/>
-        <param name="indices" type="const GLvoid **"/>
-        <param name="primcount" type="GLsizei"/>
-        <glx handcode="true"/>
-    </function>
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/es/glapi/gl_compare.py b/src/mesa/es/glapi/gl_compare.py
deleted file mode 100644 (file)
index 6b5e43b..0000000
+++ /dev/null
@@ -1,354 +0,0 @@
-#!/usr/bin/python
-#
-# Copyright (C) 2009 Chia-I Wu <olv@0xlab.org>
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# 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
-# IBM 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 os.path
-import getopt
-
-GLAPI = "../../glapi/gen"
-sys.path.append(GLAPI)
-
-import gl_XML
-import glX_XML
-
-class ApiSet(object):
-    def __init__(self, api, elts=["enum", "type", "function"]):
-        self.api = api
-        self.elts = elts
-
-    def _check_enum(self, e1, e2, strict=True):
-        if e1.name != e2.name:
-            raise ValueError("%s: name mismatch" % e1.name)
-        if e1.value != e2.value:
-            raise ValueError("%s: value 0x%04x != 0x%04x"
-                    % (e1.name, e1.value, e2.value))
-
-    def _check_type(self, t1, t2, strict=True):
-        if t1.name != t2.name:
-            raise ValueError("%s: name mismatch" % t1.name)
-        if t1.type_expr.string() != t2.type_expr.string():
-            raise ValueError("%s: type %s != %s"
-                    % (t1.name, t1.type_expr.string(), t2.type_expr.string()))
-
-    def _check_function(self, f1, f2, strict=True):
-        if f1.name != f2.name:
-            raise ValueError("%s: name mismatch" % f1.name)
-        if f1.return_type != f2.return_type:
-            raise ValueError("%s: return type %s != %s"
-                    % (f1.name, f1.return_type, f2.return_type))
-        # there might be padded parameters
-        if strict and len(f1.parameters) != len(f2.parameters):
-            raise ValueError("%s: parameter length %d != %d"
-                    % (f1.name, len(f1.parameters), len(f2.parameters)))
-        if f1.assign_offset != f2.assign_offset:
-            if ((f1.assign_offset and f2.offset < 0) or
-                (f2.assign_offset and f1.offset < 0)):
-                raise ValueError("%s: assign offset %d != %d"
-                        % (f1.name, f1.assign_offset, f2.assign_offset))
-        elif not f1.assign_offset:
-            if f1.offset != f2.offset:
-                raise ValueError("%s: offset %d != %d"
-                        % (f1.name, f1.offset, f2.offset))
-
-        if strict:
-            l1 = f1.entry_points
-            l2 = f2.entry_points
-            l1.sort()
-            l2.sort()
-            if l1 != l2:
-                raise ValueError("%s: entry points %s != %s"
-                        % (f1.name, l1, l2))
-
-            l1 = f1.static_entry_points
-            l2 = f2.static_entry_points
-            l1.sort()
-            l2.sort()
-            if l1 != l2:
-                raise ValueError("%s: static entry points %s != %s"
-                        % (f1.name, l1, l2))
-
-        pad = 0
-        for i in xrange(len(f1.parameters)):
-            p1 = f1.parameters[i]
-            p2 = f2.parameters[i + pad]
-
-            if not strict and p1.is_padding != p2.is_padding:
-                if p1.is_padding:
-                    pad -= 1
-                    continue
-                else:
-                    pad += 1
-                    p2 = f2.parameters[i + pad]
-
-            if strict and p1.name != p2.name:
-                raise ValueError("%s: parameter %d name %s != %s"
-                        % (f1.name, i, p1.name, p2.name))
-            if p1.type_expr.string() != p2.type_expr.string():
-                if (strict or
-                    # special case
-                    f1.name == "TexImage2D" and p1.name != "internalformat"):
-                    raise ValueError("%s: parameter %s type %s != %s"
-                            % (f1.name, p1.name, p1.type_expr.string(),
-                               p2.type_expr.string()))
-
-    def union(self, other):
-        union = gl_XML.gl_api(None)
-
-        if "enum" in self.elts:
-            union.enums_by_name = other.enums_by_name.copy()
-            for key, val in self.api.enums_by_name.iteritems():
-                if key not in union.enums_by_name:
-                    union.enums_by_name[key] = val
-                else:
-                    self._check_enum(val, other.enums_by_name[key])
-
-        if "type" in self.elts:
-            union.types_by_name = other.types_by_name.copy()
-            for key, val in self.api.types_by_name.iteritems():
-                if key not in union.types_by_name:
-                    union.types_by_name[key] = val
-                else:
-                    self._check_type(val, other.types_by_name[key])
-
-        if "function" in self.elts:
-            union.functions_by_name = other.functions_by_name.copy()
-            for key, val in self.api.functions_by_name.iteritems():
-                if key not in union.functions_by_name:
-                    union.functions_by_name[key] = val
-                else:
-                    self._check_function(val, other.functions_by_name[key])
-
-        return union
-
-    def intersection(self, other):
-        intersection = gl_XML.gl_api(None)
-
-        if "enum" in self.elts:
-            for key, val in self.api.enums_by_name.iteritems():
-                if key in other.enums_by_name:
-                    self._check_enum(val, other.enums_by_name[key])
-                    intersection.enums_by_name[key] = val
-
-        if "type" in self.elts:
-            for key, val in self.api.types_by_name.iteritems():
-                if key in other.types_by_name:
-                    self._check_type(val, other.types_by_name[key])
-                    intersection.types_by_name[key] = val
-
-        if "function" in self.elts:
-            for key, val in self.api.functions_by_name.iteritems():
-                if key in other.functions_by_name:
-                    self._check_function(val, other.functions_by_name[key])
-                    intersection.functions_by_name[key] = val
-
-        return intersection
-
-    def difference(self, other):
-        difference = gl_XML.gl_api(None)
-
-        if "enum" in self.elts:
-            for key, val in self.api.enums_by_name.iteritems():
-                if key not in other.enums_by_name:
-                    difference.enums_by_name[key] = val
-                else:
-                    self._check_enum(val, other.enums_by_name[key])
-
-        if "type" in self.elts:
-            for key, val in self.api.types_by_name.iteritems():
-                if key not in other.types_by_name:
-                    difference.types_by_name[key] = val
-                else:
-                    self._check_type(val, other.types_by_name[key])
-
-        if "function" in self.elts:
-            for key, val in self.api.functions_by_name.iteritems():
-                if key not in other.functions_by_name:
-                    difference.functions_by_name[key] = val
-                else:
-                    self._check_function(val, other.functions_by_name[key], False)
-
-        return difference
-
-def cmp_enum(e1, e2):
-    if e1.value < e2.value:
-        return -1
-    elif e1.value > e2.value:
-        return 1
-    else:
-        return 0
-
-def cmp_type(t1, t2):
-    return t1.size - t2.size
-
-def cmp_function(f1, f2):
-    if f1.name > f2.name:
-        return 1
-    elif f1.name < f2.name:
-        return -1
-    else:
-        return 0
-
-def spaces(n, str=""):
-    spaces = n - len(str)
-    if spaces < 1:
-        spaces = 1
-    return " " * spaces
-
-def output_enum(e, indent=0):
-    attrs = 'name="%s"' % e.name
-    if e.default_count > 0:
-        tab = spaces(37, attrs)
-        attrs += '%scount="%d"' % (tab, e.default_count)
-    tab = spaces(48, attrs)
-    val = "%04x" % e.value
-    val = "0x" + val.upper()
-    attrs += '%svalue="%s"' % (tab, val)
-
-    # no child
-    if not e.functions:
-        print '%s<enum %s/>' % (spaces(indent), attrs)
-        return
-
-    print '%s<enum %s>' % (spaces(indent), attrs)
-    for key, val in e.functions.iteritems():
-        attrs = 'name="%s"' % key
-        if val[0] != e.default_count:
-            attrs += ' count="%d"' % val[0]
-        if not val[1]:
-            attrs += ' mode="get"'
-
-        print '%s<size %s/>' % (spaces(indent * 2), attrs)
-
-    print '%s</enum>' % spaces(indent)
-
-def output_type(t, indent=0):
-    tab = spaces(16, t.name)
-    attrs = 'name="%s"%ssize="%d"' % (t.name, tab, t.size)
-    ctype = t.type_expr.string()
-    if ctype.find("unsigned") != -1:
-        attrs += ' unsigned="true"'
-    elif ctype.find("signed") == -1:
-        attrs += ' float="true"'
-    print '%s<type %s/>' % (spaces(indent), attrs)
-
-def output_function(f, indent=0):
-    attrs = 'name="%s"' % f.name
-    if f.offset > 0:
-        if f.assign_offset:
-            attrs += ' offset="assign"'
-        else:
-            attrs += ' offset="%d"' % f.offset
-    print '%s<function %s>' % (spaces(indent), attrs)
-
-    for p in f.parameters:
-        attrs = 'name="%s" type="%s"' \
-                % (p.name, p.type_expr.original_string)
-        print '%s<param %s/>' % (spaces(indent * 2), attrs)
-    if f.return_type != "void":
-        attrs = 'type="%s"' % f.return_type
-        print '%s<return %s/>' % (spaces(indent * 2), attrs)
-
-    print '%s</function>' % spaces(indent)
-
-def output_category(api, indent=0):
-    enums = api.enums_by_name.values()
-    enums.sort(cmp_enum)
-    types = api.types_by_name.values()
-    types.sort(cmp_type)
-    functions = api.functions_by_name.values()
-    functions.sort(cmp_function)
-
-    for e in enums:
-        output_enum(e, indent)
-    if enums and types:
-        print
-    for t in types:
-        output_type(t, indent)
-    if enums or types:
-        print
-    for f in functions:
-        output_function(f, indent)
-        if f != functions[-1]:
-            print
-
-def is_api_empty(api):
-    return bool(not api.enums_by_name and
-                not api.types_by_name and
-                not api.functions_by_name)
-
-def show_usage(ops):
-    print "Usage: %s [-k elts] <%s> <file1> <file2>" % (sys.argv[0], "|".join(ops))
-    print "    -k elts   A comma separated string of types of elements to"
-    print "              skip.  Possible types are enum, type, and function."
-    sys.exit(1)
-
-def main():
-    ops = ["union", "intersection", "difference"]
-    elts = ["enum", "type", "function"]
-
-    try:
-        options, args = getopt.getopt(sys.argv[1:], "k:")
-    except Exception, e:
-        show_usage(ops)
-
-    if len(args) != 3:
-        show_usage(ops)
-    op, file1, file2 = args
-    if op not in ops:
-        show_usage(ops)
-
-    skips = []
-    for opt, val in options:
-        if opt == "-k":
-            skips = val.split(",")
-
-    for elt in skips:
-        try:
-            elts.remove(elt)
-        except ValueError:
-            show_usage(ops)
-
-    api1 = gl_XML.parse_GL_API(file1, glX_XML.glx_item_factory())
-    api2 = gl_XML.parse_GL_API(file2, glX_XML.glx_item_factory())
-
-    set = ApiSet(api1, elts)
-    func = getattr(set, op)
-    result = func(api2)
-
-    if not is_api_empty(result):
-        cat_name = "%s_of_%s_and_%s" \
-                % (op, os.path.basename(file1), os.path.basename(file2))
-
-        print '<?xml version="1.0"?>'
-        print '<!DOCTYPE OpenGLAPI SYSTEM "%s/gl_API.dtd">' % GLAPI
-        print
-        print '<OpenGLAPI>'
-        print
-        print '<category name="%s">' % (cat_name)
-        output_category(result, 4)
-        print '</category>'
-        print
-        print '</OpenGLAPI>'
-
-if __name__ == "__main__":
-    main()
diff --git a/src/mesa/es/glapi/gl_parse_header.py b/src/mesa/es/glapi/gl_parse_header.py
deleted file mode 100644 (file)
index 5382eba..0000000
+++ /dev/null
@@ -1,450 +0,0 @@
-#!/usr/bin/python
-#
-# Copyright (C) 2009 Chia-I Wu <olv@0xlab.org>
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# 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
-# IBM 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 os.path
-import getopt
-import re
-
-GLAPI = "../../glapi/gen"
-sys.path.append(GLAPI)
-
-class HeaderParser(object):
-    """Parser for GL header files."""
-
-    def __init__(self, verbose=0):
-        # match #if and #ifdef
-        self.IFDEF = re.compile('#\s*if(n?def\s+(?P<ifdef>\w+)|\s+(?P<if>.+))')
-        # match #endif
-        self.ENDIF = re.compile('#\s*endif')
-        # match typedef abc def;
-        self.TYPEDEF = re.compile('typedef\s+(?P<from>[\w ]+)\s+(?P<to>\w+);')
-        # match #define XYZ VAL
-        self.DEFINE = re.compile('#\s*define\s+(?P<key>\w+)(?P<value>\s+[\w"]*)?')
-        # match GLAPI
-        self.GLAPI = re.compile('^GL_?API(CALL)?\s+(?P<return>[\w\s*]+[\w*])\s+(GL)?_?APIENTRY\s+(?P<name>\w+)\s*\((?P<params>[\w\s(,*\[\])]+)\)\s*;')
-
-        self.split_params = re.compile('\s*,\s*')
-        self.split_ctype = re.compile('(\W)')
-        # ignore GL_VERSION_X_Y
-        self.ignore_enum = re.compile('GL(_ES)?_VERSION(_ES_C[ML])?_\d_\d')
-
-        self.verbose = verbose
-        self._reset()
-
-    def _reset(self):
-        """Reset to initial state."""
-        self.ifdef_levels = []
-        self.need_char = False
-
-    # use typeexpr?
-    def _format_ctype(self, ctype, fix=True):
-        """Format a ctype string, optionally fix it."""
-        # split the type string
-        tmp = self.split_ctype.split(ctype)
-        tmp = [s for s in tmp if s and s != " "]
-
-        pretty = ""
-        for i in xrange(len(tmp)):
-            # add missing GL prefix
-            if (fix and tmp[i] != "const" and tmp[i] != "*" and
-                not tmp[i].startswith("GL")):
-                tmp[i] = "GL" + tmp[i]
-
-            if i == 0:
-                pretty = tmp[i]
-            else:
-                sep = " "
-                if tmp[i - 1] == "*":
-                    sep = ""
-                pretty += sep + tmp[i]
-        return pretty
-
-    # use typeexpr?
-    def _get_ctype_attrs(self, ctype):
-        """Get the attributes of a ctype."""
-        is_float = (ctype.find("float") != -1 or ctype.find("double") != -1)
-        is_signed = not (ctype.find("unsigned")  != -1)
-
-        size = 0
-        if ctype.find("char") != -1:
-            size = 1
-        elif ctype.find("short") != -1:
-            size = 2
-        elif ctype.find("int") != -1:
-            size = 4
-        elif is_float:
-            if ctype.find("float") != -1:
-                size = 4
-            else:
-                size = 8
-
-        return (size, is_float, is_signed)
-
-    def _parse_define(self, line):
-        """Parse a #define line for an <enum>."""
-        m = self.DEFINE.search(line)
-        if not m:
-            if self.verbose and line.find("#define") >= 0:
-                print "ignore %s" % (line)
-            return None
-
-        key = m.group("key").strip()
-        val = m.group("value").strip()
-
-        # enum must begin with GL_ and be all uppercase
-        if ((not (key.startswith("GL_") and key.isupper())) or
-            (self.ignore_enum.match(key) and val == "1")):
-            if self.verbose:
-                print "ignore enum %s" % (key)
-            return None
-
-        return (key, val)
-
-    def _parse_typedef(self, line):
-        """Parse a typedef line for a <type>."""
-        m = self.TYPEDEF.search(line)
-        if not m:
-            if self.verbose and line.find("typedef") >= 0:
-                print "ignore %s" % (line)
-            return None
-
-        f = m.group("from").strip()
-        t = m.group("to").strip()
-        if not t.startswith("GL"):
-            if self.verbose:
-                print "ignore type %s" % (t)
-            return None
-        attrs = self._get_ctype_attrs(f)
-
-        return (f, t, attrs)
-
-    def _parse_gl_api(self, line):
-        """Parse a GLAPI line for a <function>."""
-        m = self.GLAPI.search(line)
-        if not m:
-            if self.verbose and line.find("APIENTRY") >= 0:
-                print "ignore %s" % (line)
-            return None
-
-        rettype = m.group("return")
-        rettype = self._format_ctype(rettype)
-        if rettype == "GLvoid":
-            rettype = ""
-
-        name = m.group("name")
-
-        param_str = m.group("params")
-        chunks = self.split_params.split(param_str)
-        chunks = [s.strip() for s in chunks]
-        if len(chunks) == 1 and (chunks[0] == "void" or chunks[0] == "GLvoid"):
-            chunks = []
-
-        params = []
-        for c in chunks:
-            # split type and variable name
-            idx = c.rfind("*")
-            if idx < 0:
-                idx = c.rfind(" ")
-            if idx >= 0:
-                idx += 1
-                ctype = c[:idx]
-                var = c[idx:]
-            else:
-                ctype = c
-                var = "unnamed"
-
-            # convert array to pointer
-            idx = var.find("[")
-            if idx >= 0:
-                var = var[:idx]
-                ctype += "*"
-
-            ctype = self._format_ctype(ctype)
-            var = var.strip()
-
-            if not self.need_char and ctype.find("GLchar") >= 0:
-                self.need_char = True
-
-            params.append((ctype, var))
-
-        return (rettype, name, params)
-
-    def _change_level(self, line):
-        """Parse a #ifdef line and change level."""
-        m = self.IFDEF.search(line)
-        if m:
-            ifdef = m.group("ifdef")
-            if not ifdef:
-                ifdef = m.group("if")
-            self.ifdef_levels.append(ifdef)
-            return True
-        m = self.ENDIF.search(line)
-        if m:
-            self.ifdef_levels.pop()
-            return True
-        return False
-
-    def _read_header(self, header):
-        """Open a header file and read its contents."""
-        lines = []
-        try:
-            fp = open(header, "rb")
-            lines = fp.readlines()
-            fp.close()
-        except IOError, e:
-            print "failed to read %s: %s" % (header, e)
-        return lines
-
-    def _cmp_enum(self, enum1, enum2):
-        """Compare two enums."""
-        # sort by length of the values as strings
-        val1 = enum1[1]
-        val2 = enum2[1]
-        ret = len(val1) - len(val2)
-        # sort by the values
-        if not ret:
-            val1 = int(val1, 16)
-            val2 = int(val2, 16)
-            ret = val1 - val2
-            # in case int cannot hold the result
-            if ret > 0:
-                ret = 1
-            elif ret < 0:
-                ret = -1
-        # sort by the names
-        if not ret:
-            if enum1[0] < enum2[0]:
-                ret = -1
-            elif enum1[0] > enum2[0]:
-                ret = 1
-        return ret
-
-    def _cmp_type(self, type1, type2):
-        """Compare two types."""
-        attrs1 = type1[2]
-        attrs2 = type2[2]
-        # sort by type size
-        ret = attrs1[0] - attrs2[0]
-        # float is larger
-        if not ret:
-            ret = attrs1[1] - attrs2[1]
-        # signed is larger
-        if not ret:
-            ret = attrs1[2] - attrs2[2]
-        # reverse
-        ret = -ret
-        return ret
-
-    def _cmp_function(self, func1, func2):
-        """Compare two functions."""
-        name1 = func1[1]
-        name2 = func2[1]
-        ret = 0
-        # sort by the names
-        if name1 < name2:
-            ret = -1
-        elif name1 > name2:
-            ret = 1
-        return ret
-
-    def _postprocess_dict(self, hdict):
-        """Post-process a header dict and return an ordered list."""
-        hlist = []
-        largest = 0
-        for key, cat in hdict.iteritems():
-            size = len(cat["enums"]) + len(cat["types"]) + len(cat["functions"])
-            # ignore empty category
-            if not size:
-                continue
-
-            cat["enums"].sort(self._cmp_enum)
-            # remove duplicates
-            dup = []
-            for i in xrange(1, len(cat["enums"])):
-                if cat["enums"][i] == cat["enums"][i - 1]:
-                    dup.insert(0, i)
-            for i in dup:
-                e = cat["enums"].pop(i)
-                if self.verbose:
-                    print "remove duplicate enum %s" % e[0]
-
-            cat["types"].sort(self._cmp_type)
-            cat["functions"].sort(self._cmp_function)
-
-            # largest category comes first
-            if size > largest:
-                hlist.insert(0, (key, cat))
-                largest = size
-            else:
-                hlist.append((key, cat))
-        return hlist
-
-    def parse(self, header):
-        """Parse a header file."""
-        self._reset()
-
-        if self.verbose:
-            print "Parsing %s" % (header)
-
-        hdict = {}
-        lines = self._read_header(header)
-        for line in lines:
-            if self._change_level(line):
-                continue
-
-            # skip until the first ifdef (i.e. __gl_h_)
-            if not self.ifdef_levels:
-                continue
-
-            cat_name = os.path.basename(header)
-            # check if we are in an extension
-            if (len(self.ifdef_levels) > 1 and
-                self.ifdef_levels[-1].startswith("GL_")):
-                cat_name = self.ifdef_levels[-1]
-
-            try:
-                cat = hdict[cat_name]
-            except KeyError:
-                cat = {
-                        "enums": [],
-                        "types": [],
-                        "functions": []
-                }
-                hdict[cat_name] = cat
-
-            key = "enums"
-            elem = self._parse_define(line)
-            if not elem:
-                key = "types"
-                elem = self._parse_typedef(line)
-            if not elem:
-                key = "functions"
-                elem = self._parse_gl_api(line)
-
-            if elem:
-                cat[key].append(elem)
-
-        if self.need_char:
-            if self.verbose:
-                print "define GLchar"
-            elem = self._parse_typedef("typedef char GLchar;")
-            cat["types"].append(elem)
-        return self._postprocess_dict(hdict)
-
-def spaces(n, str=""):
-    spaces = n - len(str)
-    if spaces < 1:
-        spaces = 1
-    return " " * spaces
-
-def output_xml(name, hlist):
-    """Output a parsed header in OpenGLAPI XML."""
-
-    for i in xrange(len(hlist)):
-        cat_name, cat = hlist[i]
-
-        print '<category name="%s">' % (cat_name)
-        indent = 4
-
-        for enum in cat["enums"]:
-            name = enum[0][3:]
-            value = enum[1]
-            tab = spaces(41, name)
-            attrs = 'name="%s"%svalue="%s"' % (name, tab, value)
-            print '%s<enum %s/>' % (spaces(indent), attrs)
-
-        if cat["enums"] and cat["types"]:
-            print
-
-        for type in cat["types"]:
-            ctype = type[0]
-            size, is_float, is_signed = type[2]
-
-            attrs = 'name="%s"' % (type[1][2:])
-            attrs += spaces(16, attrs) + 'size="%d"' % (size)
-            if is_float:
-                attrs += ' float="true"'
-            elif not is_signed:
-                attrs += ' unsigned="true"'
-
-            print '%s<type %s/>' % (spaces(indent), attrs)
-
-        for func in cat["functions"]:
-            print
-            ret = func[0]
-            name = func[1][2:]
-            params = func[2]
-
-            attrs = 'name="%s" offset="assign"' % name
-            print '%s<function %s>' % (spaces(indent), attrs)
-
-            for param in params:
-                attrs = 'name="%s" type="%s"' % (param[1], param[0])
-                print '%s<param %s/>' % (spaces(indent * 2), attrs)
-            if ret:
-                attrs = 'type="%s"' % ret
-                print '%s<return %s/>' % (spaces(indent * 2), attrs)
-
-            print '%s</function>' % spaces(indent)
-
-        print '</category>'
-        print
-
-def show_usage():
-    print "Usage: %s [-v] <header> ..." % sys.argv[0]
-    sys.exit(1)
-
-def main():
-    try:
-        args, headers = getopt.getopt(sys.argv[1:], "v")
-    except Exception, e:
-        show_usage()
-    if not headers:
-        show_usage()
-
-    verbose = 0
-    for arg in args:
-        if arg[0] == "-v":
-            verbose += 1
-
-    need_xml_header = True
-    parser = HeaderParser(verbose)
-    for h in headers:
-        h = os.path.abspath(h)
-        hlist = parser.parse(h)
-
-        if need_xml_header:
-            print '<?xml version="1.0"?>'
-            print '<!DOCTYPE OpenGLAPI SYSTEM "%s/gl_API.dtd">' % GLAPI
-            need_xml_header = False
-
-        print
-        print '<!-- %s -->' % (h)
-        print '<OpenGLAPI>'
-        print
-        output_xml(h, hlist)
-        print '</OpenGLAPI>'
-
-if __name__ == '__main__':
-    main()
index 9bb7a6ff38c644abfd51f3ac659c4bf82857718d..bc479e66ebdf3a2ab5b1c9e68de617cc49555081 100644 (file)
@@ -1,14 +1,10 @@
 include $(MESA)/sources.mak
 
-# always use local version of GLAPI_ASM_SOURCES
-LOCAL_ES1_API_ASM := $(addprefix glapi/glapi-es1/, $(GLAPI_ASM_SOURCES))
-
 LOCAL_ES1_INCLUDES :=                  \
        -I.                             \
-       -I./glapi/glapi-es1             \
+       -I$(TOP)/src/mapi/es1api        \
        -I$(MESA)/state_tracker
 
-LOCAL_ES2_API_ASM := $(subst es1,es2, $(LOCAL_ES1_API_ASM))
 LOCAL_ES2_INCLUDES := $(subst es1,es2, $(LOCAL_ES1_INCLUDES))
 
 # MESA sources
@@ -63,15 +59,11 @@ MESA_ES1_GALLIUM_SOURCES :=         \
        x86/common_x86.c                \
        $(SLANG_SOURCES)
 
-MESA_ES1_API_SOURCES :=                        \
-       $(GLAPI_SOURCES)
-
 MESA_ES1_INCLUDES := $(INCLUDE_DIRS)
 
 # right now es2 and es1 share MESA sources
 MESA_ES2_SOURCES := $(MESA_ES1_SOURCES)
 MESA_ES2_GALLIUM_SOURCES := $(MESA_ES1_GALLIUM_SOURCES)
-MESA_ES2_API_SOURCES := $(MESA_ES1_API_SOURCES)
 
 MESA_ES2_INCLUDES := $(MESA_ES1_INCLUDES)
 
@@ -81,11 +73,9 @@ MESA_ES_ASM := $(MESA_ASM_SOURCES)
 # collect sources, adjust the pathes
 ES1_SOURCES := $(addprefix $(MESA)/,$(MESA_ES1_SOURCES))
 ES1_GALLIUM_SOURCES := $(addprefix $(MESA)/,$(MESA_ES1_GALLIUM_SOURCES))
-ES1_API_SOURCES := $(addprefix $(MESA)/,$(MESA_ES1_API_SOURCES))
 
 ES2_SOURCES := $(addprefix $(MESA)/,$(MESA_ES2_SOURCES))
 ES2_GALLIUM_SOURCES := $(addprefix $(MESA)/,$(MESA_ES2_GALLIUM_SOURCES))
-ES2_API_SOURCES := $(addprefix $(MESA)/,$(MESA_ES2_API_SOURCES))
 
 # collect includes
 ES1_INCLUDES := $(LOCAL_ES1_INCLUDES) $(MESA_ES1_INCLUDES)
@@ -100,10 +90,6 @@ ES1_GALLIUM_OBJECTS :=                              \
        $(MESA_ES1_GALLIUM_SOURCES:.c=.o)       \
        $(MESA_ES_ASM:.S=.o)
 
-ES1_API_OBJECTS :=                             \
-       $(LOCAL_ES1_API_ASM:.S=.o)              \
-       $(MESA_ES1_API_SOURCES:.c=.o)
-
 ES2_OBJECTS :=                                 \
        $(MESA_ES2_SOURCES:.c=.o)               \
        $(MESA_ES_ASM:.S=.o)
@@ -112,13 +98,9 @@ ES2_GALLIUM_OBJECTS :=                              \
        $(MESA_ES2_GALLIUM_SOURCES:.c=.o)       \
        $(MESA_ES_ASM:.S=.o)
 
-ES2_API_OBJECTS :=                             \
-       $(LOCAL_ES2_API_ASM:.S=.o)              \
-       $(MESA_ES2_API_SOURCES:.c=.o)
-
 # collect sources for makedepend
-ES1_ALL_SOURCES := $(ES1_SOURCES) $(ES1_GALLIUM_SOURCES) $(ES1_API_SOURCES)
-ES2_ALL_SOURCES := $(ES2_SOURCES) $(ES2_GALLIUM_SOURCES) $(ES2_API_SOURCES)
+ES1_ALL_SOURCES := $(ES1_SOURCES) $(ES1_GALLIUM_SOURCES)
+ES2_ALL_SOURCES := $(ES2_SOURCES) $(ES2_GALLIUM_SOURCES)
 
 # sort to remove duplicates
 ES1_ALL_SOURCES := $(sort $(ES1_ALL_SOURCES))
diff --git a/src/mesa/glapi/.gitignore b/src/mesa/glapi/.gitignore
deleted file mode 100644 (file)
index e706bc2..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-.cvsignore
-glX_proto_common.pyo
-glX_proto_common.pyc
-typeexpr.pyo
-typeexpr.pyc
-license.pyo
-license.pyc
-gl_XML.pyo
-gl_XML.pyc
-glX_XML.pyo
-glX_XML.pyc
diff --git a/src/mesa/glapi/gen/APPLE_object_purgeable.xml b/src/mesa/glapi/gen/APPLE_object_purgeable.xml
deleted file mode 100644 (file)
index 62fa64a..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<OpenGLAPI>
-<category name="GL_APPLE_object_purgeable" number="371">
-    <enum name="RELEASED_APPLE"               value="0x8A19"/>
-    <enum name="VOLATILE_APPLE"               value="0x8A1A"/>
-    <enum name="RETAINED_APPLE"               value="0x8A1B"/>
-    <enum name="UNDEFINED_APPLE"              value="0x8A1C"/>
-    <enum name="PURGEABLE_APPLE"    count="1" value="0x8A1D">
-       <size name="GetObjectParameterivAPPLE" count="1" mode="get"/>
-    </enum>
-
-    <enum name="BUFFER_OBJECT_APPLE"          value="0x85B3"/>
-
-    <function name="ObjectPurgeableAPPLE" offset="assign">
-        <param name="objectType" type="GLenum"/>
-        <param name="name" type="GLuint"/>
-        <param name="option" type="GLenum"/>
-       <return type="GLenum"/>
-    </function>
-
-    <function name="ObjectUnpurgeableAPPLE" offset="assign">
-        <param name="objectType" type="GLenum"/>
-        <param name="name" type="GLuint"/>
-        <param name="option" type="GLenum"/>
-       <return type="GLenum"/>
-    </function>
-
-    <function name="GetObjectParameterivAPPLE" offset="assign">
-        <param name="objectType" type="GLenum"/>
-        <param name="name" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="value" type="GLint *" output="true"/>
-    </function>
-</category>
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/APPLE_vertex_array_object.xml b/src/mesa/glapi/gen/APPLE_vertex_array_object.xml
deleted file mode 100644 (file)
index bd8427e..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<OpenGLAPI>
-<category name="GL_APPLE_vertex_array_object" number="273">
-    <enum name="VERTEX_ARRAY_BINDING_APPLE"               value="0x85B5"/>
-
-    <function name="BindVertexArrayAPPLE" offset="assign" static_dispatch="false">
-        <param name="array" type="GLuint"/>
-    </function>
-
-    <function name="DeleteVertexArraysAPPLE" offset="assign" static_dispatch="false">
-        <param name="n" type="GLsizei"/>
-       <param name="arrays" type="const GLuint *" count="n"/>
-    </function>
-
-    <function name="GenVertexArraysAPPLE" offset="assign" static_dispatch="false">
-        <param name="n" type="GLsizei"/>
-       <param name="arrays" type="GLuint *" count="n" output="true"/>
-    </function>
-
-    <function name="IsVertexArrayAPPLE" offset="assign" static_dispatch="false">
-        <param name="array" type="GLuint"/>
-       <return type="GLboolean"/>
-    </function>
-</category>
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/ARB_copy_buffer.xml b/src/mesa/glapi/gen/ARB_copy_buffer.xml
deleted file mode 100644 (file)
index 719816d..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<!-- Note: no GLX protocol info yet. -->
-
-
-<OpenGLAPI>
-
-<category name="GL_ARB_copy_buffer" number="59">
-
-    <enum name="COPY_READ_BUFFER"   value="0x8F36"/>
-    <enum name="COPY_WRITE_BUFFER"  value="0x8F37"/>
-
-    <function name="CopyBufferSubData" offset="assign">
-        <param name="readTarget" type="GLenum"/>
-        <param name="writeTarget" type="GLenum"/>
-        <param name="readOffset" type="GLintptr"/>
-        <param name="writeOffset" type="GLintptr"/>
-        <param name="size" type="GLsizeiptr"/>
-    </function>
-
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/ARB_depth_clamp.xml b/src/mesa/glapi/gen/ARB_depth_clamp.xml
deleted file mode 100644 (file)
index 157c9a8..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<OpenGLAPI>
-
-<category name="GL_ARB_depth_clamp" number="61">
-    <enum name="DEPTH_CLAMP" count="1"  value="0x864F">
-        <size name="Get" mode="get"/>
-    </enum>
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/ARB_draw_elements_base_vertex.xml b/src/mesa/glapi/gen/ARB_draw_elements_base_vertex.xml
deleted file mode 100644 (file)
index f4067f4..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<!-- Note: no GLX protocol info yet. -->
-
-
-<OpenGLAPI>
-
-<category name="GL_ARB_draw_elements_base_vertex" number="62">
-
-    <function name="DrawElementsBaseVertex" offset="assign">
-        <param name="mode" type="GLenum"/>
-        <param name="count" type="GLsizei"/>
-        <param name="type" type="GLenum"/>
-        <param name="indices" type="const GLvoid *"/>
-        <param name="basevertex" type="GLint"/>
-    </function>
-
-    <function name="DrawRangeElementsBaseVertex" offset="assign">
-        <param name="mode" type="GLenum"/>
-        <param name="start" type="GLuint"/>
-        <param name="end" type="GLuint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="type" type="GLenum"/>
-        <param name="indices" type="const GLvoid *"/>
-        <param name="basevertex" type="GLint"/>
-    </function>
-
-    <function name="MultiDrawElementsBaseVertex" offset="assign">
-        <param name="mode" type="GLenum"/>
-        <param name="count" type="const GLsizei *"/>
-        <param name="type" type="GLenum"/>
-        <param name="indices" type="const GLvoid **"/>
-        <param name="primcount" type="GLsizei"/>
-        <param name="basevertex" type="const GLint *"/>
-    </function>
-
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/ARB_draw_instanced.xml b/src/mesa/glapi/gen/ARB_draw_instanced.xml
deleted file mode 100644 (file)
index 5741a58..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<!-- Note: no GLX protocol info yet. -->
-
-
-<OpenGLAPI>
-
-<category name="3.1">
-
-  <function name="DrawArraysInstanced" offset="assign">
-    <param name="mode" type="GLenum"/>
-    <param name="first" type="GLint"/>
-    <param name="count" type="GLsizei"/>
-    <param name="primcount" type="GLsizei"/>
-  </function>
-
-  <function name="DrawElementsInstanced" offset="assign">
-    <param name="mode" type="GLenum"/>
-    <param name="count" type="GLsizei"/>
-    <param name="type" type="GLenum"/>
-    <param name="indices" type="const GLvoid *"/>
-    <param name="primcount" type="GLsizei"/>
-  </function>
-
-</category>
-
-
-<category name="GL_ARB_draw_instanced" number="44">
-
-  <function name="DrawArraysInstancedARB" alias="DrawArraysInstanced">
-    <param name="mode" type="GLenum"/>
-    <param name="first" type="GLint"/>
-    <param name="count" type="GLsizei"/>
-    <param name="primcount" type="GLsizei"/>
-  </function>
-
-  <function name="DrawElementsInstancedARB" alias="DrawElementsInstanced">
-    <param name="mode" type="GLenum"/>
-    <param name="count" type="GLsizei"/>
-    <param name="type" type="GLenum"/>
-    <param name="indices" type="const GLvoid *"/>
-    <param name="primcount" type="GLsizei"/>
-  </function>
-
-</category>
-
-
-<category name="GL_EXT_draw_instanced" number="327">
-
-  <function name="DrawArraysInstancedEXT"  alias="DrawArraysInstanced">
-    <param name="mode" type="GLenum"/>
-    <param name="first" type="GLint"/>
-    <param name="count" type="GLsizei"/>
-    <param name="primcount" type="GLsizei"/>
-  </function>
-
-  <function name="DrawElementsInstancedEXT" alias="DrawElementsInstanced">
-    <param name="mode" type="GLenum"/>
-    <param name="count" type="GLsizei"/>
-    <param name="type" type="GLenum"/>
-    <param name="indices" type="const GLvoid *"/>
-    <param name="primcount" type="GLsizei"/>
-  </function>
-
-</category>
-
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/ARB_framebuffer_object.xml b/src/mesa/glapi/gen/ARB_framebuffer_object.xml
deleted file mode 100644 (file)
index e6bdcd6..0000000
+++ /dev/null
@@ -1,275 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<!-- Note: no GLX protocol info yet. -->
-
-
-<OpenGLAPI>
-<category name="GL_ARB_framebuffer_object" number="45">
-    <enum name="FRAMEBUFFER"                              value="0x8D40"/>
-    <enum name="READ_FRAMEBUFFER"                         value="0x8CA8"/>
-    <enum name="DRAW_FRAMEBUFFER"                         value="0x8CA9"/>
-
-    <enum name="RENDERBUFFER"                             value="0x8D41"/>
-
-    <enum name="STENCIL_INDEX1"                           value="0x8D46"/>
-    <enum name="STENCIL_INDEX4"                           value="0x8D47"/>
-    <enum name="STENCIL_INDEX8"                           value="0x8D48"/>
-    <enum name="STENCIL_INDEX16"                          value="0x8D49"/>
-
-    <enum name="RENDERBUFFER_WIDTH"              value="0x8D42"/>
-    <enum name="RENDERBUFFER_HEIGHT"             value="0x8D43"/>
-    <enum name="RENDERBUFFER_INTERNAL_FORMAT"    value="0x8D44"/>
-    <enum name="RENDERBUFFER_RED_SIZE"           value="0x8D50"/>
-    <enum name="RENDERBUFFER_GREEN_SIZE"         value="0x8D51"/>
-    <enum name="RENDERBUFFER_BLUE_SIZE"          value="0x8D52"/>
-    <enum name="RENDERBUFFER_ALPHA_SIZE"         value="0x8D53"/>
-    <enum name="RENDERBUFFER_DEPTH_SIZE"         value="0x8D54"/>
-    <enum name="RENDERBUFFER_STENCIL_SIZE"       value="0x8D55"/>
-    <enum name="RENDERBUFFER_SAMPLES"            value="0x8CAB"/>
-
-    <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE" count="1" value="0x8CD0">
-        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
-    </enum>
-    <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_NAME" count="1" value="0x8CD1">
-        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
-    </enum>
-    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL" count="1" value="0x8CD2">
-        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
-    </enum>
-    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE" count="1" value="0x8CD3">
-        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
-    </enum>
-    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER" count="1" value="0x8CD4">
-        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
-    </enum>
-    <enum name="FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING" count="1" value="0x8210">
-        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
-    </enum>
-    <enum name="FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE" count="1" value="0x8211">
-        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
-    </enum>
-    <enum name="FRAMEBUFFER_ATTACHMENT_RED_SIZE" count="1" value="0x8212">
-        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
-    </enum>
-    <enum name="FRAMEBUFFER_ATTACHMENT_GREEN_SIZE" count="1" value="0x8213">
-        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
-    </enum>
-    <enum name="FRAMEBUFFER_ATTACHMENT_BLUE_SIZE" count="1" value="0x8214">
-        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
-    </enum>
-    <enum name="FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE" count="1" value="0x8215">
-        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
-    </enum>
-    <enum name="FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE" count="1" value="0x8216">
-        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
-    </enum>
-    <enum name="FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE" count="1" value="0x8217">
-        <size name="GetFramebufferAttachmentParameteriv" mode="get"/>
-    </enum>
-
-    <enum name="SRGB"                                      value="0x8C40"/>
-    <enum name="UNSIGNED_NORMALIZED"                       value="0x8C17"/>
-    <enum name="FRAMEBUFFER_DEFAULT"                       value="0x8218"/>
-    <enum name="INDEX"                                     value="0x8222"/>
-
-    <enum name="COLOR_ATTACHMENT0"                         value="0x8CE0"/>
-    <enum name="COLOR_ATTACHMENT1"                         value="0x8CE1"/>
-    <enum name="COLOR_ATTACHMENT2"                         value="0x8CE2"/>
-    <enum name="COLOR_ATTACHMENT3"                         value="0x8CE3"/>
-    <enum name="COLOR_ATTACHMENT4"                         value="0x8CE4"/>
-    <enum name="COLOR_ATTACHMENT5"                         value="0x8CE5"/>
-    <enum name="COLOR_ATTACHMENT6"                         value="0x8CE6"/>
-    <enum name="COLOR_ATTACHMENT7"                         value="0x8CE7"/>
-    <enum name="COLOR_ATTACHMENT8"                         value="0x8CE8"/>
-    <enum name="COLOR_ATTACHMENT9"                         value="0x8CE9"/>
-    <enum name="COLOR_ATTACHMENT10"                        value="0x8CEA"/>
-    <enum name="COLOR_ATTACHMENT11"                        value="0x8CEB"/>
-    <enum name="COLOR_ATTACHMENT12"                        value="0x8CEC"/>
-    <enum name="COLOR_ATTACHMENT13"                        value="0x8CED"/>
-    <enum name="COLOR_ATTACHMENT14"                        value="0x8CEE"/>
-    <enum name="COLOR_ATTACHMENT15"                        value="0x8CEF"/>
-    <enum name="DEPTH_ATTACHMENT"                          value="0x8D00"/>
-    <enum name="STENCIL_ATTACHMENT"                        value="0x8D20"/>
-    <enum name="DEPTH_STENCIL_ATTACHMENT"                  value="0x821A"/>
-
-    <enum name="MAX_SAMPLES"                     count="1" value="0x8D57">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <enum name="FRAMEBUFFER_COMPLETE"                      value="0x8CD5"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_ATTACHMENT"         value="0x8CD6"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT" value="0x8CD7"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER"        value="0x8CDB"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_READ_BUFFER"        value="0x8CDC"/>
-    <enum name="FRAMEBUFFER_UNSUPPORTED"                   value="0x8CDD"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_MULTISAMPLE"        value="0x8D56"/>
-    <enum name="FRAMEBUFFER_UNDEFINED"                     value="0x8219"/>
-
-    <enum name="FRAMEBUFFER_BINDING"             count="1" value="0x8CA6">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_FRAMEBUFFER_BINDING"        count="1" value="0x8CA6">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="READ_FRAMEBUFFER_BINDING"        count="1" value="0x8CAA">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="RENDERBUFFER_BINDING"            count="1" value="0x8CA7">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_COLOR_ATTACHMENTS"           count="1" value="0x8CDF">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_RENDERBUFFER_SIZE"           count="1" value="0x84E8">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <enum name="INVALID_FRAMEBUFFER_OPERATION"            value="0x0506"/>
-
-    <enum name="DEPTH_STENCIL"                            value="0x84F9"/>
-
-    <enum name="UNSIGNED_INT_24_8"                        value="0x84FA"/>
-
-    <enum name="DEPTH24_STENCIL8"                         value="0x88F0"/>
-
-    <enum name="TEXTURE_STENCIL_SIZE"          count="1"  value="0x88F1">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-
-
-
-    <function name="IsRenderbuffer" alias="IsRenderbufferEXT">
-        <param name="renderbuffer" type="GLuint"/>
-       <return type="GLboolean"/>
-    </function>
-
-    <function name="BindRenderbuffer" alias="BindRenderbufferEXT">
-        <param name="target" type="GLenum"/>
-        <param name="renderbuffer" type="GLuint"/>
-    </function>
-
-    <function name="DeleteRenderbuffers" alias="DeleteRenderbuffersEXT">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="renderbuffers" type="const GLuint *" count="n"/>
-    </function>
-
-    <function name="GenRenderbuffers" alias="GenRenderbuffersEXT">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="renderbuffers" type="GLuint *" count="n" output="true"/>
-    </function>
-
-    <function name="RenderbufferStorage" alias="RenderbufferStorageEXT">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-    </function>
-
-    <function name="RenderbufferStorageMultisample" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="samples" type="GLsizei"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <glx rop="4331"/>
-    </function>
-
-    <function name="GetRenderbufferParameteriv" alias="GetRenderbufferParameterivEXT">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true"/>
-    </function>
-
-    <function name="IsFramebuffer" alias="IsFramebufferEXT">
-        <param name="framebuffer" type="GLuint"/>
-       <return type="GLboolean"/>
-    </function>
-
-    <function name="BindFramebuffer" alias="BindFramebufferEXT">
-        <param name="target" type="GLenum"/>
-        <param name="framebuffer" type="GLuint"/>
-    </function>
-
-    <function name="DeleteFramebuffers" alias="DeleteFramebuffersEXT">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="framebuffers" type="const GLuint *" count="n"/>
-    </function>
-
-    <function name="GenFramebuffers" alias="GenFramebuffersEXT">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="framebuffers" type="GLuint *" count="n" output="true"/>
-    </function>
-
-    <function name="CheckFramebufferStatus" alias="CheckFramebufferStatusEXT">
-        <param name="target" type="GLenum"/>
-       <return type="GLenum"/>
-    </function>
-
-    <function name="FramebufferTexture1D" alias="FramebufferTexture1DEXT">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="textarget" type="GLenum"/>
-        <param name="texture" type="GLuint"/>
-        <param name="level" type="GLint"/>
-    </function>
-
-    <function name="FramebufferTexture2D" alias="FramebufferTexture2DEXT">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="textarget" type="GLenum"/>
-        <param name="texture" type="GLuint"/>
-        <param name="level" type="GLint"/>
-    </function>
-
-    <function name="FramebufferTexture3D" alias="FramebufferTexture3DEXT">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="textarget" type="GLenum"/>
-        <param name="texture" type="GLuint"/>
-        <param name="level" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-    </function>
-
-    <function name="FramebufferTextureLayer" alias="FramebufferTextureLayerEXT">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="texture" type="GLuint"/>
-        <param name="level" type="GLint"/>
-        <param name="layer" type="GLint"/>
-    </function>
-
-    <function name="FramebufferRenderbuffer" alias="FramebufferRenderbufferEXT">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="renderbuffertarget" type="GLenum"/>
-        <param name="renderbuffer" type="GLuint"/>
-    </function>
-
-    <function name="GetFramebufferAttachmentParameteriv" alias="GetFramebufferAttachmentParameterivEXT">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true"/>
-    </function>
-
-    <function name="BlitFramebuffer" alias="BlitFramebufferEXT">
-        <param name="srcX0" type="GLint"/>
-        <param name="srcY0" type="GLint"/>
-        <param name="srcX1" type="GLint"/>
-        <param name="srcY1" type="GLint"/>
-        <param name="dstX0" type="GLint"/>
-        <param name="dstY0" type="GLint"/>
-        <param name="dstX1" type="GLint"/>
-        <param name="dstY1" type="GLint"/>
-        <param name="mask" type="GLbitfield"/>
-        <param name="filter" type="GLenum"/>
-    </function>
-
-    <function name="GenerateMipmap" alias="GenerateMipmapEXT">
-        <param name="target" type="GLenum"/>
-    </function>
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/ARB_map_buffer_range.xml b/src/mesa/glapi/gen/ARB_map_buffer_range.xml
deleted file mode 100644 (file)
index afcb9b6..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<!-- Note: no GLX protocol info yet. -->
-
-
-<OpenGLAPI>
-
-<category name="GL_ARB_map_buffer_range" number="50">
-
-    <enum name="MAP_READ_BIT"                value="0x0001"/>
-    <enum name="MAP_WRITE_BIT"               value="0x0002"/>
-    <enum name="MAP_INVALIDATE_RANGE_BIT"    value="0x0004"/>
-    <enum name="MAP_INVALIDATE_BUFFER_BIT"   value="0x0008"/>
-    <enum name="MAP_FLUSH_EXPLICIT_BIT"      value="0x0010"/>
-    <enum name="MAP_UNSYNCHRONIZED_BIT"      value="0x0020"/>
-
-    <function name="MapBufferRange" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="offset" type="GLintptr"/>
-        <param name="length" type="GLsizeiptr"/>
-        <param name="access" type="GLbitfield"/>
-        <return type="GLvoid *"/>
-    </function>
-
-    <function name="FlushMappedBufferRange" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="offset" type="GLintptr"/>
-        <param name="length" type="GLsizeiptr"/>
-    </function>
-
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/ARB_seamless_cube_map.xml b/src/mesa/glapi/gen/ARB_seamless_cube_map.xml
deleted file mode 100644 (file)
index 8dc827c..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<OpenGLAPI>
-
-<category name="GL_ARB_seamless_cube_map" number="65">
-    <enum name="TEXTURE_CUBE_MAP_SEAMLESS"     count="1"  value="0x88F4">
-        <size name="Get" mode="get"/>
-    </enum>
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/ARB_sync.xml b/src/mesa/glapi/gen/ARB_sync.xml
deleted file mode 100644 (file)
index 4e4eeba..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<OpenGLAPI>
-<category name="GL_ARB_sync" number="61">
-    <type name="int64"   size="8"                  glx_name="CARD64"/>
-    <type name="uint64"  size="8"  unsigned="true" glx_name="CARD64"/>
-    <type name="sync"    size="8"  unsigned="true" glx_name="CARD64"/>
-
-    <enum name="MAX_SERVER_WAIT_TIMEOUT"       count="1"  value="0x9111">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="OBJECT_TYPE"                   count="1"  value="0x9112">
-        <size name="GetSynciv" mode="get"/>
-    </enum>
-    <enum name="SYNC_CONDITION"                count="1"  value="0x9113">
-        <size name="GetSynciv" mode="get"/>
-    </enum>
-    <enum name="SYNC_STATUS"                   count="1"  value="0x9114">
-        <size name="GetSynciv" mode="get"/>
-    </enum>
-    <enum name="SYNC_FLAGS"                    count="1"  value="0x9115">
-        <size name="GetSynciv" mode="get"/>
-    </enum>
-
-    <enum name="SYNC_FENCE"                               value="0x9116"/>
-    <enum name="SYNC_GPU_COMMANDS_COMPLETE"               value="0x9117"/>
-    <enum name="UNSIGNALED"                               value="0x9118"/>
-    <enum name="SIGNALED"                                 value="0x9119"/>
-    <enum name="ALREADY_SIGNALED"                         value="0x911A"/>
-    <enum name="TIMEOUT_EXPIRED"                          value="0x911B"/>
-    <enum name="CONDITION_SATISFIED"                      value="0x911C"/>
-    <enum name="WAIT_FAILED"                              value="0x911D"/>
-
-    <enum name="SYNC_FLUSH_COMMANDS_BIT"                  value="0x00000001"/>
-
-    <!-- Not really an enum:
-    <enum name="TIMEOUT_IGNORED"                  value="0xFFFFFFFFFFFFFFFF"/>
-    -->
-
-
-    <function name="FenceSync" offset="assign">
-        <param name="condition" type="GLenum"/>
-        <param name="flags" type="GLbitfield"/>
-        <return type="GLsync"/>
-    </function>
-
-    <function name="IsSync" offset="assign">
-        <param name="sync" type="GLsync"/>
-       <return type="GLboolean"/>
-    </function>
-
-    <function name="DeleteSync" offset="assign">
-        <param name="sync" type="GLsync"/>
-    </function>
-
-    <function name="ClientWaitSync" offset="assign">
-        <param name="sync" type="GLsync"/>
-        <param name="flags" type="GLbitfield"/>
-       <param name="timeout" type="GLuint64"/>
-        <return type="GLenum"/>
-    </function>
-
-    <function name="WaitSync" offset="assign">
-        <param name="sync" type="GLsync"/>
-        <param name="flags" type="GLbitfield"/>
-       <param name="timeout" type="GLuint64"/>
-    </function>
-
-    <function name="GetInteger64v" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint64 *" output="true" variable_param="pname"/>
-    </function>
-
-    <function name="GetSynciv" offset="assign">
-        <param name="sync" type="GLsync"/>
-        <param name="pname" type="GLenum"/>
-        <param name="bufSize" type="GLsizei"/>
-        <param name="length" type="GLsizei *" output="true"/>
-        <param name="values" type="GLint *" output="true" variable_param="pname"/>
-    </function>
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/ARB_vertex_array_object.xml b/src/mesa/glapi/gen/ARB_vertex_array_object.xml
deleted file mode 100644 (file)
index 3b4ab64..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<!-- Note: no GLX protocol info yet. -->
-
-
-<OpenGLAPI>
-
-<category name="GL_ARB_vertex_array_object" number="54">
-
-    <enum name="VERTEX_ARRAY_BINDING" value="0x85B5"/>
-
-    <function name="BindVertexArray" offset="assign">
-        <param name="array" type="GLuint"/>
-    </function>
-
-    <function name="DeleteVertexArrays" alias="DeleteVertexArraysAPPLE">
-        <param name="n" type="GLsizei"/>
-        <param name="arrays" type="const GLuint *"/>
-    </function>
-
-    <function name="GenVertexArrays" offset="assign">
-        <param name="n" type="GLsizei"/>
-        <param name="arrays" type="GLuint *"/>
-    </function>
-
-    <function name="IsVertexArray" alias="IsVertexArrayAPPLE">
-        <param name="array" type="GLuint"/>
-        <return type="GLboolean"/>
-    </function>
-
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/EXT_draw_buffers2.xml b/src/mesa/glapi/gen/EXT_draw_buffers2.xml
deleted file mode 100644 (file)
index efbe61f..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<!-- Note: no GLX protocol info yet. -->
-
-
-<OpenGLAPI>
-
-<category name="GL_EXT_draw_buffers2" number="340">
-
-    <function name="ColorMaskIndexedEXT" offset="assign">
-       <param name="buf" type="GLuint"/>
-       <param name="r" type="GLboolean"/>
-       <param name="g" type="GLboolean"/>
-       <param name="b" type="GLboolean"/>
-       <param name="a" type="GLboolean"/>
-    </function>
-
-    <function name="GetBooleanIndexedvEXT" offset="assign">
-        <param name="value" type="GLenum"/>
-       <param name="index" type="GLuint"/>
-       <param name="data" type="GLboolean *"/>
-    </function>
-
-    <function name="GetIntegerIndexedvEXT" offset="assign">
-        <param name="value" type="GLenum"/>
-       <param name="index" type="GLuint"/>
-       <param name="data" type="GLint *"/>
-    </function>
-
-    <function name="EnableIndexedEXT" offset="assign">
-        <param name="target" type="GLenum"/>
-       <param name="index" type="GLuint"/>
-    </function>
-
-    <function name="DisableIndexedEXT" offset="assign">
-        <param name="target" type="GLenum"/>
-       <param name="index" type="GLuint"/>
-    </function>
-
-    <function name ="IsEnabledIndexedEXT" offset="assign">
-        <param name="target" type="GLenum"/>
-       <param name="index" type="GLuint"/>
-       <return type="GLboolean"/>
-    </function>
-
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/EXT_framebuffer_object.xml b/src/mesa/glapi/gen/EXT_framebuffer_object.xml
deleted file mode 100644 (file)
index 4f418f7..0000000
+++ /dev/null
@@ -1,235 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<OpenGLAPI>
-<category name="GL_EXT_framebuffer_object" number="310">
-    <enum name="FRAMEBUFFER_EXT"                          value="0x8D40"/>
-    <enum name="RENDERBUFFER_EXT"                         value="0x8D41"/>
-    <enum name="RENDERBUFFER_WIDTH_EXT"                   value="0x8D42"/>
-    <enum name="RENDERBUFFER_HEIGHT_EXT"                  value="0x8D43"/>
-    <enum name="RENDERBUFFER_INTERNAL_FORMAT_EXT"         value="0x8D44"/>
-    <enum name="STENCIL_INDEX_EXT"                        value="0x8D45"/>
-    <enum name="STENCIL_INDEX1_EXT"                       value="0x8D46"/>
-    <enum name="STENCIL_INDEX4_EXT"                       value="0x8D47"/>
-    <enum name="STENCIL_INDEX8_EXT"                       value="0x8D48"/>
-    <enum name="STENCIL_INDEX16_EXT"                      value="0x8D49"/>
-
-    <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT"   count="1" value="0x8CD0">
-        <size name="GetFramebufferAttachmentParameterivEXT" mode="get"/>
-    </enum>
-    <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT"   count="1" value="0x8CD1">
-        <size name="GetFramebufferAttachmentParameterivEXT" mode="get"/>
-    </enum>
-    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT" count="1" value="0x8CD2">
-        <size name="GetFramebufferAttachmentParameterivEXT" mode="get"/>
-    </enum>
-    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT" count="1" value="0x8CD3">
-        <size name="GetFramebufferAttachmentParameterivEXT" mode="get"/>
-    </enum>
-    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT"    count="1" value="0x8CD4">
-        <size name="GetFramebufferAttachmentParameterivEXT" mode="get"/>
-    </enum>
-
-    <enum name="COLOR_ATTACHMENT0_EXT"                    value="0x8CE0"/>
-    <enum name="COLOR_ATTACHMENT1_EXT"                    value="0x8CE1"/>
-    <enum name="COLOR_ATTACHMENT2_EXT"                    value="0x8CE2"/>
-    <enum name="COLOR_ATTACHMENT3_EXT"                    value="0x8CE3"/>
-    <enum name="COLOR_ATTACHMENT4_EXT"                    value="0x8CE4"/>
-    <enum name="COLOR_ATTACHMENT5_EXT"                    value="0x8CE5"/>
-    <enum name="COLOR_ATTACHMENT6_EXT"                    value="0x8CE6"/>
-    <enum name="COLOR_ATTACHMENT7_EXT"                    value="0x8CE7"/>
-    <enum name="COLOR_ATTACHMENT8_EXT"                    value="0x8CE8"/>
-    <enum name="COLOR_ATTACHMENT9_EXT"                    value="0x8CE9"/>
-    <enum name="COLOR_ATTACHMENT10_EXT"                   value="0x8CEA"/>
-    <enum name="COLOR_ATTACHMENT11_EXT"                   value="0x8CEB"/>
-    <enum name="COLOR_ATTACHMENT12_EXT"                   value="0x8CEC"/>
-    <enum name="COLOR_ATTACHMENT13_EXT"                   value="0x8CED"/>
-    <enum name="COLOR_ATTACHMENT14_EXT"                   value="0x8CEE"/>
-    <enum name="COLOR_ATTACHMENT15_EXT"                   value="0x8CEF"/>
-    <enum name="DEPTH_ATTACHMENT_EXT"                     value="0x8D00"/>
-    <enum name="STENCIL_ATTACHMENT_EXT"                   value="0x8D20"/>
-
-    <enum name="FRAMEBUFFER_COMPLETE_EXT"                 value="0x8CD5"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT"    value="0x8CD6"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT"   value="0x8CD7"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT" value="0x8CD8"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT"    value="0x8CD9"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_FORMATS_EXT"       value="0x8CDA"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT"   value="0x8CDB"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT"   value="0x8CDC"/>
-    <enum name="FRAMEBUFFER_UNSUPPORTED_EXT"              value="0x8CDD"/>
-    <enum name="FRAMEBUFFER_STATUS_ERROR_EXT"             value="0x8CDE"/>
-    <enum name="FRAMEBUFFER_BINDING_EXT"        count="1" value="0x8CA6">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="RENDERBUFFER_BINDING_EXT"       count="1" value="0x8CA7">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_COLOR_ATTACHMENTS_EXT"      count="1" value="0x8CDF">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_RENDERBUFFER_SIZE_EXT"      count="1" value="0x84E8">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="INVALID_FRAMEBUFFER_OPERATION_EXT"        value="0x0506"/>
-
-    <function name="IsRenderbufferEXT" offset="assign">
-        <param name="renderbuffer" type="GLuint"/>
-       <return type="GLboolean"/>
-       <glx vendorpriv="1422"/>
-    </function>
-
-    <function name="BindRenderbufferEXT" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="renderbuffer" type="GLuint"/>
-       <glx rop="4316"/>
-    </function>
-
-    <function name="DeleteRenderbuffersEXT" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="renderbuffers" type="const GLuint *" count="n"/>
-       <glx rop="4317"/>
-    </function>
-
-    <function name="GenRenderbuffersEXT" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="renderbuffers" type="GLuint *" count="n" output="true"/>
-       <glx vendorpriv="1423" always_array="true"/>
-    </function>
-
-    <function name="RenderbufferStorageEXT" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-       <glx rop="4318"/>
-    </function>
-
-    <function name="GetRenderbufferParameterivEXT" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true"/>
-       <glx vendorpriv="1424"/>
-    </function>
-
-    <function name="IsFramebufferEXT" offset="assign">
-        <param name="framebuffer" type="GLuint"/>
-       <return type="GLboolean"/>
-       <glx vendorpriv="1425"/>
-    </function>
-
-    <function name="BindFramebufferEXT" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="framebuffer" type="GLuint"/>
-       <glx rop="4319"/>
-    </function>
-
-    <function name="DeleteFramebuffersEXT" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="framebuffers" type="const GLuint *" count="n"/>
-       <glx rop="4320"/>
-    </function>
-
-    <function name="GenFramebuffersEXT" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="framebuffers" type="GLuint *" count="n" output="true"/>
-       <glx vendorpriv="1426" always_array="true"/>
-    </function>
-
-    <function name="CheckFramebufferStatusEXT" offset="assign">
-        <param name="target" type="GLenum"/>
-       <return type="GLenum"/>
-       <glx vendorpriv="1427"/>
-    </function>
-
-    <function name="FramebufferTexture1DEXT" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="textarget" type="GLenum"/>
-        <param name="texture" type="GLuint"/>
-        <param name="level" type="GLint"/>
-       <glx rop="4321"/>
-    </function>
-
-    <function name="FramebufferTexture2DEXT" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="textarget" type="GLenum"/>
-        <param name="texture" type="GLuint"/>
-        <param name="level" type="GLint"/>
-       <glx rop="4322"/>
-    </function>
-
-    <function name="FramebufferTexture3DEXT" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="textarget" type="GLenum"/>
-        <param name="texture" type="GLuint"/>
-        <param name="level" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-       <glx rop="4323"/>
-    </function>
-
-    <function name="FramebufferRenderbufferEXT" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="renderbuffertarget" type="GLenum"/>
-        <param name="renderbuffer" type="GLuint"/>
-       <glx rop="4324"/>
-    </function>
-
-    <function name="GetFramebufferAttachmentParameterivEXT" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true"/>
-       <glx vendorpriv="1428"/>
-    </function>
-
-    <function name="GenerateMipmapEXT" offset="assign">
-        <param name="target" type="GLenum"/>
-       <glx rop="4325"/>
-    </function>
-</category>
-
-<category name="GL_EXT_framebuffer_blit" number="316">
-    <enum name="READ_FRAMEBUFFER_EXT" value="0x8CA8"/>
-    <enum name="DRAW_FRAMEBUFFER_EXT" value="0x8CA9"/>
-    <enum name="DRAW_FRAMEBUFFER_BINDING_EXT" count="1" value="0x8CA6">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="READ_FRAMEBUFFER_BINDING_EXT" count="1" value="0x8CAA">
-        <size name="Get" mode="get"/>
-    </enum>
-    <function name="BlitFramebufferEXT" offset="assign" static_dispatch="false">
-        <param name="srcX0" type="GLint"/>
-        <param name="srcY0" type="GLint"/>
-        <param name="srcX1" type="GLint"/>
-        <param name="srcY1" type="GLint"/>
-        <param name="dstX0" type="GLint"/>
-        <param name="dstY0" type="GLint"/>
-        <param name="dstX1" type="GLint"/>
-        <param name="dstY1" type="GLint"/>
-        <param name="mask" type="GLbitfield"/>
-        <param name="filter" type="GLenum"/>
-        <glx rop="4330"/>
-    </function>
-</category>
-
-<category name="GL_EXT_framebuffer_multisample" number="317">
-    <enum name="RENDERBUFFER_SAMPLES_EXT"                  value="0x8CAB"/>
-    <enum name="FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT"    value="0x8D56"/>
-    <enum name="MAX_SAMPLES_EXT"                 count="1" value="0x8D57">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="RenderbufferStorageMultisampleEXT" alias="RenderbufferStorageMultisample">
-        <param name="target" type="GLenum"/>
-        <param name="samples" type="GLsizei"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-    </function>
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/EXT_packed_depth_stencil.xml b/src/mesa/glapi/gen/EXT_packed_depth_stencil.xml
deleted file mode 100644 (file)
index 5be8103..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<OpenGLAPI>
-<category name="GL_EXT_packed_depth_stencil" number="312">
-    <!-- These enums are shared with GL_NV_packed_depth_stencil. -->
-    <enum name="DEPTH_STENCIL_EXT"                        value="0x84F9"/>
-    <enum name="UNSIGNED_INT_24_8_EXT"                    value="0x84FA"/>
-
-    <enum name="DEPTH24_STENCIL8_EXT"                     value="0x88F0"/>
-
-    <enum name="TEXTURE_STENCIL_SIZE_EXT"      count="1"  value="0x88F1">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/EXT_provoking_vertex.xml b/src/mesa/glapi/gen/EXT_provoking_vertex.xml
deleted file mode 100644 (file)
index 71d2c72..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<!-- Note: no GLX protocol info yet. -->
-
-
-<OpenGLAPI>
-
-<category name="GL_EXT_provoking_vertex" number="364">
-
-    <enum name="FIRST_VERTEX_CONVENTION_EXT"                  value="0x8E4D"/>
-    <enum name="LAST_VERTEX_CONVENTION_EXT"                   value="0x8E4E"/>
-    <enum name="PROVOKING_VERTEX_EXT"                         value="0x8E4F"/>
-    <enum name="QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT" value="0x8E4C"/>
-
-    <function name="ProvokingVertexEXT" offset="assign">
-        <param name="mode" type="GLenum"/>
-    </function>
-
-</category>
-
-<category name="GL_ARB_provoking_vertex" number="64">
-
-    <enum name="FIRST_VERTEX_CONVENTION"                  value="0x8E4D"/>
-    <enum name="LAST_VERTEX_CONVENTION"                   value="0x8E4E"/>
-    <enum name="PROVOKING_VERTEX"                         value="0x8E4F"/>
-    <enum name="QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION" value="0x8E4C"/>
-
-    <function name="ProvokingVertex" alias="ProvokingVertexEXT">
-        <param name="mode" type="GLenum"/>
-    </function>
-
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/EXT_texture_array.xml b/src/mesa/glapi/gen/EXT_texture_array.xml
deleted file mode 100644 (file)
index b5b8bd4..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<OpenGLAPI>
-
-<category name="GL_EXT_texture_array" number="329">
-    <enum name="TEXTURE_1D_ARRAY_EXT"                      value="0x8C18"/>
-    <enum name="PROXY_TEXTURE_1D_ARRAY_EXT"                value="0x8C19"/>
-    <enum name="TEXTURE_2D_ARRAY_EXT"                      value="0x8C1A"/>
-    <enum name="PROXY_TEXTURE_2D_ARRAY_EXT"                value="0x8C1B"/>
-
-    <enum name="TEXTURE_BINDING_1D_ARRAY_EXT"   count="1"  value="0x8C1C">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <enum name="TEXTURE_BINDING_2D_ARRAY_EXT"   count="1"  value="0x8C1D">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <enum name="MAX_ARRAY_TEXTURE_LAYERS_EXT"   count="1"  value="0x88FF">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <enum name="COMPARE_REF_DEPTH_TO_TEXTURE_EXT" count="1" value="0x884E">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT"   count="1" value="0x8CD4">
-        <size name="GetFramebufferAttachmentParameterivEXT" mode="get"/>
-    </enum>
-
-    <function name="FramebufferTextureLayerEXT" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="attachment" type="GLenum"/>
-        <param name="texture" type="GLuint"/>
-        <param name="level" type="GLint"/>
-        <param name="layer" type="GLint"/>
-       <glx rop="237"/>
-    </function>
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/EXT_transform_feedback.xml b/src/mesa/glapi/gen/EXT_transform_feedback.xml
deleted file mode 100644 (file)
index abbed9b..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<!-- Note: no GLX protocol info yet. -->
-
-
-<OpenGLAPI>
-
-<category name="GL_EXT_transform_feedback" number="352">
-
-  <enum name="TRANSFORM_FEEDBACK_BUFFER_EXT"                  value="0x8C8E"/>
-  <enum name="TRANSFORM_FEEDBACK_BUFFER_START_EXT"            value="0x8C84"/>
-  <enum name="TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT"             value="0x8C85"/>
-  <enum name="TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT"          value="0x8C8F"/>
-  <enum name="INTERLEAVED_ATTRIBS_EXT"                        value="0x8C8C"/>
-  <enum name="SEPARATE_ATTRIBS_EXT"                           value="0x8C8D"/>
-  <enum name="PRIMITIVES_GENERATED_EXT"                       value="0x8C87"/>
-  <enum name="TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT"      value="0x8C88"/>
-  <enum name="RASTERIZER_DISCARD_EXT"                         value="0x8C89"/>
-  <enum name="MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT" value="0x8C8A"/>
-  <enum name="MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT"    value="0x8C8B"/>
-  <enum name="MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT" value="0x8C80"/>
-  <enum name="TRANSFORM_FEEDBACK_VARYINGS_EXT"                value="0x8C83"/>
-  <enum name="TRANSFORM_FEEDBACK_BUFFER_MODE_EXT"             value="0x8C7F"/>
-  <enum name="TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT"      value="0x8C76"/>
-
-  <function name="BindBufferRangeEXT" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-    <param name="buffer" type="GLuint"/>
-    <param name="offset" type="GLintptr"/>
-    <param name="size" type="GLsizeiptr"/>
-  </function>
-
-  <function name="BindBufferOffsetEXT" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-    <param name="buffer" type="GLuint"/>
-    <param name="offset" type="GLintptr"/>
-  </function>
-
-  <function name="BindBufferBaseEXT" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-    <param name="buffer" type="GLuint"/>
-  </function>
-
-  <function name="BeginTransformFeedbackEXT" offset="assign">
-    <param name="mode" type="GLenum"/>
-  </function>
-
-  <function name="EndTransformFeedbackEXT" offset="assign">
-  </function>
-
-  <function name="TransformFeedbackVaryingsEXT" offset="assign">
-    <param name="program" type="GLuint"/>
-    <param name="count" type="GLsizei"/>
-    <param name="varyings" type="const char **"/>
-    <param name="bufferMode" type="GLenum"/>
-  </function>
-
-  <function name="GetTransformFeedbackVaryingEXT" offset="assign">
-    <param name="program" type="GLuint"/>
-    <param name="index" type="GLuint"/>
-    <param name="bufSize" type="GLsizei"/>
-    <param name="length" type="GLsizei *"/>
-    <param name="size" type="GLsizei *"/>
-    <param name="type" type="GLenum *"/>
-    <param name="name" type="GLchar *"/>
-  </function>
-
-  <!-- Note: the glGetIntegerIndexedvEXT() and glGetBooleanIndexedvEXT
-       functions are defined in the EXT_draw_buffers2.xml file -->
-
-</category>
-
-
-<!-- Note: these 3.0 entrypoints might get moved to a new file -->
-
-<category name="3.0">
-
-  <function name="BindBufferRange" alias="BindBufferRangeEXT">
-    <param name="target" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-    <param name="buffer" type="GLuint"/>
-    <param name="offset" type="GLintptr"/>
-    <param name="size" type="GLsizeiptr"/>
-  </function>
-
-  <function name="BindBufferBase" alias="BindBufferBaseEXT">
-    <param name="target" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-    <param name="buffer" type="GLuint"/>
-  </function>
-
-  <function name="BeginTransformFeedback" alias="BeginTransformFeedbackEXT">
-    <param name="mode" type="GLenum"/>
-  </function>
-
-  <function name="EndTransformFeedback" alias="EndTransformFeedbackEXT">
-  </function>
-
-  <function name="TransformFeedbackVaryings" alias="TransformFeedbackVaryingsEXT">
-    <param name="program" type="GLuint"/>
-    <param name="count" type="GLsizei"/>
-    <param name="varyings" type="const char **"/>
-    <param name="bufferMode" type="GLenum"/>
-  </function>
-
-  <function name="GetTransformFeedbackVarying" alias="GetTransformFeedbackVaryingEXT">
-    <param name="program" type="GLuint"/>
-    <param name="index" type="GLuint"/>
-    <param name="bufSize" type="GLsizei"/>
-    <param name="length" type="GLsizei *"/>
-    <param name="size" type="GLsizei *"/>
-    <param name="type" type="GLenum *"/>
-    <param name="name" type="GLchar *"/>
-  </function>
-
-</category>
-
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/GL3.xml b/src/mesa/glapi/gen/GL3.xml
deleted file mode 100644 (file)
index 0d8d935..0000000
+++ /dev/null
@@ -1,581 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<!-- Note: no GLX protocol info yet. -->
-
-
-<OpenGLAPI>
-
-<category name="3.0">
-
-  <enum name="COMPARE_REF_TO_TEXTURE"           value="0x884E"/>
-  <enum name="CLIP_DISTANCE0"                   value="0x3000"/>
-  <enum name="CLIP_DISTANCE1"                   value="0x3001"/>
-  <enum name="CLIP_DISTANCE2"                   value="0x3002"/>
-  <enum name="CLIP_DISTANCE3"                   value="0x3003"/>
-  <enum name="CLIP_DISTANCE4"                   value="0x3004"/>
-  <enum name="CLIP_DISTANCE5"                   value="0x3005"/>
-  <enum name="CLIP_DISTANCE6"                   value="0x3006"/>
-  <enum name="CLIP_DISTANCE7"                   value="0x3007"/>
-  <enum name="MAX_CLIP_DISTANCES"               value="0x0D32"/>
-  <enum name="MAJOR_VERSION"                    value="0x821B"/>
-  <enum name="MINOR_VERSION"                    value="0x821C"/>
-  <enum name="NUM_EXTENSIONS"                   value="0x821D"/>
-  <enum name="CONTEXT_FLAGS"                    value="0x821E"/>
-  <enum name="DEPTH_BUFFER"                     value="0x8223"/>
-  <enum name="STENCIL_BUFFER"                   value="0x8224"/>
-  <enum name="COMPRESSED_RED"                   value="0x8225"/>
-  <enum name="COMPRESSED_RG"                    value="0x8226"/>
-  <enum name="CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT"  value="0x0001"/>
-  <enum name="RGBA32F"                          value="0x8814"/>
-  <enum name="RGB32F"                           value="0x8815"/>
-  <enum name="RGBA16F"                          value="0x881A"/>
-  <enum name="RGB16F"                           value="0x881B"/>
-  <enum name="VERTEX_ATTRIB_ARRAY_INTEGER"      value="0x88FD"/>
-  <enum name="MAX_ARRAY_TEXTURE_LAYERS"         value="0x88FF"/>
-  <enum name="MIN_PROGRAM_TEXEL_OFFSET"         value="0x8904"/>
-  <enum name="MAX_PROGRAM_TEXEL_OFFSET"         value="0x8905"/>
-  <enum name="CLAMP_READ_COLOR"                 value="0x891C"/>
-  <enum name="FIXED_ONLY"                       value="0x891D"/>
-  <enum name="MAX_VARYING_COMPONENTS"           value="0x8B4B"/>
-  <enum name="TEXTURE_1D_ARRAY"                 value="0x8C18"/>
-  <enum name="PROXY_TEXTURE_1D_ARRAY"           value="0x8C19"/>
-  <enum name="TEXTURE_2D_ARRAY"                 value="0x8C1A"/>
-  <enum name="PROXY_TEXTURE_2D_ARRAY"           value="0x8C1B"/>
-  <enum name="TEXTURE_BINDING_1D_ARRAY"         value="0x8C1C"/>
-  <enum name="TEXTURE_BINDING_2D_ARRAY"         value="0x8C1D"/>
-  <enum name="R11F_G11F_B10F"                   value="0x8C3A"/>
-  <enum name="UNSIGNED_INT_10F_11F_11F_REV"     value="0x8C3B"/>
-  <enum name="RGB9_E5"                          value="0x8C3D"/>
-  <enum name="UNSIGNED_INT_5_9_9_9_REV"         value="0x8C3E"/>
-  <enum name="TEXTURE_SHARED_SIZE"              value="0x8C3F"/>
-  <enum name="TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH"  value="0x8C76"/>
-  <enum name="TRANSFORM_FEEDBACK_BUFFER_MODE"   value="0x8C7F"/>
-  <enum name="MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS"  value="0x8C80"/>
-  <enum name="TRANSFORM_FEEDBACK_VARYINGS"      value="0x8C83"/>
-  <enum name="TRANSFORM_FEEDBACK_BUFFER_START"  value="0x8C84"/>
-  <enum name="TRANSFORM_FEEDBACK_BUFFER_SIZE"   value="0x8C85"/>
-  <enum name="PRIMITIVES_GENERATED"             value="0x8C87"/>
-  <enum name="TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN"  value="0x8C88"/>
-  <enum name="RASTERIZER_DISCARD"               value="0x8C89"/>
-  <enum name="MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS"  value="0x8C8A"/>
-  <enum name="MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS"  value="0x8C8B"/>
-  <enum name="INTERLEAVED_ATTRIBS"              value="0x8C8C"/>
-  <enum name="SEPARATE_ATTRIBS"                 value="0x8C8D"/>
-  <enum name="TRANSFORM_FEEDBACK_BUFFER"        value="0x8C8E"/>
-  <enum name="TRANSFORM_FEEDBACK_BUFFER_BINDING"  value="0x8C8F"/>
-  <enum name="RGBA32UI"                         value="0x8D70"/>
-  <enum name="RGB32UI"                          value="0x8D71"/>
-  <enum name="RGBA16UI"                         value="0x8D76"/>
-  <enum name="RGB16UI"                          value="0x8D77"/>
-  <enum name="RGBA8UI"                          value="0x8D7C"/>
-  <enum name="RGB8UI"                           value="0x8D7D"/>
-  <enum name="RGBA32I"                          value="0x8D82"/>
-  <enum name="RGB32I"                           value="0x8D83"/>
-  <enum name="RGBA16I"                          value="0x8D88"/>
-  <enum name="RGB16I"                           value="0x8D89"/>
-  <enum name="RGBA8I"                           value="0x8D8E"/>
-  <enum name="RGB8I"                            value="0x8D8F"/>
-  <enum name="RED_INTEGER"                      value="0x8D94"/>
-  <enum name="GREEN_INTEGER"                    value="0x8D95"/>
-  <enum name="BLUE_INTEGER"                     value="0x8D96"/>
-  <enum name="RGB_INTEGER"                      value="0x8D98"/>
-  <enum name="RGBA_INTEGER"                     value="0x8D99"/>
-  <enum name="BGR_INTEGER"                      value="0x8D9A"/>
-  <enum name="BGRA_INTEGER"                     value="0x8D9B"/>
-  <enum name="SAMPLER_1D_ARRAY"                 value="0x8DC0"/>
-  <enum name="SAMPLER_2D_ARRAY"                 value="0x8DC1"/>
-  <enum name="SAMPLER_1D_ARRAY_SHADOW"          value="0x8DC3"/>
-  <enum name="SAMPLER_2D_ARRAY_SHADOW"          value="0x8DC4"/>
-  <enum name="SAMPLER_CUBE_SHADOW"              value="0x8DC5"/>
-  <enum name="UNSIGNED_INT_VEC2"                value="0x8DC6"/>
-  <enum name="UNSIGNED_INT_VEC3"                value="0x8DC7"/>
-  <enum name="UNSIGNED_INT_VEC4"                value="0x8DC8"/>
-  <enum name="INT_SAMPLER_1D"                   value="0x8DC9"/>
-  <enum name="INT_SAMPLER_2D"                   value="0x8DCA"/>
-  <enum name="INT_SAMPLER_3D"                   value="0x8DCB"/>
-  <enum name="INT_SAMPLER_CUBE"                 value="0x8DCC"/>
-  <enum name="INT_SAMPLER_1D_ARRAY"             value="0x8DCE"/>
-  <enum name="INT_SAMPLER_2D_ARRAY"             value="0x8DCF"/>
-  <enum name="UNSIGNED_INT_SAMPLER_1D"          value="0x8DD1"/>
-  <enum name="UNSIGNED_INT_SAMPLER_2D"          value="0x8DD2"/>
-  <enum name="UNSIGNED_INT_SAMPLER_3D"          value="0x8DD3"/>
-  <enum name="UNSIGNED_INT_SAMPLER_CUBE"        value="0x8DD4"/>
-  <enum name="UNSIGNED_INT_SAMPLER_1D_ARRAY"    value="0x8DD6"/>
-  <enum name="UNSIGNED_INT_SAMPLER_2D_ARRAY"    value="0x8DD7"/>
-  <enum name="QUERY_WAIT"                       value="0x8E13"/>
-  <enum name="QUERY_NO_WAIT"                    value="0x8E14"/>
-  <enum name="QUERY_BY_REGION_WAIT"             value="0x8E15"/>
-  <enum name="QUERY_BY_REGION_NO_WAIT"          value="0x8E16"/>
-  <enum name="BUFFER_ACCESS_FLAGS"              value="0x911F"/>
-  <enum name="BUFFER_MAP_LENGTH"                value="0x9120"/>
-  <enum name="BUFFER_MAP_OFFSET"                value="0x9121"/>
-
-  <function name="ClearBufferiv" offset="assign">
-    <param name="buffer" type="GLenum"/>
-    <param name="drawbuffer" type="GLint"/>
-    <param name="value" type="const GLint *"/>
-  </function>
-
-  <function name="ClearBufferuiv" offset="assign">
-    <param name="buffer" type="GLenum"/>
-    <param name="drawbuffer" type="GLint"/>
-    <param name="value" type="const GLuint *"/>
-  </function>
-
-  <function name="ClearBufferfv" offset="assign">
-    <param name="buffer" type="GLenum"/>
-    <param name="drawbuffer" type="GLint"/>
-    <param name="value" type="const GLfloat *"/>
-  </function>
-
-  <function name="ClearBufferfi" offset="assign">
-    <param name="buffer" type="GLenum"/>
-    <param name="drawbuffer" type="GLint"/>
-    <param name="depth" type="const GLfloat"/>
-    <param name="stencil" type="const GLint"/>
-  </function>
-
-  <function name="GetStringi" offset="assign">
-    <param name="name" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-      <return type="const GLubyte *"/>
-  </function>
-
-  <function name="IsEnabledi" offset="assign">
-    <param name="cap" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-      <return type="GLboolean"/>
-  </function>
-
-  <function name="GetFragDataLocation" offset="assign">
-    <param name="program" type="GLuint"/>
-    <param name="name" type="const GLchar *"/>
-      <return type="GLint"/>
-  </function>
-
-  <function name="BindFragDataLocation" offset="assign">
-    <param name="program" type="GLuint"/>
-    <param name="color" type="GLuint"/>
-    <param name="name" type="const GLchar *"/>
-  </function>
-
-  <function name="ColorMaski" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="r" type="GLboolean"/>
-    <param name="g" type="GLboolean"/>
-    <param name="b" type="GLboolean"/>
-    <param name="a" type="GLboolean"/>
-  </function>
-
-  <function name="GetBooleani_v" offset="assign">
-    <param name="cap" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-    <param name="value" type="GLboolean *"/>
-  </function>
-
-  <function name="GetIntegeri_v" offset="assign">
-    <param name="cap" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-    <param name="value" type="GLint *"/>
-  </function>
-
-  <function name="Enablei" offset="assign">
-    <param name="cap" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-  </function>
-
-  <function name="Disablei" offset="assign">
-    <param name="cap" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-  </function>
-
-  <function name="BeginTransformFeedback" offset="assign">
-    <param name="mode" type="GLenum"/>
-  </function>
-
-  <function name="EndTransformFeedback" offset="assign">
-  </function>
-
-  <function name="BindBufferRange" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-    <param name="buffer" type="GLuint"/>
-    <param name="offset" type="GLintptr"/>
-    <param name="size" type="GLsizeiptr"/>
-  </function>
-
-  <function name="BindBufferBase" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-    <param name="buffer" type="GLuint"/>
-  </function>
-
-  <function name="TransformFeedbackVaryings" offset="assign">
-    <param name="program" type="GLuint"/>
-    <param name="count" type="GLsizei"/>
-    <param name="varyings" type="const GLchar* *"/>
-    <param name="bufferMode" type="GLenum"/>
-  </function>
-
-  <function name="GetTransformFeedbackVarying" offset="assign">
-    <param name="program" type="GLuint"/>
-    <param name="index" type="GLuint"/>
-    <param name="bufSize" type="GLsizei"/>
-    <param name="length" type="GLsizei *"/>
-    <param name="size" type="GLsizei *"/>
-    <param name="type" type="GLenum *"/>
-    <param name="name" type="GLchar *"/>
-  </function>
-
-  <function name="ClampColor" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="clamp" type="GLenum"/>
-  </function>
-
-  <function name="BeginConditionalRender" offset="assign">
-    <param name="id" type="GLuint"/>
-    <param name="mode" type="GLenum"/>
-  </function>
-
-  <function name="EndConditionalRender" offset="assign">
-  </function>
-
-  <function name="VertexAttribIPointer" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="size" type="GLint"/>
-    <param name="type" type="GLenum"/>
-    <param name="stride" type="GLsizei"/>
-    <param name="pointer" type="const GLvoid *"/>
-  </function>
-
-  <function name="GetVertexAttribIiv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="pname" type="GLenum"/>
-    <param name="params" type="GLint *"/>
-  </function>
-
-  <function name="GetVertexAttribIuiv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="pname" type="GLenum"/>
-    <param name="params" type="GLuint *"/>
-  </function>
-
-  <function name="VertexAttribI1i" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="x" type="GLint"/>
-  </function>
-
-  <function name="VertexAttribI2i" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="x" type="GLint"/>
-    <param name="y" type="GLint"/>
-  </function>
-
-  <function name="VertexAttribI3i" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="x" type="GLint"/>
-    <param name="y" type="GLint"/>
-    <param name="z" type="GLint"/>
-  </function>
-
-  <function name="VertexAttribI4i" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="x" type="GLint"/>
-    <param name="y" type="GLint"/>
-    <param name="z" type="GLint"/>
-    <param name="w" type="GLint"/>
-  </function>
-
-  <function name="VertexAttribI1ui" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="x" type="GLuint"/>
-  </function>
-
-  <function name="VertexAttribI2ui" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="x" type="GLuint"/>
-    <param name="y" type="GLuint"/>
-  </function>
-
-  <function name="VertexAttribI3ui" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="x" type="GLuint"/>
-    <param name="y" type="GLuint"/>
-    <param name="z" type="GLuint"/>
-  </function>
-
-  <function name="VertexAttribI4ui" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="x" type="GLuint"/>
-    <param name="y" type="GLuint"/>
-    <param name="z" type="GLuint"/>
-    <param name="w" type="GLuint"/>
-  </function>
-
-  <function name="VertexAttribI1iv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLint *"/>
-  </function>
-
-  <function name="VertexAttribI2iv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLint *"/>
-  </function>
-
-  <function name="VertexAttribI3iv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLint *"/>
-  </function>
-
-  <function name="VertexAttribI4iv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLint *"/>
-  </function>
-
-  <function name="VertexAttribI1uiv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLuint *"/>
-  </function>
-
-  <function name="VertexAttribI2uiv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLuint *"/>
-  </function>
-
-  <function name="VertexAttribI3uiv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLuint *"/>
-  </function>
-
-  <function name="VertexAttribI4uiv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLuint *"/>
-  </function>
-
-  <function name="VertexAttribI4bv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLbyte *"/>
-  </function>
-
-  <function name="VertexAttribI4sv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLshort *"/>
-  </function>
-
-  <function name="VertexAttribI4ubv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLubyte *"/>
-  </function>
-
-  <function name="VertexAttribI4usv" offset="assign">
-    <param name="index" type="GLuint"/>
-    <param name="v" type="const GLushort *"/>
-  </function>
-
-  <function name="GetUniformuiv" offset="assign">
-    <param name="program" type="GLuint"/>
-    <param name="location" type="GLint"/>
-    <param name="params" type="GLuint *"/>
-  </function>
-
-  <function name="Uniform1ui" offset="assign">
-    <param name="locatoin" type="GLint"/>
-    <param name="x" type="GLuint"/>
-  </function>
-
-  <function name="Uniform2ui" offset="assign">
-    <param name="location" type="GLint"/>
-    <param name="x" type="GLuint"/>
-    <param name="y" type="GLuint"/>
-  </function>
-
-  <function name="Uniform3ui" offset="assign">
-    <param name="location" type="GLint"/>
-    <param name="x" type="GLuint"/>
-    <param name="y" type="GLuint"/>
-    <param name="z" type="GLuint"/>
-  </function>
-
-  <function name="Uniform4ui" offset="assign">
-    <param name="location" type="GLint"/>
-    <param name="x" type="GLuint"/>
-    <param name="y" type="GLuint"/>
-    <param name="z" type="GLuint"/>
-    <param name="w" type="GLuint"/>
-  </function>
-
-  <function name="Uniform1uiv" offset="assign">
-    <param name="location" type="GLint"/>
-    <param name="count" type="GLsizei"/>
-    <param name="value" type="const GLuint *"/>
-  </function>
-
-  <function name="Uniform2uiv" offset="assign">
-    <param name="location" type="GLint"/>
-    <param name="count" type="GLsizei"/>
-    <param name="value" type="const GLuint *"/>
-  </function>
-
-  <function name="Uniform3uiv" offset="assign">
-    <param name="location" type="GLint"/>
-    <param name="count" type="GLsizei"/>
-    <param name="value" type="const GLuint *"/>
-  </function>
-
-  <function name="Uniform4uiv" offset="assign">
-    <param name="location" type="GLint"/>
-    <param name="count" type="GLsizei"/>
-    <param name="value" type="const GLuint *"/>
-  </function>
-
-  <function name="TexParameterIiv" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="pname" type="GLenum"/>
-    <param name="value" type="const GLint *"/>
-  </function>
-
-  <function name="TexParameterIuiv" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="pname" type="GLenum"/>
-    <param name="value" type="const GLuint *"/>
-  </function>
-
-  <function name="GetTexParameterIiv" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="pname" type="GLenum"/>
-    <param name="value" type="GLint *"/>
-  </function>
-
-  <function name="GetTexParameterIuiv" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="pname" type="GLenum"/>
-    <param name="value" type="GLuint *"/>
-  </function>
-
-</category>
-
-
-<category name="3.1">
-
-  <enum name="SAMPLER_2D_RECT"                value="0x8B63"/>
-  <enum name="SAMPLER_2D_RECT_SHADOW"         value="0x8B64"/>
-  <enum name="SAMPLER_BUFFER"                 value="0x8DC2"/>
-  <enum name="INT_SAMPLER_2D_RECT"            value="0x8DCD"/>
-  <enum name="INT_SAMPLER_BUFFER"             value="0x8DD0"/>
-  <enum name="UNSIGNED_INT_SAMPLER_2D_RECT"   value="0x8DD5"/>
-  <enum name="UNSIGNED_INT_SAMPLER_BUFFER"    value="0x8DD8"/>
-  <enum name="TEXTURE_BUFFER"                 value="0x8C2A"/>
-  <enum name="MAX_TEXTURE_BUFFER_SIZE"        value="0x8C2B"/>
-  <enum name="TEXTURE_BINDING_BUFFER"         value="0x8C2C"/>
-  <enum name="TEXTURE_BUFFER_DATA_STORE_BINDING" value="0x8C2D"/>
-  <enum name="TEXTURE_BUFFER_FORMAT"          value="0x8C2E"/>
-  <enum name="TEXTURE_RECTANGLE"              value="0x84F5"/>
-  <enum name="TEXTURE_BINDING_RECTANGLE"      value="0x84F6"/>
-  <enum name="PROXY_TEXTURE_RECTANGLE"        value="0x84F7"/>
-  <enum name="MAX_RECTANGLE_TEXTURE_SIZE"     value="0x84F8"/>
-  <enum name="RED_SNORM"                      value="0x8F90"/>
-  <enum name="RG_SNORM"                       value="0x8F91"/>
-  <enum name="RGB_SNORM"                      value="0x8F92"/>
-  <enum name="RGBA_SNORM"                     value="0x8F93"/>
-  <enum name="R8_SNORM"                       value="0x8F94"/>
-  <enum name="RG8_SNORM"                      value="0x8F95"/>
-  <enum name="RGB8_SNORM"                     value="0x8F96"/>
-  <enum name="RGBA8_SNORM"                    value="0x8F97"/>
-  <enum name="R16_SNORM"                      value="0x8F98"/>
-  <enum name="RG16_SNORM"                     value="0x8F99"/>
-  <enum name="RGB16_SNORM"                    value="0x8F9A"/>
-  <enum name="RGBA16_SNORM"                   value="0x8F9B"/>
-  <enum name="SIGNED_NORMALIZED"              value="0x8F9C"/>
-  <enum name="PRIMITIVE_RESTART"              value="0x8F9D"/>
-  <enum name="PRIMITIVE_RESTART_INDEX"        value="0x8F9E"/>
-
-  <function name="DrawArraysInstanced" offset="assign">
-    <param name="mode" type="GLenum"/>
-    <param name="first" type="GLint"/>
-    <param name="count" type="GLsizei"/>
-    <param name="primcount" type="GLsizei"/>
-  </function>
-
-  <function name="DrawElementsInstanced" offset="assign">
-    <param name="mode" type="GLenum"/>
-    <param name="count" type="GLsizei"/>
-    <param name="type" type="GLenum"/>
-    <param name="indices" type="const GLvoid *"/>
-    <param name="primcount" type="GLsizei"/>
-  </function>
-
-  <function name="TexBuffer" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="internalFormat" type="GLenum"/>
-    <param name="buffer" type="GLuint"/>
-  </function>
-
-  <function name="glPrimitiveRestartIndex" offset="assign">
-    <param name="index" type="GLuint"/>
-  </function>
-
-</category>
-
-
-<category name="3.2">
-
-  <enum name="CONTEXT_CORE_PROFILE_BIT"             value="0x00000001"/>
-  <enum name="CONTEXT_COMPATIBILITY_PROFILE_BIT"    value="0x00000002"/>
-  <enum name="LINES_ADJACENCY"                      value="0x000A"/>
-  <enum name="LINE_STRIP_ADJACENCY"                 value="0x000B"/>
-  <enum name="TRIANGLES_ADJACENCY"                  value="0x000C"/>
-  <enum name="TRIANGLE_STRIP_ADJACENCY"             value="0x000D"/>
-  <enum name="PROGRAM_POINT_SIZE"                   value="0x8642"/>
-  <enum name="MAX_GEOMETRY_TEXTURE_IMAGE_UNITS"     value="0x8C29"/>
-  <enum name="FRAMEBUFFER_ATTACHMENT_LAYERED"       value="0x8DA7"/>
-  <enum name="FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS" value="0x8DA8"/>
-  <enum name="GEOMETRY_SHADER"                      value="0x8DD9"/>
-  <enum name="GEOMETRY_VERTICES_OUT"                value="0x8916"/>
-  <enum name="GEOMETRY_INPUT_TYPE"                  value="0x8917"/>
-  <enum name="GEOMETRY_OUTPUT_TYPE"                 value="0x8918"/>
-  <enum name="MAX_GEOMETRY_UNIFORM_COMPONENTS"      value="0x8DDF"/>
-  <enum name="MAX_GEOMETRY_OUTPUT_VERTICES"         value="0x8DE0"/>
-  <enum name="MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS" value="0x8DE1"/>
-  <enum name="MAX_VERTEX_OUTPUT_COMPONENTS"         value="0x9122"/>
-  <enum name="MAX_GEOMETRY_INPUT_COMPONENTS"        value="0x9123"/>
-  <enum name="MAX_GEOMETRY_OUTPUT_COMPONENTS"       value="0x9124"/>
-  <enum name="MAX_FRAGMENT_INPUT_COMPONENTS"        value="0x9125"/>
-  <enum name="CONTEXT_PROFILE_MASK"                 value="0x9126"/>
-
-  <function name="GetInteger64i_v" offset="assign">
-    <param name="cap" type="GLenum"/>
-    <param name="index" type="GLuint"/>
-    <param name="data" type="GLint64 *"/>
-  </function>
-
-  <function name="GetBufferParameteri64v" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="pname" type="GLenum"/>
-    <param name="params" type="GLint64 *"/>
-  </function>
-
-  <function name="ProgramParameteri" offset="assign">
-    <param name="program" type="GLuint"/>
-    <param name="pname" type="GLenum"/>
-    <param name="value" type="GLint"/>
-  </function>
-
-  <function name="FramebufferTexture" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="attachment" type="GLenum"/>
-    <param name="texture" type="GLuint"/>
-    <param name="level" type="GLint"/>
-  </function>
-
-  <function name="FramebufferTextureFace" offset="assign">
-    <param name="target" type="GLenum"/>
-    <param name="attachment" type="GLenum"/>
-    <param name="texture" type="GLuint"/>
-    <param name="level" type="GLint"/>
-    <param name="face" type="GLenum"/>
-  </function>
-
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/Makefile b/src/mesa/glapi/gen/Makefile
deleted file mode 100644 (file)
index 289ffbd..0000000
+++ /dev/null
@@ -1,207 +0,0 @@
-# This file isn't used during a normal compilation since we don't want to
-# require Python in order to compile Mesa.
-# Instead, when the Mesa developers update/change the API interface it's
-# up to him/her to re-run this makefile and check in the newly generated files.
-
-
-TOP = ../../../..
-include $(TOP)/configs/current
-
-MESA_DIR = $(TOP)/src/mesa
-MESA_GLAPI_DIR = $(TOP)/src/mesa/glapi
-MESA_GLX_DIR = $(TOP)/src/glx
-
-MESA_GLAPI_OUTPUTS = \
-       $(MESA_GLAPI_DIR)/glprocs.h \
-       $(MESA_GLAPI_DIR)/glapitemp.h \
-       $(MESA_GLAPI_DIR)/glapioffsets.h \
-       $(MESA_GLAPI_DIR)/glapitable.h \
-       $(MESA_GLAPI_DIR)/glapidispatch.h
-
-MESA_GLAPI_ASM_OUTPUTS = \
-       $(MESA_GLAPI_DIR)/glapi_x86.S \
-       $(MESA_GLAPI_DIR)/glapi_x86-64.S \
-       $(MESA_GLAPI_DIR)/glapi_sparc.S
-
-MESA_OUTPUTS = \
-       $(MESA_GLAPI_OUTPUTS) \
-       $(MESA_GLAPI_ASM_OUTPUTS) \
-       $(MESA_DIR)/main/enums.c \
-       $(MESA_DIR)/main/remap_helper.h \
-       $(MESA_GLX_DIR)/indirect.c \
-       $(MESA_GLX_DIR)/indirect.h \
-       $(MESA_GLX_DIR)/indirect_init.c \
-       $(MESA_GLX_DIR)/indirect_size.h \
-       $(MESA_GLX_DIR)/indirect_size.c
-
-######################################################################
-
-XORG_GLX_DIR = $(XORG_BASE)/glx
-XORG_GLAPI_DIR = $(XORG_BASE)/glx/glapi
-
-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 \
-       $(XORG_GLAPI_DIR)/glthread.h
-
-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
-
-XORG_OUTPUTS = \
-       $(XORG_GLAPI_FILES) \
-       $(XORG_GLAPI_OUTPUTS) \
-       $(XORG_GLX_DIR)/indirect_dispatch.c \
-       $(XORG_GLX_DIR)/indirect_dispatch_swap.c \
-       $(XORG_GLX_DIR)/indirect_dispatch.h \
-       $(XORG_GLX_DIR)/indirect_reqsize.c \
-       $(XORG_GLX_DIR)/indirect_reqsize.h \
-       $(XORG_GLX_DIR)/indirect_size.h \
-       $(XORG_GLX_DIR)/indirect_size_get.c \
-       $(XORG_GLX_DIR)/indirect_size_get.h \
-       $(XORG_GLX_DIR)/indirect_table.c
-
-######################################################################
-
-API_XML = \
-       gl_API.xml \
-       ARB_copy_buffer.xml \
-       ARB_depth_clamp.xml \
-       ARB_draw_elements_base_vertex.xml \
-       ARB_draw_instanced.xml \
-       ARB_framebuffer_object.xml \
-       ARB_map_buffer_range.xml \
-       ARB_seamless_cube_map.xml \
-       ARB_sync.xml \
-       ARB_vertex_array_object.xml \
-       APPLE_object_purgeable.xml \
-       APPLE_vertex_array_object.xml \
-       EXT_draw_buffers2.xml \
-       EXT_framebuffer_object.xml \
-       EXT_packed_depth_stencil.xml \
-       EXT_provoking_vertex.xml \
-       EXT_texture_array.xml \
-       EXT_transform_feedback.xml \
-       NV_conditional_render.xml \
-       OES_EGL_image.xml
-
-COMMON = $(API_XML) gl_XML.py glX_XML.py license.py typeexpr.py
-
-COMMON_GLX = $(COMMON) glX_API.xml glX_XML.py glX_proto_common.py
-
-######################################################################
-
-all: mesa xorg
-
-mesa: $(MESA_OUTPUTS)
-
-xorg: check-xorg-source $(XORG_OUTPUTS)
-
-check-xorg-source:
-       @if ! test -d $(XORG_GLX_DIR); then \
-               echo "ERROR: Must specify path to xserver/GL/GLX checkout; set XORG_GLX_DIR."; \
-               exit 1; \
-       fi
-
-clean:
-       -rm -f *~ *.pyo
-       -rm -f $(MESA_OUTPUTS)
-
-######################################################################
-
-$(XORG_GLAPI_DIR)/%.c: $(MESA_GLAPI_DIR)/%.c
-       cp $< $@
-
-$(XORG_GLAPI_DIR)/%.h: $(MESA_GLAPI_DIR)/%.h
-       cp $< $@
-
-######################################################################
-
-$(MESA_GLAPI_DIR)/glprocs.h: gl_procs.py $(COMMON)
-       $(PYTHON2) $(PYTHON_FLAGS) $< > $@
-
-$(MESA_GLAPI_DIR)/glapitemp.h: gl_apitemp.py $(COMMON)
-       $(PYTHON2) $(PYTHON_FLAGS) $< > $@
-
-$(MESA_GLAPI_DIR)/glapioffsets.h: gl_offsets.py $(COMMON)
-       $(PYTHON2) $(PYTHON_FLAGS) $< > $@
-
-$(MESA_GLAPI_DIR)/glapitable.h: gl_table.py $(COMMON)
-       $(PYTHON2) $(PYTHON_FLAGS) $< > $@
-
-$(MESA_GLAPI_DIR)/glapidispatch.h: gl_table.py $(COMMON)
-       $(PYTHON2) $(PYTHON_FLAGS) $< -m remap_table > $@
-
-######################################################################
-
-$(MESA_GLAPI_DIR)/glapi_x86.S: gl_x86_asm.py $(COMMON)
-       $(PYTHON2) $(PYTHON_FLAGS) $< > $@
-
-$(MESA_GLAPI_DIR)/glapi_x86-64.S: gl_x86-64_asm.py $(COMMON)
-       $(PYTHON2) $(PYTHON_FLAGS) $< > $@
-
-$(MESA_GLAPI_DIR)/glapi_sparc.S: gl_SPARC_asm.py $(COMMON)
-       $(PYTHON2) $(PYTHON_FLAGS) $< > $@
-
-######################################################################
-
-$(MESA_DIR)/main/enums.c: gl_enums.py $(COMMON) $(ES_API)
-       $(PYTHON2) $(PYTHON_FLAGS) $< -f gl_API.xml \
-               -f $(MESA_DIR)/es/glapi/es1_API.xml \
-               -f $(MESA_DIR)/es/glapi/es2_API.xml > $@
-
-$(MESA_DIR)/main/remap_helper.h: remap_helper.py $(COMMON)
-       $(PYTHON2) $(PYTHON_FLAGS) $< > $@
-
-######################################################################
-
-$(MESA_GLX_DIR)/indirect.c: glX_proto_send.py $(COMMON_GLX)
-       $(PYTHON2) $(PYTHON_FLAGS) $< -m proto | $(INDENT) $(INDENT_FLAGS) > $@
-
-$(MESA_GLX_DIR)/indirect.h: glX_proto_send.py $(COMMON_GLX)
-       $(PYTHON2) $(PYTHON_FLAGS) $< -m init_h > $@
-
-$(MESA_GLX_DIR)/indirect_init.c: glX_proto_send.py $(COMMON_GLX)
-       $(PYTHON2) $(PYTHON_FLAGS) $< -m init_c > $@
-
-$(MESA_GLX_DIR)/indirect_size.h $(XORG_GLX_DIR)/indirect_size.h: glX_proto_size.py $(COMMON_GLX)
-       $(PYTHON2) $(PYTHON_FLAGS) $< -m size_h --only-set -h _INDIRECT_SIZE_H_ \
-         | $(INDENT) $(INDENT_FLAGS) > $@
-
-$(MESA_GLX_DIR)/indirect_size.c: glX_proto_size.py $(COMMON_GLX)
-       $(PYTHON2) $(PYTHON_FLAGS) $< -m size_c --only-set \
-         | $(INDENT) $(INDENT_FLAGS) > $@
-
-######################################################################
-
-$(XORG_GLX_DIR)/indirect_dispatch.c: glX_proto_recv.py $(COMMON_GLX)
-       $(PYTHON2) $(PYTHON_FLAGS) $< -m dispatch_c > $@
-
-$(XORG_GLX_DIR)/indirect_dispatch_swap.c: glX_proto_recv.py $(COMMON_GLX)
-       $(PYTHON2) $(PYTHON_FLAGS) $< -m dispatch_c -s > $@
-
-$(XORG_GLX_DIR)/indirect_dispatch.h: glX_proto_recv.py gl_and_glX_API.xml $(COMMON_GLX)
-       $(PYTHON2) $(PYTHON_FLAGS) $< -m dispatch_h -f gl_and_glX_API.xml -s > $@
-
-$(XORG_GLX_DIR)/indirect_size_get.h: glX_proto_size.py $(COMMON_GLX)
-       $(PYTHON2) $(PYTHON_FLAGS) $< -m size_h --only-get -h '_INDIRECT_SIZE_GET_H_' \
-         | $(INDENT) $(INDENT_FLAGS) > $@
-
-$(XORG_GLX_DIR)/indirect_size_get.c: glX_proto_size.py $(COMMON_GLX)
-       $(PYTHON2) $(PYTHON_FLAGS) $< -m size_c | $(INDENT) $(INDENT_FLAGS) > $@
-
-$(XORG_GLX_DIR)/indirect_reqsize.h: glX_proto_size.py $(COMMON_GLX)
-       $(PYTHON2) $(PYTHON_FLAGS) $< -m reqsize_h --only-get -h '_INDIRECT_SIZE_GET_H_' \
-         | $(INDENT) $(INDENT_FLAGS) -l200 > $@
-
-$(XORG_GLX_DIR)/indirect_reqsize.c: glX_proto_size.py $(COMMON_GLX)
-       $(PYTHON2) $(PYTHON_FLAGS) $< -m reqsize_c | $(INDENT) $(INDENT_FLAGS) > $@
-
-$(XORG_GLX_DIR)/indirect_table.c: glX_server_table.py gl_and_glX_API.xml $(COMMON_GLX)
-       $(PYTHON2) $(PYTHON_FLAGS) $< -f gl_and_glX_API.xml > $@
diff --git a/src/mesa/glapi/gen/NV_conditional_render.xml b/src/mesa/glapi/gen/NV_conditional_render.xml
deleted file mode 100644 (file)
index 8bb31dd..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<!-- Note: no GLX protocol info yet. -->
-
-
-<OpenGLAPI>
-
-<category name="GL_NV_condtitional_render" number="346">
-
-    <enum name="QUERY_WAIT_NV"               value="0x8E13"/>
-    <enum name="QUERY_NO_WAIT_NV"            value="0x8E14"/>
-    <enum name="QUERY_BY_REGION_WAIT_NV"     value="0x8E15"/>
-    <enum name="QUERY_BY_REGION_NO_WAIT_NV"  value="0x8E16"/>
-
-    <function name="BeginConditionalRenderNV" offset="assign">
-       <param name="query" type="GLuint"/>
-       <param name="mode" type="GLenum"/>
-    </function>
-
-    <function name="EndConditionalRenderNV" offset="assign">
-    </function>
-
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/OES_EGL_image.xml b/src/mesa/glapi/gen/OES_EGL_image.xml
deleted file mode 100644 (file)
index 1cb43d4..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<OpenGLAPI>
-
-<category name="GL_OES_EGL_image">
-
-    <function name="EGLImageTargetTexture2DOES" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="writeOffset" type="GLvoid *"/>
-    </function>
-
-    <function name="EGLImageTargetRenderbufferStorageOES" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="writeOffset" type="GLvoid *"/>
-    </function>
-
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/extension_helper.py b/src/mesa/glapi/gen/extension_helper.py
deleted file mode 100644 (file)
index 2c83b4e..0000000
+++ /dev/null
@@ -1,324 +0,0 @@
-#!/usr/bin/env python
-
-# (C) Copyright IBM Corporation 2005
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-
-import gl_XML
-import license
-import sys, getopt, string
-
-vtxfmt = [
-    "ArrayElement", \
-    "Color3f", \
-    "Color3fv", \
-    "Color4f", \
-    "Color4fv", \
-    "EdgeFlag", \
-    "EdgeFlagv", \
-    "EvalCoord1f", \
-    "EvalCoord1fv", \
-    "EvalCoord2f", \
-    "EvalCoord2fv", \
-    "EvalPoint1", \
-    "EvalPoint2", \
-    "FogCoordfEXT", \
-    "FogCoordfvEXT", \
-    "Indexf", \
-    "Indexfv", \
-    "Materialfv", \
-    "MultiTexCoord1fARB", \
-    "MultiTexCoord1fvARB", \
-    "MultiTexCoord2fARB", \
-    "MultiTexCoord2fvARB", \
-    "MultiTexCoord3fARB", \
-    "MultiTexCoord3fvARB", \
-    "MultiTexCoord4fARB", \
-    "MultiTexCoord4fvARB", \
-    "Normal3f", \
-    "Normal3fv", \
-    "SecondaryColor3fEXT", \
-    "SecondaryColor3fvEXT", \
-    "TexCoord1f", \
-    "TexCoord1fv", \
-    "TexCoord2f", \
-    "TexCoord2fv", \
-    "TexCoord3f", \
-    "TexCoord3fv", \
-    "TexCoord4f", \
-    "TexCoord4fv", \
-    "Vertex2f", \
-    "Vertex2fv", \
-    "Vertex3f", \
-    "Vertex3fv", \
-    "Vertex4f", \
-    "Vertex4fv", \
-    "CallList", \
-    "CallLists", \
-    "Begin", \
-    "End", \
-    "VertexAttrib1fNV", \
-    "VertexAttrib1fvNV", \
-    "VertexAttrib2fNV", \
-    "VertexAttrib2fvNV", \
-    "VertexAttrib3fNV", \
-    "VertexAttrib3fvNV", \
-    "VertexAttrib4fNV", \
-    "VertexAttrib4fvNV", \
-    "VertexAttrib1fARB", \
-    "VertexAttrib1fvARB", \
-    "VertexAttrib2fARB", \
-    "VertexAttrib2fvARB", \
-    "VertexAttrib3fARB", \
-    "VertexAttrib3fvARB", \
-    "VertexAttrib4fARB", \
-    "VertexAttrib4fvARB", \
-    "Rectf", \
-    "DrawArrays", \
-    "DrawElements", \
-    "DrawRangeElements", \
-    "EvalMesh1", \
-    "EvalMesh2", \
-]
-
-def all_entrypoints_in_abi(f, abi, api):
-       for n in f.entry_points:
-               [category, num] = api.get_category_for_name( n )
-               if category not in abi:
-                       return 0
-
-       return 1
-
-
-def any_entrypoints_in_abi(f, abi, api):
-       for n in f.entry_points:
-               [category, num] = api.get_category_for_name( n )
-               if category in abi:
-                       return 1
-
-       return 0
-
-
-def condition_for_function(f, abi, all_not_in_ABI):
-       """Create a C-preprocessor condition for the function.
-       
-       There are two modes of operation.  If all_not_in_ABI is set, a
-       condition is only created is all of the entry-point names for f are
-       not in the selected ABI.  If all_not_in_ABI is not set, a condition
-       is created if any entryp-point name is not in the selected ABI.
-       """
-
-       condition = []
-       for n in f.entry_points:
-               [category, num] = api.get_category_for_name( n )
-               if category not in abi:
-                       condition.append( 'defined(need_%s)' % (gl_XML.real_category_name( category )) )
-               elif all_not_in_ABI:
-                       return []
-
-       return condition
-
-
-class PrintGlExtensionGlue(gl_XML.gl_print_base):
-       def __init__(self):
-               gl_XML.gl_print_base.__init__(self)
-
-               self.name = "extension_helper.py (from Mesa)"
-               self.license = license.bsd_license_template % ("(C) Copyright IBM Corporation 2005", "IBM")
-               return
-
-
-       def printRealHeader(self):
-               print '#include "utils.h"'
-               print '#include "main/dispatch.h"'
-               print ''
-               return
-
-
-       def printBody(self, api):
-               abi = [ "1.0", "1.1", "1.2", "GL_ARB_multitexture" ]
-
-               category_list = {}
-
-               print '#ifndef NULL'
-               print '# define NULL 0'
-               print '#endif'
-               print ''
-
-               for f in api.functionIterateAll():
-                       condition = condition_for_function(f, abi, 0)
-                       if len(condition):
-                               print '#if %s' % (string.join(condition, " || "))
-                               print 'static const char %s_names[] =' % (f.name)
-
-                               parameter_signature = ''
-                               for p in f.parameterIterator():
-                                       if p.is_padding:
-                                               continue
-
-                                       # FIXME: This is a *really* ugly hack. :(
-
-                                       tn = p.type_expr.get_base_type_node()
-                                       if p.is_pointer():
-                                               parameter_signature += 'p'
-                                       elif tn.integer:
-                                               parameter_signature += 'i'
-                                       elif tn.size == 4:
-                                               parameter_signature += 'f'
-                                       else:
-                                               parameter_signature += 'd'
-
-                               print '    "%s\\0" /* Parameter signature */' % (parameter_signature)
-
-                               for n in f.entry_points:
-                                       print '    "gl%s\\0"' % (n)
-
-                                       [category, num] = api.get_category_for_name( n )
-                                       if category not in abi:
-                                               c = gl_XML.real_category_name(category)
-                                               if not category_list.has_key(c):
-                                                       category_list[ c ] = []
-
-                                               category_list[ c ].append( f )
-
-                               print '    "";'
-                               print '#endif'
-                               print ''
-
-               keys = category_list.keys()
-               keys.sort()
-
-               for category in keys:
-                       print '#if defined(need_%s)' % (category)
-                       print 'static const struct dri_extension_function %s_functions[] = {' % (category)
-                       
-                       for f in category_list[ category ]:
-                               # A function either has an offset that is
-                               # assigned by the ABI, or it has a remap
-                               # index.
-                               if any_entrypoints_in_abi(f, abi, api):
-                                       index_name = "-1"
-                                       offset = f.offset
-                               else:
-                                       index_name = "%s_remap_index" % (f.name)
-                                       offset = -1
-
-                               print '    { %s_names, %s, %d },' % (f.name, index_name, offset)
-
-
-                       print '    { NULL, 0, 0 }'
-                       print '};'
-                       print '#endif'
-                       print ''
-               
-               return
-
-
-class PrintInitDispatch(gl_XML.gl_print_base):
-       def __init__(self):
-               gl_XML.gl_print_base.__init__(self)
-
-               self.name = "extension_helper.py (from Mesa)"
-               self.license = license.bsd_license_template % ("(C) Copyright IBM Corporation 2005", "IBM")
-               return
-
-
-       def do_function_body(self, api, abi, vtxfmt_only):
-               last_condition_string = None
-               for f in api.functionIterateByOffset():
-                       if (f.name in vtxfmt) and not vtxfmt_only:
-                               continue
-
-                       if (f.name not in vtxfmt) and vtxfmt_only:
-                               continue
-
-                       condition = condition_for_function(f, abi, 1)
-                       condition_string = string.join(condition, " || ")
-
-                       if condition_string != last_condition_string:
-                               if last_condition_string:
-                                       print '#endif /* %s */' % (last_condition_string)
-
-                               if condition_string:
-                                       print '#if %s' % (condition_string)
-                               
-                       if vtxfmt_only:
-                               print '   disp->%s = vfmt->%s;' % (f.name, f.name)
-                       else:
-                               print '   disp->%s = _mesa_%s;' % (f.name, f.name)
-
-                       last_condition_string = condition_string
-
-               if last_condition_string:
-                       print '#endif /* %s */' % (last_condition_string)
-               
-
-
-       def printBody(self, api):
-               abi = [ "1.0", "1.1", "1.2", "GL_ARB_multitexture" ]
-               
-               print 'void driver_init_exec_table(struct _glapi_table *disp)'
-               print '{'
-               self.do_function_body(api, abi, 0)
-               print '}'
-               print ''
-               print 'void driver_install_vtxfmt(struct _glapi_table *disp, const GLvertexformat *vfmt)'
-               print '{'
-               self.do_function_body(api, abi, 1)
-               print '}'
-
-               return
-
-
-def show_usage():
-       print "Usage: %s [-f input_file_name] [-m output_mode]" % sys.argv[0]
-       print "    -m output_mode   Output mode can be one of 'extensions' or 'exec_init'."
-       sys.exit(1)
-
-if __name__ == '__main__':
-       file_name = "gl_API.xml"
-    
-       try:
-               (args, trail) = getopt.getopt(sys.argv[1:], "f:m:")
-       except Exception,e:
-               show_usage()
-
-       mode = "extensions"
-       for (arg,val) in args:
-               if arg == "-f":
-                       file_name = val
-               if arg == '-m':
-                       mode = val
-
-
-       api = gl_XML.parse_GL_API( file_name )
-
-       if mode == "extensions":
-               printer = PrintGlExtensionGlue()
-       elif mode == "exec_init":
-               printer = PrintInitDispatch()
-       else:
-               show_usage()
-
-       printer.Print( api )
diff --git a/src/mesa/glapi/gen/glX_API.xml b/src/mesa/glapi/gen/glX_API.xml
deleted file mode 100644 (file)
index 9e02aa4..0000000
+++ /dev/null
@@ -1,220 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<OpenGLAPI>
-
-<!-- Right now this file is just used to generate the GLX protocol
-     decode tables on the server.  The only information that is needed
-     for that purpose is the name of the function (or pseudo-function
-     in the case of Render of VendorPrivate) and its opcode.  Once
-     this file is used for other purposes, additional information will
-     need to be added.
-  -->
-
-<category name="1.0" window_system="glX">
-    <function name="Render">
-        <glx sop="1"/>
-    </function>
-
-    <function name="RenderLarge">
-        <glx sop="2"/>
-    </function>
-
-    <function name="CreateContext">
-        <glx sop="3"/>
-    </function>
-
-    <function name="DestroyContext">
-        <glx sop="4"/>
-    </function>
-
-    <function name="MakeCurrent">
-        <glx sop="5"/>
-    </function>
-
-    <function name="IsDirect">
-        <glx sop="6"/>
-    </function>
-
-    <function name="QueryVersion">
-        <glx sop="7"/>
-    </function>
-
-    <function name="WaitGL">
-        <glx sop="8"/>
-    </function>
-
-    <function name="WaitX">
-        <glx sop="9"/>
-    </function>
-
-    <function name="CopyContext">
-        <glx sop="10"/>
-    </function>
-
-    <function name="SwapBuffers">
-        <glx sop="11"/>
-    </function>
-
-    <function name="UseXFont">
-        <glx sop="12"/>
-    </function>
-
-    <function name="CreateGLXPixmap">
-        <glx sop="13"/>
-    </function>
-
-    <function name="GetVisualConfigs">
-        <glx sop="14"/>
-    </function>
-
-    <function name="DestroyGLXPixmap">
-        <glx sop="15"/>
-    </function>
-
-    <function name="VendorPrivate">
-        <glx sop="16"/>
-    </function>
-
-    <function name="VendorPrivateWithReply">
-        <glx sop="17"/>
-    </function>
-
-    <function name="QueryExtensionsString">
-        <glx sop="18"/>
-    </function>
-</category>
-
-<category name="1.1" window_system="glX">
-    <function name="QueryServerString">
-        <glx sop="19"/>
-    </function>
-
-    <function name="ClientInfo">
-        <glx sop="20"/>
-    </function>
-</category>
-
-<category name="1.3" window_system="glX">
-    <function name="GetFBConfigs">
-        <glx sop="21"/>
-    </function>
-
-    <function name="CreatePixmap">
-        <glx sop="22"/>
-    </function>
-
-    <function name="DestroyPixmap">
-        <glx sop="23"/>
-    </function>
-
-    <function name="CreateNewContext">
-        <glx sop="24"/>
-    </function>
-
-    <function name="QueryContext">
-        <glx sop="25"/>
-    </function>
-
-    <function name="MakeContextCurrent">
-        <glx sop="26"/>
-    </function>
-
-    <function name="CreatePbuffer">
-        <glx sop="27"/>
-    </function>
-
-    <function name="DestroyPbuffer">
-        <glx sop="28"/>
-    </function>
-
-    <function name="GetDrawableAttributes">
-        <glx sop="29"/>
-    </function>
-
-    <function name="ChangeDrawableAttributes">
-        <glx sop="30"/>
-    </function>
-
-    <function name="CreateWindow">
-        <glx sop="31"/>
-    </function>
-
-    <function name="DestroyWindow">
-        <glx sop="32"/>
-    </function>
-</category>
-
-<category name="GLX_SGI_swap_control" number="40" window_system="glX">
-    <function name="SwapIntervalSGI">
-        <return type="int"/>
-        <glx vendorpriv="65536"/>
-    </function>
-</category>
-
-<category name="GLX_SGI_make_current_read" number="42" window_system="glX">
-    <function name="MakeCurrentReadSGI">
-<!--        <param name="dpy" type="Display *"/>
-       <param name="draw" type="GLXDrawable"/>
-       <param name="read" type="GLXDrawable"/>
-       <param name="ctx" type="GLXContext"/> -->
-        <return type="Bool"/>
-        <glx vendorpriv="65537"/>
-    </function>
-</category>
-
-<category name="GLX_EXT_import_context" number="47" window_system="glX">
-    <function name="QueryContextInfoEXT">
-        <glx vendorpriv="1024"/>
-    </function>
-</category>
-
-<category name="GLX_SGIX_fbconfig" number="49" window_system="glX">
-    <function name="GetFBConfigsSGIX">
-        <glx vendorpriv="65540"/>
-    </function>
-
-    <function name="CreateContextWithConfigSGIX">
-        <glx vendorpriv="65541"/>
-    </function>
-
-    <function name="CreateGLXPixmapWithConfigSGIX">
-        <glx vendorpriv="65542"/>
-    </function>
-</category>
-
-<category name="GLX_SGIX_pbuffer" number="50" window_system="glX">
-    <function name="CreateGLXPbufferSGIX">
-        <glx vendorpriv="65543"/>
-    </function>
-
-    <function name="DestroyGLXPbufferSGIX">
-        <glx vendorpriv="65544"/>
-    </function>
-
-    <function name="ChangeDrawableAttributesSGIX">
-        <glx vendorpriv="65545"/>
-    </function>
-
-    <function name="GetDrawableAttributesSGIX">
-        <glx vendorpriv="65546"/>
-    </function>
-</category>
-
-<category name="GLX_MESA_copy_sub_buffer" number="215">
-    <function name="CopySubBufferMESA">
-        <glx vendorpriv="5154"/>
-    </function>
-</category>
-
-<category name="GLX_EXT_texture_from_pixmap">
-    <function name="BindTexImageEXT">
-        <glx vendorpriv="1330"/>
-    </function>
-
-    <function name="ReleaseTexImageEXT">
-        <glx vendorpriv="1331"/>
-    </function>
-</category>
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/glX_XML.py b/src/mesa/glapi/gen/glX_XML.py
deleted file mode 100644 (file)
index 4c2e0f9..0000000
+++ /dev/null
@@ -1,570 +0,0 @@
-#!/usr/bin/env python
-
-# (C) Copyright IBM Corporation 2004, 2005
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-
-import gl_XML
-import license
-import sys, getopt, string
-
-
-class glx_item_factory(gl_XML.gl_item_factory):
-       """Factory to create GLX protocol oriented objects derived from gl_item."""
-    
-       def create_item(self, name, element, context):
-               if name == "function":
-                       return glx_function(element, context)
-               elif name == "enum":
-                       return glx_enum(element, context)
-               elif name == "api":
-                       return glx_api(self)
-               else:
-                       return gl_XML.gl_item_factory.create_item(self, name, element, context)
-
-
-class glx_enum(gl_XML.gl_enum):
-       def __init__(self, element, context):
-               gl_XML.gl_enum.__init__(self, element, context)
-               
-               self.functions = {}
-
-               child = element.children
-               while child:
-                       if child.type == "element" and child.name == "size":
-                               n = child.nsProp( "name", None )
-                               c = child.nsProp( "count", None )
-                               m = child.nsProp( "mode", None )
-                               
-                               if not c:
-                                       c = self.default_count
-                               else:
-                                       c = int(c)
-
-                               if m == "get":
-                                       mode = 0
-                               else:
-                                       mode = 1
-
-                               if not self.functions.has_key(n):
-                                       self.functions[ n ] = [c, mode]
-
-                       child = child.next
-
-               return
-
-
-class glx_function(gl_XML.gl_function):
-       def __init__(self, element, context):
-               self.glx_rop = 0
-               self.glx_sop = 0
-               self.glx_vendorpriv = 0
-
-               self.glx_vendorpriv_names = []
-
-               # If this is set to true, it means that GLdouble parameters should be
-               # written to the GLX protocol packet in the order they appear in the
-               # prototype.  This is different from the "classic" ordering.  In the
-               # classic ordering GLdoubles are written to the protocol packet first,
-               # followed by non-doubles.  NV_vertex_program was the first extension
-               # to break with this tradition.
-
-               self.glx_doubles_in_order = 0
-
-               self.vectorequiv = None
-               self.output = None
-               self.can_be_large = 0
-               self.reply_always_array = 0
-               self.dimensions_in_reply = 0
-               self.img_reset = None
-
-               self.server_handcode = 0
-               self.client_handcode = 0
-               self.ignore = 0
-
-               self.count_parameter_list = []
-               self.counter_list = []
-               self.parameters_by_name = {}
-               self.offsets_calculated = 0
-
-               gl_XML.gl_function.__init__(self, element, context)
-               return
-
-
-       def process_element(self, element):
-               gl_XML.gl_function.process_element(self, element)
-
-               # If the function already has a vector equivalent set, don't
-               # set it again.  This can happen if an alias to a function
-               # appears after the function that it aliases.
-
-               if not self.vectorequiv:
-                       self.vectorequiv = element.nsProp("vectorequiv", None)
-
-
-               name = element.nsProp("name", None)
-               if name == self.name:
-                       for param in self.parameters:
-                               self.parameters_by_name[ param.name ] = param
-                               
-                               if len(param.count_parameter_list):
-                                       self.count_parameter_list.extend( param.count_parameter_list )
-                               
-                               if param.counter and param.counter not in self.counter_list:
-                                       self.counter_list.append(param.counter)
-
-
-               child = element.children
-               while child:
-                       if child.type == "element" and child.name == "glx":
-                               rop = child.nsProp( 'rop', None )
-                               sop = child.nsProp( 'sop', None )
-                               vop = child.nsProp( 'vendorpriv', None )
-
-                               if rop:
-                                       self.glx_rop = int(rop)
-
-                               if sop:
-                                       self.glx_sop = int(sop)
-
-                               if vop:
-                                       self.glx_vendorpriv = int(vop)
-                                       self.glx_vendorpriv_names.append(name)
-
-                               self.img_reset = child.nsProp( 'img_reset', None )
-
-                               # The 'handcode' attribute can be one of 'true',
-                               # 'false', 'client', or 'server'.
-
-                               handcode = child.nsProp( 'handcode', None )
-                               if handcode == "false":
-                                       self.server_handcode = 0
-                                       self.client_handcode = 0
-                               elif handcode == "true":
-                                       self.server_handcode = 1
-                                       self.client_handcode = 1
-                               elif handcode == "client":
-                                       self.server_handcode = 0
-                                       self.client_handcode = 1
-                               elif handcode == "server":
-                                       self.server_handcode = 1
-                                       self.client_handcode = 0
-                               else:
-                                       raise RuntimeError('Invalid handcode mode "%s" in function "%s".' % (handcode, self.name))
-
-                               self.ignore               = gl_XML.is_attr_true( child, 'ignore' )
-                               self.can_be_large         = gl_XML.is_attr_true( child, 'large' )
-                               self.glx_doubles_in_order = gl_XML.is_attr_true( child, 'doubles_in_order' )
-                               self.reply_always_array   = gl_XML.is_attr_true( child, 'always_array' )
-                               self.dimensions_in_reply  = gl_XML.is_attr_true( child, 'dimensions_in_reply' )
-
-                       child = child.next
-
-
-               # Do some validation of the GLX protocol information.  As
-               # new tests are discovered, they should be added here.
-
-               for param in self.parameters:
-                       if param.is_output and self.glx_rop != 0:
-                               raise RuntimeError("Render / RenderLarge commands cannot have outputs (%s)." % (self.name))
-
-               return
-
-
-       def has_variable_size_request(self):
-               """Determine if the GLX request packet is variable sized.
-
-               The GLX request packet is variable sized in several common
-               situations.
-               
-               1. The function has a non-output parameter that is counted
-                  by another parameter (e.g., the 'textures' parameter of
-                  glDeleteTextures).
-                  
-               2. The function has a non-output parameter whose count is
-                  determined by another parameter that is an enum (e.g., the
-                  'params' parameter of glLightfv).
-                  
-               3. The function has a non-output parameter that is an
-                  image.
-
-               4. The function must be hand-coded on the server.
-               """
-
-               if self.glx_rop == 0:
-                       return 0
-
-               if self.server_handcode or self.images:
-                       return 1
-
-               for param in self.parameters:
-                       if not param.is_output:
-                               if param.counter or len(param.count_parameter_list):
-                                       return 1
-
-               return 0
-
-
-       def variable_length_parameter(self):
-               for param in self.parameters:
-                       if not param.is_output:
-                               if param.counter or len(param.count_parameter_list):
-                                       return param
-                               
-               return None
-
-
-       def calculate_offsets(self):
-               if not self.offsets_calculated:
-                       # Calculate the offset of the first function parameter
-                       # in the GLX command packet.  This byte offset is
-                       # measured from the end of the Render / RenderLarge
-                       # header.  The offset for all non-pixel commends is
-                       # zero.  The offset for pixel commands depends on the
-                       # number of dimensions of the pixel data.
-
-                       if len(self.images) and not self.images[0].is_output:
-                               [dim, junk, junk, junk, junk] = self.images[0].get_dimensions()
-
-                               # The base size is the size of the pixel pack info
-                               # header used by images with the specified number
-                               # of dimensions.
-
-                               if dim <=  2:
-                                       offset = 20
-                               elif dim <= 4:
-                                       offset = 36
-                               else:
-                                       raise RuntimeError('Invalid number of dimensions %u for parameter "%s" in function "%s".' % (dim, self.image.name, self.name))
-                       else:
-                               offset = 0
-
-                       for param in self.parameterIterateGlxSend():
-                               if param.img_null_flag:
-                                       offset += 4
-
-                               if param.name != self.img_reset:
-                                       param.offset = offset
-                                       if not param.is_variable_length() and not param.is_client_only:
-                                               offset += param.size()
-                                       
-                               if self.pad_after( param ):
-                                       offset += 4
-
-
-                       self.offsets_calculated = 1
-               return
-
-
-       def offset_of(self, param_name):
-               self.calculate_offsets()
-               return self.parameters_by_name[ param_name ].offset
-
-
-       def parameterIterateGlxSend(self, include_variable_parameters = 1):
-               """Create an iterator for parameters in GLX request order."""
-
-               # The parameter lists are usually quite short, so it's easier
-               # (i.e., less code) to just generate a new list with the
-               # required elements than it is to create a new iterator class.
-               
-               temp = [ [],  [], [] ]
-               for param in self.parameters:
-                       if param.is_output: continue
-
-                       if param.is_variable_length():
-                               temp[2].append( param )
-                       elif not self.glx_doubles_in_order and param.is_64_bit():
-                               temp[0].append( param )
-                       else:
-                               temp[1].append( param )
-
-               parameters = temp[0]
-               parameters.extend( temp[1] )
-               if include_variable_parameters:
-                       parameters.extend( temp[2] )
-               return parameters.__iter__()
-
-
-       def parameterIterateCounters(self):
-               temp = []
-               for name in self.counter_list:
-                       temp.append( self.parameters_by_name[ name ] )
-
-               return temp.__iter__()
-
-
-       def parameterIterateOutputs(self):
-               temp = []
-               for p in self.parameters:
-                       if p.is_output:
-                               temp.append( p )
-
-               return temp
-
-
-       def command_fixed_length(self):
-               """Return the length, in bytes as an integer, of the
-               fixed-size portion of the command."""
-
-               if len(self.parameters) == 0:
-                       return 0
-               
-               self.calculate_offsets()
-
-               size = 0
-               for param in self.parameterIterateGlxSend(0):
-                       if param.name != self.img_reset and not param.is_client_only:
-                               if size == 0:
-                                       size = param.offset + param.size()
-                               else:
-                                       size += param.size()
-
-                               if self.pad_after( param ):
-                                       size += 4
-
-               for param in self.images:
-                       if param.img_null_flag or param.is_output:
-                               size += 4
-
-               return size
-
-
-       def command_variable_length(self):
-               """Return the length, as a string, of the variable-sized
-               portion of the command."""
-
-               size_string = ""
-               for p in self.parameterIterateGlxSend():
-                       if (not p.is_output) and (p.is_variable_length() or p.is_image()):
-                               # FIXME Replace the 1 in the size_string call
-                               # FIXME w/0 to eliminate some un-needed parnes
-                               # FIXME This would already be done, but it
-                               # FIXME adds some extra diffs to the generated
-                               # FIXME code.
-
-                               size_string = size_string + " + __GLX_PAD(%s)" % (p.size_string(1))
-
-               return size_string
-
-
-       def command_length(self):
-               size = self.command_fixed_length()
-
-               if self.glx_rop != 0:
-                       size += 4
-
-               size = ((size + 3) & ~3)
-               return "%u%s" % (size, self.command_variable_length())
-
-
-       def opcode_real_value(self):
-               """Get the true numeric value of the GLX opcode
-               
-               Behaves similarly to opcode_value, except for
-               X_GLXVendorPrivate and X_GLXVendorPrivateWithReply commands.
-               In these cases the value for the GLX opcode field (i.e.,
-               16 for X_GLXVendorPrivate or 17 for
-               X_GLXVendorPrivateWithReply) is returned.  For other 'single'
-               commands, the opcode for the command (e.g., 101 for
-               X_GLsop_NewList) is returned."""
-
-               if self.glx_vendorpriv != 0:
-                       if self.needs_reply():
-                               return 17
-                       else:
-                               return 16
-               else:
-                       return self.opcode_value()
-
-
-       def opcode_value(self):
-               """Get the unique protocol opcode for the glXFunction"""
-
-               if (self.glx_rop == 0) and self.vectorequiv:
-                       equiv = self.context.functions_by_name[ self.vectorequiv ]
-                       self.glx_rop = equiv.glx_rop
-
-
-               if self.glx_rop != 0:
-                       return self.glx_rop
-               elif self.glx_sop != 0:
-                       return self.glx_sop
-               elif self.glx_vendorpriv != 0:
-                       return self.glx_vendorpriv
-               else:
-                       return -1
-       
-
-       def opcode_rop_basename(self):
-               """Return either the name to be used for GLX protocol enum.
-               
-               Returns either the name of the function or the name of the
-               name of the equivalent vector (e.g., glVertex3fv for
-               glVertex3f) function."""
-
-               if self.vectorequiv == None:
-                       return self.name
-               else:
-                       return self.vectorequiv
-
-
-       def opcode_name(self):
-               """Get the unique protocol enum name for the glXFunction"""
-
-               if (self.glx_rop == 0) and self.vectorequiv:
-                       equiv = self.context.functions_by_name[ self.vectorequiv ]
-                       self.glx_rop = equiv.glx_rop
-                       self.glx_doubles_in_order = equiv.glx_doubles_in_order
-
-
-               if self.glx_rop != 0:
-                       return "X_GLrop_%s" % (self.opcode_rop_basename())
-               elif self.glx_sop != 0:
-                       return "X_GLsop_%s" % (self.name)
-               elif self.glx_vendorpriv != 0:
-                       return "X_GLvop_%s" % (self.name)
-               else:
-                       raise RuntimeError('Function "%s" has no opcode.' % (self.name))
-
-
-       def opcode_vendor_name(self, name):
-               if name in self.glx_vendorpriv_names:
-                       return "X_GLvop_%s" % (name)
-               else:
-                       raise RuntimeError('Function "%s" has no VendorPrivate opcode.' % (name))
-
-
-       def opcode_real_name(self):
-               """Get the true protocol enum name for the GLX opcode
-               
-               Behaves similarly to opcode_name, except for
-               X_GLXVendorPrivate and X_GLXVendorPrivateWithReply commands.
-               In these cases the string 'X_GLXVendorPrivate' or
-               'X_GLXVendorPrivateWithReply' is returned.  For other
-               single or render commands 'X_GLsop' or 'X_GLrop' plus the
-               name of the function returned."""
-
-               if self.glx_vendorpriv != 0:
-                       if self.needs_reply():
-                               return "X_GLXVendorPrivateWithReply"
-                       else:
-                               return "X_GLXVendorPrivate"
-               else:
-                       return self.opcode_name()
-
-
-       def needs_reply(self):
-               try:
-                       x = self._needs_reply
-               except Exception, e:
-                       x = 0
-                       if self.return_type != 'void':
-                               x = 1
-
-                       for param in self.parameters:
-                               if param.is_output:
-                                       x = 1
-                                       break
-
-                       self._needs_reply = x
-
-               return x
-
-
-       def pad_after(self, p):
-               """Returns the name of the field inserted after the
-               specified field to pad out the command header."""
-
-               for image in self.images:
-                       if image.img_pad_dimensions:
-                               if not image.height:
-                                       if p.name == image.width:
-                                               return "height"
-                                       elif p.name == image.img_xoff:
-                                               return "yoffset"
-                               elif not image.extent:
-                                       if p.name == image.depth:
-                                               # Should this be "size4d"?
-                                               return "extent"
-                                       elif p.name == image.img_zoff:
-                                               return "woffset"
-
-               return None
-
-
-       def has_different_protocol(self, name):
-               """Returns true if the named version of the function uses different protocol from the other versions.
-               
-               Some functions, such as glDeleteTextures and
-               glDeleteTexturesEXT are functionally identical, but have
-               different protocol.  This function returns true if the
-               named function is an alias name and that named version uses
-               different protocol from the function that is aliased.
-               """
-
-               return (name in self.glx_vendorpriv_names) and self.glx_sop
-
-
-       def static_glx_name(self, name):
-               if self.has_different_protocol(name):
-                       for n in self.glx_vendorpriv_names:
-                               if n in self.static_entry_points:
-                                       return n
-                               
-               return self.static_name(name)
-
-
-       def client_supported_for_indirect(self):
-               """Returns true if the function is supported on the client
-               side for indirect rendering."""
-
-               return not self.ignore and (self.offset != -1) and (self.glx_rop or self.glx_sop or self.glx_vendorpriv or self.vectorequiv or self.client_handcode)
-
-
-class glx_function_iterator:
-       """Class to iterate over a list of glXFunctions"""
-
-       def __init__(self, context):
-               self.iterator = context.functionIterateByOffset()
-               return
-
-
-       def __iter__(self):
-               return self
-
-
-       def next(self):
-               f = self.iterator.next()
-
-               if f.client_supported_for_indirect():
-                       return f
-               else:
-                       return self.next()
-
-
-class glx_api(gl_XML.gl_api):
-       def functionIterateGlx(self):
-               return glx_function_iterator(self)
-
diff --git a/src/mesa/glapi/gen/glX_doc.py b/src/mesa/glapi/gen/glX_doc.py
deleted file mode 100644 (file)
index e9fbbe6..0000000
+++ /dev/null
@@ -1,280 +0,0 @@
-#!/usr/bin/env python
-
-# (C) Copyright IBM Corporation 2004, 2005
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-
-import gl_XML, glX_XML, glX_proto_common, license
-import sys, getopt
-
-
-class glx_doc_item_factory(glX_proto_common.glx_proto_item_factory):
-       """Factory to create GLX protocol documentation oriented objects derived from glItem."""
-    
-       def create_item(self, name, element, context):
-               if name == "parameter":
-                       return glx_doc_parameter(element, context)
-               else:
-                       return glX_proto_common.glx_proto_item_factory.create_item(self, name, element, context)
-
-
-class glx_doc_parameter(gl_XML.gl_parameter):
-       def packet_type(self, type_dict):
-               """Get the type string for the packet header
-               
-               GLX protocol documentation uses type names like CARD32,
-               FLOAT64, LISTofCARD8, and ENUM.  This function converts the
-               type of the parameter to one of these names."""
-
-               list_of = ""
-               if self.is_array():
-                       list_of = "LISTof"
-
-               t_name = self.get_base_type_string()
-               if not type_dict.has_key( t_name ):
-                       type_name = "CARD8"
-               else:
-                       type_name = type_dict[ t_name ]
-
-               return "%s%s" % (list_of, type_name)
-
-
-       def packet_size(self):
-               p = None
-               s = self.size()
-               if s == 0:
-                       a_prod = "n"
-                       b_prod = self.p_type.size
-
-                       if not self.count_parameter_list and self.counter:
-                               a_prod = self.counter
-                       elif self.count_parameter_list and not self.counter or self.is_output:
-                               pass
-                       elif self.count_parameter_list and self.counter:
-                               b_prod = self.counter
-                       else:
-                               raise RuntimeError("Parameter '%s' to function '%s' has size 0." % (self.name, self.context.name))
-
-                       ss = "%s*%s" % (a_prod, b_prod)
-
-                       return [ss, p]
-               else:
-                       if s % 4 != 0:
-                               p = "p"
-
-                       return [str(s), p]
-
-class PrintGlxProtoText(gl_XML.gl_print_base):
-       def __init__(self):
-               gl_XML.gl_print_base.__init__(self)
-               self.license = ""
-
-
-       def printHeader(self):
-               return
-
-
-       def body_size(self, f):
-               # At some point, refactor this function and
-               # glXFunction::command_payload_length.
-
-               size = 0;
-               size_str = ""
-               pad_str = ""
-               plus = ""
-               for p in f.parameterIterateGlxSend():
-                       [s, pad] = p.packet_size()
-                       try: 
-                               size += int(s)
-                       except Exception,e:
-                               size_str += "%s%s" % (plus, s)
-                               plus = "+"
-
-                       if pad != None:
-                               pad_str = pad
-
-               return [size, size_str, pad_str]
-
-
-       def print_render_header(self, f):
-               [size, size_str, pad_str] = self.body_size(f)
-               size += 4;
-
-               if size_str == "":
-                       s = "%u" % ((size + 3) & ~3)
-               elif pad_str != "":
-                       s = "%u+%s+%s" % (size, size_str, pad_str)
-               else:
-                       s = "%u+%s" % (size, size_str)
-
-               print '            2        %-15s rendering command length' % (s)
-               print '            2        %-4u            rendering command opcode' % (f.glx_rop)
-               return
-
-
-       def print_single_header(self, f):
-               [size, size_str, pad_str] = self.body_size(f)
-               size = ((size + 3) / 4) + 2;
-
-               if f.glx_vendorpriv != 0:
-                       size += 1
-
-               print '            1        CARD8           opcode (X assigned)'
-               print '            1        %-4u            GLX opcode (%s)' % (f.opcode_real_value(), f.opcode_real_name())
-
-               if size_str == "":
-                       s = "%u" % (size)
-               elif pad_str != "":
-                       s = "%u+((%s+%s)/4)" % (size, size_str, pad_str)
-               else:
-                       s = "%u+((%s)/4)" % (size, size_str)
-
-               print '            2        %-15s request length' % (s)
-
-               if f.glx_vendorpriv != 0:
-                       print '            4        %-4u            vendor specific opcode' % (f.opcode_value())
-                       
-               print '            4        GLX_CONTEXT_TAG context tag'
-
-               return
-               
-
-       def print_reply(self, f):
-               print '          =>'
-               print '            1        1               reply'
-               print '            1                        unused'
-               print '            2        CARD16          sequence number'
-
-               if f.output == None:
-                       print '            4        0               reply length'
-               elif f.reply_always_array:
-                       print '            4        m               reply length'
-               else:
-                       print '            4        m               reply length, m = (n == 1 ? 0 : n)'
-
-
-               output = None
-               for x in f.parameterIterateOutputs():
-                       output = x
-                       break
-
-
-               unused = 24
-               if f.return_type != 'void':
-                       print '            4        %-15s return value' % (f.return_type)
-                       unused -= 4
-               elif output != None:
-                       print '            4                        unused'
-                       unused -= 4
-
-               if output != None:
-                       print '            4        CARD32          n'
-                       unused -= 4
-
-               if output != None:
-                       if not f.reply_always_array:
-                               print ''
-                               print '            if (n = 1) this follows:'
-                               print ''
-                               print '            4        CARD32          %s' % (output.name)
-                               print '            %-2u                       unused' % (unused - 4)
-                               print ''
-                               print '            otherwise this follows:'
-                               print ''
-
-                       print '            %-2u                       unused' % (unused)
-
-                       [s, pad] = output.packet_size()
-                       print '            %-8s %-15s %s' % (s, output.packet_type( self.type_map ), output.name)
-                       if pad != None:
-                               try:
-                                       bytes = int(s)
-                                       bytes = 4 - (bytes & 3)
-                                       print '            %-8u %-15s unused' % (bytes, "")
-                               except Exception,e:
-                                       print '            %-8s %-15s unused, %s=pad(%s)' % (pad, "", pad, s)
-               else:
-                       print '            %-2u                       unused' % (unused)
-
-
-       def print_body(self, f):
-               for p in f.parameterIterateGlxSend():
-                       [s, pad] = p.packet_size()
-                       print '            %-8s %-15s %s' % (s, p.packet_type( self.type_map ), p.name)
-                       if pad != None:
-                               try:
-                                       bytes = int(s)
-                                       bytes = 4 - (bytes & 3)
-                                       print '            %-8u %-15s unused' % (bytes, "")
-                               except Exception,e:
-                                       print '            %-8s %-15s unused, %s=pad(%s)' % (pad, "", pad, s)
-
-       def printBody(self, api):
-               self.type_map = {}
-               for t in api.typeIterate():
-                       self.type_map[ "GL" + t.name ] = t.glx_name
-
-
-               # At some point this should be expanded to support pixel
-               # functions, but I'm not going to lose any sleep over it now.
-
-               for f in api.functionIterateByOffset():
-                       if f.client_handcode or f.server_handcode or f.vectorequiv or len(f.get_images()):
-                               continue
-
-
-                       if f.glx_rop:
-                               print '        %s' % (f.name)
-                               self.print_render_header(f)
-                       elif f.glx_sop or f.glx_vendorpriv:
-                               print '        %s' % (f.name)
-                               self.print_single_header(f)
-                       else:
-                               continue
-
-                       self.print_body(f)
-
-                       if f.needs_reply():
-                               self.print_reply(f)
-
-                       print ''
-               return
-
-
-if __name__ == '__main__':
-       file_name = "gl_API.xml"
-
-       try:
-               (args, trail) = getopt.getopt(sys.argv[1:], "f:")
-       except Exception,e:
-               show_usage()
-
-       for (arg,val) in args:
-               if arg == "-f":
-                       file_name = val
-
-       api = gl_XML.parse_GL_API( file_name, glx_doc_item_factory() )
-
-       printer = PrintGlxProtoText()
-       printer.Print( api )
diff --git a/src/mesa/glapi/gen/glX_proto_common.py b/src/mesa/glapi/gen/glX_proto_common.py
deleted file mode 100644 (file)
index 6f094e2..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-#!/usr/bin/env python
-
-# (C) Copyright IBM Corporation 2004, 2005
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-
-import gl_XML, glX_XML
-import string
-
-
-class glx_proto_item_factory(glX_XML.glx_item_factory):
-       """Factory to create GLX protocol oriented objects derived from gl_item."""
-    
-       def create_item(self, name, element, context):
-               if name == "type":
-                       return glx_proto_type(element, context)
-               else:
-                       return glX_XML.glx_item_factory.create_item(self, name, element, context)
-
-
-class glx_proto_type(gl_XML.gl_type):
-       def __init__(self, element, context):
-               gl_XML.gl_type.__init__(self, element, context)
-
-               self.glx_name = element.nsProp( "glx_name", None )
-               return
-
-
-class glx_print_proto(gl_XML.gl_print_base):
-       def size_call(self, func, outputs_also = 0):
-               """Create C code to calculate 'compsize'.
-
-               Creates code to calculate 'compsize'.  If the function does
-               not need 'compsize' to be calculated, None will be
-               returned."""
-       
-               compsize = None
-
-               for param in func.parameterIterator():
-                       if outputs_also or not param.is_output:
-                               if param.is_image():
-                                       [dim, w, h, d, junk] = param.get_dimensions()
-
-                                       compsize = '__glImageSize(%s, %s, %s, %s, %s, %s)' % (w, h, d, param.img_format, param.img_type, param.img_target)
-                                       if not param.img_send_null:
-                                               compsize = '(%s != NULL) ? %s : 0' % (param.name, compsize)
-
-                                       return compsize
-
-                               elif len(param.count_parameter_list):
-                                       parameters = string.join( param.count_parameter_list, "," )
-                                       compsize = "__gl%s_size(%s)" % (func.name, parameters)
-
-                                       return compsize
-
-               return None
-
-
-       def emit_packet_size_calculation(self, f, bias):
-               # compsize is only used in the command size calculation if
-               # the function has a non-output parameter that has a non-empty
-               # counter_parameter_list.
-
-               compsize = self.size_call(f)
-               if compsize:
-                       print '    const GLuint compsize = %s;' % (compsize)
-
-               if bias:
-                       print '    const GLuint cmdlen = %s - %u;' % (f.command_length(), bias)
-               else:
-                       print '    const GLuint cmdlen = %s;' % (f.command_length())
-
-               #print ''
-               return compsize
diff --git a/src/mesa/glapi/gen/glX_proto_recv.py b/src/mesa/glapi/gen/glX_proto_recv.py
deleted file mode 100644 (file)
index 31745fc..0000000
+++ /dev/null
@@ -1,554 +0,0 @@
-#!/usr/bin/env python
-
-# (C) Copyright IBM Corporation 2005
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-
-import gl_XML, glX_XML, glX_proto_common, license
-import sys, getopt, string
-
-
-class PrintGlxDispatch_h(gl_XML.gl_print_base):
-       def __init__(self):
-               gl_XML.gl_print_base.__init__(self)
-
-               self.name = "glX_proto_recv.py (from Mesa)"
-               self.license = license.bsd_license_template % ( "(C) Copyright IBM Corporation 2005", "IBM")
-
-               self.header_tag = "_INDIRECT_DISPATCH_H_"
-               return
-
-
-       def printRealHeader(self):
-               self.printVisibility( "HIDDEN", "hidden" )
-               print 'struct __GLXclientStateRec;'
-               print ''
-               return
-
-
-       def printBody(self, api):
-               for func in api.functionIterateAll():
-                       if not func.ignore and not func.vectorequiv:
-                               if func.glx_rop:
-                                       print 'extern HIDDEN void __glXDisp_%s(GLbyte * pc);' % (func.name)
-                                       print 'extern HIDDEN void __glXDispSwap_%s(GLbyte * pc);' % (func.name)
-                               elif func.glx_sop or func.glx_vendorpriv:
-                                       print 'extern HIDDEN int __glXDisp_%s(struct __GLXclientStateRec *, GLbyte *);' % (func.name)
-                                       print 'extern HIDDEN int __glXDispSwap_%s(struct __GLXclientStateRec *, GLbyte *);' % (func.name)
-
-                                       if func.glx_sop and func.glx_vendorpriv:
-                                               n = func.glx_vendorpriv_names[0]
-                                               print 'extern HIDDEN int __glXDisp_%s(struct __GLXclientStateRec *, GLbyte *);' % (n)
-                                               print 'extern HIDDEN int __glXDispSwap_%s(struct __GLXclientStateRec *, GLbyte *);' % (n)
-
-               return
-
-
-class PrintGlxDispatchFunctions(glX_proto_common.glx_print_proto):
-       def __init__(self, do_swap):
-               gl_XML.gl_print_base.__init__(self)
-               self.name = "glX_proto_recv.py (from Mesa)"
-               self.license = license.bsd_license_template % ( "(C) Copyright IBM Corporation 2005", "IBM")
-
-               self.real_types = [ '', '', 'uint16_t', '', 'uint32_t', '', '', '', 'uint64_t' ]
-               self.do_swap = do_swap
-               return
-
-
-       def printRealHeader(self):
-               print '#include <X11/Xmd.h>'
-               print '#include <GL/gl.h>'
-               print '#include <GL/glxproto.h>'
-
-               print '#include <inttypes.h>'
-               print '#include "indirect_size.h"'
-               print '#include "indirect_size_get.h"'
-               print '#include "indirect_dispatch.h"'
-               print '#include "glxserver.h"'
-               print '#include "glxbyteorder.h"'
-               print '#include "indirect_util.h"'
-               print '#include "singlesize.h"'
-               print '#include "glapi.h"'
-               print '#include "glapitable.h"'
-               print '#include "glthread.h"'
-               print '#include "glapidispatch.h"'
-               print ''
-               print '#define __GLX_PAD(x)  (((x) + 3) & ~3)'
-               print ''
-               print 'typedef struct {'
-               print '    __GLX_PIXEL_3D_HDR;'
-               print '} __GLXpixel3DHeader;'
-               print ''
-               print 'extern GLboolean __glXErrorOccured( void );'
-               print 'extern void __glXClearErrorOccured( void );'
-               print ''
-               print 'static const unsigned dummy_answer[2] = {0, 0};'
-               print ''
-               return
-
-
-       def printBody(self, api):
-               if self.do_swap:
-                       self.emit_swap_wrappers(api)
-
-
-               for func in api.functionIterateByOffset():
-                       if not func.ignore and not func.server_handcode and not func.vectorequiv and (func.glx_rop or func.glx_sop or func.glx_vendorpriv):
-                               self.printFunction(func, func.name)
-                               if func.glx_sop and func.glx_vendorpriv:
-                                       self.printFunction(func, func.glx_vendorpriv_names[0])
-                                       
-
-               return
-
-
-       def printFunction(self, f, name):
-               if (f.glx_sop or f.glx_vendorpriv) and (len(f.get_images()) != 0):
-                       return
-
-               if not self.do_swap:
-                       base = '__glXDisp'
-               else:
-                       base = '__glXDispSwap'
-
-               if f.glx_rop:
-                       print 'void %s_%s(GLbyte * pc)' % (base, name)
-               else:
-                       print 'int %s_%s(__GLXclientState *cl, GLbyte *pc)' % (base, name)
-
-               print '{'
-
-               if f.glx_rop or f.vectorequiv:
-                       self.printRenderFunction(f)
-               elif f.glx_sop or f.glx_vendorpriv:
-                       if len(f.get_images()) == 0: 
-                               self.printSingleFunction(f, name)
-               else:
-                       print "/* Missing GLX protocol for %s. */" % (name)
-
-               print '}'
-               print ''
-               return
-
-
-       def swap_name(self, bytes):
-               return 'bswap_%u_array' % (8 * bytes)
-
-
-       def emit_swap_wrappers(self, api):
-               self.type_map = {}
-               already_done = [ ]
-
-               for t in api.typeIterate():
-                       te = t.get_type_expression()
-                       t_size = te.get_element_size()
-
-                       if t_size > 1 and t.glx_name:
-                               
-                               t_name = "GL" + t.name
-                               self.type_map[ t_name ] = t.glx_name
-
-                               if t.glx_name not in already_done:
-                                       real_name = self.real_types[t_size]
-
-                                       print 'static %s' % (t_name)
-                                       print 'bswap_%s( const void * src )' % (t.glx_name)
-                                       print '{'
-                                       print '    union { %s dst; %s ret; } x;' % (real_name, t_name)
-                                       print '    x.dst = bswap_%u( *(%s *) src );' % (t_size * 8, real_name)
-                                       print '    return x.ret;'
-                                       print '}'
-                                       print ''
-                                       already_done.append( t.glx_name )
-
-               for bits in [16, 32, 64]:
-                       print 'static void *'
-                       print 'bswap_%u_array( uint%u_t * src, unsigned count )' % (bits, bits)
-                       print '{'
-                       print '    unsigned  i;'
-                       print ''
-                       print '    for ( i = 0 ; i < count ; i++ ) {'
-                       print '        uint%u_t temp = bswap_%u( src[i] );' % (bits, bits)
-                       print '        src[i] = temp;'
-                       print '    }'
-                       print ''
-                       print '    return src;'
-                       print '}'
-                       print ''
-                       
-
-       def fetch_param(self, param):
-               t = param.type_string()
-               o = param.offset
-               element_size = param.size() / param.get_element_count()
-
-               if self.do_swap and (element_size != 1):
-                       if param.is_array():
-                               real_name = self.real_types[ element_size ]
-
-                               swap_func = self.swap_name( element_size )
-                               return ' (%-8s)%s( (%s *) (pc + %2s), %s )' % (t, swap_func, real_name, o, param.count)
-                       else:
-                               t_name = param.get_base_type_string()
-                               return ' (%-8s)bswap_%-7s( pc + %2s )' % (t, self.type_map[ t_name ], o)
-               else:
-                       if param.is_array():
-                               return ' (%-8s)(pc + %2u)' % (t, o)
-                       else:
-                               return '*(%-8s *)(pc + %2u)' % (t, o)
-                               
-               return None
-
-
-       def emit_function_call(self, f, retval_assign, indent):
-               list = []
-
-               for param in f.parameterIterator():
-                       if param.is_padding:
-                               continue
-
-                       if param.is_counter or param.is_image() or param.is_output or param.name in f.count_parameter_list or len(param.count_parameter_list):
-                               location = param.name
-                       else:
-                               location = self.fetch_param(param)
-
-                       list.append( '%s        %s' % (indent, location) )
-                       
-
-               if len( list ):
-                       print '%s    %sCALL_%s( GET_DISPATCH(), (' % (indent, retval_assign, f.name)
-                       print string.join( list, ",\n" )
-                       print '%s    ) );' % (indent)
-               else:
-                       print '%s    %sCALL_%s( GET_DISPATCH(), () );' % (indent, retval_assign, f.name)
-               return
-
-
-       def common_func_print_just_start(self, f, indent):
-               align64 = 0
-               need_blank = 0
-
-
-               f.calculate_offsets()
-               for param in f.parameterIterateGlxSend():
-                       # If any parameter has a 64-bit base type, then we
-                       # have to do alignment magic for the while thing.
-
-                       if param.is_64_bit():
-                               align64 = 1
-
-
-                       # FIXME img_null_flag is over-loaded.  In addition to
-                       # FIXME being used for images, it is used to signify
-                       # FIXME NULL data pointers for vertex buffer object
-                       # FIXME related functions.  Re-name it to null_data
-                       # FIXME or something similar.
-
-                       if param.img_null_flag:
-                               print '%s    const CARD32 ptr_is_null = *(CARD32 *)(pc + %s);' % (indent, param.offset - 4)
-                               cond = '(ptr_is_null != 0) ? NULL : '
-                       else:
-                               cond = ""
-
-
-                       type_string = param.type_string()
-
-                       if param.is_image():
-                               offset = f.offset_of( param.name )
-
-                               print '%s    %s const %s = (%s) (%s(pc + %s));' % (indent, type_string, param.name, type_string, cond, offset)
-                               
-                               if param.depth:
-                                       print '%s    __GLXpixel3DHeader * const hdr = (__GLXpixel3DHeader *)(pc);' % (indent)
-                               else:
-                                       print '%s    __GLXpixelHeader * const hdr = (__GLXpixelHeader *)(pc);' % (indent)
-
-                               need_blank = 1
-                       elif param.is_counter or param.name in f.count_parameter_list:
-                               location = self.fetch_param(param)
-                               print '%s    const %s %s = %s;' % (indent, type_string, param.name, location)
-                               need_blank = 1
-                       elif len(param.count_parameter_list):
-                               if param.size() == 1 and not self.do_swap:
-                                       location = self.fetch_param(param)
-                                       print '%s    %s %s = %s%s;' % (indent, type_string, param.name, cond, location)
-                               else:
-                                       print '%s    %s %s;' % (indent, type_string, param.name)
-                               need_blank = 1
-
-
-
-               if need_blank:
-                       print ''
-
-               if align64:
-                       print '#ifdef __GLX_ALIGN64'
-
-                       if f.has_variable_size_request():
-                               self.emit_packet_size_calculation(f, 4)
-                               s = "cmdlen"
-                       else:
-                               s = str((f.command_fixed_length() + 3) & ~3)
-
-                       print '    if ((unsigned long)(pc) & 7) {'
-                       print '        (void) memmove(pc-4, pc, %s);' % (s)
-                       print '        pc -= 4;'
-                       print '    }'
-                       print '#endif'
-                       print ''
-
-
-               need_blank = 0
-               if self.do_swap:
-                       for param in f.parameterIterateGlxSend():
-                               if param.count_parameter_list:
-                                       o = param.offset
-                                       count = param.get_element_count()
-                                       type_size = param.size() / count
-                                       
-                                       if param.counter:
-                                               count_name = param.counter
-                                       else:
-                                               count_name = str(count)
-
-                                       # This is basically an ugly special-
-                                       # case for glCallLists.
-
-                                       if type_size == 1:
-                                               x = [] 
-                                               x.append( [1, ['BYTE', 'UNSIGNED_BYTE', '2_BYTES', '3_BYTES', '4_BYTES']] )
-                                               x.append( [2, ['SHORT', 'UNSIGNED_SHORT']] )
-                                               x.append( [4, ['INT', 'UNSIGNED_INT', 'FLOAT']] )
-
-                                               print '    switch(%s) {' % (param.count_parameter_list[0])
-                                               for sub in x:
-                                                       for t_name in sub[1]:
-                                                               print '    case GL_%s:' % (t_name)
-
-                                                       if sub[0] == 1:
-                                                               print '        %s = (%s) (pc + %s); break;' % (param.name, param.type_string(), o)
-                                                       else:
-                                                               swap_func = self.swap_name(sub[0])
-                                                               print '        %s = (%s) %s( (%s *) (pc + %s), %s ); break;' % (param.name, param.type_string(), swap_func, self.real_types[sub[0]], o, count_name)
-                                               print '    default:'
-                                               print '        return;'
-                                               print '    }'
-                                       else:
-                                               swap_func = self.swap_name(type_size)
-                                               compsize = self.size_call(f, 1)
-                                               print '    %s = (%s) %s( (%s *) (pc + %s), %s );' % (param.name, param.type_string(), swap_func, self.real_types[type_size], o, compsize)
-
-                                       need_blank = 1
-
-               else:
-                       for param in f.parameterIterateGlxSend():
-                               if param.count_parameter_list:
-                                       print '%s    %s = (%s) (pc + %s);' % (indent, param.name, param.type_string(), param.offset)
-                                       need_blank = 1
-
-
-               if need_blank:
-                       print ''
-
-
-               return
-
-
-       def printSingleFunction(self, f, name):
-               if name not in f.glx_vendorpriv_names:
-                       print '    xGLXSingleReq * const req = (xGLXSingleReq *) pc;'
-               else:
-                       print '    xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;'
-
-               print '    int error;'
-
-               if self.do_swap:
-                   print '    __GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);'
-               else:
-                   print '    __GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);'
-
-               print ''
-               if name not in f.glx_vendorpriv_names:
-                       print '    pc += __GLX_SINGLE_HDR_SIZE;'
-               else:
-                       print '    pc += __GLX_VENDPRIV_HDR_SIZE;'
-
-               print '    if ( cx != NULL ) {'
-               self.common_func_print_just_start(f, "    ")
-               
-
-               if f.return_type != 'void':
-                       print '        %s retval;' % (f.return_type)
-                       retval_string = "retval"
-                       retval_assign = "retval = "
-               else:
-                       retval_string = "0"
-                       retval_assign = ""
-
-
-               type_size = 0
-               answer_string = "dummy_answer"
-               answer_count = "0"
-               is_array_string = "GL_FALSE"
-
-               for param in f.parameterIterateOutputs():
-                       answer_type = param.get_base_type_string()
-                       if answer_type == "GLvoid":
-                               answer_type = "GLubyte"
-
-
-                       c = param.get_element_count()
-                       type_size = (param.size() / c)
-                       if type_size == 1:
-                               size_scale = ""
-                       else:
-                               size_scale = " * %u" % (type_size)
-
-
-                       if param.count_parameter_list:
-                               print '        const GLuint compsize = %s;' % (self.size_call(f, 1))
-                               print '        %s answerBuffer[200];' %  (answer_type)
-                               print '        %s %s = __glXGetAnswerBuffer(cl, compsize%s, answerBuffer, sizeof(answerBuffer), %u);' % (param.type_string(), param.name, size_scale, type_size )
-                               answer_string = param.name
-                               answer_count = "compsize"
-
-                               print ''
-                               print '        if (%s == NULL) return BadAlloc;' % (param.name)
-                               print '        __glXClearErrorOccured();'
-                               print ''
-                       elif param.counter:
-                               print '        %s answerBuffer[200];' %  (answer_type)
-                               print '        %s %s = __glXGetAnswerBuffer(cl, %s%s, answerBuffer, sizeof(answerBuffer), %u);' % (param.type_string(), param.name, param.counter, size_scale, type_size)
-                               answer_string = param.name
-                               answer_count = param.counter
-                       elif c >= 1:
-                               print '        %s %s[%u];' % (answer_type, param.name, c)
-                               answer_string = param.name
-                               answer_count = "%u" % (c)
-
-                       if f.reply_always_array:
-                               is_array_string = "GL_TRUE"
-
-
-               self.emit_function_call(f, retval_assign, "    ")
-
-
-               if f.needs_reply():
-                       if self.do_swap:
-                               for param in f.parameterIterateOutputs():
-                                       c = param.get_element_count()
-                                       type_size = (param.size() / c)
-
-                                       if type_size > 1:
-                                               swap_name = self.swap_name( type_size )
-                                               print '        (void) %s( (uint%u_t *) %s, %s );' % (swap_name, 8 * type_size, param.name, answer_count)
-
-
-                               reply_func = '__glXSendReplySwap'
-                       else:
-                               reply_func = '__glXSendReply'
-
-                       print '        %s(cl->client, %s, %s, %u, %s, %s);' % (reply_func, answer_string, answer_count, type_size, is_array_string, retval_string)
-               #elif f.note_unflushed:
-               #       print '        cx->hasUnflushedCommands = GL_TRUE;'
-
-               print '        error = Success;'
-               print '    }'
-               print ''
-               print '    return error;'
-               return
-
-
-       def printRenderFunction(self, f):
-               # There are 4 distinct phases in a rendering dispatch function.
-               # In the first phase we compute the sizes and offsets of each
-               # element in the command.  In the second phase we (optionally)
-               # re-align 64-bit data elements.  In the third phase we
-               # (optionally) byte-swap array data.  Finally, in the fourth
-               # phase we actually dispatch the function.
-
-               self.common_func_print_just_start(f, "")
-
-               images = f.get_images()
-               if len(images):
-                       if self.do_swap:
-                               pre = "bswap_CARD32( & "
-                               post = " )"
-                       else:
-                               pre = ""
-                               post = ""
-
-                       img = images[0]
-
-                       # swapBytes and lsbFirst are single byte fields, so
-                       # the must NEVER be byte-swapped.
-
-                       if not (img.img_type == "GL_BITMAP" and img.img_format == "GL_COLOR_INDEX"):
-                               print '    CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SWAP_BYTES,   hdr->swapBytes) );'
-
-                       print '    CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_LSB_FIRST,    hdr->lsbFirst) );'
-
-                       print '    CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_ROW_LENGTH,   (GLint) %shdr->rowLength%s) );' % (pre, post)
-                       if img.depth:
-                               print '    CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_IMAGE_HEIGHT, (GLint) %shdr->imageHeight%s) );' % (pre, post)
-                       print '    CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SKIP_ROWS,    (GLint) %shdr->skipRows%s) );' % (pre, post)
-                       if img.depth:
-                               print '    CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SKIP_IMAGES,  (GLint) %shdr->skipImages%s) );' % (pre, post)
-                       print '    CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SKIP_PIXELS,  (GLint) %shdr->skipPixels%s) );' % (pre, post)
-                       print '    CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_ALIGNMENT,    (GLint) %shdr->alignment%s) );' % (pre, post)
-                       print ''
-
-
-               self.emit_function_call(f, "", "")
-               return
-
-
-if __name__ == '__main__':
-       file_name = "gl_API.xml"
-
-       try:
-               (args, trail) = getopt.getopt(sys.argv[1:], "f:m:s")
-       except Exception,e:
-               show_usage()
-
-       mode = "dispatch_c"
-       do_swap = 0
-       for (arg,val) in args:
-               if arg == "-f":
-                       file_name = val
-               elif arg == "-m":
-                       mode = val
-               elif arg == "-s":
-                       do_swap = 1
-
-       if mode == "dispatch_c":
-               printer = PrintGlxDispatchFunctions(do_swap)
-       elif mode == "dispatch_h":
-               printer = PrintGlxDispatch_h()
-       else:
-               show_usage()
-
-       api = gl_XML.parse_GL_API( file_name, glX_proto_common.glx_proto_item_factory() )
-
-       printer.Print( api )
diff --git a/src/mesa/glapi/gen/glX_proto_send.py b/src/mesa/glapi/gen/glX_proto_send.py
deleted file mode 100644 (file)
index c52b85b..0000000
+++ /dev/null
@@ -1,1042 +0,0 @@
-#!/usr/bin/env python
-
-# (C) Copyright IBM Corporation 2004, 2005
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-#    Jeremy Kolb <jkolb@brandeis.edu>
-
-import gl_XML, glX_XML, glX_proto_common, license
-import sys, getopt, copy, string
-
-def convertStringForXCB(str):
-    tmp = ""
-    special = [ "ARB" ]
-    i = 0
-    while i < len(str):
-        if str[i:i+3] in special:
-            tmp = '%s_%s' % (tmp, string.lower(str[i:i+3]))
-            i = i + 2;
-        elif str[i].isupper():
-            tmp = '%s_%s' % (tmp, string.lower(str[i]))
-        else:
-            tmp = '%s%s' % (tmp, str[i])
-        i += 1
-    return tmp
-
-def hash_pixel_function(func):
-       """Generate a 'unique' key for a pixel function.  The key is based on
-       the parameters written in the command packet.  This includes any
-       padding that might be added for the original function and the 'NULL
-       image' flag."""
-
-
-       h = ""
-       hash_pre = ""
-       hash_suf = ""
-       for param in func.parameterIterateGlxSend():
-               if param.is_image():
-                       [dim, junk, junk, junk, junk] = param.get_dimensions()
-
-                       d = (dim + 1) & ~1
-                       hash_pre = "%uD%uD_" % (d - 1, d)
-
-                       if param.img_null_flag:
-                               hash_suf = "_NF"
-
-               h += "%u" % (param.size())
-
-               if func.pad_after(param):
-                       h += "4"
-
-
-       n = func.name.replace("%uD" % (dim), "")
-       n = "__glx_%s_%uD%uD" % (n, d - 1, d)
-
-       h = hash_pre + h + hash_suf
-       return [h, n]
-
-
-class glx_pixel_function_stub(glX_XML.glx_function):
-       """Dummy class used to generate pixel "utility" functions that are
-       shared by multiple dimension image functions.  For example, these
-       objects are used to generate shared functions used to send GLX
-       protocol for TexImage1D and TexImage2D, TexSubImage1D and
-       TexSubImage2D, etc."""
-
-       def __init__(self, func, name):
-               # The parameters to the utility function are the same as the
-               # parameters to the real function except for the added "pad"
-               # parameters.
-
-               self.name = name
-               self.images = []
-               self.parameters = []
-               self.parameters_by_name = {}
-               for _p in func.parameterIterator():
-                       p = copy.copy(_p)
-                       self.parameters.append(p)
-                       self.parameters_by_name[ p.name ] = p
-
-
-                       if p.is_image():
-                               self.images.append(p)
-                               p.height = "height"
-
-                               if p.img_yoff == None:
-                                       p.img_yoff = "yoffset"
-
-                               if p.depth:
-                                       if p.extent == None:
-                                               p.extent = "extent"
-
-                                       if p.img_woff == None:
-                                               p.img_woff = "woffset"
-
-
-                       pad_name = func.pad_after(p)
-                       if pad_name:
-                               pad = copy.copy(p)
-                               pad.name = pad_name
-                               self.parameters.append(pad)
-                               self.parameters_by_name[ pad.name ] = pad
-                               
-
-               self.return_type = func.return_type
-
-               self.glx_rop = ~0
-               self.glx_sop = 0
-               self.glx_vendorpriv = 0
-
-               self.glx_doubles_in_order = func.glx_doubles_in_order
-
-               self.vectorequiv = None
-               self.output = None
-               self.can_be_large = func.can_be_large
-               self.reply_always_array = func.reply_always_array
-               self.dimensions_in_reply = func.dimensions_in_reply
-               self.img_reset = None
-
-               self.server_handcode = 0
-               self.client_handcode = 0
-               self.ignore = 0
-
-               self.count_parameter_list = func.count_parameter_list
-               self.counter_list = func.counter_list
-               self.offsets_calculated = 0
-               return
-
-
-class PrintGlxProtoStubs(glX_proto_common.glx_print_proto):
-       def __init__(self):
-               glX_proto_common.glx_print_proto.__init__(self)
-               self.name = "glX_proto_send.py (from Mesa)"
-               self.license = license.bsd_license_template % ( "(C) Copyright IBM Corporation 2004, 2005", "IBM")
-
-
-               self.last_category = ""
-               self.generic_sizes = [3, 4, 6, 8, 12, 16, 24, 32]
-               self.pixel_stubs = {}
-               self.debug = 0
-               return
-
-       def printRealHeader(self):
-               print ''
-               print '#include <GL/gl.h>'
-               print '#include "indirect.h"'
-               print '#include "glxclient.h"'
-               print '#include "indirect_size.h"'
-               print '#include "glapidispatch.h"'
-               print '#include "glapi.h"'
-               print '#include "glthread.h"'
-               print '#include <GL/glxproto.h>'
-               print '#ifdef USE_XCB'
-               print '#include <X11/Xlib-xcb.h>'
-               print '#include <xcb/xcb.h>'
-               print '#include <xcb/glx.h>'
-               print '#endif /* USE_XCB */'
-
-               print ''
-               print '#define __GLX_PAD(n) (((n) + 3) & ~3)'
-               print ''
-               self.printFastcall()
-               self.printNoinline()
-               print ''
-               print '#ifndef __GNUC__'
-               print '#  define __builtin_expect(x, y) x'
-               print '#endif'
-               print ''
-               print '/* If the size and opcode values are known at compile-time, this will, on'
-               print ' * x86 at least, emit them with a single instruction.'
-               print ' */'
-               print '#define emit_header(dest, op, size)            \\'
-               print '    do { union { short s[2]; int i; } temp;    \\'
-               print '         temp.s[0] = (size); temp.s[1] = (op); \\'
-               print '         *((int *)(dest)) = temp.i; } while(0)'
-               print ''
-               print """NOINLINE CARD32
-__glXReadReply( Display *dpy, size_t size, void * dest, GLboolean reply_is_always_array )
-{
-    xGLXSingleReply reply;
-    
-    (void) _XReply(dpy, (xReply *) & reply, 0, False);
-    if (size != 0) {
-        if ((reply.length > 0) || reply_is_always_array) {
-            const GLint bytes = (reply_is_always_array) 
-              ? (4 * reply.length) : (reply.size * size);
-            const GLint extra = 4 - (bytes & 3);
-
-            _XRead(dpy, dest, bytes);
-            if ( extra < 4 ) {
-                _XEatData(dpy, extra);
-            }
-        }
-        else {
-            (void) memcpy( dest, &(reply.pad3), size);
-        }
-    }
-
-    return reply.retval;
-}
-
-NOINLINE void
-__glXReadPixelReply( Display *dpy, __GLXcontext * gc, unsigned max_dim,
-    GLint width, GLint height, GLint depth, GLenum format, GLenum type,
-    void * dest, GLboolean dimensions_in_reply )
-{
-    xGLXSingleReply reply;
-    GLint size;
-    
-    (void) _XReply(dpy, (xReply *) & reply, 0, False);
-
-    if ( dimensions_in_reply ) {
-        width  = reply.pad3;
-        height = reply.pad4;
-        depth  = reply.pad5;
-       
-       if ((height == 0) || (max_dim < 2)) { height = 1; }
-       if ((depth  == 0) || (max_dim < 3)) { depth  = 1; }
-    }
-
-    size = reply.length * 4;
-    if (size != 0) {
-        void * buf = Xmalloc( size );
-
-        if ( buf == NULL ) {
-            _XEatData(dpy, size);
-            __glXSetError(gc, GL_OUT_OF_MEMORY);
-        }
-        else {
-            const GLint extra = 4 - (size & 3);
-
-            _XRead(dpy, buf, size);
-            if ( extra < 4 ) {
-                _XEatData(dpy, extra);
-            }
-
-            __glEmptyImage(gc, 3, width, height, depth, format, type,
-                           buf, dest);
-            Xfree(buf);
-        }
-    }
-}
-
-#define X_GLXSingle 0
-
-NOINLINE FASTCALL GLubyte *
-__glXSetupSingleRequest( __GLXcontext * gc, GLint sop, GLint cmdlen )
-{
-    xGLXSingleReq * req;
-    Display * const dpy = gc->currentDpy;
-
-    (void) __glXFlushRenderBuffer(gc, gc->pc);
-    LockDisplay(dpy);
-    GetReqExtra(GLXSingle, cmdlen, req);
-    req->reqType = gc->majorOpcode;
-    req->contextTag = gc->currentContextTag;
-    req->glxCode = sop;
-    return (GLubyte *)(req) + sz_xGLXSingleReq;
-}
-
-NOINLINE FASTCALL GLubyte *
-__glXSetupVendorRequest( __GLXcontext * gc, GLint code, GLint vop, GLint cmdlen )
-{
-    xGLXVendorPrivateReq * req;
-    Display * const dpy = gc->currentDpy;
-
-    (void) __glXFlushRenderBuffer(gc, gc->pc);
-    LockDisplay(dpy);
-    GetReqExtra(GLXVendorPrivate, cmdlen, req);
-    req->reqType = gc->majorOpcode;
-    req->glxCode = code;
-    req->vendorCode = vop;
-    req->contextTag = gc->currentContextTag;
-    return (GLubyte *)(req) + sz_xGLXVendorPrivateReq;
-}
-
-const GLuint __glXDefaultPixelStore[9] = { 0, 0, 0, 0, 0, 0, 0, 0, 1 };
-
-#define zero                        (__glXDefaultPixelStore+0)
-#define one                         (__glXDefaultPixelStore+8)
-#define default_pixel_store_1D      (__glXDefaultPixelStore+4)
-#define default_pixel_store_1D_size 20
-#define default_pixel_store_2D      (__glXDefaultPixelStore+4)
-#define default_pixel_store_2D_size 20
-#define default_pixel_store_3D      (__glXDefaultPixelStore+0)
-#define default_pixel_store_3D_size 36
-#define default_pixel_store_4D      (__glXDefaultPixelStore+0)
-#define default_pixel_store_4D_size 36
-"""
-
-               for size in self.generic_sizes:
-                       self.print_generic_function(size)
-               return
-
-
-       def printBody(self, api):
-
-               self.pixel_stubs = {}
-               generated_stubs = []
-
-               for func in api.functionIterateGlx():
-                       if func.client_handcode: continue
-
-                       # If the function is a pixel function with a certain
-                       # GLX protocol signature, create a fake stub function
-                       # for it.  For example, create a single stub function
-                       # that is used to implement both glTexImage1D and
-                       # glTexImage2D.
-
-                       if func.glx_rop != 0:
-                               do_it = 0
-                               for image in func.get_images():
-                                       if image.img_pad_dimensions:
-                                               do_it = 1
-                                               break
-
-
-                               if do_it:
-                                       [h, n] = hash_pixel_function(func)
-
-
-                                       self.pixel_stubs[ func.name ] = n
-                                       if h not in generated_stubs:
-                                               generated_stubs.append(h)
-
-                                               fake_func = glx_pixel_function_stub( func, n )
-                                               self.printFunction(fake_func, fake_func.name)
-
-
-                       self.printFunction(func, func.name)
-                       if func.glx_sop and func.glx_vendorpriv:
-                               self.printFunction(func, func.glx_vendorpriv_names[0])
-
-               return
-
-
-       def printFunction(self, func, name):
-               footer = '}\n'
-               if func.glx_rop == ~0:
-                       print 'static %s' % (func.return_type)
-                       print '%s( unsigned opcode, unsigned dim, %s )' % (func.name, func.get_parameter_string())
-                       print '{'
-               else:
-                       if func.has_different_protocol(name):
-                               if func.return_type == "void":
-                                       ret_string = ''
-                               else:
-                                       ret_string = "return "
-
-                               func_name = func.static_glx_name(name)
-                               print '#define %s %d' % (func.opcode_vendor_name(name), func.glx_vendorpriv)
-                               print '%s gl%s(%s)' % (func.return_type, func_name, func.get_parameter_string())
-                               print '{'
-                               print '    __GLXcontext * const gc = __glXGetCurrentContext();'
-                               print ''
-                               print '#ifdef GLX_DIRECT_RENDERING'
-                               print '    if (gc->driContext) {'
-                               print '    %sCALL_%s(GET_DISPATCH(), (%s));' % (ret_string, func.name, func.get_called_parameter_string())
-                               print '    } else'
-                               print '#endif'
-                               print '    {'
-
-                               footer = '}\n}\n'
-                       else:
-                               print '#define %s %d' % (func.opcode_name(), func.opcode_value())
-
-                               print '%s __indirect_gl%s(%s)' % (func.return_type, name, func.get_parameter_string())
-                               print '{'
-
-
-               if func.glx_rop != 0 or func.vectorequiv != None:
-                       if len(func.images):
-                               self.printPixelFunction(func)
-                       else:
-                               self.printRenderFunction(func)
-               elif func.glx_sop != 0 or func.glx_vendorpriv != 0:
-                       self.printSingleFunction(func, name)
-                       pass
-               else:
-                       print "/* Missing GLX protocol for %s. */" % (name)
-
-               print footer
-               return
-
-
-       def print_generic_function(self, n):
-               size = (n + 3) & ~3
-               print """static FASTCALL NOINLINE void
-generic_%u_byte( GLint rop, const void * ptr )
-{
-    __GLXcontext * const gc = __glXGetCurrentContext();
-    const GLuint cmdlen = %u;
-
-    emit_header(gc->pc, rop, cmdlen);
-    (void) memcpy((void *)(gc->pc + 4), ptr, %u);
-    gc->pc += cmdlen;
-    if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }
-}
-""" % (n, size + 4, size)
-               return
-
-
-       def common_emit_one_arg(self, p, pc, adjust, extra_offset):
-               if p.is_array():
-                       src_ptr = p.name
-               else:
-                       src_ptr = "&" + p.name
-
-               if p.is_padding:
-                       print '(void) memset((void *)(%s + %u), 0, %s);' \
-                           % (pc, p.offset + adjust, p.size_string() )
-               elif not extra_offset:
-                       print '(void) memcpy((void *)(%s + %u), (void *)(%s), %s);' \
-                           % (pc, p.offset + adjust, src_ptr, p.size_string() )
-               else:
-                       print '(void) memcpy((void *)(%s + %u + %s), (void *)(%s), %s);' \
-                           % (pc, p.offset + adjust, extra_offset, src_ptr, p.size_string() )
-
-       def common_emit_args(self, f, pc, adjust, skip_vla):
-               extra_offset = None
-
-               for p in f.parameterIterateGlxSend( not skip_vla ):
-                       if p.name != f.img_reset:
-                               self.common_emit_one_arg(p, pc, adjust, extra_offset)
-                               
-                               if p.is_variable_length():
-                                       temp = p.size_string()
-                                       if extra_offset:
-                                               extra_offset += " + %s" % (temp)
-                                       else:
-                                               extra_offset = temp
-
-               return
-
-
-       def pixel_emit_args(self, f, pc, large):
-               """Emit the arguments for a pixel function.  This differs from
-               common_emit_args in that pixel functions may require padding
-               be inserted (i.e., for the missing width field for
-               TexImage1D), and they may also require a 'NULL image' flag
-               be inserted before the image data."""
-
-               if large:
-                       adjust = 8
-               else:
-                       adjust = 4
-
-               for param in f.parameterIterateGlxSend():
-                       if not param.is_image():
-                               self.common_emit_one_arg(param, pc, adjust, None)
-
-                               if f.pad_after(param):
-                                       print '(void) memcpy((void *)(%s + %u), zero, 4);' % (pc, (param.offset + param.size()) + adjust)
-
-                       else:
-                               [dim, width, height, depth, extent] = param.get_dimensions()
-                               if f.glx_rop == ~0:
-                                       dim_str = "dim"
-                               else:
-                                       dim_str = str(dim)
-
-                               if param.is_padding:
-                                       print '(void) memset((void *)(%s + %u), 0, %s);' \
-                                       % (pc, (param.offset - 4) + adjust, param.size_string() )
-
-                               if param.img_null_flag:
-                                       if large:
-                                               print '(void) memcpy((void *)(%s + %u), zero, 4);' % (pc, (param.offset - 4) + adjust)
-                                       else:
-                                               print '(void) memcpy((void *)(%s + %u), (void *)((%s == NULL) ? one : zero), 4);' % (pc, (param.offset - 4) + adjust, param.name)
-
-
-                               pixHeaderPtr = "%s + %u" % (pc, adjust)
-                               pcPtr = "%s + %u" % (pc, param.offset + adjust)
-
-                               if not large:
-                                       if param.img_send_null:
-                                               condition = '(compsize > 0) && (%s != NULL)' % (param.name)
-                                       else:
-                                               condition = 'compsize > 0'
-
-                                       print 'if (%s) {' % (condition)
-                                       print '    (*gc->fillImage)(gc, %s, %s, %s, %s, %s, %s, %s, %s, %s);' % (dim_str, width, height, depth, param.img_format, param.img_type, param.name, pcPtr, pixHeaderPtr)
-                                       print '} else {'
-                                       print '    (void) memcpy( %s, default_pixel_store_%uD, default_pixel_store_%uD_size );' % (pixHeaderPtr, dim, dim)
-                                       print '}'
-                               else:
-                                       print '__glXSendLargeImage(gc, compsize, %s, %s, %s, %s, %s, %s, %s, %s, %s);' % (dim_str, width, height, depth, param.img_format, param.img_type, param.name, pcPtr, pixHeaderPtr)
-
-               return
-
-
-       def large_emit_begin(self, f, op_name = None):
-               if not op_name:
-                       op_name = f.opcode_real_name()
-
-               print 'const GLint op = %s;' % (op_name)
-               print 'const GLuint cmdlenLarge = cmdlen + 4;'
-               print 'GLubyte * const pc = __glXFlushRenderBuffer(gc, gc->pc);'
-               print '(void) memcpy((void *)(pc + 0), (void *)(&cmdlenLarge), 4);'
-               print '(void) memcpy((void *)(pc + 4), (void *)(&op), 4);'
-               return
-
-
-       def common_func_print_just_start(self, f, name):
-               print '    __GLXcontext * const gc = __glXGetCurrentContext();'
-
-               # The only reason that single and vendor private commands need
-               # a variable called 'dpy' is becuase they use the SyncHandle
-               # macro.  For whatever brain-dead reason, that macro is hard-
-               # coded to use a variable called 'dpy' instead of taking a
-               # parameter.
-
-               # FIXME Simplify the logic related to skip_condition and
-               # FIXME condition_list in this function.  Basically, remove
-               # FIXME skip_condition, and just append the "dpy != NULL" type
-               # FIXME condition to condition_list from the start.  The only
-               # FIXME reason it's done in this confusing way now is to
-               # FIXME minimize the diffs in the generated code.
-
-               if not f.glx_rop:
-                       for p in f.parameterIterateOutputs():
-                               if p.is_image() and (p.img_format != "GL_COLOR_INDEX" or p.img_type != "GL_BITMAP"):
-                                       print '    const __GLXattribute * const state = gc->client_state_private;'
-                                       break
-
-                       print '    Display * const dpy = gc->currentDpy;'
-                       skip_condition = "dpy != NULL"
-               elif f.can_be_large:
-                       skip_condition = "gc->currentDpy != NULL"
-               else:
-                       skip_condition = None
-
-
-               if f.return_type != 'void':
-                       print '    %s retval = (%s) 0;' % (f.return_type, f.return_type)
-
-
-               if name != None and name not in f.glx_vendorpriv_names:
-                       print '#ifndef USE_XCB'
-               self.emit_packet_size_calculation(f, 0)
-               if name != None and name not in f.glx_vendorpriv_names:
-                       print '#endif'
-
-               condition_list = []
-               for p in f.parameterIterateCounters():
-                       condition_list.append( "%s >= 0" % (p.name) )
-                       # 'counter' parameters cannot be negative
-                       print "    if (%s < 0) {" % p.name
-                       print "        __glXSetError(gc, GL_INVALID_VALUE);"
-                       if f.return_type != 'void':
-                               print "        return 0;"
-                       else:
-                               print "        return;"
-                       print "    }"
-
-               if skip_condition:
-                       condition_list.append( skip_condition )
-
-               if len( condition_list ) > 0:
-                       if len( condition_list ) > 1:
-                               skip_condition = "(%s)" % (string.join( condition_list, ") && (" ))
-                       else:
-                               skip_condition = "%s" % (condition_list.pop(0))
-
-                       print '    if (__builtin_expect(%s, 1)) {' % (skip_condition)
-                       return 1
-               else:
-                       return 0
-
-
-       def printSingleFunction(self, f, name):
-               self.common_func_print_just_start(f, name)
-
-               if self.debug:
-                       print '        printf( "Enter %%s...\\n", "gl%s" );' % (f.name)
-
-               if name not in f.glx_vendorpriv_names:
-
-                       # XCB specific:
-                       print '#ifdef USE_XCB'
-                       if self.debug:
-                               print '        printf("\\tUsing XCB.\\n");'
-                       print '        xcb_connection_t *c = XGetXCBConnection(dpy);'
-                       print '        (void) __glXFlushRenderBuffer(gc, gc->pc);'
-                       xcb_name = 'xcb_glx%s' % convertStringForXCB(name)
-
-                       iparams=[]
-                       extra_iparams = []
-                       output = None
-                       for p in f.parameterIterator():
-                               if p.is_output:
-                                       output = p
-
-                                       if p.is_image():
-                                               if p.img_format != "GL_COLOR_INDEX" or p.img_type != "GL_BITMAP":
-                                                       extra_iparams.append("state->storePack.swapEndian")
-                                               else:
-                                                       extra_iparams.append("0")
-                                       
-                                               # Hardcode this in.  lsb_first param (apparently always GL_FALSE)
-                                               # also present in GetPolygonStipple, but taken care of above.
-                                               if xcb_name == "xcb_glx_read_pixels": 
-                                                       extra_iparams.append("0")
-                               else:
-                                       iparams.append(p.name)
-
-
-                       xcb_request = '%s(%s)' % (xcb_name, ", ".join(["c", "gc->currentContextTag"] + iparams + extra_iparams))
-
-                       if f.needs_reply():
-                               print '        %s_reply_t *reply = %s_reply(c, %s, NULL);' % (xcb_name, xcb_name, xcb_request)
-                               if output and f.reply_always_array:
-                                       print '        (void)memcpy(%s, %s_data(reply), %s_data_length(reply) * sizeof(%s));' % (output.name, xcb_name, xcb_name, output.get_base_type_string())
-
-                               elif output and not f.reply_always_array:
-                                       if not output.is_image():
-                                               print '        if (%s_data_length(reply) == 0)' % (xcb_name)
-                                               print '            (void)memcpy(%s, &reply->datum, sizeof(reply->datum));' % (output.name)
-                                               print '        else'
-                                       print '        (void)memcpy(%s, %s_data(reply), %s_data_length(reply) * sizeof(%s));' % (output.name, xcb_name, xcb_name, output.get_base_type_string())
-
-
-                               if f.return_type != 'void':
-                                       print '        retval = reply->ret_val;'
-                               print '        free(reply);'
-                       else:
-                               print '        ' + xcb_request + ';'
-                       print '#else'
-                       # End of XCB specific.
-
-
-               if f.parameters != []:
-                       pc_decl = "GLubyte const * pc ="
-               else:
-                       pc_decl = "(void)"
-
-               if name in f.glx_vendorpriv_names:
-                       print '        %s __glXSetupVendorRequest(gc, %s, %s, cmdlen);' % (pc_decl, f.opcode_real_name(), f.opcode_vendor_name(name))
-               else:
-                       print '        %s __glXSetupSingleRequest(gc, %s, cmdlen);' % (pc_decl, f.opcode_name())
-
-               self.common_emit_args(f, "pc", 0, 0)
-
-               images = f.get_images()
-
-               for img in images:
-                       if img.is_output:
-                               o = f.command_fixed_length() - 4
-                               print '        *(int32_t *)(pc + %u) = 0;' % (o)
-                               if img.img_format != "GL_COLOR_INDEX" or img.img_type != "GL_BITMAP":
-                                       print '        * (int8_t *)(pc + %u) = state->storePack.swapEndian;' % (o)
-               
-                               if f.img_reset:
-                                       print '        * (int8_t *)(pc + %u) = %s;' % (o + 1, f.img_reset)
-
-
-               return_name = ''
-               if f.needs_reply():
-                       if f.return_type != 'void':
-                               return_name = " retval"
-                               return_str = " retval = (%s)" % (f.return_type)
-                       else:
-                               return_str = " (void)"
-
-                       got_reply = 0
-
-                       for p in f.parameterIterateOutputs():
-                               if p.is_image():
-                                       [dim, w, h, d, junk] = p.get_dimensions()
-                                       if f.dimensions_in_reply:
-                                               print "        __glXReadPixelReply(dpy, gc, %u, 0, 0, 0, %s, %s, %s, GL_TRUE);" % (dim, p.img_format, p.img_type, p.name)
-                                       else:
-                                               print "        __glXReadPixelReply(dpy, gc, %u, %s, %s, %s, %s, %s, %s, GL_FALSE);" % (dim, w, h, d, p.img_format, p.img_type, p.name)
-
-                                       got_reply = 1
-                               else:
-                                       if f.reply_always_array:
-                                               aa = "GL_TRUE"
-                                       else:
-                                               aa = "GL_FALSE"
-
-                                       # gl_parameter.size() returns the size
-                                       # of the entire data item.  If the
-                                       # item is a fixed-size array, this is
-                                       # the size of the whole array.  This
-                                       # is not what __glXReadReply wants. It
-                                       # wants the size of a single data
-                                       # element in the reply packet.
-                                       # Dividing by the array size (1 for
-                                       # non-arrays) gives us this.
-
-                                       s = p.size() / p.get_element_count()
-                                       print "       %s __glXReadReply(dpy, %s, %s, %s);" % (return_str, s, p.name, aa)
-                                       got_reply = 1
-
-
-                       # If a reply wasn't read to fill an output parameter,
-                       # read a NULL reply to get the return value.
-
-                       if not got_reply:
-                               print "       %s __glXReadReply(dpy, 0, NULL, GL_FALSE);" % (return_str)
-
-
-               elif self.debug:
-                       # Only emit the extra glFinish call for functions
-                       # that don't already require a reply from the server.
-                       print '        __indirect_glFinish();'
-
-               if self.debug:
-                       print '        printf( "Exit %%s.\\n", "gl%s" );' % (name)
-
-
-               print '        UnlockDisplay(dpy); SyncHandle();'
-
-               if name not in f.glx_vendorpriv_names:
-                       print '#endif /* USE_XCB */'
-
-               print '    }'
-               print '    return%s;' % (return_name)
-               return
-
-
-       def printPixelFunction(self, f):
-               if self.pixel_stubs.has_key( f.name ):
-                       # Normally gl_function::get_parameter_string could be
-                       # used.  However, this call needs to have the missing
-                       # dimensions (e.g., a fake height value for
-                       # glTexImage1D) added in.
-
-                       p_string = ""
-                       for param in f.parameterIterateGlxSend():
-                               if param.is_padding:
-                                       continue
-
-                               p_string += ", " + param.name
-
-                               if param.is_image():
-                                       [dim, junk, junk, junk, junk] = param.get_dimensions()
-
-                               if f.pad_after(param):
-                                       p_string += ", 1"
-
-                       print '    %s(%s, %u%s );' % (self.pixel_stubs[f.name] , f.opcode_name(), dim, p_string)
-                       return
-
-
-               if self.common_func_print_just_start(f, None):
-                       trailer = "    }"
-               else:
-                       trailer = None
-
-
-               if f.can_be_large:
-                       print 'if (cmdlen <= gc->maxSmallRenderCommandSize) {'
-                       print '    if ( (gc->pc + cmdlen) > gc->bufEnd ) {'
-                       print '        (void) __glXFlushRenderBuffer(gc, gc->pc);'
-                       print '    }'
-
-               if f.glx_rop == ~0:
-                       opcode = "opcode"
-               else:
-                       opcode = f.opcode_real_name()
-
-               print 'emit_header(gc->pc, %s, cmdlen);' % (opcode)
-
-               self.pixel_emit_args( f, "gc->pc", 0 )
-               print 'gc->pc += cmdlen;'
-               print 'if (gc->pc > gc->limit) { (void) __glXFlushRenderBuffer(gc, gc->pc); }'
-
-               if f.can_be_large:
-                       print '}'
-                       print 'else {'
-
-                       self.large_emit_begin(f, opcode)
-                       self.pixel_emit_args(f, "pc", 1)
-
-                       print '}'
-
-               if trailer: print trailer
-               return
-
-
-       def printRenderFunction(self, f):
-               # There is a class of GL functions that take a single pointer
-               # as a parameter.  This pointer points to a fixed-size chunk
-               # of data, and the protocol for this functions is very
-               # regular.  Since they are so regular and there are so many
-               # of them, special case them with generic functions.  On
-               # x86, this saves about 26KB in the libGL.so binary.
-
-               if f.variable_length_parameter() == None and len(f.parameters) == 1:
-                       p = f.parameters[0]
-                       if p.is_pointer():
-                               cmdlen = f.command_fixed_length()
-                               if cmdlen in self.generic_sizes:
-                                       print '    generic_%u_byte( %s, %s );' % (cmdlen, f.opcode_real_name(), p.name)
-                                       return
-
-               if self.common_func_print_just_start(f, None):
-                       trailer = "    }"
-               else:
-                       trailer = None
-
-               if self.debug:
-                       print 'printf( "Enter %%s...\\n", "gl%s" );' % (f.name)
-
-               if f.can_be_large:
-                       print 'if (cmdlen <= gc->maxSmallRenderCommandSize) {'
-                       print '    if ( (gc->pc + cmdlen) > gc->bufEnd ) {'
-                       print '        (void) __glXFlushRenderBuffer(gc, gc->pc);'
-                       print '    }'
-
-               print 'emit_header(gc->pc, %s, cmdlen);' % (f.opcode_real_name())
-
-               self.common_emit_args(f, "gc->pc", 4, 0)
-               print 'gc->pc += cmdlen;'
-               print 'if (__builtin_expect(gc->pc > gc->limit, 0)) { (void) __glXFlushRenderBuffer(gc, gc->pc); }'
-
-               if f.can_be_large:
-                       print '}'
-                       print 'else {'
-
-                       self.large_emit_begin(f)
-                       self.common_emit_args(f, "pc", 8, 1)
-
-                       p = f.variable_length_parameter()
-                       print '    __glXSendLargeCommand(gc, pc, %u, %s, %s);' % (p.offset + 8, p.name, p.size_string())
-                       print '}'
-
-               if self.debug:
-                       print '__indirect_glFinish();'
-                       print 'printf( "Exit %%s.\\n", "gl%s" );' % (f.name)
-
-               if trailer: print trailer
-               return
-
-
-class PrintGlxProtoInit_c(gl_XML.gl_print_base):
-       def __init__(self):
-               gl_XML.gl_print_base.__init__(self)
-
-               self.name = "glX_proto_send.py (from Mesa)"
-               self.license = license.bsd_license_template % ( \
-"""Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
-(C) Copyright IBM Corporation 2004""", "PRECISION INSIGHT, IBM")
-               return
-
-
-       def printRealHeader(self):
-               print """/**
- * \\file indirect_init.c
- * Initialize indirect rendering dispatch table.
- *
- * \\author Kevin E. Martin <kevin@precisioninsight.com>
- * \\author Brian Paul <brian@precisioninsight.com>
- * \\author Ian Romanick <idr@us.ibm.com>
- */
-
-#include "indirect_init.h"
-#include "indirect.h"
-#include "glapi.h"
-
-
-/**
- * No-op function used to initialize functions that have no GLX protocol
- * support.
- */
-static int NoOp(void)
-{
-    return 0;
-}
-
-/**
- * Create and initialize a new GL dispatch table.  The table is initialized
- * with GLX indirect rendering protocol functions.
- */
-__GLapi * __glXNewIndirectAPI( void )
-{
-    __GLapi *glAPI;
-    GLuint entries;
-
-    entries = _glapi_get_dispatch_table_size();
-    glAPI = (__GLapi *) Xmalloc(entries * sizeof(void *));
-
-    /* first, set all entries to point to no-op functions */
-    {
-       int i;
-       void **dispatch = (void **) glAPI;
-       for (i = 0; i < entries; i++) {
-          dispatch[i] = (void *) NoOp;
-       }
-    }
-
-    /* now, initialize the entries we understand */"""
-
-       def printRealFooter(self):
-               print """
-    return glAPI;
-}
-"""
-               return
-
-
-       def printBody(self, api):
-               for [name, number] in api.categoryIterate():
-                       if number != None:
-                               preamble = '\n    /* %3u. %s */\n\n' % (int(number), name)
-                       else:
-                               preamble = '\n    /* %s */\n\n' % (name)
-
-                       for func in api.functionIterateByCategory(name):
-                               if func.client_supported_for_indirect():
-                                       print '%s    glAPI->%s = __indirect_gl%s;' % (preamble, func.name, func.name)
-                                       preamble = ''
-
-               return
-
-
-class PrintGlxProtoInit_h(gl_XML.gl_print_base):
-       def __init__(self):
-               gl_XML.gl_print_base.__init__(self)
-
-               self.name = "glX_proto_send.py (from Mesa)"
-               self.license = license.bsd_license_template % ( \
-"""Copyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
-(C) Copyright IBM Corporation 2004""", "PRECISION INSIGHT, IBM")
-               self.header_tag = "_INDIRECT_H_"
-
-               self.last_category = ""
-               return
-
-
-       def printRealHeader(self):
-               print """/**
- * \\file
- * Prototypes for indirect rendering functions.
- *
- * \\author Kevin E. Martin <kevin@precisioninsight.com>
- * \\author Ian Romanick <idr@us.ibm.com>
- */
-"""
-               self.printVisibility( "HIDDEN", "hidden" )
-               self.printFastcall()
-               self.printNoinline()
-
-               print """
-#include "glxclient.h"
-
-extern HIDDEN NOINLINE CARD32 __glXReadReply( Display *dpy, size_t size,
-    void * dest, GLboolean reply_is_always_array );
-
-extern HIDDEN NOINLINE void __glXReadPixelReply( Display *dpy,
-    __GLXcontext * gc, unsigned max_dim, GLint width, GLint height,
-    GLint depth, GLenum format, GLenum type, void * dest,
-    GLboolean dimensions_in_reply );
-
-extern HIDDEN NOINLINE FASTCALL GLubyte * __glXSetupSingleRequest(
-    __GLXcontext * gc, GLint sop, GLint cmdlen );
-
-extern HIDDEN NOINLINE FASTCALL GLubyte * __glXSetupVendorRequest(
-    __GLXcontext * gc, GLint code, GLint vop, GLint cmdlen );
-"""
-
-
-       def printBody(self, api):
-               for func in api.functionIterateGlx():
-                       params = func.get_parameter_string()
-
-                       print 'extern HIDDEN %s __indirect_gl%s(%s);' % (func.return_type, func.name, params)
-
-                       for n in func.entry_points:
-                               if func.has_different_protocol(n):
-                                       asdf = func.static_glx_name(n)
-                                       if asdf not in func.static_entry_points:
-                                               print 'extern HIDDEN %s gl%s(%s);' % (func.return_type, asdf, params)
-                                       else:
-                                               print 'GLAPI %s GLAPIENTRY gl%s(%s);' % (func.return_type, asdf, params)
-                                               
-                                       break
-
-
-
-def show_usage():
-       print "Usage: %s [-f input_file_name] [-m output_mode] [-d]" % sys.argv[0]
-       print "    -m output_mode   Output mode can be one of 'proto', 'init_c' or 'init_h'."
-       print "    -d               Enable extra debug information in the generated code."
-       sys.exit(1)
-
-
-if __name__ == '__main__':
-       file_name = "gl_API.xml"
-
-       try:
-               (args, trail) = getopt.getopt(sys.argv[1:], "f:m:d")
-       except Exception,e:
-               show_usage()
-
-       debug = 0
-       mode = "proto"
-       for (arg,val) in args:
-               if arg == "-f":
-                       file_name = val
-               elif arg == "-m":
-                       mode = val
-               elif arg == "-d":
-                       debug = 1
-
-       if mode == "proto":
-               printer = PrintGlxProtoStubs()
-       elif mode == "init_c":
-               printer = PrintGlxProtoInit_c()
-       elif mode == "init_h":
-               printer = PrintGlxProtoInit_h()
-       else:
-               show_usage()
-
-
-       printer.debug = debug
-       api = gl_XML.parse_GL_API( file_name, glX_XML.glx_item_factory() )
-
-       printer.Print( api )
diff --git a/src/mesa/glapi/gen/glX_proto_size.py b/src/mesa/glapi/gen/glX_proto_size.py
deleted file mode 100644 (file)
index 95cb511..0000000
+++ /dev/null
@@ -1,704 +0,0 @@
-#!/usr/bin/env python
-
-# (C) Copyright IBM Corporation 2004, 2005
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-
-import gl_XML, glX_XML
-import license
-import sys, getopt, copy, string
-
-
-class glx_enum_function:
-       def __init__(self, func_name, enum_dict):
-               self.name = func_name
-               self.mode = 1
-               self.sig = None
-
-               # "enums" is a set of lists.  The element in the set is the
-               # value of the enum.  The list is the list of names for that
-               # value.  For example, [0x8126] = {"POINT_SIZE_MIN",
-               # "POINT_SIZE_MIN_ARB", "POINT_SIZE_MIN_EXT",
-               # "POINT_SIZE_MIN_SGIS"}.
-
-               self.enums = {}
-
-               # "count" is indexed by count values.  Each element of count
-               # is a list of index to "enums" that have that number of
-               # associated data elements.  For example, [4] = 
-               # {GL_AMBIENT, GL_DIFFUSE, GL_SPECULAR, GL_EMISSION,
-               # GL_AMBIENT_AND_DIFFUSE} (the enum names are used here,
-               # but the actual hexadecimal values would be in the array).
-
-               self.count = {}
-
-
-               # Fill self.count and self.enums using the dictionary of enums
-               # that was passed in.  The generic Get functions (e.g.,
-               # GetBooleanv and friends) are handled specially here.  In
-               # the data the generic Get functions are refered to as "Get".
-
-               if func_name in ["GetIntegerv", "GetBooleanv", "GetFloatv", "GetDoublev"]:
-                       match_name = "Get"
-               else:
-                       match_name = func_name
-
-               mode_set = 0
-               for enum_name in enum_dict:
-                       e = enum_dict[ enum_name ]
-
-                       if e.functions.has_key( match_name ):
-                               [count, mode] = e.functions[ match_name ]
-
-                               if mode_set and mode != self.mode:
-                                       raise RuntimeError("Not all enums for %s have the same mode." % (func_name))
-
-                               self.mode = mode
-
-                               if self.enums.has_key( e.value ):
-                                       if e.name not in self.enums[ e.value ]:
-                                               self.enums[ e.value ].append( e )
-                               else:
-                                       if not self.count.has_key( count ):
-                                               self.count[ count ] = []
-
-                                       self.enums[ e.value ] = [ e ]
-                                       self.count[ count ].append( e.value )
-
-
-               return
-
-
-       def signature( self ):
-               if self.sig == None:
-                       self.sig = ""
-                       for i in self.count:
-                               if i == None:
-                                       raise RuntimeError("i is None.  WTF?")
-
-                               self.count[i].sort()
-                               for e in self.count[i]:
-                                       self.sig += "%04x,%d," % (e, i)
-
-               return self.sig
-
-
-       def is_set( self ):
-               return self.mode
-
-
-       def PrintUsingTable(self):
-               """Emit the body of the __gl*_size function using a pair
-               of look-up tables and a mask.  The mask is calculated such
-               that (e & mask) is unique for all the valid values of e for
-               this function.  The result of (e & mask) is used as an index
-               into the first look-up table.  If it matches e, then the
-               same entry of the second table is returned.  Otherwise zero
-               is returned.
-               
-               It seems like this should cause better code to be generated.
-               However, on x86 at least, the resulting .o file is about 20%
-               larger then the switch-statment version.  I am leaving this
-               code in because the results may be different on other
-               platforms (e.g., PowerPC or x86-64)."""
-
-               return 0
-               count = 0
-               for a in self.enums:
-                       count += 1
-
-               if self.count.has_key(-1):
-                       return 0
-
-               # Determine if there is some mask M, such that M = (2^N) - 1,
-               # that will generate unique values for all of the enums.
-
-               mask = 0
-               for i in [1, 2, 3, 4, 5, 6, 7, 8]:
-                       mask = (1 << i) - 1
-
-                       fail = 0;
-                       for a in self.enums:
-                               for b in self.enums:
-                                       if a != b:
-                                               if (a & mask) == (b & mask):
-                                                       fail = 1;
-
-                       if not fail:
-                               break;
-                       else:
-                               mask = 0
-
-               if (mask != 0) and (mask < (2 * count)):
-                       masked_enums = {}
-                       masked_count = {}
-
-                       for i in range(0, mask + 1):
-                               masked_enums[i] = "0";
-                               masked_count[i] = 0;
-
-                       for c in self.count:
-                               for e in self.count[c]:
-                                       i = e & mask
-                                       enum_obj = self.enums[e][0]
-                                       masked_enums[i] = '0x%04x /* %s */' % (e, enum_obj.name )
-                                       masked_count[i] = c
-
-
-                       print '    static const GLushort a[%u] = {' % (mask + 1)
-                       for e in masked_enums:
-                               print '        %s, ' % (masked_enums[e])
-                       print '    };'
-
-                       print '    static const GLubyte b[%u] = {' % (mask + 1)
-                       for c in masked_count:
-                               print '        %u, ' % (masked_count[c])
-                       print '    };'
-
-                       print '    const unsigned idx = (e & 0x%02xU);' % (mask)
-                       print ''
-                       print '    return (e == a[idx]) ? (GLint) b[idx] : 0;'
-                       return 1;
-               else:
-                       return 0;
-
-
-       def PrintUsingSwitch(self, name):
-               """Emit the body of the __gl*_size function using a 
-               switch-statement."""
-
-               print '    switch( e ) {'
-
-               for c in self.count:
-                       for e in self.count[c]:
-                               first = 1
-
-                               # There may be multiple enums with the same
-                               # value.  This happens has extensions are
-                               # promoted from vendor-specific or EXT to
-                               # ARB and to the core.  Emit the first one as
-                               # a case label, and emit the others as
-                               # commented-out case labels.
-
-                               list = {}
-                               for enum_obj in self.enums[e]:
-                                       list[ enum_obj.priority() ] = enum_obj.name
-
-                               keys = list.keys()
-                               keys.sort()
-                               for k in keys:
-                                       j = list[k]
-                                       if first:
-                                               print '        case GL_%s:' % (j)
-                                               first = 0
-                                       else:
-                                               print '/*      case GL_%s:*/' % (j)
-                                       
-                       if c == -1:
-                               print '            return __gl%s_variable_size( e );' % (name)
-                       else:
-                               print '            return %u;' % (c)
-                                       
-               print '        default: return 0;'
-               print '    }'
-
-
-       def Print(self, name):
-               print 'INTERNAL PURE FASTCALL GLint'
-               print '__gl%s_size( GLenum e )' % (name)
-               print '{'
-
-               if not self.PrintUsingTable():
-                       self.PrintUsingSwitch(name)
-
-               print '}'
-               print ''
-
-
-class glx_server_enum_function(glx_enum_function):
-       def __init__(self, func, enum_dict):
-               glx_enum_function.__init__(self, func.name, enum_dict)
-               
-               self.function = func
-               return
-
-
-       def signature( self ):
-               if self.sig == None:
-                       sig = glx_enum_function.signature(self)
-
-                       p = self.function.variable_length_parameter()
-                       if p:
-                               sig += "%u" % (p.size())
-
-                       self.sig = sig
-
-               return self.sig;
-
-
-       def Print(self, name, printer):
-               f = self.function
-               printer.common_func_print_just_header( f )
-
-               fixup = []
-               
-               foo = {}
-               for param_name in f.count_parameter_list:
-                       o = f.offset_of( param_name )
-                       foo[o] = param_name
-
-               for param_name in f.counter_list:
-                       o = f.offset_of( param_name )
-                       foo[o] = param_name
-
-               keys = foo.keys()
-               keys.sort()
-               for o in keys:
-                       p = f.parameters_by_name[ foo[o] ]
-
-                       printer.common_emit_one_arg(p, "pc", 0)
-                       fixup.append( p.name )
-
-
-               print '    GLsizei compsize;'
-               print ''
-
-               printer.common_emit_fixups(fixup)
-
-               print ''
-               print '    compsize = __gl%s_size(%s);' % (f.name, string.join(f.count_parameter_list, ","))
-               p = f.variable_length_parameter()
-               print '    return __GLX_PAD(%s);' % (p.size_string())
-
-               print '}'
-               print ''
-
-
-class PrintGlxSizeStubs_common(gl_XML.gl_print_base):
-       do_get = (1 << 0)
-       do_set = (1 << 1)
-
-       def __init__(self, which_functions):
-               gl_XML.gl_print_base.__init__(self)
-
-               self.name = "glX_proto_size.py (from Mesa)"
-               self.license = license.bsd_license_template % ( "(C) Copyright IBM Corporation 2004", "IBM")
-
-               self.emit_set = ((which_functions & PrintGlxSizeStubs_common.do_set) != 0)
-               self.emit_get = ((which_functions & PrintGlxSizeStubs_common.do_get) != 0)
-               return
-
-
-class PrintGlxSizeStubs_c(PrintGlxSizeStubs_common):
-       def printRealHeader(self):
-               print ''
-               print '#include <GL/gl.h>'
-               if self.emit_get:
-                       print '#include "indirect_size_get.h"'
-                       print '#include "glxserver.h"'
-                       print '#include "indirect_util.h"'
-               
-               print '#include "indirect_size.h"'
-
-               print ''
-               self.printPure()
-               print ''
-               self.printFastcall()
-               print ''
-               self.printVisibility( "INTERNAL", "internal" )
-               print ''
-               print ''
-               print '#if defined(__CYGWIN__) || defined(__MINGW32__) || defined(__APPLE__)'
-               print '#  undef HAVE_ALIAS'
-               print '#endif'
-               print '#ifdef HAVE_ALIAS'
-               print '#  define ALIAS2(from,to) \\'
-               print '    INTERNAL PURE FASTCALL GLint __gl ## from ## _size( GLenum e ) \\'
-               print '        __attribute__ ((alias( # to )));'
-               print '#  define ALIAS(from,to) ALIAS2( from, __gl ## to ## _size )'
-               print '#else'
-               print '#  define ALIAS(from,to) \\'
-               print '    INTERNAL PURE FASTCALL GLint __gl ## from ## _size( GLenum e ) \\'
-               print '    { return __gl ## to ## _size( e ); }'
-               print '#endif'
-               print ''
-               print ''
-
-
-       def printBody(self, api):
-               enum_sigs = {}
-               aliases = []
-
-               for func in api.functionIterateGlx():
-                       ef = glx_enum_function( func.name, api.enums_by_name )
-                       if len(ef.enums) == 0:
-                               continue
-
-                       if (ef.is_set() and self.emit_set) or (not ef.is_set() and self.emit_get):
-                               sig = ef.signature()
-                               if enum_sigs.has_key( sig ):
-                                       aliases.append( [func.name, enum_sigs[ sig ]] )
-                               else:
-                                       enum_sigs[ sig ] = func.name
-                                       ef.Print( func.name )
-
-
-               for [alias_name, real_name] in aliases:
-                       print 'ALIAS( %s, %s )' % (alias_name, real_name)
-
-
-                               
-class PrintGlxSizeStubs_h(PrintGlxSizeStubs_common):
-       def printRealHeader(self):
-               print """/**
- * \\file
- * Prototypes for functions used to determine the number of data elements in
- * various GLX protocol messages.
- *
- * \\author Ian Romanick <idr@us.ibm.com>
- */
-"""
-               self.printPure();
-               print ''
-               self.printFastcall();
-               print ''
-               self.printVisibility( "INTERNAL", "internal" );
-               print ''
-
-
-       def printBody(self, api):
-               for func in api.functionIterateGlx():
-                       ef = glx_enum_function( func.name, api.enums_by_name )
-                       if len(ef.enums) == 0:
-                               continue
-
-                       if (ef.is_set() and self.emit_set) or (not ef.is_set() and self.emit_get):
-                               print 'extern INTERNAL PURE FASTCALL GLint __gl%s_size(GLenum);' % (func.name)
-
-
-class PrintGlxReqSize_common(gl_XML.gl_print_base):
-       """Common base class for PrintGlxSizeReq_h and PrintGlxSizeReq_h.
-
-       The main purpose of this common base class is to provide the infrastructure
-       for the derrived classes to iterate over the same set of functions.
-       """
-
-       def __init__(self):
-               gl_XML.gl_print_base.__init__(self)
-
-               self.name = "glX_proto_size.py (from Mesa)"
-               self.license = license.bsd_license_template % ( "(C) Copyright IBM Corporation 2005", "IBM")
-
-
-class PrintGlxReqSize_h(PrintGlxReqSize_common):
-       def __init__(self):
-               PrintGlxReqSize_common.__init__(self)
-               self.header_tag = "_INDIRECT_REQSIZE_H_"
-
-
-       def printRealHeader(self):
-               self.printVisibility("HIDDEN", "hidden")
-               print ''
-               self.printPure()
-               print ''
-
-
-       def printBody(self, api):
-               for func in api.functionIterateGlx():
-                       if not func.ignore and func.has_variable_size_request():
-                               print 'extern PURE HIDDEN int __glX%sReqSize(const GLbyte *pc, Bool swap);' % (func.name)
-
-
-class PrintGlxReqSize_c(PrintGlxReqSize_common):
-       """Create the server-side 'request size' functions.
-
-       Create the server-side functions that are used to determine what the
-       size of a varible length command should be.  The server then uses
-       this value to determine if the incoming command packed it malformed.
-       """
-
-       def __init__(self):
-               PrintGlxReqSize_common.__init__(self)
-               self.counter_sigs = {}
-
-
-       def printRealHeader(self):
-               print ''
-               print '#include <GL/gl.h>'
-               print '#include "glxserver.h"'
-               print '#include "glxbyteorder.h"'
-               print '#include "indirect_size.h"'
-               print '#include "indirect_reqsize.h"'
-               print ''
-               print '#define __GLX_PAD(x)  (((x) + 3) & ~3)'
-               print ''
-               print '#if defined(__CYGWIN__) || defined(__MINGW32__)'
-               print '#  undef HAVE_ALIAS'
-               print '#endif'
-               print '#ifdef HAVE_ALIAS'
-               print '#  define ALIAS2(from,to) \\'
-               print '    GLint __glX ## from ## ReqSize( const GLbyte * pc, Bool swap ) \\'
-               print '        __attribute__ ((alias( # to )));'
-               print '#  define ALIAS(from,to) ALIAS2( from, __glX ## to ## ReqSize )'
-               print '#else'
-               print '#  define ALIAS(from,to) \\'
-               print '    GLint __glX ## from ## ReqSize( const GLbyte * pc, Bool swap ) \\'
-               print '    { return __glX ## to ## ReqSize( pc, swap ); }'
-               print '#endif'
-               print ''
-               print ''
-
-
-       def printBody(self, api):
-               aliases = []
-               enum_functions = {}
-               enum_sigs = {}
-
-               for func in api.functionIterateGlx():
-                       if not func.has_variable_size_request(): continue
-
-                       ef = glx_server_enum_function( func, api.enums_by_name )
-                       if len(ef.enums) == 0: continue
-
-                       sig = ef.signature()
-
-                       if not enum_functions.has_key(func.name):
-                               enum_functions[ func.name ] = sig
-
-                       if not enum_sigs.has_key( sig ):
-                               enum_sigs[ sig ] = ef
-                       
-
-
-               for func in api.functionIterateGlx():
-                       # Even though server-handcode fuctions are on "the
-                       # list", and prototypes are generated for them, there
-                       # isn't enough information to generate a size
-                       # function.  If there was enough information, they
-                       # probably wouldn't need to be handcoded in the first
-                       # place!
-
-                       if func.server_handcode: continue
-                       if not func.has_variable_size_request(): continue
-
-                       if enum_functions.has_key(func.name):
-                               sig = enum_functions[func.name]
-                               ef = enum_sigs[ sig ]
-
-                               if ef.name != func.name:
-                                       aliases.append( [func.name, ef.name] )
-                               else:
-                                       ef.Print( func.name, self )
-
-                       elif func.images:
-                               self.printPixelFunction(func)
-                       elif func.has_variable_size_request():
-                               a = self.printCountedFunction(func)
-                               if a: aliases.append(a)
-
-
-               for [alias_name, real_name] in aliases:
-                       print 'ALIAS( %s, %s )' % (alias_name, real_name)
-
-               return
-
-
-       def common_emit_fixups(self, fixup):
-               """Utility function to emit conditional byte-swaps."""
-
-               if fixup:
-                       print '    if (swap) {'
-                       for name in fixup:
-                               print '        %s = bswap_32(%s);' % (name, name)
-                       print '    }'
-
-               return
-
-
-       def common_emit_one_arg(self, p, pc, adjust):
-               offset = p.offset
-               dst = p.string()
-               src = '(%s *)' % (p.type_string())
-               print '%-18s = *%11s(%s + %u);' % (dst, src, pc, offset + adjust);
-               return
-
-
-       def common_func_print_just_header(self, f):
-               print 'int'
-               print '__glX%sReqSize( const GLbyte * pc, Bool swap )' % (f.name)
-               print '{'
-
-
-       def printPixelFunction(self, f):
-               self.common_func_print_just_header(f)
-               
-               f.offset_of( f.parameters[0].name )
-               [dim, w, h, d, junk] = f.get_images()[0].get_dimensions()
-
-               print '    GLint row_length   = *  (GLint *)(pc +  4);'
-
-               if dim < 3:
-                       fixup = ['row_length', 'skip_rows', 'alignment']
-                       print '    GLint image_height = 0;'
-                       print '    GLint skip_images  = 0;'
-                       print '    GLint skip_rows    = *  (GLint *)(pc +  8);'
-                       print '    GLint alignment    = *  (GLint *)(pc + 16);'
-               else:
-                       fixup = ['row_length', 'image_height', 'skip_rows', 'skip_images', 'alignment']
-                       print '    GLint image_height = *  (GLint *)(pc +  8);'
-                       print '    GLint skip_rows    = *  (GLint *)(pc + 16);'
-                       print '    GLint skip_images  = *  (GLint *)(pc + 20);'
-                       print '    GLint alignment    = *  (GLint *)(pc + 32);'
-
-               img = f.images[0]
-               for p in f.parameterIterateGlxSend():
-                       if p.name in [w, h, d, img.img_format, img.img_type, img.img_target]:
-                               self.common_emit_one_arg(p, "pc", 0)
-                               fixup.append( p.name )
-
-               print ''
-
-               self.common_emit_fixups(fixup)
-
-               if img.img_null_flag:
-                       print ''
-                       print '    if (*(CARD32 *) (pc + %s))' % (img.offset - 4)
-                       print '        return 0;'
-
-               print ''
-               print '    return __glXImageSize(%s, %s, %s, %s, %s, %s,' % (img.img_format, img.img_type, img.img_target, w, h, d )
-               print '                          image_height, row_length, skip_images,'
-               print '                          skip_rows, alignment);'
-               print '}'
-               print ''
-               return
-
-
-       def printCountedFunction(self, f):
-
-               sig = ""
-               offset = 0
-               fixup = []
-               params = []
-               plus = ''
-               size = ''
-               param_offsets = {}
-
-               # Calculate the offset of each counter parameter and the
-               # size string for the variable length parameter(s).  While
-               # that is being done, calculate a unique signature for this
-               # function.
-
-               for p in f.parameterIterateGlxSend():
-                       if p.is_counter:
-                               fixup.append( p.name )
-                               params.append( p )
-                       elif p.counter:
-                               s = p.size()
-                               if s == 0: s = 1
-
-                               sig += "(%u,%u)" % (f.offset_of(p.counter), s)
-                               size += '%s%s' % (plus, p.size_string())
-                               plus = ' + '
-
-
-               # If the calculated signature matches a function that has
-               # already be emitted, don't emit this function.  Instead, add
-               # it to the list of function aliases.
-
-               if self.counter_sigs.has_key(sig):
-                       n = self.counter_sigs[sig];
-                       alias = [f.name, n]
-               else:
-                       alias = None
-                       self.counter_sigs[sig] = f.name
-
-                       self.common_func_print_just_header(f)
-
-                       for p in params:
-                               self.common_emit_one_arg(p, "pc", 0)
-
-
-                       print ''
-                       self.common_emit_fixups(fixup)
-                       print ''
-
-                       print '    return __GLX_PAD(%s);' % (size)
-                       print '}'
-                       print ''
-
-               return alias
-
-
-def show_usage():
-       print "Usage: %s [-f input_file_name] -m output_mode [--only-get | --only-set] [--get-alias-set]" % sys.argv[0]
-       print "    -m output_mode   Output mode can be one of 'size_c' or 'size_h'."
-       print "    --only-get       Only emit 'get'-type functions."
-       print "    --only-set       Only emit 'set'-type functions."
-       print ""
-       print "By default, both 'get' and 'set'-type functions are emitted."
-       sys.exit(1)
-
-
-if __name__ == '__main__':
-       file_name = "gl_API.xml"
-
-       try:
-               (args, trail) = getopt.getopt(sys.argv[1:], "f:m:h:", ["only-get", "only-set", "header-tag"])
-       except Exception,e:
-               show_usage()
-
-       mode = None
-       header_tag = None
-       which_functions = PrintGlxSizeStubs_common.do_get | PrintGlxSizeStubs_common.do_set
-
-       for (arg,val) in args:
-               if arg == "-f":
-                       file_name = val
-               elif arg == "-m":
-                       mode = val
-               elif arg == "--only-get":
-                       which_functions = PrintGlxSizeStubs_common.do_get
-               elif arg == "--only-set":
-                       which_functions = PrintGlxSizeStubs_common.do_set
-               elif (arg == '-h') or (arg == "--header-tag"):
-                       header_tag = val
-
-       if mode == "size_c":
-               printer = PrintGlxSizeStubs_c( which_functions )
-       elif mode == "size_h":
-               printer = PrintGlxSizeStubs_h( which_functions )
-               if header_tag:
-                       printer.header_tag = header_tag
-       elif mode == "reqsize_c":
-               printer = PrintGlxReqSize_c()
-       elif mode == "reqsize_h":
-               printer = PrintGlxReqSize_h()
-       else:
-               show_usage()
-
-       api = gl_XML.parse_GL_API( file_name, glX_XML.glx_item_factory() )
-
-
-       printer.Print( api )
diff --git a/src/mesa/glapi/gen/glX_server_table.py b/src/mesa/glapi/gen/glX_server_table.py
deleted file mode 100644 (file)
index f3962f8..0000000
+++ /dev/null
@@ -1,411 +0,0 @@
-#!/bin/env python
-
-# (C) Copyright IBM Corporation 2005, 2006
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-
-import gl_XML, glX_XML, glX_proto_common, license
-import sys, getopt
-
-
-def log2(value):
-       for i in range(0, 30):
-               p = 1 << i
-               if p >= value:
-                       return i
-
-       return -1
-
-
-def round_down_to_power_of_two(n):
-       """Returns the nearest power-of-two less than or equal to n."""
-
-       for i in range(30, 0, -1):
-               p = 1 << i
-               if p <= n:
-                       return p
-
-       return -1
-
-
-class function_table:
-       def __init__(self, name, do_size_check):
-               self.name_base = name
-               self.do_size_check = do_size_check
-
-
-               self.max_bits = 1
-               self.next_opcode_threshold = (1 << self.max_bits)
-               self.max_opcode = 0
-
-               self.functions = {}
-               self.lookup_table = []
-               
-               # Minimum number of opcodes in a leaf node.
-               self.min_op_bits = 3
-               self.min_op_count = (1 << self.min_op_bits)
-               return
-
-
-       def append(self, opcode, func):
-               self.functions[opcode] = func
-
-               if opcode > self.max_opcode:
-                       self.max_opcode = opcode
-
-                       if opcode > self.next_opcode_threshold:
-                               bits = log2(opcode)
-                               if (1 << bits) <= opcode:
-                                       bits += 1
-
-                               self.max_bits = bits
-                               self.next_opcode_threshold = 1 << bits
-               return
-
-
-       def divide_group(self, min_opcode, total):
-               """Divide the group starting min_opcode into subgroups.
-               Returns a tuple containing the number of bits consumed by
-               the node, the list of the children's tuple, and the number
-               of entries in the final array used by this node and its
-               children, and the depth of the subtree rooted at the node."""
-
-               remaining_bits = self.max_bits - total
-               next_opcode = min_opcode + (1 << remaining_bits)
-               empty_children = 0
-               
-               for M in range(0, remaining_bits):
-                       op_count = 1 << (remaining_bits - M);
-                       child_count = 1 << M;
-
-                       empty_children = 0
-                       full_children = 0
-                       for i in range(min_opcode, next_opcode, op_count):
-                               used = 0
-                               empty = 0
-
-                               for j in range(i, i + op_count):
-                                       if self.functions.has_key(j):
-                                               used += 1;
-                                       else:
-                                               empty += 1;
-                                               
-
-                               if empty == op_count:
-                                       empty_children += 1
-
-                               if used == op_count:
-                                       full_children += 1
-
-                       if (empty_children > 0) or (full_children == child_count) or (op_count <= self.min_op_count):
-                               break
-
-
-               # If all the remaining bits are used by this node, as is the
-               # case when M is 0 or remaining_bits, the node is a leaf.
-
-               if (M == 0) or (M == remaining_bits):
-                       return [remaining_bits, [], 0, 0]
-               else:
-                       children = []
-                       count = 1
-                       depth = 1
-                       all_children_are_nonempty_leaf_nodes = 1
-                       for i in range(min_opcode, next_opcode, op_count):
-                               n = self.divide_group(i, total + M)
-
-                               if not (n[1] == [] and not self.is_empty_leaf(i, n[0])):
-                                       all_children_are_nonempty_leaf_nodes = 0
-
-                               children.append(n)
-                               count += n[2] + 1
-                               
-                               if n[3] >= depth:
-                                       depth = n[3] + 1
-
-                       # If all of the child nodes are non-empty leaf nodes, pull
-                       # them up and make this node a leaf.
-
-                       if all_children_are_nonempty_leaf_nodes:
-                               return [remaining_bits, [], 0, 0]
-                       else:
-                               return [M, children, count, depth]
-
-
-       def is_empty_leaf(self, base_opcode, M):
-               for op in range(base_opcode, base_opcode + (1 << M)):
-                       if self.functions.has_key(op):
-                               return 0
-                               break
-
-               return 1
-
-
-       def dump_tree(self, node, base_opcode, remaining_bits, base_entry, depth):
-               M = node[0]
-               children = node[1]
-               child_M = remaining_bits - M
-
-
-               # This actually an error condition.
-               if children == []:
-                       return
-
-               print '    /* [%u] -> opcode range [%u, %u], node depth %u */' % (base_entry, base_opcode, base_opcode + (1 << remaining_bits), depth)
-               print '    %u,' % (M)
-
-               base_entry += (1 << M) + 1
-
-               child_index = base_entry
-               child_base_opcode = base_opcode
-               for child in children:
-                       if child[1] == []:
-                               if self.is_empty_leaf(child_base_opcode, child_M):
-                                       print '    EMPTY_LEAF,'
-                               else:
-                                       # Emit the index of the next dispatch
-                                       # function.  Then add all the
-                                       # dispatch functions for this leaf
-                                       # node to the dispatch function
-                                       # lookup table.
-
-                                       print '    LEAF(%u),' % (len(self.lookup_table))
-
-                                       for op in range(child_base_opcode, child_base_opcode + (1 << child_M)):
-                                               if self.functions.has_key(op):
-                                                       func = self.functions[op]
-                                                       size = func.command_fixed_length()
-
-                                                       if func.glx_rop != 0:
-                                                               size += 4
-
-                                                       size = ((size + 3) & ~3)
-
-                                                       if func.has_variable_size_request():
-                                                               size_name = "__glX%sReqSize" % (func.name)
-                                                       else:
-                                                               size_name = ""
-
-                                                       if func.glx_vendorpriv == op:
-                                                               func_name = func.glx_vendorpriv_names[0]
-                                                       else:
-                                                               func_name = func.name
-
-                                                       temp = [op, "__glXDisp_%s" % (func_name), "__glXDispSwap_%s" % (func_name), size, size_name]
-                                               else:
-                                                       temp = [op, "NULL", "NULL", 0, ""]
-
-                                               self.lookup_table.append(temp)
-                       else:
-                               print '    %u,' % (child_index)
-                               child_index += child[2]
-
-                       child_base_opcode += 1 << child_M
-
-               print ''
-
-               child_index = base_entry
-               for child in children:
-                       if child[1] != []:
-                               self.dump_tree(child, base_opcode, remaining_bits - M, child_index, depth + 1)
-                               child_index += child[2]
-
-                       base_opcode += 1 << (remaining_bits - M)
-
-
-       def Print(self):
-               # Each dispatch table consists of two data structures.
-               #
-               # The first structure is an N-way tree where the opcode for
-               # the function is the key.  Each node switches on a range of
-               # bits from the opcode.  M bits are extracted from the opcde
-               # and are used as an index to select one of the N, where
-               # N = 2^M, children.
-               #
-               # The tree is stored as a flat array.  The first value is the
-               # number of bits, M, used by the node.  For inner nodes, the
-               # following 2^M values are indexes into the array for the
-               # child nodes.  For leaf nodes, the followign 2^M values are
-               # indexes into the second data structure.
-               #
-               # If an inner node's child index is 0, the child is an empty
-               # leaf node.  That is, none of the opcodes selectable from
-               # that child exist.  Since most of the possible opcode space
-               # is unused, this allows compact data storage.
-               #
-               # The second data structure is an array of pairs of function
-               # pointers.  Each function contains a pointer to a protocol
-               # decode function and a pointer to a byte-swapped protocol
-               # decode function.  Elements in this array are selected by the
-               # leaf nodes of the first data structure.
-               #
-               # As the tree is traversed, an accumulator is kept.  This
-               # accumulator counts the bits of the opcode consumed by the
-               # traversal.  When accumulator + M = B, where B is the
-               # maximum number of bits in an opcode, the traversal has
-               # reached a leaf node.  The traversal starts with the most
-               # significant bits and works down to the least significant
-               # bits.
-               #
-               # Creation of the tree is the most complicated part.  At
-               # each node the elements are divided into groups of 2^M
-               # elements.  The value of M selected is the smallest possible
-               # value where all of the groups are either empty or full, or
-               # the groups are a preset minimum size.  If all the children
-               # of a node are non-empty leaf nodes, the children are merged
-               # to create a single leaf node that replaces the parent.
-
-               tree = self.divide_group(0, 0)
-
-               print '/*****************************************************************/'
-               print '/* tree depth = %u */' % (tree[3])
-               print 'static const int_fast16_t %s_dispatch_tree[%u] = {' % (self.name_base, tree[2])
-               self.dump_tree(tree, 0, self.max_bits, 0, 1)
-               print '};\n'
-               
-               # After dumping the tree, dump the function lookup table.
-               
-               print 'static const void *%s_function_table[%u][2] = {' % (self.name_base, len(self.lookup_table))
-               index = 0
-               for func in self.lookup_table:
-                       opcode = func[0]
-                       name = func[1]
-                       name_swap = func[2]
-                       
-                       print '    /* [% 3u] = %5u */ {%s, %s},' % (index, opcode, name, name_swap)
-                       
-                       index += 1
-
-               print '};\n'
-               
-               if self.do_size_check:
-                       var_table = []
-
-                       print 'static const int_fast16_t %s_size_table[%u][2] = {' % (self.name_base, len(self.lookup_table))
-                       index = 0
-                       var_table = []
-                       for func in self.lookup_table:
-                               opcode = func[0]
-                               fixed = func[3]
-                               var = func[4]
-                               
-                               if var != "":
-                                       var_offset = "%2u" % (len(var_table))
-                                       var_table.append(var)
-                               else:
-                                       var_offset = "~0"
-
-                               print '    /* [%3u] = %5u */ {%3u, %s},' % (index, opcode, fixed, var_offset)
-                               index += 1
-
-                               
-                       print '};\n'
-
-
-                       print 'static const gl_proto_size_func %s_size_func_table[%u] = {' % (self.name_base, len(var_table))
-                       for func in var_table:
-                               print '   %s,' % (func)
-                       print '};\n'
-
-
-               print 'const struct __glXDispatchInfo %s_dispatch_info = {' % (self.name_base)
-               print '    %u,' % (self.max_bits)
-               print '    %s_dispatch_tree,' % (self.name_base)
-               print '    %s_function_table,' % (self.name_base)
-               if self.do_size_check:
-                       print '    %s_size_table,' % (self.name_base)
-                       print '    %s_size_func_table' % (self.name_base)
-               else:
-                       print '    NULL,'
-                       print '    NULL'
-               print '};\n'
-               return
-
-
-class PrintGlxDispatchTables(glX_proto_common.glx_print_proto):
-       def __init__(self):
-               gl_XML.gl_print_base.__init__(self)
-               self.name = "glX_server_table.py (from Mesa)"
-               self.license = license.bsd_license_template % ( "(C) Copyright IBM Corporation 2005, 2006", "IBM")
-
-               self.rop_functions = function_table("Render", 1)
-               self.sop_functions = function_table("Single", 0)
-               self.vop_functions = function_table("VendorPriv", 0)
-               return
-
-
-       def printRealHeader(self):
-               print '#include <inttypes.h>'
-               print '#include "glxserver.h"'
-               print '#include "glxext.h"'
-               print '#include "indirect_dispatch.h"'
-               print '#include "indirect_reqsize.h"'
-               print '#include "g_disptab.h"'
-               print '#include "indirect_table.h"'
-               print ''
-               return
-
-
-       def printBody(self, api):
-               for f in api.functionIterateAll():
-                       if not f.ignore and f.vectorequiv == None:
-                               if f.glx_rop != 0:
-                                       self.rop_functions.append(f.glx_rop, f)
-                               if f.glx_sop != 0:
-                                       self.sop_functions.append(f.glx_sop, f)
-                               if f.glx_vendorpriv != 0:
-                                       self.vop_functions.append(f.glx_vendorpriv, f)
-
-               self.sop_functions.Print()
-               self.rop_functions.Print()
-               self.vop_functions.Print()
-               return
-
-
-if __name__ == '__main__':
-       file_name = "gl_API.xml"
-
-       try:
-               (args, trail) = getopt.getopt(sys.argv[1:], "f:m")
-       except Exception,e:
-               show_usage()
-
-       mode = "table_c"
-       for (arg,val) in args:
-               if arg == "-f":
-                       file_name = val
-               elif arg == "-m":
-                       mode = val
-
-       if mode == "table_c":
-               printer = PrintGlxDispatchTables()
-       else:
-               show_usage()
-
-
-       api = gl_XML.parse_GL_API( file_name, glX_XML.glx_item_factory() )
-
-
-       printer.Print( api )
diff --git a/src/mesa/glapi/gen/gl_API.dtd b/src/mesa/glapi/gen/gl_API.dtd
deleted file mode 100644 (file)
index 30c646c..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
-<!ELEMENT OpenGLAPI (category?, xi:include?, OpenGLAPI?)+>
-<!ELEMENT category (type*, enum*, function*)*>
-<!ELEMENT type EMPTY>
-<!ELEMENT enum (size*)>
-<!ELEMENT size EMPTY>
-<!ELEMENT function (param*, return?, glx?)*>
-<!ELEMENT param EMPTY>
-<!ELEMENT return EMPTY>
-<!ELEMENT glx EMPTY>
-
-<!ELEMENT xi:include (xi:fallback)?>
-<!ATTLIST xi:include
-          xmlns:xi  CDATA #FIXED "http://www.w3.org/2001/XInclude"
-          href       CDATA #REQUIRED
-          parse      (xml|text) "xml"
-          encoding   CDATA #IMPLIED>
-<!ELEMENT xi:fallback ANY>
-<!ATTLIST xi:fallback
-          xmlns:xi   CDATA #FIXED "http://www.w3.org/2001/XInclude">
-
-
-<!ATTLIST category name                NMTOKEN #REQUIRED
-                   number              NMTOKEN #IMPLIED
-                  window_system       NMTOKEN #IMPLIED>
-<!ATTLIST type     name                NMTOKEN #REQUIRED
-                   size                NMTOKEN #REQUIRED
-                  float               (true | false) "false"
-                  unsigned            (true | false) "false"
-                   glx_name            NMTOKEN #IMPLIED>
-<!ATTLIST enum     name                NMTOKEN #REQUIRED
-                   count               CDATA   #IMPLIED
-                   value               NMTOKEN #REQUIRED>
-<!ATTLIST function name                NMTOKEN #REQUIRED
-                   alias               NMTOKEN #IMPLIED
-                   offset              CDATA   #IMPLIED
-                   static_dispatch     (true | false) "true"
-                   vectorequiv         NMTOKEN #IMPLIED>
-<!ATTLIST size     name                NMTOKEN #REQUIRED
-                   count               NMTOKEN #IMPLIED
-                   mode                (get | set) "set">
-<!ATTLIST param    name                NMTOKEN #REQUIRED
-                   type                CDATA   #REQUIRED
-                  client_only         (true | false) "false"
-                   count               NMTOKEN #IMPLIED
-                   counter             (true | false) "false"
-                   count_scale         NMTOKEN "1"
-                   output              (true | false) "false"
-                   padding             (true | false) "false"
-                   img_width           NMTOKEN #IMPLIED
-                   img_height          NMTOKEN #IMPLIED
-                   img_depth           NMTOKEN #IMPLIED
-                   img_extent          NMTOKEN #IMPLIED
-                   img_xoff            NMTOKEN #IMPLIED
-                   img_yoff            NMTOKEN #IMPLIED
-                   img_zoff            NMTOKEN #IMPLIED
-                   img_woff            NMTOKEN #IMPLIED
-                   img_format          NMTOKEN #IMPLIED
-                   img_type            NMTOKEN #IMPLIED
-                   img_target          NMTOKEN #IMPLIED
-                   img_send_null       (true | false) "false"
-                   img_null_flag       (true | false) "false"
-                   img_pad_dimensions  (true | false) "false"
-                   variable_param      NMTOKENS #IMPLIED>
-<!ATTLIST return   type                CDATA   "void">
-<!ATTLIST glx      rop                 NMTOKEN #IMPLIED
-                   sop                 NMTOKEN #IMPLIED
-                   vendorpriv          NMTOKEN #IMPLIED
-                   large               (true | false) "false"
-                   doubles_in_order    (true | false) "false"
-                   always_array        (true | false) "false"
-                   handcode            (true | false | client | server) "false"
-                   img_reset           NMTOKEN #IMPLIED
-                   dimensions_in_reply (true | false) "false"
-                   ignore              (true | false) "false">
-
-<!--
-The various attributes for param and glx have the meanings listed below.
-When adding new functions, please annote them correctly.  In most cases this
-will just mean adding a '<glx ignore="true"/>' tag.
-
-param:
-     name - name of the parameter
-     type - fully qualified type (e.g., with "const", etc.)
-     client_only - boolean flag set on parameters which are interpreted only
-         by the client and are not present in the protocol encoding (e.g.,
-        the stride parameters to Map1f, etc.)
-     count - for counted arrays (e.g., the 'lists' parameter to glCallLists),
-         the parameter or literal that represents the count.  For functions
-         like glVertex3fv it will be a litteral, for others it will be one of
-         the parameters.
-     counter - this parameter is a counter that will be referenced by the
-         'count' attribute in another parameter.
-     count_scale - literal value scale factor for the 'count' attribute.
-         See ProgramParameters4dvNV for an example.
-     output - this parameter is used to store the output of the function.
-     variable_param - name of parameter used to determine the number of
-         elements referenced by this parameter.  This should be the name of a
-         single enum parameter.  Most of the gl*Parameter[if]v functions use
-         this.  Additionally, the enums that can be passed should be properly
-         annotated.
-     img_width / img_height / img_depth / img_extent - name of parameters
-         (or hardcoded integer) used for the dimensions of pixel data.
-     img_xoff / img_yoff / img_zoff / img_woff - name of parameters used
-         for x, y, z, and w offsets of pixel data.
-     img_format - name of parameter used as the pixel data format.
-     img_type - name of parameter used as the pixel data type.
-     img_target - name of parameter used as a texture target.  Non-texture
-        pixel data should hardcode 0.
-     img_send_null - boolean flag to determine if blank pixel data should
-        be sent when a NULL pointer is passed.  This is only used by
-        TexImage1D and TexImage2D.
-     img_null_flag - boolean flag to determine if an extra flag is used to
-        determine if a NULL pixel pointer was passed.  This is used by
-        TexSubImage1D, TexSubImage2D, TexImage3D and others.
-     img_pad_dimensions - boolean flag to determine if dimension data and
-        offset data should be padded to the next even number of dimensions.
-        For example, this will insert an empty "height" field after the
-        "width" field in the protocol for TexImage1D.
-
-glx:
-     rop - Opcode value for "render" commands
-     sop - Opcode value for "single" commands
-     vendorpriv - Opcode value for vendor private (or vendor private with
-         reply) commands
-     large - set to "true" of the render command can use RenderLarge protocol.
-     doubles_in_order - older commands always put GLdouble data at the
-         start of the render packet.  Newer commands (e.g., 
-         ProgramEnvParameter4dvARB) put the in the order that they appear
-         in the parameter list.
-     always_array - some single commands take reply data as an array or as
-         return value data (e.g., glGetLightfv).  Other single commands take
-         reply data only as an array (e.g., glGetClipPlane).
-     handcode - some functions are just too complicated to generate 
-         (e.g., glSeperableFilter2D) or operate only on client-side data
-         (e.g., glVertexPointer) and must be handcoded.
-     ignore - some functions have an entry in the dispatch table, but aren't
-         suitable for protocol implementation (e.g., glLockArraysEXT).  This
-         also applies to functions that don't have any GLX protocol specified
-         (e.g., glGetFogFuncSGIS).
--->
diff --git a/src/mesa/glapi/gen/gl_API.xml b/src/mesa/glapi/gen/gl_API.xml
deleted file mode 100644 (file)
index 31df7a5..0000000
+++ /dev/null
@@ -1,12512 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<OpenGLAPI>
-
-<!-- Core versions sorted by version number. -->
-
-<category name="1.0">
-    <enum name="FALSE"                                    value="0x0"/>
-    <enum name="TRUE"                                     value="0x1"/>
-    <enum name="ZERO"                                     value="0x0"/>
-    <enum name="ONE"                                      value="0x1"/>
-    <enum name="NONE"                                     value="0x0"/>
-    <enum name="NO_ERROR"                                 value="0x0"/>
-    <enum name="POINTS"                                   value="0x0000"/>
-    <enum name="LINES"                                    value="0x0001"/>
-    <enum name="LINE_LOOP"                                value="0x0002"/>
-    <enum name="LINE_STRIP"                               value="0x0003"/>
-    <enum name="TRIANGLES"                                value="0x0004"/>
-    <enum name="TRIANGLE_STRIP"                           value="0x0005"/>
-    <enum name="TRIANGLE_FAN"                             value="0x0006"/>
-    <enum name="QUADS"                                    value="0x0007"/>
-    <enum name="QUAD_STRIP"                               value="0x0008"/>
-    <enum name="POLYGON"                                  value="0x0009"/>
-    <enum name="ACCUM"                                    value="0x0100"/>
-    <enum name="LOAD"                                     value="0x0101"/>
-    <enum name="RETURN"                                   value="0x0102"/>
-    <enum name="MULT"                                     value="0x0103"/>
-    <enum name="ADD"                                      value="0x0104"/>
-    <enum name="NEVER"                                    value="0x0200"/>
-    <enum name="LESS"                                     value="0x0201"/>
-    <enum name="EQUAL"                                    value="0x0202"/>
-    <enum name="LEQUAL"                                   value="0x0203"/>
-    <enum name="GREATER"                                  value="0x0204"/>
-    <enum name="NOTEQUAL"                                 value="0x0205"/>
-    <enum name="GEQUAL"                                   value="0x0206"/>
-    <enum name="ALWAYS"                                   value="0x0207"/>
-    <enum name="SRC_COLOR"                                value="0x0300"/>
-    <enum name="ONE_MINUS_SRC_COLOR"                      value="0x0301"/>
-    <enum name="SRC_ALPHA"                                value="0x0302"/>
-    <enum name="ONE_MINUS_SRC_ALPHA"                      value="0x0303"/>
-    <enum name="DST_ALPHA"                                value="0x0304"/>
-    <enum name="ONE_MINUS_DST_ALPHA"                      value="0x0305"/>
-    <enum name="DST_COLOR"                                value="0x0306"/>
-    <enum name="ONE_MINUS_DST_COLOR"                      value="0x0307"/>
-    <enum name="SRC_ALPHA_SATURATE"                       value="0x0308"/>
-    <enum name="FRONT_LEFT"                               value="0x0400"/>
-    <enum name="FRONT_RIGHT"                              value="0x0401"/>
-    <enum name="BACK_LEFT"                                value="0x0402"/>
-    <enum name="BACK_RIGHT"                               value="0x0403"/>
-    <enum name="FRONT"                                    value="0x0404"/>
-    <enum name="BACK"                                     value="0x0405"/>
-    <enum name="LEFT"                                     value="0x0406"/>
-    <enum name="RIGHT"                                    value="0x0407"/>
-    <enum name="FRONT_AND_BACK"                           value="0x0408"/>
-    <enum name="AUX0"                                     value="0x0409"/>
-    <enum name="AUX1"                                     value="0x040A"/>
-    <enum name="AUX2"                                     value="0x040B"/>
-    <enum name="AUX3"                                     value="0x040C"/>
-    <enum name="INVALID_VALUE"                            value="0x0501"/>
-    <enum name="INVALID_ENUM"                             value="0x0500"/>
-    <enum name="INVALID_OPERATION"                        value="0x0502"/>
-    <enum name="STACK_OVERFLOW"                           value="0x0503"/>
-    <enum name="STACK_UNDERFLOW"                          value="0x0504"/>
-    <enum name="OUT_OF_MEMORY"                            value="0x0505"/>
-    <enum name="2D"                                       value="0x0600"/>
-    <enum name="3D"                                       value="0x0601"/>
-    <enum name="3D_COLOR"                                 value="0x0602"/>
-    <enum name="3D_COLOR_TEXTURE"                         value="0x0603"/>
-    <enum name="4D_COLOR_TEXTURE"                         value="0x0604"/>
-    <enum name="PASS_THROUGH_TOKEN"                       value="0x0700"/>
-    <enum name="POINT_TOKEN"                              value="0x0701"/>
-    <enum name="LINE_TOKEN"                               value="0x0702"/>
-    <enum name="POLYGON_TOKEN"                            value="0x0703"/>
-    <enum name="BITMAP_TOKEN"                             value="0x0704"/>
-    <enum name="DRAW_PIXEL_TOKEN"                         value="0x0705"/>
-    <enum name="COPY_PIXEL_TOKEN"                         value="0x0706"/>
-    <enum name="LINE_RESET_TOKEN"                         value="0x0707"/>
-    <enum name="EXP"                                      value="0x0800"/>
-    <enum name="EXP2"                                     value="0x0801"/>
-    <enum name="CW"                                       value="0x0900"/>
-    <enum name="CCW"                                      value="0x0901"/>
-    <enum name="COEFF"                                    value="0x0A00"/>
-    <enum name="ORDER"                                    value="0x0A01"/>
-    <enum name="DOMAIN"                                   value="0x0A02"/>
-    <enum name="CURRENT_COLOR"                 count="4"  value="0x0B00">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CURRENT_INDEX"                 count="1"  value="0x0B01">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CURRENT_NORMAL"                count="3"  value="0x0B02">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CURRENT_TEXTURE_COORDS"        count="4"  value="0x0B03">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CURRENT_RASTER_COLOR"          count="4"  value="0x0B04">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CURRENT_RASTER_INDEX"          count="1"  value="0x0B05">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CURRENT_RASTER_TEXTURE_COORDS" count="4"  value="0x0B06">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CURRENT_RASTER_POSITION"       count="4"  value="0x0B07">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CURRENT_RASTER_POSITION_VALID" count="1"  value="0x0B08">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CURRENT_RASTER_DISTANCE"       count="1"  value="0x0B09">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POINT_SMOOTH"                  count="1"  value="0x0B10">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POINT_SIZE"                    count="1"  value="0x0B11">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POINT_SIZE_RANGE"              count="2"  value="0x0B12">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POINT_SIZE_GRANULARITY"        count="1"  value="0x0B13">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LINE_SMOOTH"                   count="1"  value="0x0B20">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LINE_WIDTH"                    count="1"  value="0x0B21">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LINE_WIDTH_RANGE"              count="2"  value="0x0B22">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LINE_WIDTH_GRANULARITY"        count="1"  value="0x0B23">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LINE_STIPPLE"                  count="1"  value="0x0B24">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LINE_STIPPLE_PATTERN"          count="1"  value="0x0B25">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LINE_STIPPLE_REPEAT"           count="1"  value="0x0B26">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIST_MODE"                     count="1"  value="0x0B30">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_LIST_NESTING"              count="1"  value="0x0B31">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIST_BASE"                     count="1"  value="0x0B32">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIST_INDEX"                    count="1"  value="0x0B33">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POLYGON_MODE"                  count="2"  value="0x0B40">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POLYGON_SMOOTH"                count="1"  value="0x0B41">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POLYGON_STIPPLE"               count="1"  value="0x0B42">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="EDGE_FLAG"                     count="1"  value="0x0B43">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CULL_FACE"                     count="1"  value="0x0B44">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CULL_FACE_MODE"                count="1"  value="0x0B45">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FRONT_FACE"                    count="1"  value="0x0B46">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHTING"                      count="1"  value="0x0B50">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT_MODEL_LOCAL_VIEWER"      count="1"  value="0x0B51">
-        <size name="LightModelfv"/>
-        <size name="LightModeliv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT_MODEL_TWO_SIDE"          count="1"  value="0x0B52">
-        <size name="LightModelfv"/>
-        <size name="LightModeliv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT_MODEL_AMBIENT"           count="4"  value="0x0B53">
-        <size name="LightModelfv"/>
-        <size name="LightModeliv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SHADE_MODEL"                   count="1"  value="0x0B54">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_MATERIAL_FACE"           count="1"  value="0x0B55">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_MATERIAL_PARAMETER"      count="1"  value="0x0B56">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_MATERIAL"                count="1"  value="0x0B57">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG"                           count="1"  value="0x0B60">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_INDEX"                     count="1"  value="0x0B61">
-        <size name="Fogfv"/>
-        <size name="Fogiv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_DENSITY"                   count="1"  value="0x0B62">
-        <size name="Fogfv"/>
-        <size name="Fogiv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_START"                     count="1"  value="0x0B63">
-        <size name="Fogfv"/>
-        <size name="Fogiv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_END"                       count="1"  value="0x0B64">
-        <size name="Fogfv"/>
-        <size name="Fogiv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_MODE"                      count="1"  value="0x0B65">
-        <size name="Fogfv"/>
-        <size name="Fogiv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_COLOR"                     count="4"  value="0x0B66">
-        <size name="Fogfv"/>
-        <size name="Fogiv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DEPTH_RANGE"                   count="2"  value="0x0B70">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DEPTH_TEST"                    count="1"  value="0x0B71">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DEPTH_WRITEMASK"               count="1"  value="0x0B72">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DEPTH_CLEAR_VALUE"             count="1"  value="0x0B73">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DEPTH_FUNC"                    count="1"  value="0x0B74">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ACCUM_CLEAR_VALUE"             count="4"  value="0x0B80">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_TEST"                  count="1"  value="0x0B90">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_CLEAR_VALUE"           count="1"  value="0x0B91">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_FUNC"                  count="1"  value="0x0B92">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_VALUE_MASK"            count="1"  value="0x0B93">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_FAIL"                  count="1"  value="0x0B94">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_PASS_DEPTH_FAIL"       count="1"  value="0x0B95">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_PASS_DEPTH_PASS"       count="1"  value="0x0B96">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_REF"                   count="1"  value="0x0B97">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_WRITEMASK"             count="1"  value="0x0B98">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MATRIX_MODE"                   count="1"  value="0x0BA0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="NORMALIZE"                     count="1"  value="0x0BA1">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VIEWPORT"                      count="4"  value="0x0BA2">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW_STACK_DEPTH"         count="1"  value="0x0BA3">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PROJECTION_STACK_DEPTH"        count="1"  value="0x0BA4">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_STACK_DEPTH"           count="1"  value="0x0BA5">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW_MATRIX"              count="16" value="0x0BA6">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PROJECTION_MATRIX"             count="16" value="0x0BA7">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_MATRIX"                count="16" value="0x0BA8">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ATTRIB_STACK_DEPTH"            count="1"  value="0x0BB0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CLIENT_ATTRIB_STACK_DEPTH"     count="1"  value="0x0BB1">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ALPHA_TEST"                    count="1"  value="0x0BC0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ALPHA_TEST_FUNC"               count="1"  value="0x0BC1">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ALPHA_TEST_REF"                count="1"  value="0x0BC2">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DITHER"                        count="1"  value="0x0BD0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLEND_DST"                     count="1"  value="0x0BE0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLEND_SRC"                     count="1"  value="0x0BE1">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLEND"                         count="1"  value="0x0BE2">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LOGIC_OP_MODE"                 count="1"  value="0x0BF0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LOGIC_OP"                      count="1"  value="0x0BF1">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="AUX_BUFFERS"                   count="1"  value="0x0C00">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER"                   count="1"  value="0x0C01">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="READ_BUFFER"                   count="1"  value="0x0C02">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SCISSOR_BOX"                   count="4"  value="0x0C10">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SCISSOR_TEST"                  count="1"  value="0x0C11">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="INDEX_CLEAR_VALUE"             count="1"  value="0x0C20">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="INDEX_WRITEMASK"               count="1"  value="0x0C21">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_CLEAR_VALUE"             count="4"  value="0x0C22">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_WRITEMASK"               count="4"  value="0x0C23">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="INDEX_MODE"                    count="1"  value="0x0C30">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="RGBA_MODE"                     count="1"  value="0x0C31">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DOUBLEBUFFER"                  count="1"  value="0x0C32">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STEREO"                        count="1"  value="0x0C33">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="RENDER_MODE"                   count="1"  value="0x0C40">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PERSPECTIVE_CORRECTION_HINT"   count="1"  value="0x0C50">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POINT_SMOOTH_HINT"             count="1"  value="0x0C51">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LINE_SMOOTH_HINT"              count="1"  value="0x0C52">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POLYGON_SMOOTH_HINT"           count="1"  value="0x0C53">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_HINT"                      count="1"  value="0x0C54">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_GEN_S"                 count="1"  value="0x0C60">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_GEN_T"                 count="1"  value="0x0C61">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_GEN_R"                 count="1"  value="0x0C62">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_GEN_Q"                 count="1"  value="0x0C63">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PIXEL_MAP_I_TO_I"              count="1"  value="0x0C70">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PIXEL_MAP_S_TO_S"                         value="0x0C71"/>
-    <enum name="PIXEL_MAP_I_TO_R"                         value="0x0C72"/>
-    <enum name="PIXEL_MAP_I_TO_G"                         value="0x0C73"/>
-    <enum name="PIXEL_MAP_I_TO_B"                         value="0x0C74"/>
-    <enum name="PIXEL_MAP_I_TO_A"                         value="0x0C75"/>
-    <enum name="PIXEL_MAP_R_TO_R"                         value="0x0C76"/>
-    <enum name="PIXEL_MAP_G_TO_G"                         value="0x0C77"/>
-    <enum name="PIXEL_MAP_B_TO_B"                         value="0x0C78"/>
-    <enum name="PIXEL_MAP_A_TO_A"                         value="0x0C79"/>
-    <enum name="PIXEL_MAP_I_TO_I_SIZE"         count="1"  value="0x0CB0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PIXEL_MAP_S_TO_S_SIZE"         count="1"  value="0x0CB1">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PIXEL_MAP_I_TO_R_SIZE"         count="1"  value="0x0CB2">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PIXEL_MAP_I_TO_G_SIZE"         count="1"  value="0x0CB3">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PIXEL_MAP_I_TO_B_SIZE"         count="1"  value="0x0CB4">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PIXEL_MAP_I_TO_A_SIZE"         count="1"  value="0x0CB5">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PIXEL_MAP_R_TO_R_SIZE"         count="1"  value="0x0CB6">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PIXEL_MAP_G_TO_G_SIZE"         count="1"  value="0x0CB7">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PIXEL_MAP_B_TO_B_SIZE"         count="1"  value="0x0CB8">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PIXEL_MAP_A_TO_A_SIZE"         count="1"  value="0x0CB9">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="UNPACK_SWAP_BYTES"             count="1"  value="0x0CF0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="UNPACK_LSB_FIRST"              count="1"  value="0x0CF1">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="UNPACK_ROW_LENGTH"             count="1"  value="0x0CF2">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="UNPACK_SKIP_PIXELS"            count="1"  value="0x0CF4">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="UNPACK_SKIP_ROWS"              count="1"  value="0x0CF3">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="UNPACK_ALIGNMENT"              count="1"  value="0x0CF5">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PACK_SWAP_BYTES"               count="1"  value="0x0D00">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PACK_LSB_FIRST"                count="1"  value="0x0D01">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PACK_ROW_LENGTH"               count="1"  value="0x0D02">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PACK_SKIP_ROWS"                count="1"  value="0x0D03">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PACK_SKIP_PIXELS"              count="1"  value="0x0D04">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PACK_ALIGNMENT"                count="1"  value="0x0D05">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAP_COLOR"                     count="1"  value="0x0D10">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAP_STENCIL"                   count="1"  value="0x0D11">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="INDEX_SHIFT"                   count="1"  value="0x0D12">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="INDEX_OFFSET"                  count="1"  value="0x0D13">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="RED_SCALE"                     count="1"  value="0x0D14">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="RED_BIAS"                      count="1"  value="0x0D15">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ZOOM_X"                        count="1"  value="0x0D16">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ZOOM_Y"                        count="1"  value="0x0D17">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="GREEN_SCALE"                   count="1"  value="0x0D18">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="GREEN_BIAS"                    count="1"  value="0x0D19">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLUE_SCALE"                    count="1"  value="0x0D1A">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLUE_BIAS"                     count="1"  value="0x0D1B">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ALPHA_SCALE"                   count="1"  value="0x0D1C">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ALPHA_BIAS"                    count="1"  value="0x0D1D">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DEPTH_SCALE"                   count="1"  value="0x0D1E">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DEPTH_BIAS"                    count="1"  value="0x0D1F">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_EVAL_ORDER"                count="1"  value="0x0D30">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_LIGHTS"                    count="1"  value="0x0D31">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_CLIP_PLANES"               count="1"  value="0x0D32">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_TEXTURE_SIZE"              count="1"  value="0x0D33">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_PIXEL_MAP_TABLE"           count="1"  value="0x0D34">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_ATTRIB_STACK_DEPTH"        count="1"  value="0x0D35">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_MODELVIEW_STACK_DEPTH"     count="1"  value="0x0D36">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_NAME_STACK_DEPTH"          count="1"  value="0x0D37">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_PROJECTION_STACK_DEPTH"    count="1"  value="0x0D38">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_TEXTURE_STACK_DEPTH"       count="1"  value="0x0D39">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_VIEWPORT_DIMS"             count="2"  value="0x0D3A">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_CLIENT_ATTRIB_STACK_DEPTH" count="1"  value="0x0D3B">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SUBPIXEL_BITS"                 count="1"  value="0x0D50">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="INDEX_BITS"                    count="1"  value="0x0D51">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="RED_BITS"                      count="1"  value="0x0D52">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="GREEN_BITS"                    count="1"  value="0x0D53">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLUE_BITS"                     count="1"  value="0x0D54">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ALPHA_BITS"                    count="1"  value="0x0D55">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DEPTH_BITS"                    count="1"  value="0x0D56">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_BITS"                  count="1"  value="0x0D57">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ACCUM_RED_BITS"                count="1"  value="0x0D58">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ACCUM_GREEN_BITS"              count="1"  value="0x0D59">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ACCUM_BLUE_BITS"               count="1"  value="0x0D5A">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ACCUM_ALPHA_BITS"              count="1"  value="0x0D5B">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="NAME_STACK_DEPTH"              count="1"  value="0x0D70">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="AUTO_NORMAL"                   count="1"  value="0x0D80">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAP1_COLOR_4"                  count="4"  value="0x0D90">
-        <size name="Map1d"/>
-        <size name="Map1f"/>
-        <size name="Get" count="1" mode="get"/>
-    </enum>
-    <enum name="MAP1_INDEX"                    count="1"  value="0x0D91">
-        <size name="Map1d"/>
-        <size name="Map1f"/>
-        <size name="Get" count="1" mode="get"/>
-    </enum>
-    <enum name="MAP1_NORMAL"                   count="3"  value="0x0D92">
-        <size name="Map1d"/>
-        <size name="Map1f"/>
-        <size name="Get" count="1" mode="get"/>
-    </enum>
-    <enum name="MAP1_TEXTURE_COORD_1"          count="1"  value="0x0D93">
-        <size name="Map1d"/>
-        <size name="Map1f"/>
-        <size name="Get" count="1" mode="get"/>
-    </enum>
-    <enum name="MAP1_TEXTURE_COORD_2"          count="2"  value="0x0D94">
-        <size name="Map1d"/>
-        <size name="Map1f"/>
-        <size name="Get" count="1" mode="get"/>
-    </enum>
-    <enum name="MAP1_TEXTURE_COORD_3"          count="3"  value="0x0D95">
-        <size name="Map1d"/>
-        <size name="Map1f"/>
-        <size name="Get" count="1" mode="get"/>
-    </enum>
-    <enum name="MAP1_TEXTURE_COORD_4"          count="4"  value="0x0D96">
-        <size name="Map1d"/>
-        <size name="Map1f"/>
-        <size name="Get" count="1" mode="get"/>
-    </enum>
-    <enum name="MAP1_VERTEX_3"                 count="3"  value="0x0D97">
-        <size name="Map1d"/>
-        <size name="Map1f"/>
-        <size name="Get" count="1" mode="get"/>
-    </enum>
-    <enum name="MAP1_VERTEX_4"                 count="4"  value="0x0D98">
-        <size name="Map1d"/>
-        <size name="Map1f"/>
-        <size name="Get" count="1" mode="get"/>
-    </enum>
-    <enum name="MAP2_COLOR_4"                  count="4"  value="0x0DB0">
-        <size name="Map2d"/>
-        <size name="Map2f"/>
-        <size name="Get" count="1" mode="get"/>
-    </enum>
-    <enum name="MAP2_INDEX"                    count="1"  value="0x0DB1">
-        <size name="Map2d"/>
-        <size name="Map2f"/>
-        <size name="Get" count="1" mode="get"/>
-    </enum>
-    <enum name="MAP2_NORMAL"                   count="3"  value="0x0DB2">
-        <size name="Map2d"/>
-        <size name="Map2f"/>
-        <size name="Get" count="1" mode="get"/>
-    </enum>
-    <enum name="MAP2_TEXTURE_COORD_1"          count="1"  value="0x0DB3">
-        <size name="Map2d"/>
-        <size name="Map2f"/>
-        <size name="Get" count="1" mode="get"/>
-    </enum>
-    <enum name="MAP2_TEXTURE_COORD_2"          count="2"  value="0x0DB4">
-        <size name="Map2d"/>
-        <size name="Map2f"/>
-        <size name="Get" count="1" mode="get"/>
-    </enum>
-    <enum name="MAP2_TEXTURE_COORD_3"          count="3"  value="0x0DB5">
-        <size name="Map2d"/>
-        <size name="Map2f"/>
-        <size name="Get" count="1" mode="get"/>
-    </enum>
-    <enum name="MAP2_TEXTURE_COORD_4"          count="4"  value="0x0DB6">
-        <size name="Map2d"/>
-        <size name="Map2f"/>
-        <size name="Get" count="1" mode="get"/>
-    </enum>
-    <enum name="MAP2_VERTEX_3"                 count="3"  value="0x0DB7">
-        <size name="Map2d"/>
-        <size name="Map2f"/>
-        <size name="Get" count="1" mode="get"/>
-    </enum>
-    <enum name="MAP2_VERTEX_4"                 count="4"  value="0x0DB8">
-        <size name="Map2d"/>
-        <size name="Map2f"/>
-        <size name="Get" count="1" mode="get"/>
-    </enum>
-    <enum name="MAP1_GRID_DOMAIN"              count="2"  value="0x0DD0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAP1_GRID_SEGMENTS"            count="1"  value="0x0DD1">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAP2_GRID_DOMAIN"              count="4"  value="0x0DD2">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAP2_GRID_SEGMENTS"            count="2"  value="0x0DD3">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_1D"                    count="1"  value="0x0DE0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_2D"                    count="1"  value="0x0DE1">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FEEDBACK_BUFFER_POINTER"                  value="0x0DF0"/>
-    <enum name="FEEDBACK_BUFFER_SIZE"                     value="0x0DF1"/>
-    <enum name="FEEDBACK_BUFFER_TYPE"                     value="0x0DF2"/>
-    <enum name="SELECTION_BUFFER_POINTER"                 value="0x0DF3"/>
-    <enum name="SELECTION_BUFFER_SIZE"                    value="0x0DF4"/>
-    <enum name="TEXTURE_WIDTH"                 count="1"  value="0x1000">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_HEIGHT"                count="1"  value="0x1001">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_BORDER"                count="1"  value="0x1005">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COMPONENTS"            count="1"  value="0x1003">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_BORDER_COLOR"          count="4"  value="0x1004">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="DONT_CARE"                                value="0x1100"/>
-    <enum name="FASTEST"                                  value="0x1101"/>
-    <enum name="NICEST"                                   value="0x1102"/>
-    <enum name="AMBIENT"                       count="4"  value="0x1200">
-        <size name="Materialfv"/>
-        <size name="Materialiv"/>
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetMaterialfv" mode="get"/>
-        <size name="GetMaterialiv" mode="get"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="DIFFUSE"                       count="4"  value="0x1201">
-        <size name="Materialfv"/>
-        <size name="Materialiv"/>
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetMaterialfv" mode="get"/>
-        <size name="GetMaterialiv" mode="get"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="SPECULAR"                      count="4"  value="0x1202">
-        <size name="Materialfv"/>
-        <size name="Materialiv"/>
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetMaterialfv" mode="get"/>
-        <size name="GetMaterialiv" mode="get"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="POSITION"                      count="4"  value="0x1203">
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="SPOT_DIRECTION"                count="3"  value="0x1204">
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="SPOT_EXPONENT"                 count="1"  value="0x1205">
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="SPOT_CUTOFF"                   count="1"  value="0x1206">
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="CONSTANT_ATTENUATION"          count="1"  value="0x1207">
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="LINEAR_ATTENUATION"            count="1"  value="0x1208">
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="QUADRATIC_ATTENUATION"         count="1"  value="0x1209">
-        <size name="Lightfv"/>
-        <size name="Lightiv"/>
-        <size name="GetLightfv" mode="get"/>
-        <size name="GetLightiv" mode="get"/>
-    </enum>
-    <enum name="COMPILE"                                  value="0x1300"/>
-    <enum name="COMPILE_AND_EXECUTE"                      value="0x1301"/>
-    <enum name="BYTE"                          count="1"  value="0x1400">
-        <size name="CallLists"/>
-    </enum>
-    <enum name="UNSIGNED_BYTE"                 count="1"  value="0x1401">
-        <size name="CallLists"/>
-    </enum>
-    <enum name="SHORT"                         count="2"  value="0x1402">
-        <size name="CallLists"/>
-    </enum>
-    <enum name="UNSIGNED_SHORT"                count="2"  value="0x1403">
-        <size name="CallLists"/>
-    </enum>
-    <enum name="INT"                           count="4"  value="0x1404">
-        <size name="CallLists"/>
-    </enum>
-    <enum name="UNSIGNED_INT"                  count="4"  value="0x1405">
-        <size name="CallLists"/>
-    </enum>
-    <enum name="FLOAT"                         count="4"  value="0x1406">
-        <size name="CallLists"/>
-    </enum>
-    <enum name="2_BYTES"                       count="2"  value="0x1407">
-        <size name="CallLists"/>
-    </enum>
-    <enum name="3_BYTES"                       count="3"  value="0x1408">
-        <size name="CallLists"/>
-    </enum>
-    <enum name="4_BYTES"                       count="4"  value="0x1409">
-        <size name="CallLists"/>
-    </enum>
-    <enum name="HALF_FLOAT"                    count="2"  value="0x140B">
-        <size name="CallLists"/>
-    </enum>
-    <enum name="CLEAR"                                    value="0x1500"/>
-    <enum name="AND"                                      value="0x1501"/>
-    <enum name="AND_REVERSE"                              value="0x1502"/>
-    <enum name="COPY"                                     value="0x1503"/>
-    <enum name="AND_INVERTED"                             value="0x1504"/>
-    <enum name="NOOP"                                     value="0x1505"/>
-    <enum name="XOR"                                      value="0x1506"/>
-    <enum name="OR"                                       value="0x1507"/>
-    <enum name="NOR"                                      value="0x1508"/>
-    <enum name="EQUIV"                                    value="0x1509"/>
-    <enum name="INVERT"                                   value="0x150A"/>
-    <enum name="OR_REVERSE"                               value="0x150B"/>
-    <enum name="COPY_INVERTED"                            value="0x150C"/>
-    <enum name="OR_INVERTED"                              value="0x150D"/>
-    <enum name="NAND"                                     value="0x150E"/>
-    <enum name="SET"                                      value="0x150F"/>
-    <enum name="EMISSION"                      count="4"  value="0x1600">
-        <size name="Materialfv"/>
-        <size name="Materialiv"/>
-        <size name="GetMaterialfv" mode="get"/>
-        <size name="GetMaterialiv" mode="get"/>
-    </enum>
-    <enum name="SHININESS"                     count="1"  value="0x1601">
-        <size name="Materialfv"/>
-        <size name="Materialiv"/>
-        <size name="GetMaterialfv" mode="get"/>
-        <size name="GetMaterialiv" mode="get"/>
-    </enum>
-    <enum name="AMBIENT_AND_DIFFUSE"           count="4"  value="0x1602">
-        <size name="Materialfv"/>
-        <size name="Materialiv"/>
-        <size name="GetMaterialfv" mode="get"/>
-        <size name="GetMaterialiv" mode="get"/>
-    </enum>
-    <enum name="COLOR_INDEXES"                 count="3"  value="0x1603">
-        <size name="Materialfv"/>
-        <size name="Materialiv"/>
-        <size name="GetMaterialfv" mode="get"/>
-        <size name="GetMaterialiv" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW"                                value="0x1700"/>
-    <enum name="PROJECTION"                               value="0x1701"/>
-    <enum name="TEXTURE"                                  value="0x1702"/>
-    <enum name="COLOR"                                    value="0x1800"/>
-    <enum name="DEPTH"                                    value="0x1801"/>
-    <enum name="STENCIL"                                  value="0x1802"/>
-    <enum name="COLOR_INDEX"                              value="0x1900"/>
-    <enum name="STENCIL_INDEX"                            value="0x1901"/>
-    <enum name="DEPTH_COMPONENT"                          value="0x1902"/>
-    <enum name="RED"                                      value="0x1903"/>
-    <enum name="GREEN"                                    value="0x1904"/>
-    <enum name="BLUE"                                     value="0x1905"/>
-    <enum name="ALPHA"                                    value="0x1906"/>
-    <enum name="RGBA"                                     value="0x1908"/>
-    <enum name="RGB"                                      value="0x1907"/>
-    <enum name="LUMINANCE"                                value="0x1909"/>
-    <enum name="LUMINANCE_ALPHA"                          value="0x190A"/>
-    <enum name="BITMAP"                                   value="0x1A00"/>
-    <enum name="POINT"                                    value="0x1B00"/>
-    <enum name="LINE"                                     value="0x1B01"/>
-    <enum name="FILL"                                     value="0x1B02"/>
-    <enum name="FEEDBACK"                                 value="0x1C01"/>
-    <enum name="RENDER"                                   value="0x1C00"/>
-    <enum name="SELECT"                                   value="0x1C02"/>
-    <enum name="FLAT"                                     value="0x1D00"/>
-    <enum name="SMOOTH"                                   value="0x1D01"/>
-    <enum name="KEEP"                                     value="0x1E00"/>
-    <enum name="REPLACE"                                  value="0x1E01"/>
-    <enum name="INCR"                                     value="0x1E02"/>
-    <enum name="DECR"                                     value="0x1E03"/>
-    <enum name="VENDOR"                                   value="0x1F00"/>
-    <enum name="RENDERER"                                 value="0x1F01"/>
-    <enum name="VERSION"                                  value="0x1F02"/>
-    <enum name="EXTENSIONS"                               value="0x1F03"/>
-    <enum name="S"                                        value="0x2000"/>
-    <enum name="T"                                        value="0x2001"/>
-    <enum name="R"                                        value="0x2002"/>
-    <enum name="Q"                                        value="0x2003"/>
-    <enum name="MODULATE"                                 value="0x2100"/>
-    <enum name="DECAL"                                    value="0x2101"/>
-    <enum name="TEXTURE_ENV_MODE"              count="1"  value="0x2200">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_ENV_COLOR"             count="4"  value="0x2201">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_ENV"                              value="0x2300"/>
-    <enum name="EYE_LINEAR"                               value="0x2400"/>
-    <enum name="OBJECT_LINEAR"                            value="0x2401"/>
-    <enum name="SPHERE_MAP"                               value="0x2402"/>
-    <enum name="TEXTURE_GEN_MODE"              count="1"  value="0x2500">
-        <size name="TexGendv"/>
-        <size name="TexGenfv"/>
-        <size name="TexGeniv"/>
-        <size name="GetTexGendv" mode="get"/>
-        <size name="GetTexGenfv" mode="get"/>
-        <size name="GetTexGeniv" mode="get"/>
-    </enum>
-    <enum name="OBJECT_PLANE"                  count="4"  value="0x2501">
-        <size name="TexGendv"/>
-        <size name="TexGenfv"/>
-        <size name="TexGeniv"/>
-        <size name="GetTexGendv" mode="get"/>
-        <size name="GetTexGenfv" mode="get"/>
-        <size name="GetTexGeniv" mode="get"/>
-    </enum>
-    <enum name="EYE_PLANE"                     count="4"  value="0x2502">
-        <size name="TexGendv"/>
-        <size name="TexGenfv"/>
-        <size name="TexGeniv"/>
-        <size name="GetTexGendv" mode="get"/>
-        <size name="GetTexGenfv" mode="get"/>
-        <size name="GetTexGeniv" mode="get"/>
-    </enum>
-    <enum name="NEAREST"                                  value="0x2600"/>
-    <enum name="LINEAR"                                   value="0x2601"/>
-    <enum name="NEAREST_MIPMAP_NEAREST"                   value="0x2700"/>
-    <enum name="LINEAR_MIPMAP_NEAREST"                    value="0x2701"/>
-    <enum name="NEAREST_MIPMAP_LINEAR"                    value="0x2702"/>
-    <enum name="LINEAR_MIPMAP_LINEAR"                     value="0x2703"/>
-    <enum name="TEXTURE_MAG_FILTER"            count="1"  value="0x2800">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_MIN_FILTER"            count="1"  value="0x2801">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_WRAP_S"                count="1"  value="0x2802">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_WRAP_T"                count="1"  value="0x2803">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="CLAMP"                                    value="0x2900"/>
-    <enum name="REPEAT"                                   value="0x2901"/>
-    <enum name="CLIP_PLANE0"                   count="1"  value="0x3000">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CLIP_PLANE1"                   count="1"  value="0x3001">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CLIP_PLANE2"                   count="1"  value="0x3002">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CLIP_PLANE3"                   count="1"  value="0x3003">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CLIP_PLANE4"                   count="1"  value="0x3004">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CLIP_PLANE5"                   count="1"  value="0x3005">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT0"                        count="1"  value="0x4000">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT1"                        count="1"  value="0x4001">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT2"                        count="1"  value="0x4002">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT3"                        count="1"  value="0x4003">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT4"                        count="1"  value="0x4004">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT5"                        count="1"  value="0x4005">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT6"                        count="1"  value="0x4006">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="LIGHT7"                        count="1"  value="0x4007">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CURRENT_BIT"                              value="0x00000001"/>
-    <enum name="POINT_BIT"                                value="0x00000002"/>
-    <enum name="LINE_BIT"                                 value="0x00000004"/>
-    <enum name="POLYGON_BIT"                              value="0x00000008"/>
-    <enum name="POLYGON_STIPPLE_BIT"                      value="0x00000010"/>
-    <enum name="PIXEL_MODE_BIT"                           value="0x00000020"/>
-    <enum name="LIGHTING_BIT"                             value="0x00000040"/>
-    <enum name="FOG_BIT"                                  value="0x00000080"/>
-    <enum name="DEPTH_BUFFER_BIT"                         value="0x00000100"/>
-    <enum name="ACCUM_BUFFER_BIT"                         value="0x00000200"/>
-    <enum name="STENCIL_BUFFER_BIT"                       value="0x00000400"/>
-    <enum name="VIEWPORT_BIT"                             value="0x00000800"/>
-    <enum name="TRANSFORM_BIT"                            value="0x00001000"/>
-    <enum name="ENABLE_BIT"                               value="0x00002000"/>
-    <enum name="COLOR_BUFFER_BIT"                         value="0x00004000"/>
-    <enum name="HINT_BIT"                                 value="0x00008000"/>
-    <enum name="EVAL_BIT"                                 value="0x00010000"/>
-    <enum name="LIST_BIT"                                 value="0x00020000"/>
-    <enum name="TEXTURE_BIT"                              value="0x00040000"/>
-    <enum name="SCISSOR_BIT"                              value="0x00080000"/>
-    <enum name="ALL_ATTRIB_BITS"                          value="0x000FFFFF"/>
-
-    <type name="double"  size="8"  float="true"    glx_name="FLOAT64"/>
-    <type name="clampd"  size="8"  float="true"    glx_name="FLOAT64"/>
-
-    <type name="float"   size="4"  float="true"    glx_name="FLOAT32"/>
-    <type name="clampf"  size="4"  float="true"    glx_name="FLOAT32"/>
-
-    <type name="int"     size="4"                  glx_name="CARD32"/>
-    <type name="uint"    size="4"  unsigned="true" glx_name="CARD32"/>
-    <type name="sizei"   size="4"  unsigned="true" glx_name="CARD32"/>
-    <type name="enum"    size="4"  unsigned="true" glx_name="ENUM"/>
-    <type name="bitfield" size="4" unsigned="true" glx_name="CARD32"/>
-
-    <type name="short"   size="2"                  glx_name="CARD16"/>
-    <type name="ushort"  size="2"  unsigned="true" glx_name="CARD16"/>
-
-    <type name="byte"    size="1"                  glx_name="CARD8"/>
-    <type name="ubyte"   size="1"  unsigned="true" glx_name="CARD8"/>
-    <type name="boolean" size="1"  unsigned="true" glx_name="CARD8"/>
-    
-    <type name="void"    size="1"/>
-
-    <function name="NewList" offset="0">
-        <param name="list" type="GLuint"/>
-        <param name="mode" type="GLenum"/>
-        <glx sop="101"/>
-    </function>
-
-    <function name="EndList" offset="1">
-        <glx sop="102"/>
-    </function>
-
-    <function name="CallList" offset="2">
-        <param name="list" type="GLuint"/>
-        <glx rop="1"/>
-    </function>
-
-    <function name="CallLists" offset="3">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="type" type="GLenum"/>
-        <param name="lists" type="const GLvoid *" variable_param="type" count="n"/>
-        <glx rop="2" large="true"/>
-    </function>
-
-    <function name="DeleteLists" offset="4">
-        <param name="list" type="GLuint"/>
-        <param name="range" type="GLsizei"/>
-        <glx sop="103"/>
-    </function>
-
-    <function name="GenLists" offset="5">
-        <param name="range" type="GLsizei"/>
-        <return type="GLuint"/>
-        <glx sop="104"/>
-    </function>
-
-    <function name="ListBase" offset="6">
-        <param name="base" type="GLuint"/>
-        <glx rop="3"/>
-    </function>
-
-    <function name="Begin" offset="7">
-        <param name="mode" type="GLenum"/>
-        <glx rop="4"/>
-    </function>
-
-    <function name="Bitmap" offset="8">
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="xorig" type="GLfloat"/>
-        <param name="yorig" type="GLfloat"/>
-        <param name="xmove" type="GLfloat"/>
-        <param name="ymove" type="GLfloat"/>
-        <param name="bitmap" type="const GLubyte *" img_width="width" img_height="height" img_format="GL_COLOR_INDEX" img_type="GL_BITMAP" img_target="0" img_pad_dimensions="false"/>
-        <glx rop="5" large="true"/>
-    </function>
-
-    <function name="Color3b" offset="9" vectorequiv="Color3bv">
-        <param name="red" type="GLbyte"/>
-        <param name="green" type="GLbyte"/>
-        <param name="blue" type="GLbyte"/>
-    </function>
-
-    <function name="Color3bv" offset="10">
-        <param name="v" type="const GLbyte *" count="3"/>
-        <glx rop="6"/>
-    </function>
-
-    <function name="Color3d" offset="11" vectorequiv="Color3dv">
-        <param name="red" type="GLdouble"/>
-        <param name="green" type="GLdouble"/>
-        <param name="blue" type="GLdouble"/>
-    </function>
-
-    <function name="Color3dv" offset="12">
-        <param name="v" type="const GLdouble *" count="3"/>
-        <glx rop="7"/>
-    </function>
-
-    <function name="Color3f" offset="13" vectorequiv="Color3fv">
-        <param name="red" type="GLfloat"/>
-        <param name="green" type="GLfloat"/>
-        <param name="blue" type="GLfloat"/>
-    </function>
-
-    <function name="Color3fv" offset="14">
-        <param name="v" type="const GLfloat *" count="3"/>
-        <glx rop="8"/>
-    </function>
-
-    <function name="Color3i" offset="15" vectorequiv="Color3iv">
-        <param name="red" type="GLint"/>
-        <param name="green" type="GLint"/>
-        <param name="blue" type="GLint"/>
-    </function>
-
-    <function name="Color3iv" offset="16">
-        <param name="v" type="const GLint *" count="3"/>
-        <glx rop="9"/>
-    </function>
-
-    <function name="Color3s" offset="17" vectorequiv="Color3sv">
-        <param name="red" type="GLshort"/>
-        <param name="green" type="GLshort"/>
-        <param name="blue" type="GLshort"/>
-    </function>
-
-    <function name="Color3sv" offset="18">
-        <param name="v" type="const GLshort *" count="3"/>
-        <glx rop="10"/>
-    </function>
-
-    <function name="Color3ub" offset="19" vectorequiv="Color3ubv">
-        <param name="red" type="GLubyte"/>
-        <param name="green" type="GLubyte"/>
-        <param name="blue" type="GLubyte"/>
-    </function>
-
-    <function name="Color3ubv" offset="20">
-        <param name="v" type="const GLubyte *" count="3"/>
-        <glx rop="11"/>
-    </function>
-
-    <function name="Color3ui" offset="21" vectorequiv="Color3uiv">
-        <param name="red" type="GLuint"/>
-        <param name="green" type="GLuint"/>
-        <param name="blue" type="GLuint"/>
-    </function>
-
-    <function name="Color3uiv" offset="22">
-        <param name="v" type="const GLuint *" count="3"/>
-        <glx rop="12"/>
-    </function>
-
-    <function name="Color3us" offset="23" vectorequiv="Color3usv">
-        <param name="red" type="GLushort"/>
-        <param name="green" type="GLushort"/>
-        <param name="blue" type="GLushort"/>
-    </function>
-
-    <function name="Color3usv" offset="24">
-        <param name="v" type="const GLushort *" count="3"/>
-        <glx rop="13"/>
-    </function>
-
-    <function name="Color4b" offset="25" vectorequiv="Color4bv">
-        <param name="red" type="GLbyte"/>
-        <param name="green" type="GLbyte"/>
-        <param name="blue" type="GLbyte"/>
-        <param name="alpha" type="GLbyte"/>
-    </function>
-
-    <function name="Color4bv" offset="26">
-        <param name="v" type="const GLbyte *" count="4"/>
-        <glx rop="14"/>
-    </function>
-
-    <function name="Color4d" offset="27" vectorequiv="Color4dv">
-        <param name="red" type="GLdouble"/>
-        <param name="green" type="GLdouble"/>
-        <param name="blue" type="GLdouble"/>
-        <param name="alpha" type="GLdouble"/>
-    </function>
-
-    <function name="Color4dv" offset="28">
-        <param name="v" type="const GLdouble *" count="4"/>
-        <glx rop="15"/>
-    </function>
-
-    <function name="Color4f" offset="29" vectorequiv="Color4fv">
-        <param name="red" type="GLfloat"/>
-        <param name="green" type="GLfloat"/>
-        <param name="blue" type="GLfloat"/>
-        <param name="alpha" type="GLfloat"/>
-    </function>
-
-    <function name="Color4fv" offset="30">
-        <param name="v" type="const GLfloat *" count="4"/>
-        <glx rop="16"/>
-    </function>
-
-    <function name="Color4i" offset="31" vectorequiv="Color4iv">
-        <param name="red" type="GLint"/>
-        <param name="green" type="GLint"/>
-        <param name="blue" type="GLint"/>
-        <param name="alpha" type="GLint"/>
-    </function>
-
-    <function name="Color4iv" offset="32">
-        <param name="v" type="const GLint *" count="4"/>
-        <glx rop="17"/>
-    </function>
-
-    <function name="Color4s" offset="33" vectorequiv="Color4sv">
-        <param name="red" type="GLshort"/>
-        <param name="green" type="GLshort"/>
-        <param name="blue" type="GLshort"/>
-        <param name="alpha" type="GLshort"/>
-    </function>
-
-    <function name="Color4sv" offset="34">
-        <param name="v" type="const GLshort *" count="4"/>
-        <glx rop="18"/>
-    </function>
-
-    <function name="Color4ub" offset="35" vectorequiv="Color4ubv">
-        <param name="red" type="GLubyte"/>
-        <param name="green" type="GLubyte"/>
-        <param name="blue" type="GLubyte"/>
-        <param name="alpha" type="GLubyte"/>
-    </function>
-
-    <function name="Color4ubv" offset="36">
-        <param name="v" type="const GLubyte *" count="4"/>
-        <glx rop="19"/>
-    </function>
-
-    <function name="Color4ui" offset="37" vectorequiv="Color4uiv">
-        <param name="red" type="GLuint"/>
-        <param name="green" type="GLuint"/>
-        <param name="blue" type="GLuint"/>
-        <param name="alpha" type="GLuint"/>
-    </function>
-
-    <function name="Color4uiv" offset="38">
-        <param name="v" type="const GLuint *" count="4"/>
-        <glx rop="20"/>
-    </function>
-
-    <function name="Color4us" offset="39" vectorequiv="Color4usv">
-        <param name="red" type="GLushort"/>
-        <param name="green" type="GLushort"/>
-        <param name="blue" type="GLushort"/>
-        <param name="alpha" type="GLushort"/>
-    </function>
-
-    <function name="Color4usv" offset="40">
-        <param name="v" type="const GLushort *" count="4"/>
-        <glx rop="21"/>
-    </function>
-
-    <function name="EdgeFlag" offset="41" vectorequiv="EdgeFlagv">
-        <param name="flag" type="GLboolean"/>
-    </function>
-
-    <function name="EdgeFlagv" offset="42">
-        <param name="flag" type="const GLboolean *" count="1"/>
-        <glx rop="22"/>
-    </function>
-
-    <function name="End" offset="43">
-        <glx rop="23"/>
-    </function>
-
-    <function name="Indexd" offset="44" vectorequiv="Indexdv">
-        <param name="c" type="GLdouble"/>
-    </function>
-
-    <function name="Indexdv" offset="45">
-        <param name="c" type="const GLdouble *" count="1"/>
-        <glx rop="24"/>
-    </function>
-
-    <function name="Indexf" offset="46" vectorequiv="Indexfv">
-        <param name="c" type="GLfloat"/>
-    </function>
-
-    <function name="Indexfv" offset="47">
-        <param name="c" type="const GLfloat *" count="1"/>
-        <glx rop="25"/>
-    </function>
-
-    <function name="Indexi" offset="48" vectorequiv="Indexiv">
-        <param name="c" type="GLint"/>
-    </function>
-
-    <function name="Indexiv" offset="49">
-        <param name="c" type="const GLint *" count="1"/>
-        <glx rop="26"/>
-    </function>
-
-    <function name="Indexs" offset="50" vectorequiv="Indexsv">
-        <param name="c" type="GLshort"/>
-    </function>
-
-    <function name="Indexsv" offset="51">
-        <param name="c" type="const GLshort *" count="1"/>
-        <glx rop="27"/>
-    </function>
-
-    <function name="Normal3b" offset="52" vectorequiv="Normal3bv">
-        <param name="nx" type="GLbyte"/>
-        <param name="ny" type="GLbyte"/>
-        <param name="nz" type="GLbyte"/>
-    </function>
-
-    <function name="Normal3bv" offset="53">
-        <param name="v" type="const GLbyte *" count="3"/>
-        <glx rop="28"/>
-    </function>
-
-    <function name="Normal3d" offset="54" vectorequiv="Normal3dv">
-        <param name="nx" type="GLdouble"/>
-        <param name="ny" type="GLdouble"/>
-        <param name="nz" type="GLdouble"/>
-    </function>
-
-    <function name="Normal3dv" offset="55">
-        <param name="v" type="const GLdouble *" count="3"/>
-        <glx rop="29"/>
-    </function>
-
-    <function name="Normal3f" offset="56" vectorequiv="Normal3fv">
-        <param name="nx" type="GLfloat"/>
-        <param name="ny" type="GLfloat"/>
-        <param name="nz" type="GLfloat"/>
-    </function>
-
-    <function name="Normal3fv" offset="57">
-        <param name="v" type="const GLfloat *" count="3"/>
-        <glx rop="30"/>
-    </function>
-
-    <function name="Normal3i" offset="58" vectorequiv="Normal3iv">
-        <param name="nx" type="GLint"/>
-        <param name="ny" type="GLint"/>
-        <param name="nz" type="GLint"/>
-    </function>
-
-    <function name="Normal3iv" offset="59">
-        <param name="v" type="const GLint *" count="3"/>
-        <glx rop="31"/>
-    </function>
-
-    <function name="Normal3s" offset="60" vectorequiv="Normal3sv">
-        <param name="nx" type="GLshort"/>
-        <param name="ny" type="GLshort"/>
-        <param name="nz" type="GLshort"/>
-    </function>
-
-    <function name="Normal3sv" offset="61">
-        <param name="v" type="const GLshort *" count="3"/>
-        <glx rop="32"/>
-    </function>
-
-    <function name="RasterPos2d" offset="62" vectorequiv="RasterPos2dv">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-    </function>
-
-    <function name="RasterPos2dv" offset="63">
-        <param name="v" type="const GLdouble *" count="2"/>
-        <glx rop="33"/>
-    </function>
-
-    <function name="RasterPos2f" offset="64" vectorequiv="RasterPos2fv">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-    </function>
-
-    <function name="RasterPos2fv" offset="65">
-        <param name="v" type="const GLfloat *" count="2"/>
-        <glx rop="34"/>
-    </function>
-
-    <function name="RasterPos2i" offset="66" vectorequiv="RasterPos2iv">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-    </function>
-
-    <function name="RasterPos2iv" offset="67">
-        <param name="v" type="const GLint *" count="2"/>
-        <glx rop="35"/>
-    </function>
-
-    <function name="RasterPos2s" offset="68" vectorequiv="RasterPos2sv">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-    </function>
-
-    <function name="RasterPos2sv" offset="69">
-        <param name="v" type="const GLshort *" count="2"/>
-        <glx rop="36"/>
-    </function>
-
-    <function name="RasterPos3d" offset="70" vectorequiv="RasterPos3dv">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-    </function>
-
-    <function name="RasterPos3dv" offset="71">
-        <param name="v" type="const GLdouble *" count="3"/>
-        <glx rop="37"/>
-    </function>
-
-    <function name="RasterPos3f" offset="72" vectorequiv="RasterPos3fv">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="RasterPos3fv" offset="73">
-        <param name="v" type="const GLfloat *" count="3"/>
-        <glx rop="38"/>
-    </function>
-
-    <function name="RasterPos3i" offset="74" vectorequiv="RasterPos3iv">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="z" type="GLint"/>
-    </function>
-
-    <function name="RasterPos3iv" offset="75">
-        <param name="v" type="const GLint *" count="3"/>
-        <glx rop="39"/>
-    </function>
-
-    <function name="RasterPos3s" offset="76" vectorequiv="RasterPos3sv">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-    </function>
-
-    <function name="RasterPos3sv" offset="77">
-        <param name="v" type="const GLshort *" count="3"/>
-        <glx rop="40"/>
-    </function>
-
-    <function name="RasterPos4d" offset="78" vectorequiv="RasterPos4dv">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <param name="w" type="GLdouble"/>
-    </function>
-
-    <function name="RasterPos4dv" offset="79">
-        <param name="v" type="const GLdouble *" count="4"/>
-        <glx rop="41"/>
-    </function>
-
-    <function name="RasterPos4f" offset="80" vectorequiv="RasterPos4fv">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <param name="w" type="GLfloat"/>
-    </function>
-
-    <function name="RasterPos4fv" offset="81">
-        <param name="v" type="const GLfloat *" count="4"/>
-        <glx rop="42"/>
-    </function>
-
-    <function name="RasterPos4i" offset="82" vectorequiv="RasterPos4iv">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="z" type="GLint"/>
-        <param name="w" type="GLint"/>
-    </function>
-
-    <function name="RasterPos4iv" offset="83">
-        <param name="v" type="const GLint *" count="4"/>
-        <glx rop="43"/>
-    </function>
-
-    <function name="RasterPos4s" offset="84" vectorequiv="RasterPos4sv">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-        <param name="w" type="GLshort"/>
-    </function>
-
-    <function name="RasterPos4sv" offset="85">
-        <param name="v" type="const GLshort *" count="4"/>
-        <glx rop="44"/>
-    </function>
-
-    <function name="Rectd" offset="86" vectorequiv="Rectdv">
-        <param name="x1" type="GLdouble"/>
-        <param name="y1" type="GLdouble"/>
-        <param name="x2" type="GLdouble"/>
-        <param name="y2" type="GLdouble"/>
-    </function>
-
-    <function name="Rectdv" offset="87">
-        <param name="v1" type="const GLdouble *" count="2"/>
-        <param name="v2" type="const GLdouble *" count="2"/>
-        <glx rop="45"/>
-    </function>
-
-    <function name="Rectf" offset="88" vectorequiv="Rectfv">
-        <param name="x1" type="GLfloat"/>
-        <param name="y1" type="GLfloat"/>
-        <param name="x2" type="GLfloat"/>
-        <param name="y2" type="GLfloat"/>
-    </function>
-
-    <function name="Rectfv" offset="89">
-        <param name="v1" type="const GLfloat *" count="2"/>
-        <param name="v2" type="const GLfloat *" count="2"/>
-        <glx rop="46"/>
-    </function>
-
-    <function name="Recti" offset="90" vectorequiv="Rectiv">
-        <param name="x1" type="GLint"/>
-        <param name="y1" type="GLint"/>
-        <param name="x2" type="GLint"/>
-        <param name="y2" type="GLint"/>
-    </function>
-
-    <function name="Rectiv" offset="91">
-        <param name="v1" type="const GLint *" count="2"/>
-        <param name="v2" type="const GLint *" count="2"/>
-        <glx rop="47"/>
-    </function>
-
-    <function name="Rects" offset="92" vectorequiv="Rectsv">
-        <param name="x1" type="GLshort"/>
-        <param name="y1" type="GLshort"/>
-        <param name="x2" type="GLshort"/>
-        <param name="y2" type="GLshort"/>
-    </function>
-
-    <function name="Rectsv" offset="93">
-        <param name="v1" type="const GLshort *" count="2"/>
-        <param name="v2" type="const GLshort *" count="2"/>
-        <glx rop="48"/>
-    </function>
-
-    <function name="TexCoord1d" offset="94" vectorequiv="TexCoord1dv">
-        <param name="s" type="GLdouble"/>
-    </function>
-
-    <function name="TexCoord1dv" offset="95">
-        <param name="v" type="const GLdouble *" count="1"/>
-        <glx rop="49"/>
-    </function>
-
-    <function name="TexCoord1f" offset="96" vectorequiv="TexCoord1fv">
-        <param name="s" type="GLfloat"/>
-    </function>
-
-    <function name="TexCoord1fv" offset="97">
-        <param name="v" type="const GLfloat *" count="1"/>
-        <glx rop="50"/>
-    </function>
-
-    <function name="TexCoord1i" offset="98" vectorequiv="TexCoord1iv">
-        <param name="s" type="GLint"/>
-    </function>
-
-    <function name="TexCoord1iv" offset="99">
-        <param name="v" type="const GLint *" count="1"/>
-        <glx rop="51"/>
-    </function>
-
-    <function name="TexCoord1s" offset="100" vectorequiv="TexCoord1sv">
-        <param name="s" type="GLshort"/>
-    </function>
-
-    <function name="TexCoord1sv" offset="101">
-        <param name="v" type="const GLshort *" count="1"/>
-        <glx rop="52"/>
-    </function>
-
-    <function name="TexCoord2d" offset="102" vectorequiv="TexCoord2dv">
-        <param name="s" type="GLdouble"/>
-        <param name="t" type="GLdouble"/>
-    </function>
-
-    <function name="TexCoord2dv" offset="103">
-        <param name="v" type="const GLdouble *" count="2"/>
-        <glx rop="53"/>
-    </function>
-
-    <function name="TexCoord2f" offset="104" vectorequiv="TexCoord2fv">
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-    </function>
-
-    <function name="TexCoord2fv" offset="105">
-        <param name="v" type="const GLfloat *" count="2"/>
-        <glx rop="54"/>
-    </function>
-
-    <function name="TexCoord2i" offset="106" vectorequiv="TexCoord2iv">
-        <param name="s" type="GLint"/>
-        <param name="t" type="GLint"/>
-    </function>
-
-    <function name="TexCoord2iv" offset="107">
-        <param name="v" type="const GLint *" count="2"/>
-        <glx rop="55"/>
-    </function>
-
-    <function name="TexCoord2s" offset="108" vectorequiv="TexCoord2sv">
-        <param name="s" type="GLshort"/>
-        <param name="t" type="GLshort"/>
-    </function>
-
-    <function name="TexCoord2sv" offset="109">
-        <param name="v" type="const GLshort *" count="2"/>
-        <glx rop="56"/>
-    </function>
-
-    <function name="TexCoord3d" offset="110" vectorequiv="TexCoord3dv">
-        <param name="s" type="GLdouble"/>
-        <param name="t" type="GLdouble"/>
-        <param name="r" type="GLdouble"/>
-    </function>
-
-    <function name="TexCoord3dv" offset="111">
-        <param name="v" type="const GLdouble *" count="3"/>
-        <glx rop="57"/>
-    </function>
-
-    <function name="TexCoord3f" offset="112" vectorequiv="TexCoord3fv">
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="r" type="GLfloat"/>
-    </function>
-
-    <function name="TexCoord3fv" offset="113">
-        <param name="v" type="const GLfloat *" count="3"/>
-        <glx rop="58"/>
-    </function>
-
-    <function name="TexCoord3i" offset="114" vectorequiv="TexCoord3iv">
-        <param name="s" type="GLint"/>
-        <param name="t" type="GLint"/>
-        <param name="r" type="GLint"/>
-    </function>
-
-    <function name="TexCoord3iv" offset="115">
-        <param name="v" type="const GLint *" count="3"/>
-        <glx rop="59"/>
-    </function>
-
-    <function name="TexCoord3s" offset="116" vectorequiv="TexCoord3sv">
-        <param name="s" type="GLshort"/>
-        <param name="t" type="GLshort"/>
-        <param name="r" type="GLshort"/>
-    </function>
-
-    <function name="TexCoord3sv" offset="117">
-        <param name="v" type="const GLshort *" count="3"/>
-        <glx rop="60"/>
-    </function>
-
-    <function name="TexCoord4d" offset="118" vectorequiv="TexCoord4dv">
-        <param name="s" type="GLdouble"/>
-        <param name="t" type="GLdouble"/>
-        <param name="r" type="GLdouble"/>
-        <param name="q" type="GLdouble"/>
-    </function>
-
-    <function name="TexCoord4dv" offset="119">
-        <param name="v" type="const GLdouble *" count="4"/>
-        <glx rop="61"/>
-    </function>
-
-    <function name="TexCoord4f" offset="120" vectorequiv="TexCoord4fv">
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="r" type="GLfloat"/>
-        <param name="q" type="GLfloat"/>
-    </function>
-
-    <function name="TexCoord4fv" offset="121">
-        <param name="v" type="const GLfloat *" count="4"/>
-        <glx rop="62"/>
-    </function>
-
-    <function name="TexCoord4i" offset="122" vectorequiv="TexCoord4iv">
-        <param name="s" type="GLint"/>
-        <param name="t" type="GLint"/>
-        <param name="r" type="GLint"/>
-        <param name="q" type="GLint"/>
-    </function>
-
-    <function name="TexCoord4iv" offset="123">
-        <param name="v" type="const GLint *" count="4"/>
-        <glx rop="63"/>
-    </function>
-
-    <function name="TexCoord4s" offset="124" vectorequiv="TexCoord4sv">
-        <param name="s" type="GLshort"/>
-        <param name="t" type="GLshort"/>
-        <param name="r" type="GLshort"/>
-        <param name="q" type="GLshort"/>
-    </function>
-
-    <function name="TexCoord4sv" offset="125">
-        <param name="v" type="const GLshort *" count="4"/>
-        <glx rop="64"/>
-    </function>
-
-    <function name="Vertex2d" offset="126" vectorequiv="Vertex2dv">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-    </function>
-
-    <function name="Vertex2dv" offset="127">
-        <param name="v" type="const GLdouble *" count="2"/>
-        <glx rop="65"/>
-    </function>
-
-    <function name="Vertex2f" offset="128" vectorequiv="Vertex2fv">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-    </function>
-
-    <function name="Vertex2fv" offset="129">
-        <param name="v" type="const GLfloat *" count="2"/>
-        <glx rop="66"/>
-    </function>
-
-    <function name="Vertex2i" offset="130" vectorequiv="Vertex2iv">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-    </function>
-
-    <function name="Vertex2iv" offset="131">
-        <param name="v" type="const GLint *" count="2"/>
-        <glx rop="67"/>
-    </function>
-
-    <function name="Vertex2s" offset="132" vectorequiv="Vertex2sv">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-    </function>
-
-    <function name="Vertex2sv" offset="133">
-        <param name="v" type="const GLshort *" count="2"/>
-        <glx rop="68"/>
-    </function>
-
-    <function name="Vertex3d" offset="134" vectorequiv="Vertex3dv">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-    </function>
-
-    <function name="Vertex3dv" offset="135">
-        <param name="v" type="const GLdouble *" count="3"/>
-        <glx rop="69"/>
-    </function>
-
-    <function name="Vertex3f" offset="136" vectorequiv="Vertex3fv">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="Vertex3fv" offset="137">
-        <param name="v" type="const GLfloat *" count="3"/>
-        <glx rop="70"/>
-    </function>
-
-    <function name="Vertex3i" offset="138" vectorequiv="Vertex3iv">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="z" type="GLint"/>
-    </function>
-
-    <function name="Vertex3iv" offset="139">
-        <param name="v" type="const GLint *" count="3"/>
-        <glx rop="71"/>
-    </function>
-
-    <function name="Vertex3s" offset="140" vectorequiv="Vertex3sv">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-    </function>
-
-    <function name="Vertex3sv" offset="141">
-        <param name="v" type="const GLshort *" count="3"/>
-        <glx rop="72"/>
-    </function>
-
-    <function name="Vertex4d" offset="142" vectorequiv="Vertex4dv">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <param name="w" type="GLdouble"/>
-    </function>
-
-    <function name="Vertex4dv" offset="143">
-        <param name="v" type="const GLdouble *" count="4"/>
-        <glx rop="73"/>
-    </function>
-
-    <function name="Vertex4f" offset="144" vectorequiv="Vertex4fv">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <param name="w" type="GLfloat"/>
-    </function>
-
-    <function name="Vertex4fv" offset="145">
-        <param name="v" type="const GLfloat *" count="4"/>
-        <glx rop="74"/>
-    </function>
-
-    <function name="Vertex4i" offset="146" vectorequiv="Vertex4iv">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="z" type="GLint"/>
-        <param name="w" type="GLint"/>
-    </function>
-
-    <function name="Vertex4iv" offset="147">
-        <param name="v" type="const GLint *" count="4"/>
-        <glx rop="75"/>
-    </function>
-
-    <function name="Vertex4s" offset="148" vectorequiv="Vertex4sv">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-        <param name="w" type="GLshort"/>
-    </function>
-
-    <function name="Vertex4sv" offset="149">
-        <param name="v" type="const GLshort *" count="4"/>
-        <glx rop="76"/>
-    </function>
-
-    <function name="ClipPlane" offset="150">
-        <param name="plane" type="GLenum"/>
-        <param name="equation" type="const GLdouble *" count="4"/>
-        <glx rop="77"/>
-    </function>
-
-    <function name="ColorMaterial" offset="151">
-        <param name="face" type="GLenum"/>
-        <param name="mode" type="GLenum"/>
-        <glx rop="78"/>
-    </function>
-
-    <function name="CullFace" offset="152">
-        <param name="mode" type="GLenum"/>
-        <glx rop="79"/>
-    </function>
-
-    <function name="Fogf" offset="153">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="80"/>
-    </function>
-
-    <function name="Fogfv" offset="154">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="81"/>
-    </function>
-
-    <function name="Fogi" offset="155">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="82"/>
-    </function>
-
-    <function name="Fogiv" offset="156">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="83"/>
-    </function>
-
-    <function name="FrontFace" offset="157">
-        <param name="mode" type="GLenum"/>
-        <glx rop="84"/>
-    </function>
-
-    <function name="Hint" offset="158">
-        <param name="target" type="GLenum"/>
-        <param name="mode" type="GLenum"/>
-        <glx rop="85"/>
-    </function>
-
-    <function name="Lightf" offset="159">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="86"/>
-    </function>
-
-    <function name="Lightfv" offset="160">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="87"/>
-    </function>
-
-    <function name="Lighti" offset="161">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="88"/>
-    </function>
-
-    <function name="Lightiv" offset="162">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="89"/>
-    </function>
-
-    <function name="LightModelf" offset="163">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="90"/>
-    </function>
-
-    <function name="LightModelfv" offset="164">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="91"/>
-    </function>
-
-    <function name="LightModeli" offset="165">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="92"/>
-    </function>
-
-    <function name="LightModeliv" offset="166">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="93"/>
-    </function>
-
-    <function name="LineStipple" offset="167">
-        <param name="factor" type="GLint"/>
-        <param name="pattern" type="GLushort"/>
-        <glx rop="94"/>
-    </function>
-
-    <function name="LineWidth" offset="168">
-        <param name="width" type="GLfloat"/>
-        <glx rop="95"/>
-    </function>
-
-    <function name="Materialf" offset="169">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="96"/>
-    </function>
-
-    <function name="Materialfv" offset="170">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="97"/>
-    </function>
-
-    <function name="Materiali" offset="171">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="98"/>
-    </function>
-
-    <function name="Materialiv" offset="172">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="99"/>
-    </function>
-
-    <function name="PointSize" offset="173">
-        <param name="size" type="GLfloat"/>
-        <glx rop="100"/>
-    </function>
-
-    <function name="PolygonMode" offset="174">
-        <param name="face" type="GLenum"/>
-        <param name="mode" type="GLenum"/>
-        <glx rop="101"/>
-    </function>
-
-    <function name="PolygonStipple" offset="175">
-        <param name="mask" type="const GLubyte *" img_width="32" img_height="32" img_format="GL_COLOR_INDEX" img_type="GL_BITMAP" img_target="0" img_pad_dimensions="false"/>
-        <glx rop="102"/>
-    </function>
-
-    <function name="Scissor" offset="176">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <glx rop="103"/>
-    </function>
-
-    <function name="ShadeModel" offset="177">
-        <param name="mode" type="GLenum"/>
-        <glx rop="104"/>
-    </function>
-
-    <function name="TexParameterf" offset="178">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="105"/>
-    </function>
-
-    <function name="TexParameterfv" offset="179">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="106"/>
-    </function>
-
-    <function name="TexParameteri" offset="180">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="107"/>
-    </function>
-
-    <function name="TexParameteriv" offset="181">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="108"/>
-    </function>
-
-    <function name="TexImage1D" offset="182">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_format="format" img_type="type" img_target="target" img_send_null="true" img_pad_dimensions="true"/>
-        <glx rop="109" large="true"/>
-    </function>
-
-    <function name="TexImage2D" offset="183">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="target" img_send_null="true" img_pad_dimensions="true"/>
-        <glx rop="110" large="true"/>
-    </function>
-
-    <function name="TexEnvf" offset="184">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="111"/>
-    </function>
-
-    <function name="TexEnvfv" offset="185">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="112"/>
-    </function>
-
-    <function name="TexEnvi" offset="186">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="113"/>
-    </function>
-
-    <function name="TexEnviv" offset="187">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="114"/>
-    </function>
-
-    <function name="TexGend" offset="188">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLdouble"/>
-        <glx rop="115"/>
-    </function>
-
-    <function name="TexGendv" offset="189">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLdouble *" variable_param="pname"/>
-        <glx rop="116"/>
-    </function>
-
-    <function name="TexGenf" offset="190">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="117"/>
-    </function>
-
-    <function name="TexGenfv" offset="191">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="118"/>
-    </function>
-
-    <function name="TexGeni" offset="192">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="119"/>
-    </function>
-
-    <function name="TexGeniv" offset="193">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="120"/>
-    </function>
-
-    <function name="FeedbackBuffer" offset="194">
-        <param name="size" type="GLsizei"/>
-        <param name="type" type="GLenum"/>
-        <param name="buffer" type="GLfloat *" output="true"/>
-        <glx sop="105" handcode="true"/>
-    </function>
-
-    <function name="SelectBuffer" offset="195">
-        <param name="size" type="GLsizei"/>
-        <param name="buffer" type="GLuint *" output="true"/>
-        <glx sop="106" handcode="true"/>
-    </function>
-
-    <function name="RenderMode" offset="196">
-        <param name="mode" type="GLenum"/>
-        <return type="GLint"/>
-        <glx sop="107" handcode="true"/>
-    </function>
-
-    <function name="InitNames" offset="197">
-        <glx rop="121"/>
-    </function>
-
-    <function name="LoadName" offset="198">
-        <param name="name" type="GLuint"/>
-        <glx rop="122"/>
-    </function>
-
-    <function name="PassThrough" offset="199">
-        <param name="token" type="GLfloat"/>
-        <glx rop="123"/>
-    </function>
-
-    <function name="PopName" offset="200">
-        <glx rop="124"/>
-    </function>
-
-    <function name="PushName" offset="201">
-        <param name="name" type="GLuint"/>
-        <glx rop="125"/>
-    </function>
-
-    <function name="DrawBuffer" offset="202">
-        <param name="mode" type="GLenum"/>
-        <glx rop="126"/>
-    </function>
-
-    <function name="Clear" offset="203">
-        <param name="mask" type="GLbitfield"/>
-        <glx rop="127"/>
-    </function>
-
-    <function name="ClearAccum" offset="204">
-        <param name="red" type="GLfloat"/>
-        <param name="green" type="GLfloat"/>
-        <param name="blue" type="GLfloat"/>
-        <param name="alpha" type="GLfloat"/>
-        <glx rop="128"/>
-    </function>
-
-    <function name="ClearIndex" offset="205">
-        <param name="c" type="GLfloat"/>
-        <glx rop="129"/>
-    </function>
-
-    <function name="ClearColor" offset="206">
-        <param name="red" type="GLclampf"/>
-        <param name="green" type="GLclampf"/>
-        <param name="blue" type="GLclampf"/>
-        <param name="alpha" type="GLclampf"/>
-        <glx rop="130"/>
-    </function>
-
-    <function name="ClearStencil" offset="207">
-        <param name="s" type="GLint"/>
-        <glx rop="131"/>
-    </function>
-
-    <function name="ClearDepth" offset="208">
-        <param name="depth" type="GLclampd"/>
-        <glx rop="132"/>
-    </function>
-
-    <function name="StencilMask" offset="209">
-        <param name="mask" type="GLuint"/>
-        <glx rop="133"/>
-    </function>
-
-    <function name="ColorMask" offset="210">
-        <param name="red" type="GLboolean"/>
-        <param name="green" type="GLboolean"/>
-        <param name="blue" type="GLboolean"/>
-        <param name="alpha" type="GLboolean"/>
-        <glx rop="134"/>
-    </function>
-
-    <function name="DepthMask" offset="211">
-        <param name="flag" type="GLboolean"/>
-        <glx rop="135"/>
-    </function>
-
-    <function name="IndexMask" offset="212">
-        <param name="mask" type="GLuint"/>
-        <glx rop="136"/>
-    </function>
-
-    <function name="Accum" offset="213">
-        <param name="op" type="GLenum"/>
-        <param name="value" type="GLfloat"/>
-        <glx rop="137"/>
-    </function>
-
-    <function name="Disable" offset="214">
-        <param name="cap" type="GLenum"/>
-        <glx rop="138" handcode="client"/>
-    </function>
-
-    <function name="Enable" offset="215">
-        <param name="cap" type="GLenum"/>
-        <glx rop="139" handcode="client"/>
-    </function>
-
-    <function name="Finish" offset="216">
-        <glx sop="108" handcode="true"/>
-    </function>
-
-    <function name="Flush" offset="217">
-        <glx sop="142" handcode="true"/>
-    </function>
-
-    <function name="PopAttrib" offset="218">
-        <glx rop="141"/>
-    </function>
-
-    <function name="PushAttrib" offset="219">
-        <param name="mask" type="GLbitfield"/>
-        <glx rop="142"/>
-    </function>
-
-    <function name="Map1d" offset="220">
-        <param name="target" type="GLenum"/>
-        <param name="u1" type="GLdouble"/>
-        <param name="u2" type="GLdouble"/>
-        <param name="stride" type="GLint" client_only="true"/>
-        <param name="order" type="GLint"/>
-        <param name="points" type="const GLdouble *" variable_param="order"/>
-        <glx rop="143" handcode="true"/>
-    </function>
-
-    <function name="Map1f" offset="221">
-        <param name="target" type="GLenum"/>
-        <param name="u1" type="GLfloat"/>
-        <param name="u2" type="GLfloat"/>
-        <param name="stride" type="GLint" client_only="true"/>
-        <param name="order" type="GLint"/>
-        <param name="points" type="const GLfloat *" variable_param="order"/>
-        <glx rop="144" handcode="true"/>
-    </function>
-
-    <function name="Map2d" offset="222">
-        <param name="target" type="GLenum"/>
-        <param name="u1" type="GLdouble"/>
-        <param name="u2" type="GLdouble"/>
-        <param name="ustride" type="GLint" client_only="true"/>
-        <param name="uorder" type="GLint"/>
-        <param name="v1" type="GLdouble"/>
-        <param name="v2" type="GLdouble"/>
-        <param name="vstride" type="GLint" client_only="true"/>
-        <param name="vorder" type="GLint"/>
-        <param name="points" type="const GLdouble *" variable_param="uorder"/>
-        <glx rop="145" handcode="true"/>
-    </function>
-
-    <function name="Map2f" offset="223">
-        <param name="target" type="GLenum"/>
-        <param name="u1" type="GLfloat"/>
-        <param name="u2" type="GLfloat"/>
-        <param name="ustride" type="GLint" client_only="true"/>
-        <param name="uorder" type="GLint"/>
-        <param name="v1" type="GLfloat"/>
-        <param name="v2" type="GLfloat"/>
-        <param name="vstride" type="GLint" client_only="true"/>
-        <param name="vorder" type="GLint"/>
-        <param name="points" type="const GLfloat *" variable_param="uorder"/>
-        <glx rop="146" handcode="true"/>
-    </function>
-
-    <function name="MapGrid1d" offset="224">
-        <param name="un" type="GLint"/>
-        <param name="u1" type="GLdouble"/>
-        <param name="u2" type="GLdouble"/>
-        <glx rop="147"/>
-    </function>
-
-    <function name="MapGrid1f" offset="225">
-        <param name="un" type="GLint"/>
-        <param name="u1" type="GLfloat"/>
-        <param name="u2" type="GLfloat"/>
-        <glx rop="148"/>
-    </function>
-
-    <function name="MapGrid2d" offset="226">
-        <param name="un" type="GLint"/>
-        <param name="u1" type="GLdouble"/>
-        <param name="u2" type="GLdouble"/>
-        <param name="vn" type="GLint"/>
-        <param name="v1" type="GLdouble"/>
-        <param name="v2" type="GLdouble"/>
-        <glx rop="149"/>
-    </function>
-
-    <function name="MapGrid2f" offset="227">
-        <param name="un" type="GLint"/>
-        <param name="u1" type="GLfloat"/>
-        <param name="u2" type="GLfloat"/>
-        <param name="vn" type="GLint"/>
-        <param name="v1" type="GLfloat"/>
-        <param name="v2" type="GLfloat"/>
-        <glx rop="150"/>
-    </function>
-
-    <function name="EvalCoord1d" offset="228" vectorequiv="EvalCoord1dv">
-        <param name="u" type="GLdouble"/>
-    </function>
-
-    <function name="EvalCoord1dv" offset="229">
-        <param name="u" type="const GLdouble *" count="1"/>
-        <glx rop="151"/>
-    </function>
-
-    <function name="EvalCoord1f" offset="230" vectorequiv="EvalCoord1fv">
-        <param name="u" type="GLfloat"/>
-    </function>
-
-    <function name="EvalCoord1fv" offset="231">
-        <param name="u" type="const GLfloat *" count="1"/>
-        <glx rop="152"/>
-    </function>
-
-    <function name="EvalCoord2d" offset="232" vectorequiv="EvalCoord2dv">
-        <param name="u" type="GLdouble"/>
-        <param name="v" type="GLdouble"/>
-    </function>
-
-    <function name="EvalCoord2dv" offset="233">
-        <param name="u" type="const GLdouble *" count="2"/>
-        <glx rop="153"/>
-    </function>
-
-    <function name="EvalCoord2f" offset="234" vectorequiv="EvalCoord2fv">
-        <param name="u" type="GLfloat"/>
-        <param name="v" type="GLfloat"/>
-    </function>
-
-    <function name="EvalCoord2fv" offset="235">
-        <param name="u" type="const GLfloat *" count="2"/>
-        <glx rop="154"/>
-    </function>
-
-    <function name="EvalMesh1" offset="236">
-        <param name="mode" type="GLenum"/>
-        <param name="i1" type="GLint"/>
-        <param name="i2" type="GLint"/>
-        <glx rop="155"/>
-    </function>
-
-    <function name="EvalPoint1" offset="237">
-        <param name="i" type="GLint"/>
-        <glx rop="156"/>
-    </function>
-
-    <function name="EvalMesh2" offset="238">
-        <param name="mode" type="GLenum"/>
-        <param name="i1" type="GLint"/>
-        <param name="i2" type="GLint"/>
-        <param name="j1" type="GLint"/>
-        <param name="j2" type="GLint"/>
-        <glx rop="157"/>
-    </function>
-
-    <function name="EvalPoint2" offset="239">
-        <param name="i" type="GLint"/>
-        <param name="j" type="GLint"/>
-        <glx rop="158"/>
-    </function>
-
-    <function name="AlphaFunc" offset="240">
-        <param name="func" type="GLenum"/>
-        <param name="ref" type="GLclampf"/>
-        <glx rop="159"/>
-    </function>
-
-    <function name="BlendFunc" offset="241">
-        <param name="sfactor" type="GLenum"/>
-        <param name="dfactor" type="GLenum"/>
-        <glx rop="160"/>
-    </function>
-
-    <function name="LogicOp" offset="242">
-        <param name="opcode" type="GLenum"/>
-        <glx rop="161"/>
-    </function>
-
-    <function name="StencilFunc" offset="243">
-        <param name="func" type="GLenum"/>
-        <param name="ref" type="GLint"/>
-        <param name="mask" type="GLuint"/>
-        <glx rop="162"/>
-    </function>
-
-    <function name="StencilOp" offset="244">
-        <param name="fail" type="GLenum"/>
-        <param name="zfail" type="GLenum"/>
-        <param name="zpass" type="GLenum"/>
-        <glx rop="163"/>
-    </function>
-
-    <function name="DepthFunc" offset="245">
-        <param name="func" type="GLenum"/>
-        <glx rop="164"/>
-    </function>
-
-    <function name="PixelZoom" offset="246">
-        <param name="xfactor" type="GLfloat"/>
-        <param name="yfactor" type="GLfloat"/>
-        <glx rop="165"/>
-    </function>
-
-    <function name="PixelTransferf" offset="247">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="166"/>
-    </function>
-
-    <function name="PixelTransferi" offset="248">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="167"/>
-    </function>
-
-    <function name="PixelStoref" offset="249">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx sop="109" handcode="client"/>
-    </function>
-
-    <function name="PixelStorei" offset="250">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx sop="110" handcode="client"/>
-    </function>
-
-    <function name="PixelMapfv" offset="251">
-        <param name="map" type="GLenum"/>
-        <param name="mapsize" type="GLsizei" counter="true"/>
-        <param name="values" type="const GLfloat *" count="mapsize"/>
-        <glx rop="168" large="true"/>
-    </function>
-
-    <function name="PixelMapuiv" offset="252">
-        <param name="map" type="GLenum"/>
-        <param name="mapsize" type="GLsizei" counter="true"/>
-        <param name="values" type="const GLuint *" count="mapsize"/>
-        <glx rop="169" large="true"/>
-    </function>
-
-    <function name="PixelMapusv" offset="253">
-        <param name="map" type="GLenum"/>
-        <param name="mapsize" type="GLsizei" counter="true"/>
-        <param name="values" type="const GLushort *" count="mapsize"/>
-        <glx rop="170" large="true"/>
-    </function>
-
-    <function name="ReadBuffer" offset="254">
-        <param name="mode" type="GLenum"/>
-        <glx rop="171"/>
-    </function>
-
-    <function name="CopyPixels" offset="255">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="type" type="GLenum"/>
-        <glx rop="172"/>
-    </function>
-
-    <function name="ReadPixels" offset="256">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="GLvoid *" output="true"  img_width="width" img_height="height" img_format="format" img_type="type" img_target="0"/>
-        <glx sop="111"/>
-    </function>
-
-    <function name="DrawPixels" offset="257">
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="0" img_pad_dimensions="false"/>
-        <glx rop="173" large="true"/>
-    </function>
-
-    <function name="GetBooleanv" offset="258">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLboolean *" output="true" variable_param="pname"/>
-        <glx sop="112" handcode="client"/>
-    </function>
-
-    <function name="GetClipPlane" offset="259">
-        <param name="plane" type="GLenum"/>
-        <param name="equation" type="GLdouble *" output="true" count="4"/>
-        <glx sop="113" always_array="true"/>
-    </function>
-
-    <function name="GetDoublev" offset="260">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
-        <glx sop="114" handcode="client"/>
-    </function>
-
-    <function name="GetError" offset="261">
-        <return type="GLenum"/>
-        <glx sop="115" handcode="client"/>
-    </function>
-
-    <function name="GetFloatv" offset="262">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="116" handcode="client"/>
-    </function>
-
-    <function name="GetIntegerv" offset="263">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="117" handcode="client"/>
-    </function>
-
-    <function name="GetLightfv" offset="264">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="118"/>
-    </function>
-
-    <function name="GetLightiv" offset="265">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="119"/>
-    </function>
-
-    <function name="GetMapdv" offset="266">
-        <param name="target" type="GLenum"/>
-        <param name="query" type="GLenum"/>
-        <param name="v" type="GLdouble *" output="true" variable_param="target query"/>
-        <glx sop="120"/>
-    </function>
-
-    <function name="GetMapfv" offset="267">
-        <param name="target" type="GLenum"/>
-        <param name="query" type="GLenum"/>
-        <param name="v" type="GLfloat *" output="true" variable_param="target query"/>
-        <glx sop="121"/>
-    </function>
-
-    <function name="GetMapiv" offset="268">
-        <param name="target" type="GLenum"/>
-        <param name="query" type="GLenum"/>
-        <param name="v" type="GLint *" output="true" variable_param="target query"/>
-        <glx sop="122"/>
-    </function>
-
-    <function name="GetMaterialfv" offset="269">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="123"/>
-    </function>
-
-    <function name="GetMaterialiv" offset="270">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="124"/>
-    </function>
-
-    <function name="GetPixelMapfv" offset="271">
-        <param name="map" type="GLenum"/>
-        <param name="values" type="GLfloat *" output="true" variable_param="map"/>
-        <glx sop="125"/>
-    </function>
-
-    <function name="GetPixelMapuiv" offset="272">
-        <param name="map" type="GLenum"/>
-        <param name="values" type="GLuint *" output="true" variable_param="map"/>
-        <glx sop="126"/>
-    </function>
-
-    <function name="GetPixelMapusv" offset="273">
-        <param name="map" type="GLenum"/>
-        <param name="values" type="GLushort *" output="true" variable_param="map"/>
-        <glx sop="127"/>
-    </function>
-
-    <function name="GetPolygonStipple" offset="274">
-        <param name="mask" type="GLubyte *" output="true" img_width="32" img_height="32" img_format="GL_COLOR_INDEX" img_type="GL_BITMAP"/>
-        <glx sop="128"/>
-    </function>
-
-    <function name="GetString" offset="275">
-        <param name="name" type="GLenum"/>
-        <return type="const GLubyte *"/>
-        <glx sop="129" handcode="true"/>
-    </function>
-
-    <function name="GetTexEnvfv" offset="276">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="130"/>
-    </function>
-
-    <function name="GetTexEnviv" offset="277">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="131"/>
-    </function>
-
-    <function name="GetTexGendv" offset="278">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
-        <glx sop="132"/>
-    </function>
-
-    <function name="GetTexGenfv" offset="279">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="133"/>
-    </function>
-
-    <function name="GetTexGeniv" offset="280">
-        <param name="coord" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="134"/>
-    </function>
-
-    <function name="GetTexImage" offset="281">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="GLvoid *" output="true" img_width="width" img_height="height" img_depth="depth" img_format="format" img_type="type"/>
-        <glx sop="135" dimensions_in_reply="true"/>
-    </function>
-
-    <function name="GetTexParameterfv" offset="282">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="136"/>
-    </function>
-
-    <function name="GetTexParameteriv" offset="283">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="137"/>
-    </function>
-
-    <function name="GetTexLevelParameterfv" offset="284">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="138"/>
-    </function>
-
-    <function name="GetTexLevelParameteriv" offset="285">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="139"/>
-    </function>
-
-    <function name="IsEnabled" offset="286">
-        <param name="cap" type="GLenum"/>
-        <return type="GLboolean"/>
-        <glx sop="140" handcode="client"/>
-    </function>
-
-    <function name="IsList" offset="287">
-        <param name="list" type="GLuint"/>
-        <return type="GLboolean"/>
-        <glx sop="141"/>
-    </function>
-
-    <function name="DepthRange" offset="288">
-        <param name="zNear" type="GLclampd"/>
-        <param name="zFar" type="GLclampd"/>
-        <glx rop="174"/>
-    </function>
-
-    <function name="Frustum" offset="289">
-        <param name="left" type="GLdouble"/>
-        <param name="right" type="GLdouble"/>
-        <param name="bottom" type="GLdouble"/>
-        <param name="top" type="GLdouble"/>
-        <param name="zNear" type="GLdouble"/>
-        <param name="zFar" type="GLdouble"/>
-        <glx rop="175"/>
-    </function>
-
-    <function name="LoadIdentity" offset="290">
-        <glx rop="176"/>
-    </function>
-
-    <function name="LoadMatrixf" offset="291">
-        <param name="m" type="const GLfloat *" count="16"/>
-        <glx rop="177"/>
-    </function>
-
-    <function name="LoadMatrixd" offset="292">
-        <param name="m" type="const GLdouble *" count="16"/>
-        <glx rop="178"/>
-    </function>
-
-    <function name="MatrixMode" offset="293">
-        <param name="mode" type="GLenum"/>
-        <glx rop="179"/>
-    </function>
-
-    <function name="MultMatrixf" offset="294">
-        <param name="m" type="const GLfloat *" count="16"/>
-        <glx rop="180"/>
-    </function>
-
-    <function name="MultMatrixd" offset="295">
-        <param name="m" type="const GLdouble *" count="16"/>
-        <glx rop="181"/>
-    </function>
-
-    <function name="Ortho" offset="296">
-        <param name="left" type="GLdouble"/>
-        <param name="right" type="GLdouble"/>
-        <param name="bottom" type="GLdouble"/>
-        <param name="top" type="GLdouble"/>
-        <param name="zNear" type="GLdouble"/>
-        <param name="zFar" type="GLdouble"/>
-        <glx rop="182"/>
-    </function>
-
-    <function name="PopMatrix" offset="297">
-        <glx rop="183"/>
-    </function>
-
-    <function name="PushMatrix" offset="298">
-        <glx rop="184"/>
-    </function>
-
-    <function name="Rotated" offset="299">
-        <param name="angle" type="GLdouble"/>
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <glx rop="185"/>
-    </function>
-
-    <function name="Rotatef" offset="300">
-        <param name="angle" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <glx rop="186"/>
-    </function>
-
-    <function name="Scaled" offset="301">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <glx rop="187"/>
-    </function>
-
-    <function name="Scalef" offset="302">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <glx rop="188"/>
-    </function>
-
-    <function name="Translated" offset="303">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <glx rop="189"/>
-    </function>
-
-    <function name="Translatef" offset="304">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <glx rop="190"/>
-    </function>
-
-    <function name="Viewport" offset="305">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <glx rop="191"/>
-    </function>
-</category>
-
-<category name="1.1">
-    <enum name="INDEX_LOGIC_OP"                           value="0x0BF1"/>
-    <enum name="COLOR_LOGIC_OP"                           value="0x0BF2"/>
-    <enum name="TEXTURE_INTERNAL_FORMAT"                  value="0x1003"/>
-    <enum name="DOUBLE"                                   value="0x140A"/>
-    <enum name="POLYGON_OFFSET_UNITS"          count="1"  value="0x2A00">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POLYGON_OFFSET_POINT"                     value="0x2A01"/>
-    <enum name="POLYGON_OFFSET_LINE"                      value="0x2A02"/>
-    <enum name="R3_G3_B2"                                 value="0x2A10"/>
-    <enum name="V2F"                                      value="0x2A20"/>
-    <enum name="V3F"                                      value="0x2A21"/>
-    <enum name="C4UB_V2F"                                 value="0x2A22"/>
-    <enum name="C4UB_V3F"                                 value="0x2A23"/>
-    <enum name="C3F_V3F"                                  value="0x2A24"/>
-    <enum name="N3F_V3F"                                  value="0x2A25"/>
-    <enum name="C4F_N3F_V3F"                              value="0x2A26"/>
-    <enum name="T2F_V3F"                                  value="0x2A27"/>
-    <enum name="T4F_V4F"                                  value="0x2A28"/>
-    <enum name="T2F_C4UB_V3F"                             value="0x2A29"/>
-    <enum name="T2F_C3F_V3F"                              value="0x2A2A"/>
-    <enum name="T2F_N3F_V3F"                              value="0x2A2B"/>
-    <enum name="T2F_C4F_N3F_V3F"                          value="0x2A2C"/>
-    <enum name="T4F_C4F_N3F_V4F"                          value="0x2A2D"/>
-    <enum name="POLYGON_OFFSET_FILL"                      value="0x8037"/>
-    <enum name="POLYGON_OFFSET_FACTOR"         count="1"  value="0x8038">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POLYGON_OFFSET_BIAS"                      value="0x8039"/>
-    <enum name="ALPHA4"                                   value="0x803B"/>
-    <enum name="ALPHA8"                                   value="0x803C"/>
-    <enum name="ALPHA12"                                  value="0x803D"/>
-    <enum name="ALPHA16"                                  value="0x803E"/>
-    <enum name="LUMINANCE4"                               value="0x803F"/>
-    <enum name="LUMINANCE8"                               value="0x8040"/>
-    <enum name="LUMINANCE12"                              value="0x8041"/>
-    <enum name="LUMINANCE16"                              value="0x8042"/>
-    <enum name="LUMINANCE4_ALPHA4"                        value="0x8043"/>
-    <enum name="LUMINANCE6_ALPHA2"                        value="0x8044"/>
-    <enum name="LUMINANCE8_ALPHA8"                        value="0x8045"/>
-    <enum name="LUMINANCE12_ALPHA4"                       value="0x8046"/>
-    <enum name="LUMINANCE12_ALPHA12"                      value="0x8047"/>
-    <enum name="LUMINANCE16_ALPHA16"                      value="0x8048"/>
-    <enum name="INTENSITY"                                value="0x8049"/>
-    <enum name="INTENSITY4"                               value="0x804A"/>
-    <enum name="INTENSITY8"                               value="0x804B"/>
-    <enum name="INTENSITY12"                              value="0x804C"/>
-    <enum name="INTENSITY16"                              value="0x804D"/>
-    <enum name="RGB4"                                     value="0x804F"/>
-    <enum name="RGB5"                                     value="0x8050"/>
-    <enum name="RGB8"                                     value="0x8051"/>
-    <enum name="RGB10"                                    value="0x8052"/>
-    <enum name="RGB12"                                    value="0x8053"/>
-    <enum name="RGB16"                                    value="0x8054"/>
-    <enum name="RGBA2"                                    value="0x8055"/>
-    <enum name="RGBA4"                                    value="0x8056"/>
-    <enum name="RGB5_A1"                                  value="0x8057"/>
-    <enum name="RGBA8"                                    value="0x8058"/>
-    <enum name="RGB10_A2"                                 value="0x8059"/>
-    <enum name="RGBA12"                                   value="0x805A"/>
-    <enum name="RGBA16"                                   value="0x805B"/>
-    <enum name="TEXTURE_RED_SIZE"              count="1"  value="0x805C">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_GREEN_SIZE"            count="1"  value="0x805D">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_BLUE_SIZE"             count="1"  value="0x805E">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_ALPHA_SIZE"            count="1"  value="0x805F">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_LUMINANCE_SIZE"        count="1"  value="0x8060">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_INTENSITY_SIZE"        count="1"  value="0x8061">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="PROXY_TEXTURE_1D"                         value="0x8063"/>
-    <enum name="PROXY_TEXTURE_2D"                         value="0x8064"/>
-    <enum name="TEXTURE_PRIORITY"              count="1"  value="0x8066">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_RESIDENT"              count="1"  value="0x8067">
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_BINDING_1D"            count="1"  value="0x8068">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_BINDING_2D"            count="1"  value="0x8069">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ARRAY"                  count="1"  value="0x8074">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="NORMAL_ARRAY"                  count="1"  value="0x8075">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_ARRAY"                   count="1"  value="0x8076">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="INDEX_ARRAY"                   count="1"  value="0x8077">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COORD_ARRAY"           count="1"  value="0x8078">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="EDGE_FLAG_ARRAY"               count="1"  value="0x8079">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ARRAY_SIZE"             count="1"  value="0x807A">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ARRAY_TYPE"             count="1"  value="0x807B">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ARRAY_STRIDE"           count="1"  value="0x807C">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="NORMAL_ARRAY_TYPE"             count="1"  value="0x807E">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="NORMAL_ARRAY_STRIDE"           count="1"  value="0x807F">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_ARRAY_SIZE"              count="1"  value="0x8081">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_ARRAY_TYPE"              count="1"  value="0x8082">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_ARRAY_STRIDE"            count="1"  value="0x8083">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="INDEX_ARRAY_TYPE"              count="1"  value="0x8085">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="INDEX_ARRAY_STRIDE"            count="1"  value="0x8086">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COORD_ARRAY_SIZE"      count="1"  value="0x8088">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COORD_ARRAY_TYPE"      count="1"  value="0x8089">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COORD_ARRAY_STRIDE"    count="1"  value="0x808A">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="EDGE_FLAG_ARRAY_STRIDE"        count="1"  value="0x808C">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ARRAY_POINTER"                     value="0x808E"/>
-    <enum name="NORMAL_ARRAY_POINTER"                     value="0x808F"/>
-    <enum name="COLOR_ARRAY_POINTER"                      value="0x8090"/>
-    <enum name="INDEX_ARRAY_POINTER"                      value="0x8091"/>
-    <enum name="TEXTURE_COORD_ARRAY_POINTER"              value="0x8092"/>
-    <enum name="EDGE_FLAG_ARRAY_POINTER"                  value="0x8093"/>
-    <enum name="CLIENT_PIXEL_STORE_BIT"                   value="0x00000001"/>
-    <enum name="CLIENT_VERTEX_ARRAY_BIT"                  value="0x00000002"/>
-    <enum name="ALL_CLIENT_ATTRIB_BITS"                   value="0xFFFFFFFF"/>
-    <enum name="CLIENT_ALL_ATTRIB_BITS"                   value="0xFFFFFFFF"/>
-
-    <function name="ArrayElement" offset="306">
-        <param name="i" type="GLint"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="ColorPointer" offset="308">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="DisableClientState" offset="309">
-        <param name="array" type="GLenum"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="DrawArrays" offset="310">
-        <param name="mode" type="GLenum"/>
-        <param name="first" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <glx rop="193" handcode="true"/>
-    </function>
-
-    <function name="DrawElements" offset="311">
-        <param name="mode" type="GLenum"/>
-        <param name="count" type="GLsizei"/>
-        <param name="type" type="GLenum"/>
-        <param name="indices" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="EdgeFlagPointer" offset="312">
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="EnableClientState" offset="313">
-        <param name="array" type="GLenum"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="GetPointerv" offset="329">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLvoid **" output="true"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="IndexPointer" offset="314">
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="InterleavedArrays" offset="317">
-        <param name="format" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="NormalPointer" offset="318">
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="TexCoordPointer" offset="320">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="VertexPointer" offset="321">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="PolygonOffset" offset="319">
-        <param name="factor" type="GLfloat"/>
-        <param name="units" type="GLfloat"/>
-        <glx rop="192"/>
-    </function>
-
-    <function name="CopyTexImage1D" offset="323">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <glx rop="4119"/>
-    </function>
-
-    <function name="CopyTexImage2D" offset="324">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <glx rop="4120"/>
-    </function>
-
-    <function name="CopyTexSubImage1D" offset="325">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <glx rop="4121"/>
-    </function>
-
-    <function name="CopyTexSubImage2D" offset="326">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <glx rop="4122"/>
-    </function>
-
-    <function name="TexSubImage1D" offset="332">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="UNUSED" type="GLuint" padding="true"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_xoff="xoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
-        <glx rop="4099" large="true"/>
-    </function>
-
-    <function name="TexSubImage2D" offset="333">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="UNUSED" type="GLuint" padding="true"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_xoff="xoffset" img_yoff="yoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
-        <glx rop="4100" large="true"/>
-    </function>
-
-    <function name="AreTexturesResident" offset="322">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="textures" type="const GLuint *" count="n"/>
-        <param name="residences" type="GLboolean *" output="true" count="n"/>
-        <return type="GLboolean"/>
-        <glx sop="143" handcode="client" always_array="true"/>
-    </function>
-
-    <function name="BindTexture" offset="307">
-        <param name="target" type="GLenum"/>
-        <param name="texture" type="GLuint"/>
-        <glx rop="4117"/>
-    </function>
-
-    <function name="DeleteTextures" offset="327">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="textures" type="const GLuint *" count="n"/>
-        <glx sop="144"/>
-    </function>
-
-    <function name="GenTextures" offset="328">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="textures" type="GLuint *" output="true" count="n"/>
-        <glx sop="145" always_array="true"/>
-    </function>
-
-    <function name="IsTexture" offset="330">
-        <param name="texture" type="GLuint"/>
-        <return type="GLboolean"/>
-        <glx sop="146"/>
-    </function>
-
-    <function name="PrioritizeTextures" offset="331">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="textures" type="const GLuint *" count="n"/>
-        <param name="priorities" type="const GLclampf *" count="n"/>
-        <glx rop="4118"/>
-    </function>
-
-    <function name="Indexub" offset="315" vectorequiv="Indexubv">
-        <param name="c" type="GLubyte"/>
-    </function>
-
-    <function name="Indexubv" offset="316">
-        <param name="c" type="const GLubyte *" count="1"/>
-        <glx rop="194"/>
-    </function>
-
-    <function name="PopClientAttrib" offset="334">
-        <glx handcode="true"/>
-    </function>
-
-    <function name="PushClientAttrib" offset="335">
-        <param name="mask" type="GLbitfield"/>
-        <glx handcode="true"/>
-    </function>
-</category>
-
-<category name="1.2">
-    <enum name="UNSIGNED_BYTE_3_3_2"                      value="0x8032"/>
-    <enum name="UNSIGNED_SHORT_4_4_4_4"                   value="0x8033"/>
-    <enum name="UNSIGNED_SHORT_5_5_5_1"                   value="0x8034"/>
-    <enum name="UNSIGNED_INT_8_8_8_8"                     value="0x8035"/>
-    <enum name="UNSIGNED_INT_10_10_10_2"                  value="0x8036"/>
-    <enum name="RESCALE_NORMAL"                count="1"  value="0x803A">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_BINDING_3D"            count="1"  value="0x806A">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PACK_SKIP_IMAGES"              count="1"  value="0x806B">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PACK_IMAGE_HEIGHT"             count="1"  value="0x806C">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="UNPACK_SKIP_IMAGES"            count="1"  value="0x806D">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="UNPACK_IMAGE_HEIGHT"           count="1"  value="0x806E">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_3D"                    count="1"  value="0x806F">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PROXY_TEXTURE_3D"                         value="0x8070"/>
-    <enum name="TEXTURE_DEPTH"                 count="1"  value="0x8071">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_WRAP_R"                count="1"  value="0x8072">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="MAX_3D_TEXTURE_SIZE"           count="1"  value="0x8073">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="UNSIGNED_BYTE_2_3_3_REV"                  value="0x8362"/>
-    <enum name="UNSIGNED_SHORT_5_6_5"                     value="0x8363"/>
-    <enum name="UNSIGNED_SHORT_5_6_5_REV"                 value="0x8364"/>
-    <enum name="UNSIGNED_SHORT_4_4_4_4_REV"               value="0x8365"/>
-    <enum name="UNSIGNED_SHORT_1_5_5_5_REV"               value="0x8366"/>
-    <enum name="UNSIGNED_INT_8_8_8_8_REV"                 value="0x8367"/>
-    <enum name="UNSIGNED_INT_2_10_10_10_REV"              value="0x8368"/>
-    <enum name="BGR"                                      value="0x80E0"/>
-    <enum name="BGRA"                                     value="0x80E1"/>
-    <enum name="MAX_ELEMENTS_VERTICES"         count="1"  value="0x80E8">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_ELEMENTS_INDICES"          count="1"  value="0x80E9">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CLAMP_TO_EDGE"                            value="0x812F"/>
-    <enum name="TEXTURE_MIN_LOD"               count="1"  value="0x813A">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_MAX_LOD"               count="1"  value="0x813B">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_BASE_LEVEL"            count="1"  value="0x813C">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_MAX_LEVEL"             count="1"  value="0x813D">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="LIGHT_MODEL_COLOR_CONTROL"     count="1"  value="0x81F8">
-        <size name="LightModelfv"/>
-        <size name="LightModeliv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SINGLE_COLOR"                             value="0x81F9"/>
-    <enum name="SEPARATE_SPECULAR_COLOR"                  value="0x81FA"/>
-    <enum name="SMOOTH_POINT_SIZE_RANGE"       count="2"  value="0x0B12">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SMOOTH_POINT_SIZE_GRANULARITY" count="1"  value="0x0B13">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SMOOTH_LINE_WIDTH_RANGE"       count="2"  value="0x0B22">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SMOOTH_LINE_WIDTH_GRANULARITY" count="1"  value="0x0B23">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ALIASED_POINT_SIZE_RANGE"      count="2"  value="0x846D">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ALIASED_LINE_WIDTH_RANGE"      count="2"  value="0x846E">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <!-- These enums are actually part of the ARB_imaging subset. -->
-
-    <enum name="CONSTANT_COLOR"                           value="0x8001"/>
-    <enum name="ONE_MINUS_CONSTANT_COLOR"                 value="0x8002"/>
-    <enum name="CONSTANT_ALPHA"                           value="0x8003"/>
-    <enum name="ONE_MINUS_CONSTANT_ALPHA"                 value="0x8004"/>
-    <enum name="BLEND_COLOR"                   count="4"  value="0x8005">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FUNC_ADD"                                 value="0x8006"/>
-    <enum name="MIN"                                      value="0x8007"/>
-    <enum name="MAX"                                      value="0x8008"/>
-    <enum name="BLEND_EQUATION"                count="1"  value="0x8009">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FUNC_SUBTRACT"                            value="0x800A"/>
-    <enum name="FUNC_REVERSE_SUBTRACT"                    value="0x800B"/>
-    <enum name="CONVOLUTION_1D"                count="1"  value="0x8010">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CONVOLUTION_2D"                count="1"  value="0x8011">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SEPARABLE_2D"                  count="1"  value="0x8012">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <enum name="CONVOLUTION_BORDER_MODE"       count="1"  value="0x8013">
-        <size name="ConvolutionParameterfv"/>
-        <size name="ConvolutionParameteriv"/>
-        <size name="GetConvolutionParameterfv" mode="get"/>
-        <size name="GetConvolutionParameteriv" mode="get"/>
-    </enum>
-    <enum name="CONVOLUTION_BORDER_COLOR"      count="4"  value="0x8154">
-        <size name="ConvolutionParameterfv"/>
-        <size name="ConvolutionParameteriv"/>
-        <size name="GetConvolutionParameterfv" mode="get"/>
-        <size name="GetConvolutionParameteriv" mode="get"/>
-    </enum>
-    <enum name="CONVOLUTION_FILTER_SCALE"      count="4"  value="0x8014">
-        <size name="ConvolutionParameterfv"/>
-        <size name="ConvolutionParameteriv"/>
-        <size name="GetConvolutionParameterfv" mode="get"/>
-        <size name="GetConvolutionParameteriv" mode="get"/>
-    </enum>
-    <enum name="CONVOLUTION_FILTER_BIAS"       count="4"  value="0x8015">
-        <size name="ConvolutionParameterfv"/>
-        <size name="ConvolutionParameteriv"/>
-        <size name="GetConvolutionParameterfv" mode="get"/>
-        <size name="GetConvolutionParameteriv" mode="get"/>
-    </enum>
-    <enum name="REDUCE"                                   value="0x8016"/>
-    <enum name="CONVOLUTION_FORMAT"            count="1"  value="0x8017">
-        <size name="GetConvolutionParameterfv" mode="get"/>
-        <size name="GetConvolutionParameteriv" mode="get"/>
-    </enum>
-    <enum name="CONVOLUTION_WIDTH"             count="1"  value="0x8018">
-        <size name="GetConvolutionParameterfv" mode="get"/>
-        <size name="GetConvolutionParameteriv" mode="get"/>
-    </enum>
-    <enum name="CONVOLUTION_HEIGHT"            count="1"  value="0x8019">
-        <size name="GetConvolutionParameterfv" mode="get"/>
-        <size name="GetConvolutionParameteriv" mode="get"/>
-    </enum>
-    <enum name="MAX_CONVOLUTION_WIDTH"         count="1"  value="0x801A">
-        <size name="GetConvolutionParameterfv" mode="get"/>
-        <size name="GetConvolutionParameteriv" mode="get"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_CONVOLUTION_HEIGHT"        count="1"  value="0x801B">
-        <size name="GetConvolutionParameterfv" mode="get"/>
-        <size name="GetConvolutionParameteriv" mode="get"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_CONVOLUTION_RED_SCALE"    count="1"  value="0x801C">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_CONVOLUTION_GREEN_SCALE"  count="1"  value="0x801D">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_CONVOLUTION_BLUE_SCALE"   count="1"  value="0x801E">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_CONVOLUTION_ALPHA_SCALE"  count="1"  value="0x801F">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_CONVOLUTION_RED_BIAS"     count="1"  value="0x8020">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_CONVOLUTION_GREEN_BIAS"   count="1"  value="0x8021">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_CONVOLUTION_BLUE_BIAS"    count="1"  value="0x8022">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_CONVOLUTION_ALPHA_BIAS"   count="1"  value="0x8023">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <enum name="HISTOGRAM"                     count="1"  value="0x8024">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PROXY_HISTOGRAM"                          value="0x8025"/>
-    <enum name="HISTOGRAM_WIDTH"               count="1"  value="0x8026">
-        <size name="GetHistogramParameterfv" mode="get"/>
-        <size name="GetHistogramParameteriv" mode="get"/>
-    </enum>
-    <enum name="HISTOGRAM_FORMAT"              count="1"  value="0x8027">
-        <size name="GetHistogramParameterfv" mode="get"/>
-        <size name="GetHistogramParameteriv" mode="get"/>
-    </enum>
-    <enum name="HISTOGRAM_RED_SIZE"            count="1"  value="0x8028">
-        <size name="GetHistogramParameterfv" mode="get"/>
-        <size name="GetHistogramParameteriv" mode="get"/>
-    </enum>
-    <enum name="HISTOGRAM_GREEN_SIZE"          count="1"  value="0x8029">
-        <size name="GetHistogramParameterfv" mode="get"/>
-        <size name="GetHistogramParameteriv" mode="get"/>
-    </enum>
-    <enum name="HISTOGRAM_BLUE_SIZE"           count="1"  value="0x802A">
-        <size name="GetHistogramParameterfv" mode="get"/>
-        <size name="GetHistogramParameteriv" mode="get"/>
-    </enum>
-    <enum name="HISTOGRAM_ALPHA_SIZE"          count="1"  value="0x802B">
-        <size name="GetHistogramParameterfv" mode="get"/>
-        <size name="GetHistogramParameteriv" mode="get"/>
-    </enum>
-    <enum name="HISTOGRAM_LUMINANCE_SIZE"      count="1"  value="0x802C">
-        <size name="GetHistogramParameterfv" mode="get"/>
-        <size name="GetHistogramParameteriv" mode="get"/>
-    </enum>
-    <enum name="HISTOGRAM_SINK"                count="1"  value="0x802D">
-        <size name="GetHistogramParameterfv" mode="get"/>
-        <size name="GetHistogramParameteriv" mode="get"/>
-    </enum>
-    <enum name="MINMAX"                        count="1"  value="0x802E">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MINMAX_FORMAT"                 count="1"  value="0x802F">
-        <size name="GetMinmaxParameterfv" mode="get"/>
-        <size name="GetMinmaxParameteriv" mode="get"/>
-    </enum>
-    <enum name="MINMAX_SINK"                   count="1"  value="0x8030">
-        <size name="GetMinmaxParameterfv" mode="get"/>
-        <size name="GetMinmaxParameteriv" mode="get"/>
-    </enum>
-
-    <enum name="COLOR_MATRIX"                  count="16" value="0x80B1">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_MATRIX_STACK_DEPTH"      count="1"  value="0x80B2">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_COLOR_MATRIX_STACK_DEPTH"  count="1"  value="0x80B3">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_COLOR_MATRIX_RED_SCALE"   count="1"  value="0x80B4">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_COLOR_MATRIX_GREEN_SCALE" count="1"  value="0x80B5">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_COLOR_MATRIX_BLUE_SCALE"  count="1"  value="0x80B6">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_COLOR_MATRIX_ALPHA_SCALE" count="1"  value="0x80B7">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_COLOR_MATRIX_RED_BIAS"    count="1"  value="0x80B8">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_COLOR_MATRIX_GREEN_BIAS"  count="1"  value="0x80B9">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_COLOR_MATRIX_BLUE_BIAS"   count="1"  value="0x80BA">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_COLOR_MATRIX_ALPHA_BIAS"  count="1"  value="0x80BB">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <enum name="COLOR_TABLE"                   count="1"  value="0x80D0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_CONVOLUTION_COLOR_TABLE"  count="1"  value="0x80D1">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_COLOR_MATRIX_COLOR_TABLE" count="1"  value="0x80D2">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PROXY_COLOR_TABLE"                              value="0x80D3"/>
-    <enum name="PROXY_POST_CONVOLUTION_COLOR_TABLE"             value="0x80D4"/>
-    <enum name="PROXY_POST_COLOR_MATRIX_COLOR_TABLE"            value="0x80D5"/>
-
-    <enum name="COLOR_TABLE_SCALE"             count="4"  value="0x80D6">
-        <size name="ColorTableParameterfv"/>
-        <size name="ColorTableParameteriv"/>
-        <size name="GetColorTableParameterfv" mode="get"/>
-        <size name="GetColorTableParameteriv" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_BIAS"              count="4"  value="0x80D7">
-        <size name="ColorTableParameterfv"/>
-        <size name="ColorTableParameteriv"/>
-        <size name="GetColorTableParameterfv" mode="get"/>
-        <size name="GetColorTableParameteriv" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_FORMAT"            count="1"  value="0x80D8">
-        <size name="GetColorTableParameterfv" mode="get"/>
-        <size name="GetColorTableParameteriv" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_WIDTH"             count="1"  value="0x80D9">
-        <size name="GetColorTableParameterfv" mode="get"/>
-        <size name="GetColorTableParameteriv" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_RED_SIZE"          count="1"  value="0x80DA">
-        <size name="GetColorTableParameterfv" mode="get"/>
-        <size name="GetColorTableParameteriv" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_GREEN_SIZE"        count="1"  value="0x80DB">
-        <size name="GetColorTableParameterfv" mode="get"/>
-        <size name="GetColorTableParameteriv" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_BLUE_SIZE"         count="1"  value="0x80DC">
-        <size name="GetColorTableParameterfv" mode="get"/>
-        <size name="GetColorTableParameteriv" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_ALPHA_SIZE"        count="1"  value="0x80DD">
-        <size name="GetColorTableParameterfv" mode="get"/>
-        <size name="GetColorTableParameteriv" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_LUMINANCE_SIZE"    count="1"  value="0x80DE">
-        <size name="GetColorTableParameterfv" mode="get"/>
-        <size name="GetColorTableParameteriv" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_INTENSITY_SIZE"    count="1"  value="0x80DF">
-        <size name="GetColorTableParameterfv" mode="get"/>
-        <size name="GetColorTableParameteriv" mode="get"/>
-    </enum>
-
-
-    <function name="BlendColor" offset="336">
-        <param name="red" type="GLclampf"/>
-        <param name="green" type="GLclampf"/>
-        <param name="blue" type="GLclampf"/>
-        <param name="alpha" type="GLclampf"/>
-        <glx rop="4096"/>
-    </function>
-
-    <function name="BlendEquation" offset="337">
-        <param name="mode" type="GLenum"/>
-        <glx rop="4097"/>
-    </function>
-
-    <function name="DrawRangeElements" offset="338">
-        <param name="mode" type="GLenum"/>
-        <param name="start" type="GLuint"/>
-        <param name="end" type="GLuint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="type" type="GLenum"/>
-        <param name="indices" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="ColorTable" offset="339">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="table" type="const GLvoid *" img_width="width" img_pad_dimensions="false" img_format="format" img_type="type" img_target="target"/>
-        <glx rop="2053" large="true"/>
-    </function>
-
-    <function name="ColorTableParameterfv" offset="340">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="2054"/>
-    </function>
-
-    <function name="ColorTableParameteriv" offset="341">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="2055"/>
-    </function>
-
-    <function name="CopyColorTable" offset="342">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <glx rop="2056"/>
-    </function>
-
-    <function name="GetColorTable" offset="343">
-        <param name="target" type="GLenum"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="table" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
-        <glx sop="147" dimensions_in_reply="true"/>
-    </function>
-
-    <function name="GetColorTableParameterfv" offset="344">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="148"/>
-    </function>
-
-    <function name="GetColorTableParameteriv" offset="345">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="149"/>
-    </function>
-
-    <function name="ColorSubTable" offset="346">
-        <param name="target" type="GLenum"/>
-        <param name="start" type="GLsizei"/>
-        <param name="count" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="data" type="const GLvoid *" img_width="count" img_pad_dimensions="false" img_format="format" img_type="type" img_target="target"/>
-        <glx rop="195" large="true"/>
-    </function>
-
-    <function name="CopyColorSubTable" offset="347">
-        <param name="target" type="GLenum"/>
-        <param name="start" type="GLsizei"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <glx rop="196"/>
-    </function>
-
-    <function name="ConvolutionFilter1D" offset="348">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="image" type="const GLvoid *" img_width="width" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
-        <glx rop="4101" large="true"/>
-    </function>
-
-    <function name="ConvolutionFilter2D" offset="349">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="image" type="const GLvoid *" img_width="width" img_height="height" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
-        <glx rop="4102" large="true"/>
-    </function>
-
-    <function name="ConvolutionParameterf" offset="350">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat"/>
-        <glx rop="4103"/>
-    </function>
-
-    <function name="ConvolutionParameterfv" offset="351">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="4104"/>
-    </function>
-
-    <function name="ConvolutionParameteri" offset="352">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint"/>
-        <glx rop="4105"/>
-    </function>
-
-    <function name="ConvolutionParameteriv" offset="353">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="4106"/>
-    </function>
-
-    <function name="CopyConvolutionFilter1D" offset="354">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <glx rop="4107"/>
-    </function>
-
-    <function name="CopyConvolutionFilter2D" offset="355">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <glx rop="4108"/>
-    </function>
-
-    <function name="GetConvolutionFilter" offset="356">
-        <param name="target" type="GLenum"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="image" type="GLvoid *" output="true" img_width="width" img_height="height" img_format="format" img_type="type"/>
-        <glx sop="150" dimensions_in_reply="true"/>
-    </function>
-
-    <function name="GetConvolutionParameterfv" offset="357">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="151"/>
-    </function>
-
-    <function name="GetConvolutionParameteriv" offset="358">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="152"/>
-    </function>
-
-    <function name="GetSeparableFilter" offset="359">
-        <param name="target" type="GLenum"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="row" type="GLvoid *" output="true"/>
-        <param name="column" type="GLvoid *" output="true"/>
-        <param name="span" type="GLvoid *" output="true"/>
-        <glx sop="153" handcode="true"/>
-    </function>
-
-    <function name="SeparableFilter2D" offset="360">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="row" type="const GLvoid *"/>
-        <param name="column" type="const GLvoid *"/>
-        <glx rop="4109" handcode="true"/>
-    </function>
-
-    <function name="GetHistogram" offset="361">
-        <param name="target" type="GLenum"/>
-        <param name="reset" type="GLboolean"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="values" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
-        <glx sop="154" dimensions_in_reply="true" img_reset="reset"/>
-    </function>
-
-    <function name="GetHistogramParameterfv" offset="362">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="155"/>
-    </function>
-
-    <function name="GetHistogramParameteriv" offset="363">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="156"/>
-    </function>
-
-    <function name="GetMinmax" offset="364">
-        <param name="target" type="GLenum"/>
-        <param name="reset" type="GLboolean"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="values" type="GLvoid *" output="true" img_width="2" img_format="format" img_type="type"/>
-        <glx sop="157" img_reset="reset"/>
-    </function>
-
-    <function name="GetMinmaxParameterfv" offset="365">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx sop="158"/>
-    </function>
-
-    <function name="GetMinmaxParameteriv" offset="366">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="159"/>
-    </function>
-
-    <function name="Histogram" offset="367">
-        <param name="target" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="sink" type="GLboolean"/>
-        <glx rop="4110"/>
-    </function>
-
-    <function name="Minmax" offset="368">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="sink" type="GLboolean"/>
-        <glx rop="4111"/>
-    </function>
-
-    <function name="ResetHistogram" offset="369">
-        <param name="target" type="GLenum"/>
-        <glx rop="4112"/>
-    </function>
-
-    <function name="ResetMinmax" offset="370">
-        <param name="target" type="GLenum"/>
-        <glx rop="4113"/>
-    </function>
-
-    <function name="TexImage3D" offset="371">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_format="format" img_type="type" img_target="target" img_null_flag="true" img_pad_dimensions="true"/>
-        <glx rop="4114" large="true"/>
-    </function>
-
-    <function name="TexSubImage3D" offset="372">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="UNUSED" type="GLuint" padding="true"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_xoff="xoffset" img_yoff="yoffset" img_zoff="zoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
-        <glx rop="4115" large="true"/>
-    </function>
-
-    <function name="CopyTexSubImage3D" offset="373">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <glx rop="4123"/>
-    </function>
-</category>
-
-<category name="1.3">
-    <enum name="TEXTURE0"                                 value="0x84C0"/>
-    <enum name="TEXTURE1"                                 value="0x84C1"/>
-    <enum name="TEXTURE2"                                 value="0x84C2"/>
-    <enum name="TEXTURE3"                                 value="0x84C3"/>
-    <enum name="TEXTURE4"                                 value="0x84C4"/>
-    <enum name="TEXTURE5"                                 value="0x84C5"/>
-    <enum name="TEXTURE6"                                 value="0x84C6"/>
-    <enum name="TEXTURE7"                                 value="0x84C7"/>
-    <enum name="TEXTURE8"                                 value="0x84C8"/>
-    <enum name="TEXTURE9"                                 value="0x84C9"/>
-    <enum name="TEXTURE10"                                value="0x84CA"/>
-    <enum name="TEXTURE11"                                value="0x84CB"/>
-    <enum name="TEXTURE12"                                value="0x84CC"/>
-    <enum name="TEXTURE13"                                value="0x84CD"/>
-    <enum name="TEXTURE14"                                value="0x84CE"/>
-    <enum name="TEXTURE15"                                value="0x84CF"/>
-    <enum name="TEXTURE16"                                value="0x84D0"/>
-    <enum name="TEXTURE17"                                value="0x84D1"/>
-    <enum name="TEXTURE18"                                value="0x84D2"/>
-    <enum name="TEXTURE19"                                value="0x84D3"/>
-    <enum name="TEXTURE20"                                value="0x84D4"/>
-    <enum name="TEXTURE21"                                value="0x84D5"/>
-    <enum name="TEXTURE22"                                value="0x84D6"/>
-    <enum name="TEXTURE23"                                value="0x84D7"/>
-    <enum name="TEXTURE24"                                value="0x84D8"/>
-    <enum name="TEXTURE25"                                value="0x84D9"/>
-    <enum name="TEXTURE26"                                value="0x84DA"/>
-    <enum name="TEXTURE27"                                value="0x84DB"/>
-    <enum name="TEXTURE28"                                value="0x84DC"/>
-    <enum name="TEXTURE29"                                value="0x84DD"/>
-    <enum name="TEXTURE30"                                value="0x84DE"/>
-    <enum name="TEXTURE31"                                value="0x84DF"/>
-    <enum name="ACTIVE_TEXTURE"                count="1"  value="0x84E0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CLIENT_ACTIVE_TEXTURE"         count="1"  value="0x84E1">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_TEXTURE_UNITS"             count="1"  value="0x84E2">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TRANSPOSE_MODELVIEW_MATRIX"               value="0x84E3"/>
-    <enum name="TRANSPOSE_PROJECTION_MATRIX"              value="0x84E4"/>
-    <enum name="TRANSPOSE_TEXTURE_MATRIX"                 value="0x84E5"/>
-    <enum name="TRANSPOSE_COLOR_MATRIX"                   value="0x84E6"/>
-    <enum name="MULTISAMPLE"                   count="1"  value="0x809D">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLE_ALPHA_TO_COVERAGE"      count="1"  value="0x809E">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLE_ALPHA_TO_ONE"           count="1"  value="0x809F">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLE_COVERAGE"               count="1"  value="0x80A0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLE_BUFFERS"                count="1"  value="0x80A8">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLES"                       count="1"  value="0x80A9">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLE_COVERAGE_VALUE"         count="1"  value="0x80AA">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLE_COVERAGE_INVERT"        count="1"  value="0x80AB">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MULTISAMPLE_BIT"                          value="0x20000000"/>
-    <enum name="NORMAL_MAP"                               value="0x8511"/>
-    <enum name="REFLECTION_MAP"                           value="0x8512"/>
-    <enum name="TEXTURE_CUBE_MAP"              count="1"  value="0x8513">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_BINDING_CUBE_MAP"      count="1"  value="0x8514">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_CUBE_MAP_POSITIVE_X"              value="0x8515"/>
-    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_X"              value="0x8516"/>
-    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Y"              value="0x8517"/>
-    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Y"              value="0x8518"/>
-    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Z"              value="0x8519"/>
-    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Z"              value="0x851A"/>
-    <enum name="PROXY_TEXTURE_CUBE_MAP"                   value="0x851B"/>
-    <enum name="MAX_CUBE_MAP_TEXTURE_SIZE"     count="1"  value="0x851C">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COMPRESSED_ALPHA"                         value="0x84E9"/>
-    <enum name="COMPRESSED_LUMINANCE"                     value="0x84EA"/>
-    <enum name="COMPRESSED_LUMINANCE_ALPHA"               value="0x84EB"/>
-    <enum name="COMPRESSED_INTENSITY"                     value="0x84EC"/>
-    <enum name="COMPRESSED_RGB"                           value="0x84ED"/>
-    <enum name="COMPRESSED_RGBA"                          value="0x84EE"/>
-    <enum name="TEXTURE_COMPRESSION_HINT"      count="1"  value="0x84EF">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COMPRESSED_IMAGE_SIZE" count="1"  value="0x86A0">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COMPRESSED"            count="1"  value="0x86A1">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="NUM_COMPRESSED_TEXTURE_FORMATS" count="1" value="0x86A2">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COMPRESSED_TEXTURE_FORMATS"    count="-1"  value="0x86A3">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CLAMP_TO_BORDER"                          value="0x812D"/>
-    <enum name="COMBINE"                                  value="0x8570"/>
-    <enum name="COMBINE_RGB"                   count="1"  value="0x8571">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="COMBINE_ALPHA"                 count="1"  value="0x8572">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="SOURCE0_RGB"                   count="1"  value="0x8580">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="SOURCE1_RGB"                   count="1"  value="0x8581">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="SOURCE2_RGB"                   count="1"  value="0x8582">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="SOURCE0_ALPHA"                 count="1"  value="0x8588">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="SOURCE1_ALPHA"                 count="1"  value="0x8589">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="SOURCE2_ALPHA"                 count="1"  value="0x858A">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="OPERAND0_RGB"                  count="1"  value="0x8590">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="OPERAND1_RGB"                  count="1"  value="0x8591">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="OPERAND2_RGB"                  count="1"  value="0x8592">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="OPERAND0_ALPHA"                count="1"  value="0x8598">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="OPERAND1_ALPHA"                count="1"  value="0x8599">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="OPERAND2_ALPHA"                count="1"  value="0x859A">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="RGB_SCALE"                     count="1"  value="0x8573">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="ADD_SIGNED"                               value="0x8574"/>
-    <enum name="INTERPOLATE"                              value="0x8575"/>
-    <enum name="SUBTRACT"                                 value="0x84E7"/>
-    <enum name="CONSTANT"                                 value="0x8576"/>
-    <enum name="PRIMARY_COLOR"                            value="0x8577"/>
-    <enum name="PREVIOUS"                                 value="0x8578"/>
-    <enum name="DOT3_RGB"                                 value="0x86AE"/>
-    <enum name="DOT3_RGBA"                                value="0x86AF"/>
-
-    <function name="ActiveTexture" alias="ActiveTextureARB">
-        <param name="texture" type="GLenum"/>
-    </function>
-
-    <function name="ClientActiveTexture" alias="ClientActiveTextureARB">
-        <param name="texture" type="GLenum"/>
-    </function>
-
-    <function name="MultiTexCoord1d" alias="MultiTexCoord1dARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLdouble"/>
-    </function>
-
-    <function name="MultiTexCoord1dv" alias="MultiTexCoord1dvARB">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLdouble *"/>
-    </function>
-
-    <function name="MultiTexCoord1f" alias="MultiTexCoord1fARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLfloat"/>
-    </function>
-
-    <function name="MultiTexCoord1fv" alias="MultiTexCoord1fvARB">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="MultiTexCoord1i" alias="MultiTexCoord1iARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLint"/>
-    </function>
-
-    <function name="MultiTexCoord1iv" alias="MultiTexCoord1ivARB">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLint *"/>
-    </function>
-
-    <function name="MultiTexCoord1s" alias="MultiTexCoord1sARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLshort"/>
-    </function>
-
-    <function name="MultiTexCoord1sv" alias="MultiTexCoord1svARB">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLshort *"/>
-    </function>
-
-    <function name="MultiTexCoord2d" alias="MultiTexCoord2dARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLdouble"/>
-        <param name="t" type="GLdouble"/>
-    </function>
-
-    <function name="MultiTexCoord2dv" alias="MultiTexCoord2dvARB">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLdouble *"/>
-    </function>
-
-    <function name="MultiTexCoord2f" alias="MultiTexCoord2fARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-    </function>
-
-    <function name="MultiTexCoord2fv" alias="MultiTexCoord2fvARB">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="MultiTexCoord2i" alias="MultiTexCoord2iARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLint"/>
-        <param name="t" type="GLint"/>
-    </function>
-
-    <function name="MultiTexCoord2iv" alias="MultiTexCoord2ivARB">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLint *"/>
-    </function>
-
-    <function name="MultiTexCoord2s" alias="MultiTexCoord2sARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLshort"/>
-        <param name="t" type="GLshort"/>
-    </function>
-
-    <function name="MultiTexCoord2sv" alias="MultiTexCoord2svARB">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLshort *"/>
-    </function>
-
-    <function name="MultiTexCoord3d" alias="MultiTexCoord3dARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLdouble"/>
-        <param name="t" type="GLdouble"/>
-        <param name="r" type="GLdouble"/>
-    </function>
-
-    <function name="MultiTexCoord3dv" alias="MultiTexCoord3dvARB">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLdouble *"/>
-    </function>
-
-    <function name="MultiTexCoord3f" alias="MultiTexCoord3fARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="r" type="GLfloat"/>
-    </function>
-
-    <function name="MultiTexCoord3fv" alias="MultiTexCoord3fvARB">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="MultiTexCoord3i" alias="MultiTexCoord3iARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLint"/>
-        <param name="t" type="GLint"/>
-        <param name="r" type="GLint"/>
-    </function>
-
-    <function name="MultiTexCoord3iv" alias="MultiTexCoord3ivARB">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLint *"/>
-    </function>
-
-    <function name="MultiTexCoord3s" alias="MultiTexCoord3sARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLshort"/>
-        <param name="t" type="GLshort"/>
-        <param name="r" type="GLshort"/>
-    </function>
-
-    <function name="MultiTexCoord3sv" alias="MultiTexCoord3svARB">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLshort *"/>
-    </function>
-
-    <function name="MultiTexCoord4d" alias="MultiTexCoord4dARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLdouble"/>
-        <param name="t" type="GLdouble"/>
-        <param name="r" type="GLdouble"/>
-        <param name="q" type="GLdouble"/>
-    </function>
-
-    <function name="MultiTexCoord4dv" alias="MultiTexCoord4dvARB">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLdouble *"/>
-    </function>
-
-    <function name="MultiTexCoord4f" alias="MultiTexCoord4fARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="r" type="GLfloat"/>
-        <param name="q" type="GLfloat"/>
-    </function>
-
-    <function name="MultiTexCoord4fv" alias="MultiTexCoord4fvARB">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="MultiTexCoord4i" alias="MultiTexCoord4iARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLint"/>
-        <param name="t" type="GLint"/>
-        <param name="r" type="GLint"/>
-        <param name="q" type="GLint"/>
-    </function>
-
-    <function name="MultiTexCoord4iv" alias="MultiTexCoord4ivARB">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLint *"/>
-    </function>
-
-    <function name="MultiTexCoord4s" alias="MultiTexCoord4sARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLshort"/>
-        <param name="t" type="GLshort"/>
-        <param name="r" type="GLshort"/>
-        <param name="q" type="GLshort"/>
-    </function>
-
-    <function name="MultiTexCoord4sv" alias="MultiTexCoord4svARB">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLshort *"/>
-    </function>
-
-    <function name="LoadTransposeMatrixf" alias="LoadTransposeMatrixfARB">
-        <param name="m" type="const GLfloat *"/>
-    </function>
-
-    <function name="LoadTransposeMatrixd" alias="LoadTransposeMatrixdARB">
-        <param name="m" type="const GLdouble *"/>
-    </function>
-
-    <function name="MultTransposeMatrixf" alias="MultTransposeMatrixfARB">
-        <param name="m" type="const GLfloat *"/>
-    </function>
-
-    <function name="MultTransposeMatrixd" alias="MultTransposeMatrixdARB">
-        <param name="m" type="const GLdouble *"/>
-    </function>
-
-    <function name="SampleCoverage" alias="SampleCoverageARB">
-        <param name="value" type="GLclampf"/>
-        <param name="invert" type="GLboolean"/>
-    </function>
-
-    <function name="CompressedTexImage3D" alias="CompressedTexImage3DARB">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="imageSize" type="GLsizei"/>
-        <param name="data" type="const GLvoid *"/>
-    </function>
-
-    <function name="CompressedTexImage2D" alias="CompressedTexImage2DARB">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="imageSize" type="GLsizei"/>
-        <param name="data" type="const GLvoid *"/>
-    </function>
-
-    <function name="CompressedTexImage1D" alias="CompressedTexImage1DARB">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="imageSize" type="GLsizei"/>
-        <param name="data" type="const GLvoid *"/>
-    </function>
-
-    <function name="CompressedTexSubImage3D" alias="CompressedTexSubImage3DARB">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="imageSize" type="GLsizei"/>
-        <param name="data" type="const GLvoid *"/>
-    </function>
-
-    <function name="CompressedTexSubImage2D" alias="CompressedTexSubImage2DARB">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="imageSize" type="GLsizei"/>
-        <param name="data" type="const GLvoid *"/>
-    </function>
-
-    <function name="CompressedTexSubImage1D" alias="CompressedTexSubImage1DARB">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="imageSize" type="GLsizei"/>
-        <param name="data" type="const GLvoid *"/>
-    </function>
-
-    <function name="GetCompressedTexImage" alias="GetCompressedTexImageARB">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="img" type="GLvoid *" output="true"/>
-    </function>
-</category>
-
-<category name="1.4">
-    <enum name="BLEND_DST_RGB"                 count="1"  value="0x80C8">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLEND_SRC_RGB"                 count="1"  value="0x80C9">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLEND_DST_ALPHA"               count="1"  value="0x80CA">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLEND_SRC_ALPHA"               count="1"  value="0x80CB">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POINT_SIZE_MIN"                count="1"  value="0x8126">
-        <size name="PointParameterfvEXT"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POINT_SIZE_MAX"                count="1"  value="0x8127">
-        <size name="PointParameterfvEXT"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POINT_FADE_THRESHOLD_SIZE"     count="1"  value="0x8128">
-        <size name="PointParameterfvEXT"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POINT_DISTANCE_ATTENUATION"    count="3"  value="0x8129">
-        <size name="PointParameterfvEXT"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="GENERATE_MIPMAP"               count="1"  value="0x8191">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="GENERATE_MIPMAP_HINT"                     value="0x8192"/>
-    <enum name="DEPTH_COMPONENT16"                        value="0x81A5"/>
-    <enum name="DEPTH_COMPONENT24"                        value="0x81A6"/>
-    <enum name="DEPTH_COMPONENT32"                        value="0x81A7"/>
-    <enum name="MIRRORED_REPEAT"                          value="0x8370"/>
-    <enum name="FOG_COORDINATE_SOURCE"         count="1"  value="0x8450">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_COORDINATE"                           value="0x8451"/>
-    <enum name="FRAGMENT_DEPTH"                           value="0x8452"/>
-    <enum name="CURRENT_FOG_COORDINATE"        count="1"  value="0x8453">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_COORDINATE_ARRAY_TYPE"     count="1"  value="0x8454">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_COORDINATE_ARRAY_STRIDE"   count="1"  value="0x8455">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_COORDINATE_ARRAY_POINTER"             value="0x8456"/>
-    <enum name="FOG_COORDINATE_ARRAY"          count="1"  value="0x8457">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_SUM"                                value="0x8458"/>
-    <enum name="CURRENT_SECONDARY_COLOR"       count="4"  value="0x8459">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SECONDARY_COLOR_ARRAY_SIZE"    count="1"  value="0x845A">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SECONDARY_COLOR_ARRAY_TYPE"    count="1"  value="0x845B">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SECONDARY_COLOR_ARRAY_STRIDE"  count="1"  value="0x845C">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SECONDARY_COLOR_ARRAY_POINTER"            value="0x845D"/>
-    <enum name="SECONDARY_COLOR_ARRAY"         count="1"  value="0x845E">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_TEXTURE_LOD_BIAS"          count="1"  value="0x84FD">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_FILTER_CONTROL"                   value="0x8500"/>
-    <enum name="TEXTURE_LOD_BIAS"              count="1"  value="0x8501">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="INCR_WRAP"                                value="0x8507"/>
-    <enum name="DECR_WRAP"                                value="0x8508"/>
-    <enum name="TEXTURE_DEPTH_SIZE"            count="1"  value="0x884A">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="DEPTH_TEXTURE_MODE"            count="1"  value="0x884B">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COMPARE_MODE"          count="1"  value="0x884C">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COMPARE_FUNC"          count="1"  value="0x884D">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="COMPARE_R_TO_TEXTURE"                     value="0x884E"/>
-
-    <function name="BlendFuncSeparate" alias="BlendFuncSeparateEXT">
-        <param name="sfactorRGB" type="GLenum"/>
-        <param name="dfactorRGB" type="GLenum"/>
-        <param name="sfactorAlpha" type="GLenum"/>
-        <param name="dfactorAlpha" type="GLenum"/>
-    </function>
-
-    <function name="FogCoordf" alias="FogCoordfEXT">
-        <param name="coord" type="GLfloat"/>
-    </function>
-
-    <function name="FogCoordfv" alias="FogCoordfvEXT">
-        <param name="coord" type="const GLfloat *"/>
-    </function>
-
-    <function name="FogCoordd" alias="FogCoorddEXT">
-        <param name="coord" type="GLdouble"/>
-    </function>
-
-    <function name="FogCoorddv" alias="FogCoorddvEXT">
-        <param name="coord" type="const GLdouble *"/>
-    </function>
-
-    <function name="FogCoordPointer" alias="FogCoordPointerEXT">
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-    </function>
-
-    <function name="MultiDrawArrays" alias="MultiDrawArraysEXT">
-        <param name="mode" type="GLenum"/>
-        <param name="first" type="GLint *"/> <!-- Spec bug. Should be const. -->
-        <param name="count" type="GLsizei *"/> <!-- Spec bug. Should be const. -->
-        <param name="primcount" type="GLsizei"/>
-    </function>
-
-    <function name="MultiDrawElements" alias="MultiDrawElementsEXT">
-        <param name="mode" type="GLenum"/>
-        <param name="count" type="const GLsizei *"/>
-        <param name="type" type="GLenum"/>
-        <param name="indices" type="const GLvoid **"/>
-        <param name="primcount" type="GLsizei"/>
-    </function>
-
-    <function name="PointParameterf" alias="PointParameterfEXT">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-    </function>
-
-    <function name="PointParameterfv" alias="PointParameterfvEXT">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *"/>
-    </function>
-
-    <function name="PointParameteri" alias="PointParameteriNV">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-    </function>
-
-    <function name="PointParameteriv" alias="PointParameterivNV">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *"/>
-    </function>
-
-    <function name="SecondaryColor3b" alias="SecondaryColor3bEXT">
-        <param name="red" type="GLbyte"/>
-        <param name="green" type="GLbyte"/>
-        <param name="blue" type="GLbyte"/>
-    </function>
-
-    <function name="SecondaryColor3bv" alias="SecondaryColor3bvEXT">
-        <param name="v" type="const GLbyte *"/>
-    </function>
-
-    <function name="SecondaryColor3d" alias="SecondaryColor3dEXT">
-        <param name="red" type="GLdouble"/>
-        <param name="green" type="GLdouble"/>
-        <param name="blue" type="GLdouble"/>
-    </function>
-
-    <function name="SecondaryColor3dv" alias="SecondaryColor3dvEXT">
-        <param name="v" type="const GLdouble *"/>
-    </function>
-
-    <function name="SecondaryColor3f" alias="SecondaryColor3fEXT">
-        <param name="red" type="GLfloat"/>
-        <param name="green" type="GLfloat"/>
-        <param name="blue" type="GLfloat"/>
-    </function>
-
-    <function name="SecondaryColor3fv" alias="SecondaryColor3fvEXT">
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="SecondaryColor3i" alias="SecondaryColor3iEXT">
-        <param name="red" type="GLint"/>
-        <param name="green" type="GLint"/>
-        <param name="blue" type="GLint"/>
-    </function>
-
-    <function name="SecondaryColor3iv" alias="SecondaryColor3ivEXT">
-        <param name="v" type="const GLint *"/>
-    </function>
-
-    <function name="SecondaryColor3s" alias="SecondaryColor3sEXT">
-        <param name="red" type="GLshort"/>
-        <param name="green" type="GLshort"/>
-        <param name="blue" type="GLshort"/>
-    </function>
-
-    <function name="SecondaryColor3sv" alias="SecondaryColor3svEXT">
-        <param name="v" type="const GLshort *"/>
-    </function>
-
-    <function name="SecondaryColor3ub" alias="SecondaryColor3ubEXT">
-        <param name="red" type="GLubyte"/>
-        <param name="green" type="GLubyte"/>
-        <param name="blue" type="GLubyte"/>
-    </function>
-
-    <function name="SecondaryColor3ubv" alias="SecondaryColor3ubvEXT">
-        <param name="v" type="const GLubyte *"/>
-    </function>
-
-    <function name="SecondaryColor3ui" alias="SecondaryColor3uiEXT">
-        <param name="red" type="GLuint"/>
-        <param name="green" type="GLuint"/>
-        <param name="blue" type="GLuint"/>
-    </function>
-
-    <function name="SecondaryColor3uiv" alias="SecondaryColor3uivEXT">
-        <param name="v" type="const GLuint *"/>
-    </function>
-
-    <function name="SecondaryColor3us" alias="SecondaryColor3usEXT">
-        <param name="red" type="GLushort"/>
-        <param name="green" type="GLushort"/>
-        <param name="blue" type="GLushort"/>
-    </function>
-
-    <function name="SecondaryColor3usv" alias="SecondaryColor3usvEXT">
-        <param name="v" type="const GLushort *"/>
-    </function>
-
-    <function name="SecondaryColorPointer" alias="SecondaryColorPointerEXT">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-    </function>
-
-    <function name="WindowPos2d" alias="WindowPos2dMESA">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-    </function>
-
-    <function name="WindowPos2dv" alias="WindowPos2dvMESA">
-        <param name="v" type="const GLdouble *"/>
-    </function>
-
-    <function name="WindowPos2f" alias="WindowPos2fMESA">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-    </function>
-
-    <function name="WindowPos2fv" alias="WindowPos2fvMESA">
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="WindowPos2i" alias="WindowPos2iMESA">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-    </function>
-
-    <function name="WindowPos2iv" alias="WindowPos2ivMESA">
-        <param name="v" type="const GLint *"/>
-    </function>
-
-    <function name="WindowPos2s" alias="WindowPos2sMESA">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-    </function>
-
-    <function name="WindowPos2sv" alias="WindowPos2svMESA">
-        <param name="v" type="const GLshort *"/>
-    </function>
-
-    <function name="WindowPos3d" alias="WindowPos3dMESA">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-    </function>
-
-    <function name="WindowPos3dv" alias="WindowPos3dvMESA">
-        <param name="v" type="const GLdouble *"/>
-    </function>
-
-    <function name="WindowPos3f" alias="WindowPos3fMESA">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="WindowPos3fv" alias="WindowPos3fvMESA">
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="WindowPos3i" alias="WindowPos3iMESA">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="z" type="GLint"/>
-    </function>
-
-    <function name="WindowPos3iv" alias="WindowPos3ivMESA">
-        <param name="v" type="const GLint *"/>
-    </function>
-
-    <function name="WindowPos3s" alias="WindowPos3sMESA">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-    </function>
-
-    <function name="WindowPos3sv" alias="WindowPos3svMESA">
-        <param name="v" type="const GLshort *"/>
-    </function>
-</category>
-
-<category name="1.5">
-    <enum name="BUFFER_SIZE"                              value="0x8764"/>
-    <enum name="BUFFER_USAGE"                             value="0x8765"/>
-    <enum name="QUERY_COUNTER_BITS"                       value="0x8864"/>
-    <enum name="CURRENT_QUERY"                            value="0x8865"/>
-    <enum name="QUERY_RESULT"                             value="0x8866"/>
-    <enum name="QUERY_RESULT_AVAILABLE"                   value="0x8867"/>
-    <enum name="ARRAY_BUFFER"                             value="0x8892"/>
-    <enum name="ELEMENT_ARRAY_BUFFER"                     value="0x8893"/>
-    <enum name="ARRAY_BUFFER_BINDING"                     value="0x8894"/>
-    <enum name="ELEMENT_ARRAY_BUFFER_BINDING"             value="0x8895"/>
-    <enum name="VERTEX_ARRAY_BUFFER_BINDING"              value="0x8896"/>
-    <enum name="NORMAL_ARRAY_BUFFER_BINDING"              value="0x8897"/>
-    <enum name="COLOR_ARRAY_BUFFER_BINDING"               value="0x8898"/>
-    <enum name="INDEX_ARRAY_BUFFER_BINDING"               value="0x8899"/>
-    <enum name="TEXTURE_COORD_ARRAY_BUFFER_BINDING"       value="0x889A"/>
-    <enum name="EDGE_FLAG_ARRAY_BUFFER_BINDING"           value="0x889B"/>
-    <enum name="SECONDARY_COLOR_ARRAY_BUFFER_BINDING"     value="0x889C"/>
-    <enum name="FOG_COORDINATE_ARRAY_BUFFER_BINDING"      value="0x889D"/>
-    <enum name="WEIGHT_ARRAY_BUFFER_BINDING"              value="0x889E"/>
-    <enum name="VERTEX_ATTRIB_ARRAY_BUFFER_BINDING"       value="0x889F"/>
-    <enum name="READ_ONLY"                                value="0x88B8"/>
-    <enum name="WRITE_ONLY"                               value="0x88B9"/>
-    <enum name="READ_WRITE"                               value="0x88BA"/>
-    <enum name="BUFFER_ACCESS"                            value="0x88BB"/>
-    <enum name="BUFFER_MAPPED"                            value="0x88BC"/>
-    <enum name="BUFFER_MAP_POINTER"                       value="0x88BD"/>
-    <enum name="STREAM_DRAW"                              value="0x88E0"/>
-    <enum name="STREAM_READ"                              value="0x88E1"/>
-    <enum name="STREAM_COPY"                              value="0x88E2"/>
-    <enum name="STATIC_DRAW"                              value="0x88E4"/>
-    <enum name="STATIC_READ"                              value="0x88E5"/>
-    <enum name="STATIC_COPY"                              value="0x88E6"/>
-    <enum name="DYNAMIC_DRAW"                             value="0x88E8"/>
-    <enum name="DYNAMIC_READ"                             value="0x88E9"/>
-    <enum name="DYNAMIC_COPY"                             value="0x88EA"/>
-    <enum name="SAMPLES_PASSED"                count="1"  value="0x8914"/>
-    <enum name="FOG_COORD_SRC"                            value="0x8450">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_COORD"                                value="0x8451"/>
-    <enum name="CURRENT_FOG_COORD"             count="1"  value="0x8453">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_COORD_ARRAY_TYPE"          count="1"  value="0x8454">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_COORD_ARRAY_STRIDE"        count="1"  value="0x8455">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_COORD_ARRAY_POINTER"                  value="0x8456"/>
-    <enum name="FOG_COORD_ARRAY"               count="1"  value="0x8457">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_COORD_ARRAY_BUFFER_BINDING"           value="0x889D"/>
-    <enum name="SRC0_RGB"                                 value="0x8580"/>
-    <enum name="SRC1_RGB"                                 value="0x8581"/>
-    <enum name="SRC2_RGB"                                 value="0x8582"/>
-    <enum name="SRC0_ALPHA"                               value="0x8588"/>
-    <enum name="SRC1_ALPHA"                               value="0x8589"/>
-    <enum name="SRC2_ALPHA"                               value="0x858A"/>
-
-    <type name="intptr"   size="4"                  glx_name="CARD32"/>
-    <type name="sizeiptr" size="4"  unsigned="true" glx_name="CARD32"/>
-
-    <function name="BindBuffer" alias="BindBufferARB">
-        <param name="target" type="GLenum"/>
-        <param name="buffer" type="GLuint"/>
-    </function>
-
-    <function name="BufferData" alias="BufferDataARB">
-        <param name="target" type="GLenum"/>
-        <param name="size" type="GLsizeiptr"/>
-        <param name="data" type="const GLvoid *"/>
-        <param name="usage" type="GLenum"/>
-    </function>
-
-    <function name="BufferSubData" alias="BufferSubDataARB">
-        <param name="target" type="GLenum"/>
-        <param name="offset" type="GLintptr"/>
-        <param name="size" type="GLsizeiptr"/>
-        <param name="data" type="const GLvoid *"/>
-    </function>
-
-    <function name="DeleteBuffers" alias="DeleteBuffersARB">
-        <param name="n" type="GLsizei"/>
-        <param name="buffer" type="const GLuint *"/>
-    </function>
-
-    <function name="GenBuffers" alias="GenBuffersARB">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="buffer" type="GLuint *" output="true" count="n"/>
-    </function>
-
-    <function name="GetBufferParameteriv" alias="GetBufferParameterivARB">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-    </function>
-
-    <function name="GetBufferPointerv" alias="GetBufferPointervARB">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLvoid **" output="true"/>
-    </function>
-
-    <function name="GetBufferSubData" alias="GetBufferSubDataARB">
-        <param name="target" type="GLenum"/>
-        <param name="offset" type="GLintptr"/>
-        <param name="size" type="GLsizeiptr"/>
-        <param name="data" type="GLvoid *" output="true"/>
-    </function>
-
-    <function name="IsBuffer" alias="IsBufferARB">
-        <param name="buffer" type="GLuint"/>
-        <return type="GLboolean"/>
-    </function>
-
-    <function name="MapBuffer" alias="MapBufferARB">
-        <param name="target" type="GLenum"/>
-        <param name="access" type="GLenum"/>
-        <return type="GLvoid *"/>
-    </function>
-
-    <function name="UnmapBuffer" alias="UnmapBufferARB">
-        <param name="target" type="GLenum"/>
-        <return type="GLboolean"/>
-    </function>
-
-    <function name="GenQueries" alias="GenQueriesARB">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="ids" type="GLuint *" output="true" count="n"/>
-    </function>
-
-    <function name="DeleteQueries" alias="DeleteQueriesARB">
-        <param name="n" type="GLsizei"/>
-        <param name="ids" type="const GLuint *"/>
-    </function>
-
-    <function name="IsQuery" alias="IsQueryARB">
-        <param name="id" type="GLuint"/>
-        <return type="GLboolean"/>
-    </function>
-
-    <function name="BeginQuery" alias="BeginQueryARB">
-        <param name="target" type="GLenum"/>
-        <param name="id" type="GLuint"/>
-    </function>
-
-    <function name="EndQuery" alias="EndQueryARB">
-        <param name="target" type="GLenum"/>
-    </function>
-
-    <function name="GetQueryiv" alias="GetQueryivARB">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-    </function>
-
-    <function name="GetQueryObjectiv" alias="GetQueryObjectivARB">
-        <param name="id" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-    </function>
-
-    <function name="GetQueryObjectuiv" alias="GetQueryObjectuivARB">
-        <param name="id" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLuint *" output="true" variable_param="pname"/>
-    </function>
-</category>
-
-
-<category name="2.0">
-    <!-- XXX some of the enums and functions probably need additional -->
-    <!-- flags/attributes. -->
-
-    <type name="char"   size="1" glx_name="CARD8"/>
-
-    <enum name="BLEND_EQUATION_RGB"            value="0x8009"/>
-    <enum name="VERTEX_ATTRIB_ARRAY_ENABLED"      value="0x8622"/>
-    <enum name="VERTEX_ATTRIB_ARRAY_SIZE"         value="0x8623"/>
-    <enum name="VERTEX_ATTRIB_ARRAY_STRIDE"       value="0x8624"/>
-    <enum name="VERTEX_ATTRIB_ARRAY_TYPE"         value="0x8625"/>
-    <enum name="CURRENT_VERTEX_ATTRIB"            value="0x8626"/>
-    <enum name="VERTEX_PROGRAM_POINT_SIZE"        value="0x8642"/>
-    <enum name="VERTEX_PROGRAM_TWO_SIDE"          value="0x8643"/>
-    <enum name="VERTEX_ATTRIB_ARRAY_POINTER"      value="0x8645"/>
-    <enum name="STENCIL_BACK_FUNC"                value="0x8800"/>
-    <enum name="STENCIL_BACK_FAIL"                value="0x8801"/>
-    <enum name="STENCIL_BACK_PASS_DEPTH_FAIL"     value="0x8802"/>
-    <enum name="STENCIL_BACK_PASS_DEPTH_PASS"     value="0x8803"/>
-    <enum name="MAX_DRAW_BUFFERS"                 value="0x8824"/>
-    <enum name="DRAW_BUFFER0"                     value="0x8825"/>
-    <enum name="DRAW_BUFFER1"                     value="0x8826"/>
-    <enum name="DRAW_BUFFER2"                     value="0x8827"/>
-    <enum name="DRAW_BUFFER3"                     value="0x8828"/>
-    <enum name="DRAW_BUFFER4"                     value="0x8829"/>
-    <enum name="DRAW_BUFFER5"                     value="0x882A"/>
-    <enum name="DRAW_BUFFER6"                     value="0x882B"/>
-    <enum name="DRAW_BUFFER7"                     value="0x882C"/>
-    <enum name="DRAW_BUFFER8"                     value="0x882D"/>
-    <enum name="DRAW_BUFFER9"                     value="0x882E"/>
-    <enum name="DRAW_BUFFER10"                    value="0x882F"/>
-    <enum name="DRAW_BUFFER11"                    value="0x8830"/>
-    <enum name="DRAW_BUFFER12"                    value="0x8831"/>
-    <enum name="DRAW_BUFFER13"                    value="0x8832"/>
-    <enum name="DRAW_BUFFER14"                    value="0x8833"/>
-    <enum name="DRAW_BUFFER15"                    value="0x8834"/>
-    <enum name="BLEND_EQUATION_ALPHA"             value="0x883D"/>
-    <enum name="POINT_SPRITE"                     value="0x8861"/>
-    <enum name="COORD_REPLACE"                    value="0x8862"/>
-    <enum name="MAX_VERTEX_ATTRIBS"               value="0x8869"/>
-    <enum name="VERTEX_ATTRIB_ARRAY_NORMALIZED"   value="0x886A"/>
-    <enum name="MAX_TEXTURE_COORDS"               value="0x8871"/>
-    <enum name="MAX_TEXTURE_IMAGE_UNITS"          value="0x8872"/>
-    <enum name="FRAGMENT_SHADER"                  value="0x8B30"/>
-    <enum name="VERTEX_SHADER"                    value="0x8B31"/>
-    <enum name="MAX_FRAGMENT_UNIFORM_COMPONENTS"  value="0x8B49"/>
-    <enum name="MAX_VERTEX_UNIFORM_COMPONENTS"    value="0x8B4A"/>
-    <enum name="MAX_VARYING_FLOATS"               value="0x8B4B"/>
-    <enum name="MAX_VERTEX_TEXTURE_IMAGE_UNITS"   value="0x8B4C"/>
-    <enum name="MAX_COMBINED_TEXTURE_IMAGE_UNITS" value="0x8B4D"/>
-    <enum name="SHADER_TYPE"                      value="0x8B4F"/>
-    <enum name="FLOAT_VEC2"                       value="0x8B50"/>
-    <enum name="FLOAT_VEC3"                       value="0x8B51"/>
-    <enum name="FLOAT_VEC4"                       value="0x8B52"/>
-    <enum name="INT_VEC2"                         value="0x8B53"/>
-    <enum name="INT_VEC3"                         value="0x8B54"/>
-    <enum name="INT_VEC4"                         value="0x8B55"/>
-    <enum name="BOOL"                             value="0x8B56"/>
-    <enum name="BOOL_VEC2"                        value="0x8B57"/>
-    <enum name="BOOL_VEC3"                        value="0x8B58"/>
-    <enum name="BOOL_VEC4"                        value="0x8B59"/>
-    <enum name="FLOAT_MAT2"                       value="0x8B5A"/>
-    <enum name="FLOAT_MAT3"                       value="0x8B5B"/>
-    <enum name="FLOAT_MAT4"                       value="0x8B5C"/>
-    <enum name="SAMPLER_1D"                       value="0x8B5D"/>
-    <enum name="SAMPLER_2D"                       value="0x8B5E"/>
-    <enum name="SAMPLER_3D"                       value="0x8B5F"/>
-    <enum name="SAMPLER_CUBE"                     value="0x8B60"/>
-    <enum name="SAMPLER_1D_SHADOW"                value="0x8B61"/>
-    <enum name="SAMPLER_2D_SHADOW"                value="0x8B62"/>
-    <enum name="DELETE_STATUS"                    value="0x8B80"/>
-    <enum name="COMPILE_STATUS"                   value="0x8B81"/>
-    <enum name="LINK_STATUS"                      value="0x8B82"/>
-    <enum name="VALIDATE_STATUS"                  value="0x8B83"/>
-    <enum name="INFO_LOG_LENGTH"                  value="0x8B84"/>
-    <enum name="ATTACHED_SHADERS"                 value="0x8B85"/>
-    <enum name="ACTIVE_UNIFORMS"                  value="0x8B86"/>
-    <enum name="ACTIVE_UNIFORM_MAX_LENGTH"        value="0x8B87"/>
-    <enum name="SHADER_SOURCE_LENGTH"             value="0x8B88"/>
-    <enum name="ACTIVE_ATTRIBUTES"                value="0x8B89"/>
-    <enum name="ACTIVE_ATTRIBUTE_MAX_LENGTH"      value="0x8B8A"/>
-    <enum name="FRAGMENT_SHADER_DERIVATIVE_HINT"  value="0x8B8B"/>
-    <enum name="SHADING_LANGUAGE_VERSION"         value="0x8B8C"/>
-    <enum name="CURRENT_PROGRAM"                  value="0x8B8D"/>
-    <enum name="POINT_SPRITE_COORD_ORIGIN" count="1"  value="0x8CA0">
-        <size name="PointParameterfvEXT"/>
-        <size name="PointParameterivNV"/>
-    </enum>
-    <enum name="LOWER_LEFT"                       value="0x8CA1"/>
-    <enum name="UPPER_LEFT"                       value="0x8CA2"/>
-    <enum name="STENCIL_BACK_REF"                 value="0x8CA3"/>
-    <enum name="STENCIL_BACK_VALUE_MASK"          value="0x8CA4"/>
-    <enum name="STENCIL_BACK_WRITEMASK"           value="0x8CA5"/>
-
-    <function name="BlendEquationSeparate" alias="BlendEquationSeparateEXT">
-        <param name="modeRGB" type="GLenum"/>
-        <param name="modeA" type="GLenum"/>
-    </function>
-
-    <function name="DrawBuffers" alias="DrawBuffersARB">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="bufs" type="const GLenum *" count="n"/>
-    </function>
-
-    <function name="StencilFuncSeparate" offset="assign">
-        <param name="face" type="GLenum"/>
-        <param name="func" type="GLenum"/>
-        <param name="ref" type="GLint"/>
-        <param name="mask" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="StencilOpSeparate" offset="assign">
-        <param name="face" type="GLenum"/>
-        <param name="sfail" type="GLenum"/>
-        <param name="zfail" type="GLenum"/>
-        <param name="zpass" type="GLenum"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="StencilMaskSeparate" offset="assign">
-        <param name="face" type="GLenum"/>
-        <param name="mask" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="AttachShader" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="shader" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="BindAttribLocation" alias="BindAttribLocationARB">
-        <param name="program" type="GLuint"/>
-        <param name="index" type="GLuint"/>
-        <param name="name" type="const GLchar *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="CompileShader" alias="CompileShaderARB">
-        <param name="shader" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="CreateProgram" offset="assign">
-        <return type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="CreateShader" offset="assign">
-        <param name="type" type="GLenum"/>
-        <return type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="DeleteProgram" offset="assign">
-        <param name="program" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="DeleteShader" offset="assign">
-        <param name="program" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="DetachShader" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="shader" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="DisableVertexAttribArray" alias="DisableVertexAttribArrayARB">
-        <param name="index" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="EnableVertexAttribArray" alias="EnableVertexAttribArrayARB">
-        <param name="index" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetActiveAttrib" alias="GetActiveAttribARB">
-        <param name="program" type="GLuint"/>
-        <param name="index" type="GLuint"/>
-        <param name="bufSize" type="GLsizei "/>
-        <param name="length" type="GLsizei *" output="true"/>
-        <param name="size" type="GLint *" output="true"/>
-        <param name="type" type="GLenum *" output="true"/>
-        <param name="name" type="GLchar *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetActiveUniform" alias="GetActiveUniformARB">
-        <param name="program" type="GLuint"/>
-        <param name="index" type="GLuint"/>
-        <param name="bufSize" type="GLsizei"/>
-        <param name="length" type="GLsizei *" output="true"/>
-        <param name="size" type="GLint *" output="true"/>
-        <param name="type" type="GLenum *" output="true"/>
-        <param name="name" type="GLchar *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetAttachedShaders" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="maxCount" type="GLsizei"/>
-        <param name="count" type="GLsizei *" output="true"/>
-        <param name="obj" type="GLuint *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetAttribLocation" alias="GetAttribLocationARB">
-        <param name="program" type="GLuint"/>
-        <param name="name" type="const GLchar *"/>
-        <return type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetProgramiv" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetProgramInfoLog" offset="assign">
-        <param name="program" type="GLuint"/>
-        <param name="bufSize" type="GLsizei"/>
-        <param name="length" type="GLsizei *"/>
-        <param name="infoLog" type="GLchar *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetShaderiv" offset="assign">
-        <param name="shader" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetShaderInfoLog" offset="assign">
-        <param name="shader" type="GLuint"/>
-        <param name="bufSize" type="GLsizei"/>
-        <param name="length" type="GLsizei *"/>
-        <param name="infoLog" type="GLchar *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetShaderSource" alias="GetShaderSourceARB">
-        <param name="shader" type="GLuint"/>
-        <param name="bufSize" type="GLsizei"/>
-        <param name="length" type="GLsizei *" output="true"/>
-        <param name="source" type="GLchar *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetUniformLocation" alias="GetUniformLocationARB">
-        <param name="program" type="GLuint"/>
-        <param name="name" type="const GLchar *"/>
-        <return type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetUniformfv" alias="GetUniformfvARB">
-        <param name="program" type="GLuint"/>
-        <param name="location" type="GLint"/>
-        <param name="params" type="GLfloat *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetUniformiv" alias="GetUniformivARB">
-        <param name="program" type="GLuint"/>
-        <param name="location" type="GLint"/>
-        <param name="params" type="GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetVertexAttribdv" alias="GetVertexAttribdvARB">
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetVertexAttribfv" alias="GetVertexAttribfvARB">
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetVertexAttribiv" alias="GetVertexAttribivARB">
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetVertexAttribPointerv" alias="GetVertexAttribPointervNV">
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="pointer" type="GLvoid **" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="IsProgram" offset="assign">
-        <param name="program" type="GLuint"/>
-        <return type="GLboolean"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="IsShader" offset="assign">
-        <param name="shader" type="GLuint"/>
-        <return type="GLboolean"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="LinkProgram" alias="LinkProgramARB">
-        <param name="program" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="ShaderSource" alias="ShaderSourceARB">
-        <param name="shader" type="GLuint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="string" type="const GLchar **"/>
-        <param name="length" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="UseProgram" alias="UseProgramObjectARB">
-        <param name="program" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform1f" alias="Uniform1fARB">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="Uniform2f" alias="Uniform2fARB">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLfloat"/>
-        <param name="v1" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="Uniform3f" alias="Uniform3fARB">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLfloat"/>
-        <param name="v1" type="GLfloat"/>
-        <param name="v2" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="Uniform4f" alias="Uniform4fARB">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLfloat"/>
-        <param name="v1" type="GLfloat"/>
-        <param name="v2" type="GLfloat"/>
-        <param name="v3" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform1i" alias="Uniform1iARB">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="Uniform2i" alias="Uniform2iARB">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLint"/>
-        <param name="v1" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="Uniform3i" alias="Uniform3iARB">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLint"/>
-        <param name="v1" type="GLint"/>
-        <param name="v2" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="Uniform4i" alias="Uniform4iARB">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLint"/>
-        <param name="v1" type="GLint"/>
-        <param name="v2" type="GLint"/>
-        <param name="v3" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform1fv" alias="Uniform1fvARB">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="Uniform2fv" alias="Uniform2fvARB">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="Uniform3fv" alias="Uniform3fvARB">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="Uniform4fv" alias="Uniform4fvARB">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform1iv" alias="Uniform1ivARB">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="Uniform2iv" alias="Uniform2ivARB">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="Uniform3iv" alias="Uniform3ivARB">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="Uniform4iv" alias="Uniform4ivARB">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="UniformMatrix2fv" alias="UniformMatrix2fvARB">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="transpose" type="GLboolean"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="UniformMatrix3fv" alias="UniformMatrix3fvARB">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="transpose" type="GLboolean"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="UniformMatrix4fv" alias="UniformMatrix4fvARB">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="transpose" type="GLboolean"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="ValidateProgram" alias="ValidateProgramARB">
-        <param name="program" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="VertexAttrib1d" alias="VertexAttrib1dARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLdouble"/>
-    </function>
-    <function name="VertexAttrib1dv" alias="VertexAttrib1dvARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLdouble *"/>
-    </function>
-    <function name="VertexAttrib1f" alias="VertexAttrib1fARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-    </function>
-    <function name="VertexAttrib1fv" alias="VertexAttrib1fvARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-    <function name="VertexAttrib1s" alias="VertexAttrib1sARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLshort"/>
-    </function>
-    <function name="VertexAttrib1sv" alias="VertexAttrib1svARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLshort *"/>
-    </function>
-
-    <function name="VertexAttrib2d" alias="VertexAttrib2dARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-    </function>
-    <function name="VertexAttrib2dv" alias="VertexAttrib2dvARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLdouble *"/>
-    </function>
-    <function name="VertexAttrib2f" alias="VertexAttrib2fARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-    </function>
-    <function name="VertexAttrib2fv" alias="VertexAttrib2fvARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-    <function name="VertexAttrib2s" alias="VertexAttrib2sARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-    </function>
-    <function name="VertexAttrib2sv" alias="VertexAttrib2svARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLshort *"/>
-    </function>
-
-    <function name="VertexAttrib3d" alias="VertexAttrib3dARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-    </function>
-    <function name="VertexAttrib3dv" alias="VertexAttrib3dvARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLdouble *"/>
-    </function>
-    <function name="VertexAttrib3f" alias="VertexAttrib3fARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-    <function name="VertexAttrib3fv" alias="VertexAttrib3fvARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-    <function name="VertexAttrib3s" alias="VertexAttrib3sARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-    </function>
-    <function name="VertexAttrib3sv" alias="VertexAttrib3svARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLshort *"/>
-    </function>
-
-    <function name="VertexAttrib4Nbv" alias="VertexAttrib4NbvARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLbyte *"/>
-    </function>
-    <function name="VertexAttrib4Niv" alias="VertexAttrib4NivARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLint *"/>
-    </function>
-    <function name="VertexAttrib4Nsv" alias="VertexAttrib4NsvARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLshort *"/>
-    </function>
-    <function name="VertexAttrib4Nub" alias="VertexAttrib4NubARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLubyte"/>
-        <param name="y" type="GLubyte"/>
-        <param name="z" type="GLubyte"/>
-        <param name="w" type="GLubyte"/>
-    </function>
-    <function name="VertexAttrib4Nubv" alias="VertexAttrib4NubvARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLubyte *"/>
-    </function>
-    <function name="VertexAttrib4Nuiv" alias="VertexAttrib4NuivARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLuint *"/>
-    </function>
-    <function name="VertexAttrib4Nusv" alias="VertexAttrib4NusvARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLushort *"/>
-    </function>
-    <function name="VertexAttrib4bv" alias="VertexAttrib4bvARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLbyte *" count="4"/>
-    </function>
-    <function name="VertexAttrib4d" alias="VertexAttrib4dARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <param name="w" type="GLdouble"/>
-    </function>
-    <function name="VertexAttrib4dv" alias="VertexAttrib4dvARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLdouble *"/>
-    </function>
-    <function name="VertexAttrib4f" alias="VertexAttrib4fARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <param name="w" type="GLfloat"/>
-    </function>
-    <function name="VertexAttrib4fv" alias="VertexAttrib4fvARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-    <function name="VertexAttrib4iv" alias="VertexAttrib4ivARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLint *" count="4"/>
-    </function>
-    <function name="VertexAttrib4s" alias="VertexAttrib4sARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-        <param name="w" type="GLshort"/>
-    </function>
-    <function name="VertexAttrib4sv" alias="VertexAttrib4svARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLshort *"/>
-    </function>
-    <function name="VertexAttrib4ubv" alias="VertexAttrib4ubvARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLubyte *" count="4"/>
-    </function>
-    <function name="VertexAttrib4uiv" alias="VertexAttrib4uivARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLuint *" count="4"/>
-    </function>
-    <function name="VertexAttrib4usv" alias="VertexAttrib4usvARB">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLushort *" count="4"/>
-    </function>
-
-    <function name="VertexAttribPointer" alias="VertexAttribPointerARB">
-        <param name="index" type="GLuint"/>
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="normalized" type="GLboolean"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-    </function>
-
-</category>
-
-
-<category name="2.1">
-    <!-- XXX some of the enums and functions probably need additional -->
-    <!-- flags/attributes. -->
-
-    <enum name="CURRENT_RASTER_SECONDARY_COLOR" value="0x845F"/>
-    <enum name="PIXEL_PACK_BUFFER"              value="0x88EB"/>
-    <enum name="PIXEL_UNPACK_BUFFER"            value="0x88EC"/>
-    <enum name="PIXEL_PACK_BUFFER_BINDING"      value="0x88ED"/>
-    <enum name="PIXEL_UNPACK_BUFFER_BINDING"    value="0x88EF"/>
-    <enum name="FLOAT_MAT2x3"                   value="0x8B65"/>
-    <enum name="FLOAT_MAT2x4"                   value="0x8B66"/>
-    <enum name="FLOAT_MAT3x2"                   value="0x8B67"/>
-    <enum name="FLOAT_MAT3x4"                   value="0x8B68"/>
-    <enum name="FLOAT_MAT4x2"                   value="0x8B69"/>
-    <enum name="FLOAT_MAT4x3"                   value="0x8B6A"/>
-    <enum name="SRGB"                           value="0x8C40"/>
-    <enum name="SRGB8"                          value="0x8C41"/>
-    <enum name="SRGB_ALPHA"                     value="0x8C42"/>
-    <enum name="SRGB8_ALPHA8"                   value="0x8C43"/>
-    <enum name="SLUMINANCE_ALPHA"               value="0x8C44"/>
-    <enum name="SLUMINANCE8_ALPHA8"             value="0x8C45"/>
-    <enum name="SLUMINANCE"                     value="0x8C46"/>
-    <enum name="SLUMINANCE8"                    value="0x8C47"/>
-    <enum name="COMPRESSED_SRGB"                value="0x8C48"/>
-    <enum name="COMPRESSED_SRGB_ALPHA"          value="0x8C49"/>
-    <enum name="COMPRESSED_SLUMINANCE"          value="0x8C4A"/>
-    <enum name="COMPRESSED_SLUMINANCE_ALPHA"    value="0x8C4B"/>
-
-    <function name="UniformMatrix2x3fv" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="transpose" type="GLboolean"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="UniformMatrix3x2fv" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="transpose" type="GLboolean"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="UniformMatrix2x4fv" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="transpose" type="GLboolean"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="UniformMatrix4x2fv" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="transpose" type="GLboolean"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="UniformMatrix3x4fv" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="transpose" type="GLboolean"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="UniformMatrix4x3fv" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="transpose" type="GLboolean"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-</category>
-
-
-<!-- ARB extensions sorted by extension number. -->
-
-<category name="GL_ARB_multitexture" number="1">
-    <enum name="TEXTURE0_ARB"                             value="0x84C0"/>
-    <enum name="TEXTURE1_ARB"                             value="0x84C1"/>
-    <enum name="TEXTURE2_ARB"                             value="0x84C2"/>
-    <enum name="TEXTURE3_ARB"                             value="0x84C3"/>
-    <enum name="TEXTURE4_ARB"                             value="0x84C4"/>
-    <enum name="TEXTURE5_ARB"                             value="0x84C5"/>
-    <enum name="TEXTURE6_ARB"                             value="0x84C6"/>
-    <enum name="TEXTURE7_ARB"                             value="0x84C7"/>
-    <enum name="TEXTURE8_ARB"                             value="0x84C8"/>
-    <enum name="TEXTURE9_ARB"                             value="0x84C9"/>
-    <enum name="TEXTURE10_ARB"                            value="0x84CA"/>
-    <enum name="TEXTURE11_ARB"                            value="0x84CB"/>
-    <enum name="TEXTURE12_ARB"                            value="0x84CC"/>
-    <enum name="TEXTURE13_ARB"                            value="0x84CD"/>
-    <enum name="TEXTURE14_ARB"                            value="0x84CE"/>
-    <enum name="TEXTURE15_ARB"                            value="0x84CF"/>
-    <enum name="TEXTURE16_ARB"                            value="0x84D0"/>
-    <enum name="TEXTURE17_ARB"                            value="0x84D1"/>
-    <enum name="TEXTURE18_ARB"                            value="0x84D2"/>
-    <enum name="TEXTURE19_ARB"                            value="0x84D3"/>
-    <enum name="TEXTURE20_ARB"                            value="0x84D4"/>
-    <enum name="TEXTURE21_ARB"                            value="0x84D5"/>
-    <enum name="TEXTURE22_ARB"                            value="0x84D6"/>
-    <enum name="TEXTURE23_ARB"                            value="0x84D7"/>
-    <enum name="TEXTURE24_ARB"                            value="0x84D8"/>
-    <enum name="TEXTURE25_ARB"                            value="0x84D9"/>
-    <enum name="TEXTURE26_ARB"                            value="0x84DA"/>
-    <enum name="TEXTURE27_ARB"                            value="0x84DB"/>
-    <enum name="TEXTURE28_ARB"                            value="0x84DC"/>
-    <enum name="TEXTURE29_ARB"                            value="0x84DD"/>
-    <enum name="TEXTURE30_ARB"                            value="0x84DE"/>
-    <enum name="TEXTURE31_ARB"                            value="0x84DF"/>
-    <enum name="ACTIVE_TEXTURE_ARB"            count="1"  value="0x84E0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CLIENT_ACTIVE_TEXTURE_ARB"     count="1"  value="0x84E1">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_TEXTURE_UNITS_ARB"         count="1"  value="0x84E2">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="ActiveTextureARB" offset="374">
-        <param name="texture" type="GLenum"/>
-        <glx rop="197"/>
-    </function>
-
-    <function name="ClientActiveTextureARB" offset="375">
-        <param name="texture" type="GLenum"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="MultiTexCoord1dARB" offset="376" vectorequiv="MultiTexCoord1dvARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLdouble"/>
-    </function>
-
-    <function name="MultiTexCoord1dvARB" offset="377">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLdouble *" count="1"/>
-        <glx rop="198"/>
-    </function>
-
-    <function name="MultiTexCoord1fARB" offset="378" vectorequiv="MultiTexCoord1fvARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLfloat"/>
-    </function>
-
-    <function name="MultiTexCoord1fvARB" offset="379">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLfloat *" count="1"/>
-        <glx rop="199"/>
-    </function>
-
-    <function name="MultiTexCoord1iARB" offset="380" vectorequiv="MultiTexCoord1ivARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLint"/>
-    </function>
-
-    <function name="MultiTexCoord1ivARB" offset="381">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLint *" count="1"/>
-        <glx rop="200"/>
-    </function>
-
-    <function name="MultiTexCoord1sARB" offset="382" vectorequiv="MultiTexCoord1svARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLshort"/>
-    </function>
-
-    <function name="MultiTexCoord1svARB" offset="383">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLshort *" count="1"/>
-        <glx rop="201"/>
-    </function>
-
-    <function name="MultiTexCoord2dARB" offset="384" vectorequiv="MultiTexCoord2dvARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLdouble"/>
-        <param name="t" type="GLdouble"/>
-    </function>
-
-    <function name="MultiTexCoord2dvARB" offset="385">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLdouble *" count="2"/>
-        <glx rop="202"/>
-    </function>
-
-    <function name="MultiTexCoord2fARB" offset="386" vectorequiv="MultiTexCoord2fvARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-    </function>
-
-    <function name="MultiTexCoord2fvARB" offset="387">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLfloat *" count="2"/>
-        <glx rop="203"/>
-    </function>
-
-    <function name="MultiTexCoord2iARB" offset="388" vectorequiv="MultiTexCoord2ivARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLint"/>
-        <param name="t" type="GLint"/>
-    </function>
-
-    <function name="MultiTexCoord2ivARB" offset="389">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLint *" count="2"/>
-        <glx rop="204"/>
-    </function>
-
-    <function name="MultiTexCoord2sARB" offset="390" vectorequiv="MultiTexCoord2svARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLshort"/>
-        <param name="t" type="GLshort"/>
-    </function>
-
-    <function name="MultiTexCoord2svARB" offset="391">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLshort *" count="2"/>
-        <glx rop="205"/>
-    </function>
-
-    <function name="MultiTexCoord3dARB" offset="392" vectorequiv="MultiTexCoord3dvARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLdouble"/>
-        <param name="t" type="GLdouble"/>
-        <param name="r" type="GLdouble"/>
-    </function>
-
-    <function name="MultiTexCoord3dvARB" offset="393">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLdouble *" count="3"/>
-        <glx rop="206"/>
-    </function>
-
-    <function name="MultiTexCoord3fARB" offset="394" vectorequiv="MultiTexCoord3fvARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="r" type="GLfloat"/>
-    </function>
-
-    <function name="MultiTexCoord3fvARB" offset="395">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLfloat *" count="3"/>
-        <glx rop="207"/>
-    </function>
-
-    <function name="MultiTexCoord3iARB" offset="396" vectorequiv="MultiTexCoord3ivARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLint"/>
-        <param name="t" type="GLint"/>
-        <param name="r" type="GLint"/>
-    </function>
-
-    <function name="MultiTexCoord3ivARB" offset="397">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLint *" count="3"/>
-        <glx rop="208"/>
-    </function>
-
-    <function name="MultiTexCoord3sARB" offset="398" vectorequiv="MultiTexCoord3svARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLshort"/>
-        <param name="t" type="GLshort"/>
-        <param name="r" type="GLshort"/>
-    </function>
-
-    <function name="MultiTexCoord3svARB" offset="399">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLshort *" count="3"/>
-        <glx rop="209"/>
-    </function>
-
-    <function name="MultiTexCoord4dARB" offset="400" vectorequiv="MultiTexCoord4dvARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLdouble"/>
-        <param name="t" type="GLdouble"/>
-        <param name="r" type="GLdouble"/>
-        <param name="q" type="GLdouble"/>
-    </function>
-
-    <function name="MultiTexCoord4dvARB" offset="401">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLdouble *" count="4"/>
-        <glx rop="210"/>
-    </function>
-
-    <function name="MultiTexCoord4fARB" offset="402" vectorequiv="MultiTexCoord4fvARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="r" type="GLfloat"/>
-        <param name="q" type="GLfloat"/>
-    </function>
-
-    <function name="MultiTexCoord4fvARB" offset="403">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLfloat *" count="4"/>
-        <glx rop="211"/>
-    </function>
-
-    <function name="MultiTexCoord4iARB" offset="404" vectorequiv="MultiTexCoord4ivARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLint"/>
-        <param name="t" type="GLint"/>
-        <param name="r" type="GLint"/>
-        <param name="q" type="GLint"/>
-    </function>
-
-    <function name="MultiTexCoord4ivARB" offset="405">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLint *" count="4"/>
-        <glx rop="212"/>
-    </function>
-
-    <function name="MultiTexCoord4sARB" offset="406" vectorequiv="MultiTexCoord4svARB">
-        <param name="target" type="GLenum"/>
-        <param name="s" type="GLshort"/>
-        <param name="t" type="GLshort"/>
-        <param name="r" type="GLshort"/>
-        <param name="q" type="GLshort"/>
-    </function>
-
-    <function name="MultiTexCoord4svARB" offset="407">
-        <param name="target" type="GLenum"/>
-        <param name="v" type="const GLshort *" count="4"/>
-        <glx rop="213"/>
-    </function>
-</category>
-
-<!-- ARB extension number 2 is a GLX extension. -->
-
-<category name="GL_ARB_transpose_matrix" number="3">
-    <enum name="TRANSPOSE_MODELVIEW_MATRIX_ARB"           value="0x84E3"/>
-    <enum name="TRANSPOSE_PROJECTION_MATRIX_ARB"          value="0x84E4"/>
-    <enum name="TRANSPOSE_TEXTURE_MATRIX_ARB"             value="0x84E5"/>
-    <enum name="TRANSPOSE_COLOR_MATRIX_ARB"               value="0x84E6"/>
-
-    <function name="LoadTransposeMatrixfARB" offset="assign">
-        <param name="m" type="const GLfloat *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="LoadTransposeMatrixdARB" offset="assign">
-        <param name="m" type="const GLdouble *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="MultTransposeMatrixfARB" offset="assign">
-        <param name="m" type="const GLfloat *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="MultTransposeMatrixdARB" offset="assign">
-        <param name="m" type="const GLdouble *"/>
-        <glx handcode="true"/>
-    </function>
-</category>
-
-<!-- ARB extension number 4 is a WGL extension. -->
-
-<category name="GL_ARB_multisample" number="5">
-    <enum name="MULTISAMPLE_ARB"               count="1"  value="0x809D">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLE_ALPHA_TO_COVERAGE_ARB"  count="1"  value="0x809E">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLE_ALPHA_TO_ONE_ARB"       count="1"  value="0x809F">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLE_COVERAGE_ARB"           count="1"  value="0x80A0">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLE_BUFFERS_ARB"            count="1"  value="0x80A8">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLES_ARB"                   count="1"  value="0x80A9">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLE_COVERAGE_VALUE_ARB"     count="1"  value="0x80AA">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SAMPLE_COVERAGE_INVERT_ARB"    count="1"  value="0x80AB">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MULTISAMPLE_BIT_ARB"                      value="0x20000000"/>
-
-    <function name="SampleCoverageARB" offset="assign">
-        <param name="value" type="GLclampf"/>
-        <param name="invert" type="GLboolean"/>
-        <glx rop="229"/>
-    </function>
-</category>
-
-<category name="GL_ARB_texture_env_add" number="6">
-    <!-- No new functions, types, enums. -->
-</category>
-
-<category name="GL_ARB_texture_cube_map" number="7">
-    <enum name="NORMAL_MAP_ARB"                           value="0x8511"/>
-    <enum name="REFLECTION_MAP_ARB"                       value="0x8512"/>
-    <enum name="TEXTURE_CUBE_MAP_ARB"          count="1"  value="0x8513">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_BINDING_CUBE_MAP_ARB"  count="1"  value="0x8514">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_CUBE_MAP_POSITIVE_X_ARB"          value="0x8515"/>
-    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_X_ARB"          value="0x8516"/>
-    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Y_ARB"          value="0x8517"/>
-    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB"          value="0x8518"/>
-    <enum name="TEXTURE_CUBE_MAP_POSITIVE_Z_ARB"          value="0x8519"/>
-    <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB"          value="0x851A"/>
-    <enum name="PROXY_TEXTURE_CUBE_MAP_ARB"               value="0x851B"/>
-    <enum name="MAX_CUBE_MAP_TEXTURE_SIZE_ARB" count="1"  value="0x851C">
-        <size name="Get" mode="get"/>
-    </enum>
-</category>
-
-<!-- ARB extension number 8 is a WGL extension. -->
-<!-- ARB extension number 9 is a WGL extension. -->
-<!-- ARB extension number 10 is a WGL extension. -->
-<!-- ARB extension number 11 is a WGL extension. -->
-
-<category name="GL_ARB_texture_compression" number="12">
-    <enum name="COMPRESSED_ALPHA_ARB"                     value="0x84E9"/>
-    <enum name="COMPRESSED_LUMINANCE_ARB"                 value="0x84EA"/>
-    <enum name="COMPRESSED_LUMINANCE_ALPHA_ARB"           value="0x84EB"/>
-    <enum name="COMPRESSED_INTENSITY_ARB"                 value="0x84EC"/>
-    <enum name="COMPRESSED_RGB_ARB"                       value="0x84ED"/>
-    <enum name="COMPRESSED_RGBA_ARB"                      value="0x84EE"/>
-    <enum name="TEXTURE_COMPRESSION_HINT_ARB"  count="1"  value="0x84EF">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COMPRESSED_IMAGE_SIZE_ARB" count="1" value="0x86A0">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COMPRESSED_ARB"        count="1"  value="0x86A1">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="NUM_COMPRESSED_TEXTURE_FORMATS_ARB" count="1" value="0x86A2">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COMPRESSED_FORMATS_ARB"           value="0x86A3"/>
-
-    <function name="CompressedTexImage3DARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="imageSize" type="GLsizei" counter="true"/>
-        <param name="data" type="const GLvoid *" count="imageSize"/>
-        <glx rop="216" handcode="client"/>
-    </function>
-
-    <function name="CompressedTexImage2DARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="imageSize" type="GLsizei" counter="true"/>
-        <param name="data" type="const GLvoid *" count="imageSize"/>
-        <glx rop="215" handcode="client"/>
-    </function>
-
-    <function name="CompressedTexImage1DARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="imageSize" type="GLsizei" counter="true"/>
-        <param name="data" type="const GLvoid *" count="imageSize"/>
-        <glx rop="214" handcode="client"/>
-    </function>
-
-    <function name="CompressedTexSubImage3DARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="imageSize" type="GLsizei" counter="true"/>
-        <param name="data" type="const GLvoid *" count="imageSize"/>
-        <glx rop="219" handcode="client"/>
-    </function>
-
-    <function name="CompressedTexSubImage2DARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="imageSize" type="GLsizei" counter="true"/>
-        <param name="data" type="const GLvoid *" count="imageSize"/>
-        <glx rop="218" handcode="client"/>
-    </function>
-
-    <function name="CompressedTexSubImage1DARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="imageSize" type="GLsizei" counter="true"/>
-        <param name="data" type="const GLvoid *" count="imageSize"/>
-        <glx rop="217" handcode="client"/>
-    </function>
-
-    <function name="GetCompressedTexImageARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="img" type="GLvoid *" output="true"/>
-
-        <!-- This has to be hand coded because the image size is in the
-             "wrong" place.  Technically, this should be a
-             'always_array="true"' case.  The size field in the reply would
-             be at offset 12.  However, the size is actually at offset 16.
-             This is where the 'width' is in a GetTexImage reply. -->
-        <glx sop="160" handcode="true"/>
-    </function>
-</category>
-
-<category name="GL_ARB_texture_border_clamp" number="13">
-    <enum name="CLAMP_TO_BORDER_ARB"                      value="0x812D"/>
-</category>
-
-<category name="GL_ARB_point_parameters" number="14">
-    <enum name="POINT_SIZE_MIN_ARB"            count="1"  value="0x8126">
-        <size name="PointParameterfvEXT"/>
-    </enum>
-    <enum name="POINT_SIZE_MAX_ARB"            count="1"  value="0x8127">
-        <size name="PointParameterfvEXT"/>
-    </enum>
-    <enum name="POINT_FADE_THRESHOLD_SIZE_ARB" count="1"  value="0x8128">
-        <size name="PointParameterfvEXT"/>
-    </enum>
-    <enum name="POINT_DISTANCE_ATTENUATION_ARB" count="3" value="0x8129">
-        <size name="PointParameterfvEXT"/>
-    </enum>
-
-    <function name="PointParameterfARB" alias="PointParameterfEXT">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="2065"/>
-    </function>
-
-    <function name="PointParameterfvARB" alias="PointParameterfvEXT">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="2066"/>
-    </function>
-</category>
-
-<category name="GL_ARB_vertex_blend" number="15">
-    <enum name="MAX_VERTEX_UNITS_ARB"          count="1"  value="0x86A4">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ACTIVE_VERTEX_UNITS_ARB"       count="1"  value="0x86A5">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="WEIGHT_SUM_UNITY_ARB"          count="1"  value="0x86A6">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_BLEND_ARB"              count="1"  value="0x86A7">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CURRENT_WEIGHT_ARB"            count="1"  value="0x86A8">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="WEIGHT_ARRAY_TYPE_ARB"         count="1"  value="0x86A9">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="WEIGHT_ARRAY_STRIDE_ARB"       count="1"  value="0x86AA">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="WEIGHT_ARRAY_SIZE_ARB"         count="1"  value="0x86AB">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="WEIGHT_ARRAY_POINTER_ARB"                 value="0x86AC"/>
-    <enum name="WEIGHT_ARRAY_ARB"              count="1"  value="0x86AD">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW0_ARB"                count="16" value="0x1700">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW1_ARB"                count="16" value="0x850A">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW2_ARB"                count="16" value="0x8722">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW3_ARB"                count="16" value="0x8723">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW4_ARB"                count="16" value="0x8724">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW5_ARB"                count="16" value="0x8725">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW6_ARB"                count="16" value="0x8726">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW7_ARB"                count="16" value="0x8727">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW8_ARB"                count="16" value="0x8728">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW9_ARB"                count="16" value="0x8729">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW10_ARB"               count="16" value="0x872A">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW11_ARB"               count="16" value="0x872B">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW12_ARB"               count="16" value="0x872C">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW13_ARB"               count="16" value="0x872D">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW14_ARB"               count="16" value="0x872E">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW15_ARB"               count="16" value="0x872F">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW16_ARB"               count="16" value="0x8730">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW17_ARB"               count="16" value="0x8731">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW18_ARB"               count="16" value="0x8732">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW19_ARB"               count="16" value="0x8733">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW20_ARB"               count="16" value="0x8734">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW21_ARB"               count="16" value="0x8735">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW22_ARB"               count="16" value="0x8736">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW23_ARB"               count="16" value="0x8737">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW24_ARB"               count="16" value="0x8738">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW25_ARB"               count="16" value="0x8739">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW26_ARB"               count="16" value="0x873A">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW27_ARB"               count="16" value="0x873B">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW28_ARB"               count="16" value="0x873C">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW29_ARB"               count="16" value="0x873D">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW30_ARB"               count="16" value="0x873E">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MODELVIEW31_ARB"               count="16" value="0x873F">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="WeightbvARB">
-        <param name="size" type="GLint"/>
-        <param name="weights" type="const GLbyte *"/>
-    </function>
-
-    <function name="WeightsvARB">
-        <param name="size" type="GLint"/>
-        <param name="weights" type="const GLshort *"/>
-    </function>
-
-    <function name="WeightivARB">
-        <param name="size" type="GLint"/>
-        <param name="weights" type="const GLint *"/>
-    </function>
-
-    <function name="WeightfvARB">
-        <param name="size" type="GLint"/>
-        <param name="weights" type="const GLfloat *"/>
-    </function>
-
-    <function name="WeightdvARB">
-        <param name="size" type="GLint"/>
-        <param name="weights" type="const GLdouble *"/>
-    </function>
-
-    <function name="WeightubvARB">
-        <param name="size" type="GLint"/>
-        <param name="weights" type="const GLubyte *"/>
-    </function>
-
-    <function name="WeightusvARB">
-        <param name="size" type="GLint"/>
-        <param name="weights" type="const GLushort *"/>
-    </function>
-
-    <function name="WeightuivARB">
-        <param name="size" type="GLint"/>
-        <param name="weights" type="const GLuint *"/>
-    </function>
-
-    <function name="WeightPointerARB">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="VertexBlendARB">
-        <param name="count" type="GLint"/>
-    </function>
-</category>
-
-<category name="GL_ARB_matrix_palette" number="16">
-    <enum name="MATRIX_PALETTE_ARB"            count="1"  value="0x8840">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_MATRIX_PALETTE_STACK_DEPTH_ARB" count="1" value="0x8841">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_PALETTE_MATRICES_ARB"      count="1"  value="0x8842">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CURRENT_PALETTE_MATRIX_ARB"    count="1"  value="0x8843">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MATRIX_INDEX_ARRAY_ARB"        count="1"  value="0x8844">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CURRENT_MATRIX_INDEX_ARB"      count="1"  value="0x8845">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MATRIX_INDEX_ARRAY_SIZE_ARB"   count="1"  value="0x8846">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MATRIX_INDEX_ARRAY_TYPE_ARB"   count="1"  value="0x8847">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MATRIX_INDEX_ARRAY_STRIDE_ARB" count="1"  value="0x8848">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MATRIX_INDEX_ARRAY_POINTER_ARB"           value="0x8849"/>
-
-    <function name="CurrentPaletteMatrixARB">
-        <param name="index" type="GLint"/>
-        <glx ignore="true" rop="4329"/>
-    </function>
-
-    <function name="MatrixIndexubvARB">
-        <param name="size" type="GLint" counter="true"/>
-        <param name="indices" type="const GLubyte *" count="size"/>
-        <glx ignore="true" rop="4326"/>
-    </function>
-
-    <function name="MatrixIndexusvARB">
-        <param name="size" type="GLint" counter="true"/>
-        <param name="indices" type="const GLushort *" count="size"/>
-        <glx ignore="true" rop="4327"/>
-    </function>
-
-    <function name="MatrixIndexuivARB">
-        <param name="size" type="GLint" counter="true"/>
-        <param name="indices" type="const GLuint *" count="size"/>
-        <glx ignore="true" rop="4328"/>
-    </function>
-
-    <function name="MatrixIndexPointerARB">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-</category>
-
-<category name="GL_ARB_texture_env_combine" number="17">
-    <enum name="COMBINE_ARB"                              value="0x8570"/>
-    <enum name="COMBINE_RGB_ARB"                          value="0x8571"/>
-    <enum name="COMBINE_ALPHA_ARB"                        value="0x8572"/>
-    <enum name="SOURCE0_RGB_ARB"                          value="0x8580"/>
-    <enum name="SOURCE1_RGB_ARB"                          value="0x8581"/>
-    <enum name="SOURCE2_RGB_ARB"                          value="0x8582"/>
-    <enum name="SOURCE0_ALPHA_ARB"                        value="0x8588"/>
-    <enum name="SOURCE1_ALPHA_ARB"                        value="0x8589"/>
-    <enum name="SOURCE2_ALPHA_ARB"                        value="0x858A"/>
-    <enum name="OPERAND0_RGB_ARB"                         value="0x8590"/>
-    <enum name="OPERAND1_RGB_ARB"                         value="0x8591"/>
-    <enum name="OPERAND2_RGB_ARB"                         value="0x8592"/>
-    <enum name="OPERAND0_ALPHA_ARB"                       value="0x8598"/>
-    <enum name="OPERAND1_ALPHA_ARB"                       value="0x8599"/>
-    <enum name="OPERAND2_ALPHA_ARB"                       value="0x859A"/>
-    <enum name="RGB_SCALE_ARB"                            value="0x8573"/>
-    <enum name="ADD_SIGNED_ARB"                           value="0x8574"/>
-    <enum name="INTERPOLATE_ARB"                          value="0x8575"/>
-    <enum name="SUBTRACT_ARB"                             value="0x84E7"/>
-    <enum name="CONSTANT_ARB"                             value="0x8576"/>
-    <enum name="PRIMARY_COLOR_ARB"                        value="0x8577"/>
-    <enum name="PREVIOUS_ARB"                             value="0x8578"/>
-</category>
-
-<category name="GL_ARB_texture_env_crossbar" number="18">
-    <!-- No new functions, types, enums. -->
-</category>
-
-<category name="GL_ARB_texture_env_dot3" number="19">
-    <enum name="DOT3_RGB_ARB"                             value="0x86AE"/>
-    <enum name="DOT3_RGBA_ARB"                            value="0x86AF"/>
-</category>
-
-<!-- ARB extension number 20 is a WGL extension. -->
-
-<category name="GL_ARB_texture_mirrored_repeat" number="21">
-    <enum name="MIRRORED_REPEAT_ARB"                      value="0x8370"/>
-</category>
-
-<category name="GL_ARB_depth_texture" number="22">
-    <enum name="DEPTH_COMPONENT16_ARB"                    value="0x81A5"/>
-    <enum name="DEPTH_COMPONENT24_ARB"                    value="0x81A6"/>
-    <enum name="DEPTH_COMPONENT32_ARB"                    value="0x81A7"/>
-    <enum name="TEXTURE_DEPTH_SIZE_ARB"        count="1"  value="0x884A">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="DEPTH_TEXTURE_MODE_ARB"        count="1"  value="0x884B">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-</category>
-
-<category name="GL_ARB_shadow" number="23">
-    <enum name="TEXTURE_COMPARE_MODE_ARB"      count="1"  value="0x884C">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COMPARE_FUNC_ARB"      count="1"  value="0x884D">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="COMPARE_R_TO_TEXTURE_ARB"                 value="0x884E"/>
-</category>
-
-<category name="GL_ARB_shadow_ambient" number="24">
-    <enum name="TEXTURE_COMPARE_FAIL_VALUE_ARB" count="1" value="0x80BF">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-</category>
-
-<category name="GL_ARB_window_pos" number="25">
-    <function name="WindowPos2dARB" alias="WindowPos2dMESA">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-    </function>
-
-    <function name="WindowPos2fARB" alias="WindowPos2fMESA">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-    </function>
-
-    <function name="WindowPos2iARB" alias="WindowPos2iMESA">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-    </function>
-
-    <function name="WindowPos2sARB" alias="WindowPos2sMESA">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-    </function>
-
-    <function name="WindowPos2dvARB" alias="WindowPos2dvMESA">
-        <param name="v" type="const GLdouble *"/>
-    </function>
-
-    <function name="WindowPos2fvARB" alias="WindowPos2fvMESA">
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="WindowPos2ivARB" alias="WindowPos2ivMESA">
-        <param name="v" type="const GLint *"/>
-    </function>
-
-    <function name="WindowPos2svARB" alias="WindowPos2svMESA">
-        <param name="v" type="const GLshort *"/>
-    </function>
-
-    <function name="WindowPos3dARB" alias="WindowPos3dMESA">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-    </function>
-
-    <function name="WindowPos3fARB" alias="WindowPos3fMESA">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="WindowPos3iARB" alias="WindowPos3iMESA">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="z" type="GLint"/>
-    </function>
-
-    <function name="WindowPos3sARB" alias="WindowPos3sMESA">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-    </function>
-
-    <function name="WindowPos3dvARB" alias="WindowPos3dvMESA">
-        <param name="v" type="const GLdouble *"/>
-    </function>
-
-    <function name="WindowPos3fvARB" alias="WindowPos3fvMESA">
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="WindowPos3ivARB" alias="WindowPos3ivMESA">
-        <param name="v" type="const GLint *"/>
-    </function>
-
-    <function name="WindowPos3svARB" alias="WindowPos3svMESA">
-        <param name="v" type="const GLshort *"/>
-    </function>
-</category>
-
-<category name="GL_ARB_vertex_program" number="26">
-    <enum name="COLOR_SUM_ARB"                 count="1"  value="0x8458">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_PROGRAM_ARB"            count="1"  value="0x8620">
-        <size name="GetVertexAttribdvARB" mode="get"/>
-        <size name="GetVertexAttribfvARB" mode="get"/>
-        <size name="GetVertexAttribivARB" mode="get"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ATTRIB_ARRAY_ENABLED_ARB" count="1" value="0x8622">
-        <size name="GetVertexAttribdvARB" mode="get"/>
-        <size name="GetVertexAttribfvARB" mode="get"/>
-        <size name="GetVertexAttribivARB" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ATTRIB_ARRAY_SIZE_ARB"  count="1"  value="0x8623">
-        <size name="GetVertexAttribdvARB" mode="get"/>
-        <size name="GetVertexAttribfvARB" mode="get"/>
-        <size name="GetVertexAttribivARB" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ATTRIB_ARRAY_STRIDE_ARB" count="1" value="0x8624">
-        <size name="GetVertexAttribdvARB" mode="get"/>
-        <size name="GetVertexAttribfvARB" mode="get"/>
-        <size name="GetVertexAttribivARB" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ATTRIB_ARRAY_TYPE_ARB"  count="1"  value="0x8625">
-        <size name="GetVertexAttribdvARB" mode="get"/>
-        <size name="GetVertexAttribfvARB" mode="get"/>
-        <size name="GetVertexAttribivARB" mode="get"/>
-    </enum>
-    <enum name="CURRENT_VERTEX_ATTRIB_ARB"     count="1"  value="0x8626">
-        <size name="GetVertexAttribdvARB" mode="get"/>
-        <size name="GetVertexAttribfvARB" mode="get"/>
-        <size name="GetVertexAttribivARB" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_LENGTH_ARB"            count="1"  value="0x8627">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_STRING_ARB"                       value="0x8628"/>
-    <enum name="MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB" count="1" value="0x862E">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_MATRICES_ARB"      count="1"  value="0x862F">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CURRENT_MATRIX_STACK_DEPTH_ARB" count="1" value="0x8640">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="CURRENT_MATRIX_ARB"            count="16" value="0x8641">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_PROGRAM_POINT_SIZE_ARB" count="1"  value="0x8642">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_PROGRAM_TWO_SIDE_ARB"   count="1"  value="0x8643">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ATTRIB_ARRAY_POINTER_ARB"          value="0x8645"/>
-    <enum name="PROGRAM_ERROR_POSITION_ARB"    count="1"  value="0x864B">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_BINDING_ARB"           count="1"  value="0x8677">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_VERTEX_ATTRIBS_ARB"        count="1"  value="0x8869">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB"       value="0x886A"/>
-    <enum name="PROGRAM_ERROR_STRING_ARB"                 value="0x8874"/>
-    <enum name="PROGRAM_FORMAT_ASCII_ARB"                 value="0x8875"/>
-    <enum name="PROGRAM_FORMAT_ARB"            count="1"  value="0x8876">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_INSTRUCTIONS_ARB"      count="1"  value="0x88A0">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_INSTRUCTIONS_ARB"  count="1"  value="0x88A1">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_NATIVE_INSTRUCTIONS_ARB" count="1" value="0x88A2">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB" count="1" value="0x88A3">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_TEMPORARIES_ARB"       count="1"  value="0x88A4">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_TEMPORARIES_ARB"   count="1"  value="0x88A5">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_NATIVE_TEMPORARIES_ARB" count="1" value="0x88A6">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_NATIVE_TEMPORARIES_ARB" count="1" value="0x88A7">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_PARAMETERS_ARB"        count="1"  value="0x88A8">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_PARAMETERS_ARB"    count="1"  value="0x88A9">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_NATIVE_PARAMETERS_ARB" count="1"  value="0x88AA">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_NATIVE_PARAMETERS_ARB" count="1" value="0x88AB">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_ATTRIBS_ARB"           count="1"  value="0x88AC">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_ATTRIBS_ARB"       count="1"  value="0x88AD">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_NATIVE_ATTRIBS_ARB"    count="1"  value="0x88AE">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_NATIVE_ATTRIBS_ARB" count="1" value="0x88AF">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_ADDRESS_REGISTERS_ARB" count="1"  value="0x88B0">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_ADDRESS_REGISTERS_ARB" count="1" value="0x88B1">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB" count="1" value="0x88B2">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB" count="1" value="0x88B3">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_LOCAL_PARAMETERS_ARB" count="1" value="0x88B4">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_ENV_PARAMETERS_ARB" count="1" value="0x88B5">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_UNDER_NATIVE_LIMITS_ARB" count="1" value="0x88B6">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="TRANSPOSE_CURRENT_MATRIX_ARB"  count="16" value="0x88B7">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MATRIX0_ARB"                              value="0x88C0"/>
-    <enum name="MATRIX1_ARB"                              value="0x88C1"/>
-    <enum name="MATRIX2_ARB"                              value="0x88C2"/>
-    <enum name="MATRIX3_ARB"                              value="0x88C3"/>
-    <enum name="MATRIX4_ARB"                              value="0x88C4"/>
-    <enum name="MATRIX5_ARB"                              value="0x88C5"/>
-    <enum name="MATRIX6_ARB"                              value="0x88C6"/>
-    <enum name="MATRIX7_ARB"                              value="0x88C7"/>
-    <enum name="MATRIX8_ARB"                              value="0x88C8"/>
-    <enum name="MATRIX9_ARB"                              value="0x88C9"/>
-    <enum name="MATRIX10_ARB"                             value="0x88CA"/>
-    <enum name="MATRIX11_ARB"                             value="0x88CB"/>
-    <enum name="MATRIX12_ARB"                             value="0x88CC"/>
-    <enum name="MATRIX13_ARB"                             value="0x88CD"/>
-    <enum name="MATRIX14_ARB"                             value="0x88CE"/>
-    <enum name="MATRIX15_ARB"                             value="0x88CF"/>
-    <enum name="MATRIX16_ARB"                             value="0x88D0"/>
-    <enum name="MATRIX17_ARB"                             value="0x88D1"/>
-    <enum name="MATRIX18_ARB"                             value="0x88D2"/>
-    <enum name="MATRIX19_ARB"                             value="0x88D3"/>
-    <enum name="MATRIX20_ARB"                             value="0x88D4"/>
-    <enum name="MATRIX21_ARB"                             value="0x88D5"/>
-    <enum name="MATRIX22_ARB"                             value="0x88D6"/>
-    <enum name="MATRIX23_ARB"                             value="0x88D7"/>
-    <enum name="MATRIX24_ARB"                             value="0x88D8"/>
-    <enum name="MATRIX25_ARB"                             value="0x88D9"/>
-    <enum name="MATRIX26_ARB"                             value="0x88DA"/>
-    <enum name="MATRIX27_ARB"                             value="0x88DB"/>
-    <enum name="MATRIX28_ARB"                             value="0x88DC"/>
-    <enum name="MATRIX29_ARB"                             value="0x88DD"/>
-    <enum name="MATRIX30_ARB"                             value="0x88DE"/>
-    <enum name="MATRIX31_ARB"                             value="0x88DF"/>
-
-    <function name="GetVertexAttribdvARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
-        <glx handcode="client" vendorpriv="1301"/>
-    </function>
-
-    <function name="GetVertexAttribfvARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx handcode="client" vendorpriv="1302"/>
-    </function>
-
-    <function name="GetVertexAttribivARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx handcode="client" vendorpriv="1303"/>
-    </function>
-
-    <function name="VertexAttrib1dARB" offset="assign" vectorequiv="VertexAttrib1dvARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLdouble"/>
-    </function>
-
-    <function name="VertexAttrib1dvARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLdouble *" count="1"/>
-        <glx rop="4197" doubles_in_order="true"/>
-    </function>
-
-    <function name="VertexAttrib1fARB" offset="assign" vectorequiv="VertexAttrib1fvARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-    </function>
-
-    <function name="VertexAttrib1fvARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLfloat *" count="1"/>
-        <glx rop="4193"/>
-    </function>
-
-    <function name="VertexAttrib1sARB" offset="assign" vectorequiv="VertexAttrib1svARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLshort"/>
-    </function>
-
-    <function name="VertexAttrib1svARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLshort *" count="1"/>
-        <glx rop="4189"/>
-    </function>
-
-    <function name="VertexAttrib2dARB" offset="assign" vectorequiv="VertexAttrib2dvARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-    </function>
-
-    <function name="VertexAttrib2dvARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLdouble *" count="2"/>
-        <glx rop="4198" doubles_in_order="true"/>
-    </function>
-
-    <function name="VertexAttrib2fARB" offset="assign" vectorequiv="VertexAttrib2fvARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-    </function>
-
-    <function name="VertexAttrib2fvARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLfloat *" count="2"/>
-        <glx rop="4194"/>
-    </function>
-
-    <function name="VertexAttrib2sARB" offset="assign" vectorequiv="VertexAttrib2svARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-    </function>
-
-    <function name="VertexAttrib2svARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLshort *" count="2"/>
-        <glx rop="4190"/>
-    </function>
-
-    <function name="VertexAttrib3dARB" offset="assign" vectorequiv="VertexAttrib3dvARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-    </function>
-
-    <function name="VertexAttrib3dvARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLdouble *" count="3"/>
-        <glx rop="4199" doubles_in_order="true"/>
-    </function>
-
-    <function name="VertexAttrib3fARB" offset="assign" vectorequiv="VertexAttrib3fvARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="VertexAttrib3fvARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLfloat *" count="3"/>
-        <glx rop="4195"/>
-    </function>
-
-    <function name="VertexAttrib3sARB" offset="assign" vectorequiv="VertexAttrib3svARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-    </function>
-
-    <function name="VertexAttrib3svARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLshort *" count="3"/>
-        <glx rop="4191"/>
-    </function>
-
-    <function name="VertexAttrib4dARB" offset="assign" vectorequiv="VertexAttrib4dvARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <param name="w" type="GLdouble"/>
-    </function>
-
-    <function name="VertexAttrib4dvARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLdouble *" count="4"/>
-        <glx rop="4200" doubles_in_order="true"/>
-    </function>
-
-    <function name="VertexAttrib4fARB" offset="assign" vectorequiv="VertexAttrib4fvARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <param name="w" type="GLfloat"/>
-    </function>
-
-    <function name="VertexAttrib4fvARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLfloat *" count="4"/>
-        <glx rop="4196"/>
-    </function>
-
-    <function name="VertexAttrib4sARB" offset="assign" vectorequiv="VertexAttrib4svARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-        <param name="w" type="GLshort"/>
-    </function>
-
-    <function name="VertexAttrib4svARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLshort *" count="4"/>
-        <glx rop="4192"/>
-    </function>
-
-    <function name="VertexAttrib4NubARB" offset="assign" vectorequiv="VertexAttrib4NubvARB">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLubyte"/>
-        <param name="y" type="GLubyte"/>
-        <param name="z" type="GLubyte"/>
-        <param name="w" type="GLubyte"/>
-    </function>
-
-    <function name="VertexAttrib4NubvARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLubyte *" count="4"/>
-        <glx rop="4201"/>
-    </function>
-
-    <function name="VertexAttrib4bvARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLbyte *" count="4"/>
-        <glx rop="4230"/>
-    </function>
-
-    <function name="VertexAttrib4ivARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLint *" count="4"/>
-        <glx rop="4231"/>
-    </function>
-
-    <function name="VertexAttrib4ubvARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLubyte *" count="4"/>
-        <glx rop="4232"/>
-    </function>
-
-    <function name="VertexAttrib4usvARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLushort *" count="4"/>
-        <glx rop="4233"/>
-    </function>
-
-    <function name="VertexAttrib4uivARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLuint *" count="4"/>
-        <glx rop="4234"/>
-    </function>
-
-    <function name="VertexAttrib4NbvARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLbyte *" count="4"/>
-        <glx rop="4235"/>
-    </function>
-
-    <function name="VertexAttrib4NsvARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLshort *" count="4"/>
-        <glx rop="4236"/>
-    </function>
-
-    <function name="VertexAttrib4NivARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLint *" count="4"/>
-        <glx rop="4237"/>
-    </function>
-
-    <function name="VertexAttrib4NusvARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLushort *" count="4"/>
-        <glx rop="4238"/>
-    </function>
-
-    <function name="VertexAttrib4NuivARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLuint *" count="4"/>
-        <glx rop="4239"/>
-    </function>
-
-    <function name="VertexAttribPointerARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="normalized" type="GLboolean"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="EnableVertexAttribArrayARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="DisableVertexAttribArrayARB" offset="assign">
-        <param name="index" type="GLuint"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="ProgramStringARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="format" type="GLenum"/>
-        <param name="len" type="GLsizei" counter="true"/>
-        <param name="string" type="const GLvoid *" count="len"/>
-        <glx rop="4217" large="true"/>
-    </function>
-
-    <function name="BindProgramARB" alias="BindProgramNV">
-        <param name="target" type="GLenum"/>
-        <param name="program" type="GLuint"/>
-    </function>
-
-    <function name="DeleteProgramsARB" alias="DeleteProgramsNV">
-        <param name="n" type="GLsizei"/>
-        <param name="programs" type="const GLuint *"/>
-    </function>
-
-    <function name="GenProgramsARB" alias="GenProgramsNV">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="programs" type="GLuint *" output="true" count="n"/>
-    </function>
-
-    <function name="IsProgramARB" alias="IsProgramNV">
-        <param name="program" type="GLuint"/>
-        <return type="GLboolean"/>
-    </function>
-
-    <function name="ProgramEnvParameter4dARB" offset="assign" vectorequiv="ProgramEnvParameter4dvARB">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <param name="w" type="GLdouble"/>
-    </function>
-
-    <function name="ProgramEnvParameter4dvARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="params" type="const GLdouble *" count="4"/>
-        <glx rop="4185" doubles_in_order="true"/>
-    </function>
-
-    <function name="ProgramEnvParameter4fARB" offset="assign" vectorequiv="ProgramEnvParameter4fvARB">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <param name="w" type="GLfloat"/>
-    </function>
-
-    <function name="ProgramEnvParameter4fvARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="params" type="const GLfloat *" count="4"/>
-        <glx rop="4184"/>
-    </function>
-
-    <function name="ProgramLocalParameter4dARB" offset="assign" vectorequiv="ProgramLocalParameter4dvARB">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <param name="w" type="GLdouble"/>
-    </function>
-
-    <function name="ProgramLocalParameter4dvARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="params" type="const GLdouble *" count="4"/>
-        <glx rop="4216" doubles_in_order="true"/>
-    </function>
-
-    <function name="ProgramLocalParameter4fARB" offset="assign" vectorequiv="ProgramLocalParameter4fvARB">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <param name="w" type="GLfloat"/>
-    </function>
-
-    <function name="ProgramLocalParameter4fvARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="params" type="const GLfloat *" count="4"/>
-        <glx rop="4215"/>
-    </function>
-
-    <!-- The GetProgramEnvParameter[df]vARB are handcoded because there
-         is an extra CARD32 of padding after the "index" field.  Originally,
-         GetProgranEnvParameter[df]vARB and GetProgramParameter[df]vNV
-         shared the same GLX protocol.  The pad field was where the pname
-         parameter was in the NV functions.  When this error was discovered
-         and fixed, there was already at least one implementation of
-         GLX protocol for ARB_vertex_program, but there were no
-         implementations of NV_vertex_program.  The sollution was to renumber
-         the opcodes for NV_vertex_program and convert the unused field in
-         the ARB_vertex_program protocol to unused padding.
-      -->
-
-    <function name="GetProgramEnvParameterdvARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="params" type="GLdouble *" output="true" count="4"/>
-        <glx vendorpriv="1297" handcode="client" doubles_in_order="true"/>
-    </function>
-
-    <function name="GetProgramEnvParameterfvARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="params" type="GLfloat *" output="true" count="4"/>
-        <glx vendorpriv="1296" handcode="client"/>
-    </function>
-
-    <function name="GetProgramLocalParameterdvARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="params" type="GLdouble *" output="true" count="4"/>
-        <glx vendorpriv="1306" handcode="client" doubles_in_order="true"/>
-    </function>
-
-    <function name="GetProgramLocalParameterfvARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="params" type="GLfloat *" output="true" count="4"/>
-        <glx vendorpriv="1305" handcode="client"/>
-    </function>
-
-
-    <function name="GetProgramivARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx vendorpriv="1307"/>
-    </function>
-
-    <function name="GetProgramStringARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="string" type="GLvoid *" output="true"/>
-        <glx vendorpriv="1308" handcode="server" always_array="true"/>
-    </function>
-
-    <function name="GetVertexAttribPointervARB" alias="GetVertexAttribPointervNV">
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="pointer" type="GLvoid **" output="true"/>
-    </function>
-</category>
-
-<category name="GL_ARB_fragment_program" number="27">
-    <enum name="FRAGMENT_PROGRAM_ARB"          count="1"  value="0x8804">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_ALU_INSTRUCTIONS_ARB"  count="1"  value="0x8805">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_TEX_INSTRUCTIONS_ARB"  count="1"  value="0x8806">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_TEX_INDIRECTIONS_ARB"  count="1"  value="0x8807">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB" count="1" value="0x8808">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB" count="1" value="0x8809">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB" count="1" value="0x880A">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_ALU_INSTRUCTIONS_ARB" count="1" value="0x880B">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_TEX_INSTRUCTIONS_ARB" count="1" value="0x880C">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_TEX_INDIRECTIONS_ARB" count="1" value="0x880D">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB" count="1" value="0x880E">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB" count="1" value="0x880F">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB" count="1" value="0x8810">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_TEXTURE_COORDS_ARB"        count="1"  value="0x8871">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_TEXTURE_IMAGE_UNITS_ARB"   count="1"  value="0x8872">
-        <size name="Get" mode="get"/>
-    </enum>
-</category>
-
-<category name="GL_ARB_vertex_buffer_object" number="28">
-    <enum name="BUFFER_SIZE_ARB"               count="1"  value="0x8764">
-        <size name="GetBufferParameterivARB" mode="get"/>
-    </enum>
-    <enum name="BUFFER_USAGE_ARB"              count="1"  value="0x8765">
-        <size name="GetBufferParameterivARB" mode="get"/>
-    </enum>
-    <enum name="ARRAY_BUFFER_BINDING_ARB"      count="1"  value="0x8894">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ELEMENT_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x8895">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x8896">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="NORMAL_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x8897">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COLOR_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x8898">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="INDEX_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x8899">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x889A">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x889B">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x889C">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x889D">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="WEIGHT_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x889E">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB" count="1" value="0x889F">
-        <size name="GetVertexAttribdvARB" mode="get"/>
-        <size name="GetVertexAttribfvARB" mode="get"/>
-        <size name="GetVertexAttribivARB" mode="get"/>
-    </enum>
-    <enum name="READ_ONLY_ARB"                            value="0x88B8"/>
-    <enum name="WRITE_ONLY_ARB"                           value="0x88B9"/>
-    <enum name="READ_WRITE_ARB"                           value="0x88BA"/>
-    <enum name="BUFFER_ACCESS_ARB"             count="1"  value="0x88BB">
-        <size name="GetBufferParameterivARB" mode="get"/>
-    </enum>
-    <enum name="BUFFER_MAPPED_ARB"             count="1"  value="0x88BC">
-        <size name="GetBufferParameterivARB" mode="get"/>
-    </enum>
-    <enum name="BUFFER_MAP_POINTER_ARB"                   value="0x88BD"/>
-    <enum name="STREAM_DRAW_ARB"                          value="0x88E0"/>
-    <enum name="STREAM_READ_ARB"                          value="0x88E1"/>
-    <enum name="STREAM_COPY_ARB"                          value="0x88E2"/>
-    <enum name="STATIC_DRAW_ARB"                          value="0x88E4"/>
-    <enum name="STATIC_READ_ARB"                          value="0x88E5"/>
-    <enum name="STATIC_COPY_ARB"                          value="0x88E6"/>
-    <enum name="DYNAMIC_DRAW_ARB"                         value="0x88E8"/>
-    <enum name="DYNAMIC_READ_ARB"                         value="0x88E9"/>
-    <enum name="DYNAMIC_COPY_ARB"                         value="0x88EA"/>
-
-    <type name="intptrARB"   size="4"                  glx_name="CARD32"/>
-    <type name="sizeiptrARB" size="4"  unsigned="true" glx_name="CARD32"/>
-
-    <function name="BindBufferARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="buffer" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="BufferDataARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="size" type="GLsizeiptrARB" counter="true"/>
-        <param name="data" type="const GLvoid *" count="size" img_null_flag="true"/>
-        <param name="usage" type="GLenum"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="BufferSubDataARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="offset" type="GLintptrARB"/>
-        <param name="size" type="GLsizeiptrARB" counter="true"/>
-        <param name="data" type="const GLvoid *" count="size"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="DeleteBuffersARB" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="buffer" type="const GLuint *" count="n"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GenBuffersARB" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="buffer" type="GLuint *" output="true" count="n"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetBufferParameterivARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetBufferPointervARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLvoid **" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetBufferSubDataARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="offset" type="GLintptrARB"/>
-        <param name="size" type="GLsizeiptrARB" counter="true"/>
-        <param name="data" type="GLvoid *" output="true" count="size"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="IsBufferARB" offset="assign">
-        <param name="buffer" type="GLuint"/>
-        <return type="GLboolean"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="MapBufferARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="access" type="GLenum"/>
-        <return type="GLvoid *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="UnmapBufferARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <return type="GLboolean"/>
-        <glx ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_ARB_occlusion_query" number="29">
-    <enum name="QUERY_COUNTER_BITS_ARB"        count="1"  value="0x8864">
-        <size name="GetQueryivARB" mode="get"/>
-    </enum>
-    <enum name="CURRENT_QUERY_ARB"             count="1"  value="0x8865">
-        <size name="GetQueryivARB" mode="get"/>
-    </enum>
-    <enum name="QUERY_RESULT_ARB"              count="1"  value="0x8866">
-        <size name="GetQueryObjectivARB" mode="get"/>
-        <size name="GetQueryObjectuivARB" mode="get"/>
-    </enum>
-    <enum name="QUERY_RESULT_AVAILABLE_ARB"    count="1"  value="0x8867">
-        <size name="GetQueryObjectivARB" mode="get"/>
-        <size name="GetQueryObjectuivARB" mode="get"/>
-    </enum>
-    <enum name="SAMPLES_PASSED_ARB"                       value="0x8914"/>
-
-    <function name="GenQueriesARB" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="ids" type="GLuint *" output="true" count="n"/>
-        <glx sop="162" always_array="true"/>
-    </function>
-
-    <function name="DeleteQueriesARB" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="ids" type="const GLuint *" count="n"/>
-        <glx sop="161"/>
-    </function>
-
-    <function name="IsQueryARB" offset="assign">
-        <param name="id" type="GLuint"/>
-        <return type="GLboolean"/>
-        <glx sop="163"/>
-    </function>
-
-    <function name="BeginQueryARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="id" type="GLuint"/>
-        <glx rop="231"/>
-    </function>
-
-    <function name="EndQueryARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <glx rop="232"/>
-    </function>
-
-    <function name="GetQueryivARB" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="164"/>
-    </function>
-
-    <function name="GetQueryObjectivARB" offset="assign">
-        <param name="id" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx sop="165"/>
-    </function>
-
-    <function name="GetQueryObjectuivARB" offset="assign">
-        <param name="id" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLuint *" output="true" variable_param="pname"/>
-        <glx sop="166"/>
-    </function>
-</category>
-
-<category name="GL_ARB_shader_objects" number="30">
-    <enum name="PROGRAM_OBJECT_ARB"                       value="0x8B40"/>
-    <enum name="SHADER_OBJECT_ARB"                        value="0x8B48"/>
-    <enum name="OBJECT_TYPE_ARB"                          value="0x8B4E"/>
-    <enum name="OBJECT_SUBTYPE_ARB"                       value="0x8B4F"/>
-    <enum name="FLOAT_VEC2_ARB"                           value="0x8B50"/>
-    <enum name="FLOAT_VEC3_ARB"                           value="0x8B51"/>
-    <enum name="FLOAT_VEC4_ARB"                           value="0x8B52"/>
-    <enum name="INT_VEC2_ARB"                             value="0x8B53"/>
-    <enum name="INT_VEC3_ARB"                             value="0x8B54"/>
-    <enum name="INT_VEC4_ARB"                             value="0x8B55"/>
-    <enum name="BOOL_ARB"                                 value="0x8B56"/>
-    <enum name="BOOL_VEC2_ARB"                            value="0x8B57"/>
-    <enum name="BOOL_VEC3_ARB"                            value="0x8B58"/>
-    <enum name="BOOL_VEC4_ARB"                            value="0x8B59"/>
-    <enum name="FLOAT_MAT2_ARB"                           value="0x8B5A"/>
-    <enum name="FLOAT_MAT3_ARB"                           value="0x8B5B"/>
-    <enum name="FLOAT_MAT4_ARB"                           value="0x8B5C"/>
-    <enum name="OBJECT_DELETE_STATUS_ARB"                 value="0x8B80"/>
-    <enum name="OBJECT_COMPILE_STATUS_ARB"                value="0x8B81"/>
-    <enum name="OBJECT_LINK_STATUS_ARB"                   value="0x8B82"/>
-    <enum name="OBJECT_VALIDATE_STATUS_ARB"               value="0x8B83"/>
-    <enum name="OBJECT_INFO_LOG_LENGTH_ARB"               value="0x8B84"/>
-    <enum name="OBJECT_ATTACHED_OBJECTS_ARB"              value="0x8B85"/>
-    <enum name="OBJECT_ACTIVE_UNIFORMS_ARB"               value="0x8B86"/>
-    <enum name="OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB"     value="0x8B87"/>
-    <enum name="OBJECT_SHADER_SOURCE_LENGTH_ARB"          value="0x8B88"/>
-
-    <type name="charARB"   size="1" glx_name="CARD8"/>
-    <type name="handleARB" size="4" glx_name="CARD32"/>
-
-    <function name="DeleteObjectARB" offset="assign">
-        <param name="obj" type="GLhandleARB"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetHandleARB" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <return type="GLhandleARB"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="DetachObjectARB" offset="assign">
-        <param name="containerObj" type="GLhandleARB"/>
-        <param name="attachedObj" type="GLhandleARB"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="CreateShaderObjectARB" offset="assign">
-        <param name="shaderType" type="GLenum"/>
-        <return type="GLhandleARB"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="ShaderSourceARB" offset="assign">
-        <param name="shader" type="GLhandleARB"/>
-        <param name="count" type="GLsizei"/>
-        <param name="string" type="const GLcharARB **"/>
-        <param name="length" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="CompileShaderARB" offset="assign">
-        <param name="shader" type="GLhandleARB"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="CreateProgramObjectARB" offset="assign">
-        <return type="GLhandleARB"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="AttachObjectARB" offset="assign">
-        <param name="containerObj" type="GLhandleARB"/>
-        <param name="obj" type="GLhandleARB"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="LinkProgramARB" offset="assign">
-        <param name="program" type="GLhandleARB"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="UseProgramObjectARB" offset="assign">
-        <param name="program" type="GLhandleARB"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="ValidateProgramARB" offset="assign">
-        <param name="program" type="GLhandleARB"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform1fARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform2fARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLfloat"/>
-        <param name="v1" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform3fARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLfloat"/>
-        <param name="v1" type="GLfloat"/>
-        <param name="v2" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform4fARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLfloat"/>
-        <param name="v1" type="GLfloat"/>
-        <param name="v2" type="GLfloat"/>
-        <param name="v3" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform1iARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform2iARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLint"/>
-        <param name="v1" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform3iARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLint"/>
-        <param name="v1" type="GLint"/>
-        <param name="v2" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform4iARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="v0" type="GLint"/>
-        <param name="v1" type="GLint"/>
-        <param name="v2" type="GLint"/>
-        <param name="v3" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform1fvARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform2fvARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform3fvARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform4fvARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform1ivARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform2ivARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform3ivARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="Uniform4ivARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="value" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="UniformMatrix2fvARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="transpose" type="GLboolean"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="UniformMatrix3fvARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="transpose" type="GLboolean"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="UniformMatrix4fvARB" offset="assign">
-        <param name="location" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="transpose" type="GLboolean"/>
-        <param name="value" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetObjectParameterfvARB" offset="assign">
-        <param name="obj" type="GLhandleARB"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetObjectParameterivARB" offset="assign">
-        <param name="obj" type="GLhandleARB"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetInfoLogARB" offset="assign">
-        <param name="obj" type="GLhandleARB"/>
-        <param name="maxLength" type="GLsizei"/>
-        <param name="length" type="GLsizei *" output="true"/>
-        <param name="infoLog" type="GLcharARB *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetAttachedObjectsARB" offset="assign">
-        <param name="containerObj" type="GLhandleARB"/>
-        <param name="maxLength" type="GLsizei"/>
-        <param name="length" type="GLsizei *" output="true"/>
-        <param name="infoLog" type="GLhandleARB *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetUniformLocationARB" offset="assign">
-        <param name="program" type="GLhandleARB"/>
-        <param name="name" type="const GLcharARB *"/>
-        <return type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetActiveUniformARB" offset="assign">
-        <param name="program" type="GLhandleARB"/>
-        <param name="index" type="GLuint"/>
-        <param name="bufSize" type="GLsizei"/>
-        <param name="length" type="GLsizei *" output="true"/>
-        <param name="size" type="GLint *" output="true"/>
-        <param name="type" type="GLenum *" output="true"/>
-        <param name="name" type="GLcharARB *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetUniformfvARB" offset="assign">
-        <param name="program" type="GLhandleARB"/>
-        <param name="location" type="GLint"/>
-        <param name="params" type="GLfloat *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetUniformivARB" offset="assign">
-        <param name="program" type="GLhandleARB"/>
-        <param name="location" type="GLint"/>
-        <param name="params" type="GLint *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetShaderSourceARB" offset="assign">
-        <param name="shader" type="GLhandleARB"/>
-        <param name="bufSize" type="GLsizei"/>
-        <param name="length" type="GLsizei *" output="true"/>
-        <param name="source" type="GLcharARB *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_ARB_vertex_shader" number="31">
-    <enum name="VERTEX_SHADER_ARB"                        value="0x8B31"/>
-    <enum name="MAX_VERTEX_UNIFORM_COMPONENTS_ARB"        value="0x8B4A"/>
-    <enum name="MAX_VARYING_FLOATS_ARB"                   value="0x8B4B"/>
-    <enum name="MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB"       value="0x8B4C"/>
-    <enum name="MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB"     value="0x8B4D"/>
-    <enum name="OBJECT_ACTIVE_ATTRIBUTES_ARB"             value="0x8B89"/>
-    <enum name="OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB"   value="0x8B8A"/>
-
-    <function name="BindAttribLocationARB" offset="assign">
-        <param name="program" type="GLhandleARB"/>
-        <param name="index" type="GLuint"/>
-        <param name="name" type="const GLcharARB *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetActiveAttribARB" offset="assign">
-        <param name="program" type="GLhandleARB"/>
-        <param name="index" type="GLuint"/>
-        <param name="bufSize" type="GLsizei"/>
-        <param name="length" type="GLsizei *" output="true"/>
-        <param name="size" type="GLint *" output="true"/>
-        <param name="type" type="GLenum *" output="true"/>
-        <param name="name" type="GLcharARB *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetAttribLocationARB" offset="assign">
-        <param name="program" type="GLhandleARB"/>
-        <param name="name" type="const GLcharARB *"/>
-        <return type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_ARB_fragment_shader" number="32">
-    <enum name="FRAGMENT_SHADER_ARB"                      value="0x8B30"/>
-    <enum name="MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB"      value="0x8B49"/>
-</category>
-
-<category name="GL_ARB_shading_language_100" number="33">
-    <!-- No new functions, types, enums. -->
-</category>
-
-<category name="GL_ARB_texture_non_power_of_two" number="34">
-    <!-- No new functions, types, enums. -->
-</category>
-
-<category name="GL_ARB_point_sprite" number="35">
-    <enum name="POINT_SPRITE_ARB"              count="1"  value="0x8861">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COORD_REPLACE_ARB"             count="1"  value="0x8862">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-</category>
-
-<category name="GL_ARB_fragment_program_shadow" number="36">
-    <!-- No new functions, types, enums. -->
-</category>
-
-<category name="GL_ARB_draw_buffers" number="37">
-    <enum name="MAX_DRAW_BUFFERS_ARB"          count="1"  value="0x8824">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER0_ARB"              count="1"  value="0x8825">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER1_ARB"              count="1"  value="0x8826">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER2_ARB"              count="1"  value="0x8827">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER3_ARB"              count="1"  value="0x8828">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER4_ARB"              count="1"  value="0x8829">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER5_ARB"              count="1"  value="0x882A">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER6_ARB"              count="1"  value="0x882B">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER7_ARB"              count="1"  value="0x882C">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER8_ARB"              count="1"  value="0x882D">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER9_ARB"              count="1"  value="0x882E">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER10_ARB"             count="1"  value="0x882F">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER11_ARB"             count="1"  value="0x8830">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER12_ARB"             count="1"  value="0x8831">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER13_ARB"             count="1"  value="0x8832">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER14_ARB"             count="1"  value="0x8833">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER15_ARB"             count="1"  value="0x8834">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="DrawBuffersARB" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="bufs" type="const GLenum *" count="n"/>
-        <glx rop="233" large="true"/>
-    </function>
-</category>
-
-<category name="GL_ARB_texture_rectangle" number="38">
-    <enum name="TEXTURE_RECTANGLE_ARB"         count="1"  value="0x84F5">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_BINDING_RECTANGLE_ARB" count="1"  value="0x84F6">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PROXY_TEXTURE_RECTANGLE_ARB"              value="0x84F7"/>
-    <enum name="MAX_RECTANGLE_TEXTURE_SIZE_ARB" count="1" value="0x84F8">
-        <size name="Get" mode="get"/>
-    </enum>
-</category>
-
-<xi:include href="ARB_framebuffer_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<xi:include href="ARB_copy_buffer.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<xi:include href="ARB_depth_clamp.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<xi:include href="ARB_map_buffer_range.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<xi:include href="ARB_vertex_array_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<xi:include href="ARB_sync.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<xi:include href="ARB_seamless_cube_map.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<xi:include href="ARB_draw_elements_base_vertex.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<xi:include href="NV_conditional_render.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<xi:include href="EXT_transform_feedback.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<xi:include href="ARB_draw_instanced.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-
-<!-- Non-ARB extensions sorted by extension number. -->
-
-<category name="GL_EXT_blend_color" number="2">
-    <enum name="CONSTANT_COLOR_EXT"                       value="0x8001"/>
-    <enum name="ONE_MINUS_CONSTANT_COLOR_EXT"             value="0x8002"/>
-    <enum name="CONSTANT_ALPHA_EXT"                       value="0x8003"/>
-    <enum name="ONE_MINUS_CONSTANT_ALPHA_EXT"             value="0x8004"/>
-    <enum name="BLEND_COLOR_EXT"               count="4"  value="0x8005">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="BlendColorEXT" alias="BlendColor">
-        <param name="red" type="GLclampf"/>
-        <param name="green" type="GLclampf"/>
-        <param name="blue" type="GLclampf"/>
-        <param name="alpha" type="GLclampf"/>
-    </function>
-</category>
-
-<category name="GL_EXT_polygon_offset" number="3">
-    <function name="PolygonOffsetEXT" offset="assign">
-        <param name="factor" type="GLfloat"/>
-        <param name="bias" type="GLfloat"/>
-        <glx rop="4098" ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_EXT_texture" number="4">
-    <enum name="ALPHA4_EXT"                               value="0x803B"/>
-    <enum name="ALPHA8_EXT"                               value="0x803C"/>
-    <enum name="ALPHA12_EXT"                              value="0x803D"/>
-    <enum name="ALPHA16_EXT"                              value="0x803E"/>
-    <enum name="LUMINANCE4_EXT"                           value="0x803F"/>
-    <enum name="LUMINANCE8_EXT"                           value="0x8040"/>
-    <enum name="LUMINANCE12_EXT"                          value="0x8041"/>
-    <enum name="LUMINANCE16_EXT"                          value="0x8042"/>
-    <enum name="LUMINANCE4_ALPHA4_EXT"                    value="0x8043"/>
-    <enum name="LUMINANCE6_ALPHA2_EXT"                    value="0x8044"/>
-    <enum name="LUMINANCE8_ALPHA8_EXT"                    value="0x8045"/>
-    <enum name="LUMINANCE12_ALPHA4_EXT"                   value="0x8046"/>
-    <enum name="LUMINANCE12_ALPHA12_EXT"                  value="0x8047"/>
-    <enum name="LUMINANCE16_ALPHA16_EXT"                  value="0x8048"/>
-    <enum name="INTENSITY_EXT"                            value="0x8049"/>
-    <enum name="INTENSITY4_EXT"                           value="0x804A"/>
-    <enum name="INTENSITY8_EXT"                           value="0x804B"/>
-    <enum name="INTENSITY12_EXT"                          value="0x804C"/>
-    <enum name="INTENSITY16_EXT"                          value="0x804D"/>
-    <enum name="RGB2_EXT"                                 value="0x804E"/>
-    <enum name="RGB4_EXT"                                 value="0x804F"/>
-    <enum name="RGB5_EXT"                                 value="0x8050"/>
-    <enum name="RGB8_EXT"                                 value="0x8051"/>
-    <enum name="RGB10_EXT"                                value="0x8052"/>
-    <enum name="RGB12_EXT"                                value="0x8053"/>
-    <enum name="RGB16_EXT"                                value="0x8054"/>
-    <enum name="RGBA2_EXT"                                value="0x8055"/>
-    <enum name="RGBA4_EXT"                                value="0x8056"/>
-    <enum name="RGB5_A1_EXT"                              value="0x8057"/>
-    <enum name="RGBA8_EXT"                                value="0x8058"/>
-    <enum name="RGB10_A2_EXT"                             value="0x8059"/>
-    <enum name="RGBA12_EXT"                               value="0x805A"/>
-    <enum name="RGBA16_EXT"                               value="0x805B"/>
-    <enum name="TEXTURE_RED_SIZE_EXT"          count="1"  value="0x805C">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_GREEN_SIZE_EXT"        count="1"  value="0x805D">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_BLUE_SIZE_EXT"         count="1"  value="0x805E">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_ALPHA_SIZE_EXT"        count="1"  value="0x805F">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_LUMINANCE_SIZE_EXT"    count="1"  value="0x8060">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_INTENSITY_SIZE_EXT"    count="1"  value="0x8061">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-    <enum name="REPLACE_EXT"                              value="0x8062"/>
-    <enum name="PROXY_TEXTURE_1D_EXT"                     value="0x8063"/>
-    <enum name="PROXY_TEXTURE_2D_EXT"                     value="0x8064"/>
-    <enum name="TEXTURE_TOO_LARGE_EXT"                    value="0x8065"/>
-</category>
-
-<!-- Extension number 5 is not listed in the extension registry. -->
-
-<category name="GL_EXT_texture3D" number="6">
-    <function name="TexImage3DEXT" alias="TexImage3D">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="const GLvoid *"/>
-    </function>
-
-    <function name="TexSubImage3DEXT" alias="TexSubImage3D">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="UNUSED" type="GLuint" padding="true"/>
-        <param name="pixels" type="const GLvoid *"/>
-    </function>
-</category>
-
-<category name="GL_SGIS_texture_filter4" number="7">
-    <function name="GetTexFilterFuncSGIS">
-        <param name="target" type="GLenum"/>
-        <param name="filter" type="GLenum"/>
-        <param name="weights" type="GLfloat *" output="true"/>
-        <glx vendorpriv="4101" ignore="true"/>
-    </function>
-
-    <function name="TexFilterFuncSGIS">
-        <param name="target" type="GLenum"/>
-        <param name="filter" type="GLenum"/>
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="weights" type="const GLfloat *" count="n"/>
-        <glx rop="2064" ignore="true"/>
-    </function>
-</category>
-
-<!-- Extension number 8 is not listed in the extension registry. -->
-
-<category name="GL_EXT_subtexture" number="9">
-    <function name="TexSubImage1DEXT" alias="TexSubImage1D">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="UNUSED" type="GLuint" padding="true"/>
-        <param name="pixels" type="const GLvoid *"/>
-    </function>
-
-    <function name="TexSubImage2DEXT" alias="TexSubImage2D">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="UNUSED" type="GLuint" padding="true"/>
-        <param name="pixels" type="const GLvoid *"/>
-    </function>
-</category>
-
-<category name="GL_EXT_copy_texture" number="10">
-    <function name="CopyTexImage1DEXT" alias="CopyTexImage1D">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-    </function>
-
-    <function name="CopyTexImage2DEXT" alias="CopyTexImage2D">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-    </function>
-
-    <function name="CopyTexSubImage1DEXT" alias="CopyTexSubImage1D">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-    </function>
-
-    <function name="CopyTexSubImage2DEXT" alias="CopyTexSubImage2D">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-    </function>
-
-    <function name="CopyTexSubImage3DEXT" alias="CopyTexSubImage3D">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-    </function>
-</category>
-
-<category name="GL_EXT_histogram" number="11">
-    <enum name="HISTOGRAM_EXT"                            value="0x8024"/>
-    <enum name="PROXY_HISTOGRAM_EXT"                      value="0x8025"/>
-    <enum name="HISTOGRAM_WIDTH_EXT"           count="1"  value="0x8026">
-        <size name="GetHistogramParameterfvEXT" mode="get"/>
-        <size name="GetHistogramParameterivEXT" mode="get"/>
-    </enum>
-    <enum name="HISTOGRAM_FORMAT_EXT"          count="1"  value="0x8027">
-        <size name="GetHistogramParameterfvEXT" mode="get"/>
-        <size name="GetHistogramParameterivEXT" mode="get"/>
-    </enum>
-    <enum name="HISTOGRAM_RED_SIZE_EXT"        count="1"  value="0x8028">
-        <size name="GetHistogramParameterfvEXT" mode="get"/>
-        <size name="GetHistogramParameterivEXT" mode="get"/>
-    </enum>
-    <enum name="HISTOGRAM_GREEN_SIZE_EXT"      count="1"  value="0x8029">
-        <size name="GetHistogramParameterfvEXT" mode="get"/>
-        <size name="GetHistogramParameterivEXT" mode="get"/>
-    </enum>
-    <enum name="HISTOGRAM_BLUE_SIZE_EXT"       count="1"  value="0x802A">
-        <size name="GetHistogramParameterfvEXT" mode="get"/>
-        <size name="GetHistogramParameterivEXT" mode="get"/>
-    </enum>
-    <enum name="HISTOGRAM_ALPHA_SIZE_EXT"      count="1"  value="0x802B">
-        <size name="GetHistogramParameterfvEXT" mode="get"/>
-        <size name="GetHistogramParameterivEXT" mode="get"/>
-    </enum>
-    <enum name="HISTOGRAM_LUMINANCE_SIZE_EXT"  count="1"  value="0x802C">
-        <size name="GetHistogramParameterfvEXT" mode="get"/>
-        <size name="GetHistogramParameterivEXT" mode="get"/>
-    </enum>
-    <enum name="HISTOGRAM_SINK_EXT"            count="1"  value="0x802D">
-        <size name="GetHistogramParameterfvEXT" mode="get"/>
-        <size name="GetHistogramParameterivEXT" mode="get"/>
-    </enum>
-    <enum name="MINMAX_EXT"                               value="0x802E"/>
-    <enum name="MINMAX_FORMAT_EXT"             count="1"  value="0x802F">
-        <size name="GetMinmaxParameterfvEXT" mode="get"/>
-        <size name="GetMinmaxParameterivEXT" mode="get"/>
-    </enum>
-    <enum name="MINMAX_SINK_EXT"               count="1"  value="0x8030">
-        <size name="GetMinmaxParameterfvEXT" mode="get"/>
-        <size name="GetMinmaxParameterivEXT" mode="get"/>
-    </enum>
-    <enum name="TABLE_TOO_LARGE_EXT"                      value="0x8031"/>
-
-    <function name="GetHistogramEXT" alias="GetHistogram" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="reset" type="GLboolean"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="values" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
-        <glx vendorpriv="5" dimensions_in_reply="true" img_reset="reset"/>
-    </function>
-
-    <function name="GetHistogramParameterfvEXT" alias="GetHistogramParameterfv" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx vendorpriv="6"/>
-    </function>
-
-    <function name="GetHistogramParameterivEXT" alias="GetHistogramParameteriv" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx vendorpriv="7"/>
-    </function>
-
-    <function name="GetMinmaxEXT" alias="GetMinmax" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="reset" type="GLboolean"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="values" type="GLvoid *" output="true" img_width="2" img_format="format" img_type="type"/>
-        <glx vendorpriv="8" img_reset="reset"/>
-    </function>
-
-    <function name="GetMinmaxParameterfvEXT" alias="GetMinmaxParameterfv" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx vendorpriv="9"/>
-    </function>
-
-    <function name="GetMinmaxParameterivEXT" alias="GetMinmaxParameteriv" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx vendorpriv="10"/>
-    </function>
-
-    <function name="HistogramEXT" alias="Histogram" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="sink" type="GLboolean"/>
-    </function>
-
-    <function name="MinmaxEXT" alias="Minmax" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="sink" type="GLboolean"/>
-    </function>
-
-    <function name="ResetHistogramEXT" alias="ResetHistogram" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-    </function>
-
-    <function name="ResetMinmaxEXT" alias="ResetMinmax" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-    </function>
-</category>
-
-<category name="GL_EXT_convolution" number="12">
-    <enum name="CONVOLUTION_BORDER_MODE_EXT"   count="1"  value="0x8013">
-        <size name="ConvolutionParameterfv"/>
-        <size name="ConvolutionParameteriv"/>
-        <size name="GetConvolutionParameterfv" mode="get"/>
-        <size name="GetConvolutionParameteriv" mode="get"/>
-    </enum>
-    <enum name="CONVOLUTION_FILTER_SCALE_EXT"  count="4"  value="0x8014">
-        <size name="ConvolutionParameterfv"/>
-        <size name="ConvolutionParameteriv"/>
-        <size name="GetConvolutionParameterfv" mode="get"/>
-        <size name="GetConvolutionParameteriv" mode="get"/>
-    </enum>
-    <enum name="CONVOLUTION_FILTER_BIAS_EXT"   count="4"  value="0x8015">
-        <size name="ConvolutionParameterfv"/>
-        <size name="ConvolutionParameteriv"/>
-        <size name="GetConvolutionParameterfv" mode="get"/>
-        <size name="GetConvolutionParameteriv" mode="get"/>
-    </enum>
-    <enum name="REDUCE_EXT"                               value="0x8016"/>
-    <enum name="CONVOLUTION_FORMAT_EXT"        count="1"  value="0x8017">
-        <size name="GetConvolutionParameterfv" mode="get"/>
-        <size name="GetConvolutionParameteriv" mode="get"/>
-    </enum>
-    <enum name="CONVOLUTION_WIDTH_EXT"         count="1"  value="0x8018">
-        <size name="GetConvolutionParameterfv" mode="get"/>
-        <size name="GetConvolutionParameteriv" mode="get"/>
-    </enum>
-    <enum name="CONVOLUTION_HEIGHT_EXT"        count="1"  value="0x8019">
-        <size name="GetConvolutionParameterfv" mode="get"/>
-        <size name="GetConvolutionParameteriv" mode="get"/>
-    </enum>
-    <enum name="MAX_CONVOLUTION_WIDTH_EXT"     count="1"  value="0x801A">
-        <size name="GetConvolutionParameterfv" mode="get"/>
-        <size name="GetConvolutionParameteriv" mode="get"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_CONVOLUTION_HEIGHT_EXT"    count="1"  value="0x801B">
-        <size name="GetConvolutionParameterfv" mode="get"/>
-        <size name="GetConvolutionParameteriv" mode="get"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_CONVOLUTION_RED_SCALE_EXT" count="1" value="0x801C">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_CONVOLUTION_GREEN_SCALE_EXT" count="1" value="0x801D">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_CONVOLUTION_BLUE_SCALE_EXT" count="1" value="0x801E">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_CONVOLUTION_ALPHA_SCALE_EXT" count="1" value="0x801F">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_CONVOLUTION_RED_BIAS_EXT" count="1"  value="0x8020">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_CONVOLUTION_GREEN_BIAS_EXT" count="1" value="0x8021">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_CONVOLUTION_BLUE_BIAS_EXT" count="1" value="0x8022">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="POST_CONVOLUTION_ALPHA_BIAS_EXT" count="1" value="0x8023">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="ConvolutionFilter1DEXT" alias="ConvolutionFilter1D" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="image" type="const GLvoid *"/>
-    </function>
-
-    <function name="ConvolutionFilter2DEXT" alias="ConvolutionFilter2D" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="image" type="const GLvoid *"/>
-    </function>
-
-    <function name="ConvolutionParameterfEXT" alias="ConvolutionParameterf" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat"/>
-    </function>
-
-    <function name="ConvolutionParameterfvEXT" alias="ConvolutionParameterfv" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *"/>
-    </function>
-
-    <function name="ConvolutionParameteriEXT" alias="ConvolutionParameteri" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint"/>
-    </function>
-
-    <function name="ConvolutionParameterivEXT" alias="ConvolutionParameteriv" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *"/>
-    </function>
-
-    <function name="CopyConvolutionFilter1DEXT" alias="CopyConvolutionFilter1D" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-    </function>
-
-    <function name="CopyConvolutionFilter2DEXT" alias="CopyConvolutionFilter2D" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-    </function>
-
-    <function name="GetConvolutionFilterEXT" alias="GetConvolutionFilter" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="image" type="GLvoid *" output="true" img_width="width" img_height="height" img_format="format" img_type="type"/>
-        <glx vendorpriv="1" dimensions_in_reply="true"/>
-    </function>
-
-    <function name="GetConvolutionParameterfvEXT" alias="GetConvolutionParameterfv" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx vendorpriv="2"/>
-    </function>
-
-    <function name="GetConvolutionParameterivEXT" alias="GetConvolutionParameteriv" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx vendorpriv="3"/>
-    </function>
-
-    <function name="GetSeparableFilterEXT" alias="GetSeparableFilter" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="row" type="GLvoid *" output="true"/>
-        <param name="column" type="GLvoid *" output="true"/>
-        <param name="span" type="GLvoid *" output="true"/>
-        <glx vendorpriv="4" handcode="true"/>
-    </function>
-
-    <function name="SeparableFilter2DEXT" alias="SeparableFilter2D" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="row" type="const GLvoid *"/>
-        <param name="column" type="const GLvoid *"/>
-    </function>
-</category>
-
-<category name="GL_SGI_color_matrix" number="13">
-    <enum name="COLOR_MATRIX_SGI"                         value="0x80B1"/>
-    <enum name="COLOR_MATRIX_STACK_DEPTH_SGI"             value="0x80B2"/>
-    <enum name="MAX_COLOR_MATRIX_STACK_DEPTH_SGI"         value="0x80B3"/>
-    <enum name="POST_COLOR_MATRIX_RED_SCALE_SGI"          value="0x80B4"/>
-    <enum name="POST_COLOR_MATRIX_GREEN_SCALE_SGI"        value="0x80B5"/>
-    <enum name="POST_COLOR_MATRIX_BLUE_SCALE_SGI"         value="0x80B6"/>
-    <enum name="POST_COLOR_MATRIX_ALPHA_SCALE_SGI"        value="0x80B7"/>
-    <enum name="POST_COLOR_MATRIX_RED_BIAS_SGI"           value="0x80B8"/>
-    <enum name="POST_COLOR_MATRIX_GREEN_BIAS_SGI"         value="0x80B9"/>
-    <enum name="POST_COLOR_MATRIX_BLUE_BIAS_SGI"          value="0x80BA"/>
-    <enum name="POST_COLOR_MATRIX_ALPHA_BIAS_SGI"         value="0x80BB"/>
-</category>
-
-<category name="GL_SGI_color_table" number="14">
-    <enum name="COLOR_TABLE_SCALE_SGI"         count="4"  value="0x80D6">
-        <size name="ColorTableParameterfvSGI"/>
-        <size name="ColorTableParameterivSGI"/>
-        <size name="GetColorTableParameterfvSGI" mode="get"/>
-        <size name="GetColorTableParameterivSGI" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_BIAS_SGI"          count="4"  value="0x80D7">
-        <size name="ColorTableParameterfvSGI"/>
-        <size name="ColorTableParameterivSGI"/>
-        <size name="GetColorTableParameterfvSGI" mode="get"/>
-        <size name="GetColorTableParameterivSGI" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_FORMAT_SGI"        count="1"  value="0x80D8">
-        <size name="GetColorTableParameterfvSGI" mode="get"/>
-        <size name="GetColorTableParameterivSGI" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_WIDTH_SGI"         count="1"  value="0x80D9">
-        <size name="GetColorTableParameterfvSGI" mode="get"/>
-        <size name="GetColorTableParameterivSGI" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_RED_SIZE_SGI"      count="1"  value="0x80DA">
-        <size name="GetColorTableParameterfvSGI" mode="get"/>
-        <size name="GetColorTableParameterivSGI" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_GREEN_SIZE_SGI"    count="1"  value="0x80DB">
-        <size name="GetColorTableParameterfvSGI" mode="get"/>
-        <size name="GetColorTableParameterivSGI" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_BLUE_SIZE_SGI"     count="1"  value="0x80DC">
-        <size name="GetColorTableParameterfvSGI" mode="get"/>
-        <size name="GetColorTableParameterivSGI" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_ALPHA_SIZE_SGI"    count="1"  value="0x80DD">
-        <size name="GetColorTableParameterfvSGI" mode="get"/>
-        <size name="GetColorTableParameterivSGI" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_LUMINANCE_SIZE_SGI" count="1" value="0x80DE">
-        <size name="GetColorTableParameterfvSGI" mode="get"/>
-        <size name="GetColorTableParameterivSGI" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_INTENSITY_SIZE_SGI" count="1" value="0x80DF">
-        <size name="GetColorTableParameterfvSGI" mode="get"/>
-        <size name="GetColorTableParameterivSGI" mode="get"/>
-    </enum>
-
-    <function name="ColorTableSGI" alias="ColorTable" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="table" type="const GLvoid *"/>
-    </function>
-
-    <function name="ColorTableParameterfvSGI" alias="ColorTableParameterfv" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *"/>
-    </function>
-
-    <function name="ColorTableParameterivSGI" alias="ColorTableParameteriv" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *"/>
-    </function>
-
-    <function name="CopyColorTableSGI" alias="CopyColorTable" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-    </function>
-
-    <function name="GetColorTableSGI" alias="GetColorTable" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="table" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
-        <glx vendorpriv="4098" dimensions_in_reply="true"/>
-    </function>
-
-    <function name="GetColorTableParameterfvSGI" alias="GetColorTableParameterfv" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx vendorpriv="4099"/>
-    </function>
-
-    <function name="GetColorTableParameterivSGI" alias="GetColorTableParameteriv" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx vendorpriv="4100"/>
-    </function>
-</category>
-
-<category name="GL_SGIS_pixel_texture" number="15">
-    <function name="PixelTexGenParameteriSGIS" offset="assign" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="PixelTexGenParameterivSGIS" offset="assign" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="PixelTexGenParameterfSGIS" offset="assign" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="PixelTexGenParameterfvSGIS" offset="assign" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetPixelTexGenParameterivSGIS" offset="assign" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetPixelTexGenParameterfvSGIS" offset="assign" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_SGIS_texture4D" number="16">
-    <function name="TexImage4DSGIS">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="size4d" type="GLsizei"/>
-        <param name="border" type="GLint"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_extent="size4d" img_format="format" img_type="type" img_target="target" img_null_flag="true" img_pad_dimensions="true"/>
-        <glx rop="2057" ignore="true"/>
-    </function>
-
-    <function name="TexSubImage4DSGIS">
-        <param name="target" type="GLenum"/>
-        <param name="level" type="GLint"/>
-        <param name="xoffset" type="GLint"/>
-        <param name="yoffset" type="GLint"/>
-        <param name="zoffset" type="GLint"/>
-        <param name="woffset" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-        <param name="height" type="GLsizei"/>
-        <param name="depth" type="GLsizei"/>
-        <param name="size4d" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="UNUSED" type="GLuint" padding="true"/>
-        <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_extent="size4d" img_xoff="xoffset" img_yoff="yoffset" img_zoff="zoffset" img_woff="woffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
-        <glx rop="2058" ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_SGI_texture_color_table" number="17">
-    <enum name="TEXTURE_COLOR_TABLE_SGI"                  value="0x80BC"/>
-    <enum name="PROXY_TEXTURE_COLOR_TABLE_SGI"            value="0x80BD"/>
-</category>
-
-<!-- Extension number 19 is not listed in the extension registry. -->
-
-<category name="GL_EXT_texture_object" number="20">
-    <function name="AreTexturesResidentEXT" alias="AreTexturesResident">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="textures" type="const GLuint *" count="n"/>
-        <param name="residences" type="GLboolean *" output="true" count="n"/>
-        <return type="GLboolean"/>
-        <glx vendorpriv="11" handcode="client" always_array="true"/>
-    </function>
-
-    <function name="BindTextureEXT" alias="BindTexture">
-        <param name="target" type="GLenum"/>
-        <param name="texture" type="GLuint"/>
-    </function>
-
-    <function name="DeleteTexturesEXT" alias="DeleteTextures">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="textures" type="const GLuint *" count="n"/>
-        <glx vendorpriv="12"/>
-    </function>
-
-    <function name="GenTexturesEXT" alias="GenTextures">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="textures" type="GLuint *" output="true" count="n"/>
-        <glx vendorpriv="13" always_array="true"/>
-    </function>
-
-    <function name="IsTextureEXT" alias="IsTexture">
-        <param name="texture" type="GLuint"/>
-        <return type="GLboolean"/>
-        <glx vendorpriv="14"/>
-    </function>
-
-    <function name="PrioritizeTexturesEXT" alias="PrioritizeTextures">
-        <param name="n" type="GLsizei"/>
-        <param name="textures" type="const GLuint *"/>
-        <param name="priorities" type="const GLclampf *"/>
-    </function>
-</category>
-
-<category name="GL_SGIS_detail_texture" number="21">
-    <function name="DetailTexFuncSGIS">
-        <param name="target" type="GLenum"/>
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="points" type="const GLfloat *" count="n"/>
-        <glx rop="2051" ignore="true"/>
-    </function>
-
-    <function name="GetDetailTexFuncSGIS">
-        <param name="target" type="GLenum"/>
-        <param name="points" type="GLfloat *" output="true"/>
-        <glx vendorpriv="4096" ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_SGIS_sharpen_texture" number="22">
-    <function name="SharpenTexFuncSGIS">
-        <param name="target" type="GLenum"/>
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="points" type="const GLfloat *" count="n" count_scale="2"/>
-        <glx rop="2052" ignore="true"/>
-    </function>
-
-    <function name="GetSharpenTexFuncSGIS">
-        <param name="target" type="GLenum"/>
-        <param name="points" type="GLfloat *" output="true"/>
-        <glx vendorpriv="4097" ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_SGIS_multisample" number="25">
-    <function name="SampleMaskSGIS" offset="assign" static_dispatch="false">
-        <param name="value" type="GLclampf"/>
-        <param name="invert" type="GLboolean"/>
-        <glx rop="2048"/>
-    </function>
-
-    <function name="SamplePatternSGIS" offset="assign" static_dispatch="false">
-        <param name="pattern" type="GLenum"/>
-        <glx rop="2049"/>
-    </function>
-</category>
-
-<!-- Extension number 26 is not listed in the extension registry. -->
-
-<category name="GL_EXT_rescale_normal" number="27">
-    <enum name="RESCALE_NORMAL_EXT"            count="1"  value="0x803A">
-        <size name="Get" mode="get"/>
-    </enum>
-</category>
-
-<!-- Extension number 28 is a GLX extension. -->
-<!-- Extension number 29 is not listed in the extension registry. -->
-
-<category name="GL_EXT_vertex_array" number="30">
-    <function name="ArrayElementEXT" alias="ArrayElement">
-        <param name="i" type="GLint"/>
-    </function>
-
-    <function name="ColorPointerEXT" offset="assign">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="count" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="DrawArraysEXT" alias="DrawArrays">
-        <param name="mode" type="GLenum"/>
-        <param name="first" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-    </function>
-
-    <function name="EdgeFlagPointerEXT" offset="assign">
-        <param name="stride" type="GLsizei"/>
-        <param name="count" type="GLsizei"/>
-        <param name="pointer" type="const GLboolean *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="GetPointervEXT" alias="GetPointerv">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLvoid **" output="true"/>
-    </function>
-
-    <function name="IndexPointerEXT" offset="assign">
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="count" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="NormalPointerEXT" offset="assign">
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="count" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="TexCoordPointerEXT" offset="assign">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="count" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="VertexPointerEXT" offset="assign">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="count" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-</category>
-
-<category name="GL_SGIS_generate_mipmap" number="32">
-    <enum name="GENERATE_MIPMAP_SGIS"          count="1"  value="0x8191">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="GENERATE_MIPMAP_HINT_SGIS"                value="0x8192"/>
-</category>
-
-<category name="GL_SGIX_clipmap" number="33">
-    <enum name="LINEAR_CLIPMAP_LINEAR_SGIX"               value="0x8170"/>
-    <enum name="TEXTURE_CLIPMAP_CENTER_SGIX"   count="2"  value="0x8171">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_CLIPMAP_FRAME_SGIX"    count="1"  value="0x8172">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_CLIPMAP_OFFSET_SGIX"   count="2"  value="0x8173">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX" count="3" value="0x8174">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_CLIPMAP_LOD_OFFSET_SGIX"          value="0x8175"/>
-    <enum name="TEXTURE_CLIPMAP_DEPTH_SGIX"               value="0x8176"/>
-    <enum name="MAX_CLIPMAP_DEPTH_SGIX"                   value="0x8177"/>
-    <enum name="MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX"           value="0x8178"/>
-    <enum name="NEAREST_CLIPMAP_NEAREST_SGIX"             value="0x844D"/>
-    <enum name="NEAREST_CLIPMAP_LINEAR_SGIX"              value="0x844E"/>
-    <enum name="LINEAR_CLIPMAP_NEAREST_SGIX"              value="0x844F"/>
-</category>
-
-<category name="GL_SGIX_shadow" number="34">
-    <enum name="TEXTURE_COMPARE_SGIX"          count="1"  value="0x819A">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_COMPARE_OPERATOR_SGIX" count="1"  value="0x819B">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_LEQUAL_R_SGIX"                    value="0x819C"/>
-    <enum name="TEXTURE_GEQUAL_R_SGIX"                    value="0x819D"/>
-</category>
-
-<category name="GL_SGIS_texture_edge_clamp" number="35">
-    <enum name="CLAMP_TO_EDGE_SGIS"                       value="0x812F"/>
-</category>
-
-<category name="GL_SGIS_texture_border_clamp" number="36">
-    <enum name="CLAMP_TO_BORDER_SGIS"                     value="0x812D"/>
-</category>
-
-<category name="GL_EXT_blend_minmax" number="37">
-    <enum name="FUNC_ADD_EXT"                             value="0x8006"/>
-    <enum name="MIN_EXT"                                  value="0x8007"/>
-    <enum name="MAX_EXT"                                  value="0x8008"/>
-    <enum name="BLEND_EQUATION_EXT"            count="1"  value="0x8009">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="BlendEquationEXT" alias="BlendEquation">
-        <param name="mode" type="GLenum"/>
-    </function>
-</category>
-
-<category name="GL_EXT_blend_subtract" number="38">
-    <enum name="FUNC_SUBTRACT_EXT"                        value="0x800A"/>
-    <enum name="FUNC_REVERSE_SUBTRACT_EXT"                value="0x800B"/>
-
-    <!-- <function name="BlendEquationEXT" alias="BlendEquation">
-        <param name="mode" type="GLenum"/>
-    </function> -->
-</category>
-
-<!-- Extension number 40 is a GLX extension. -->
-<!-- Extension number 41 is a GLX extension. -->
-<!-- Extension number 42 is a GLX extension. -->
-<!-- Extension number 43 is a GLX extension. -->
-<!-- Extension number 44 is a GLX extension. -->
-<!-- Extension number 46 is not listed in the extension registry. -->
-<!-- Extension number 47 is a GLX extension. -->
-<!-- Extension number 48 is not listed in the extension registry. -->
-<!-- Extension number 49 is a GLX extension. -->
-<!-- Extension number 50 is a GLX extension. -->
-
-<category name="GL_SGIX_sprite" number="52">
-    <function name="SpriteParameterfSGIX">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="SpriteParameterfvSGIX">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="SpriteParameteriSGIX">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="SpriteParameterivSGIX">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_EXT_point_parameters" number="54">
-    <enum name="POINT_SIZE_MIN_EXT"            count="1"  value="0x8126">
-        <size name="PointParameterfvEXT"/>
-    </enum>
-    <enum name="POINT_SIZE_MAX_EXT"            count="1"  value="0x8127">
-        <size name="PointParameterfvEXT"/>
-    </enum>
-    <enum name="POINT_FADE_THRESHOLD_SIZE_EXT" count="1"  value="0x8128">
-        <size name="PointParameterfvEXT"/>
-    </enum>
-    <enum name="POINT_DISTANCE_ATTENUATION_EXT" count="3" value="0x8129">
-        <size name="PointParameterfvEXT"/>
-    </enum>
-
-    <function name="PointParameterfEXT" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="2065"/>
-    </function>
-
-    <function name="PointParameterfvEXT" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="2066"/>
-    </function>
-</category>
-
-<category name="GL_SGIX_instruments" number="55">
-    <function name="GetInstrumentsSGIX">
-        <return type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="InstrumentsBufferSGIX">
-        <param name="size" type="GLsizei"/>
-        <param name="buffer" type="GLint *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="PollInstrumentsSGIX">
-        <param name="marker_p" type="GLint *" output="true"/>
-        <return type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="ReadInstrumentsSGIX">
-        <param name="marker" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="StartInstrumentsSGIX">
-        <glx ignore="true"/>
-    </function>
-
-    <function name="StopInstrumentsSGIX">
-        <param name="marker" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_SGIX_texture_scale_bias" number="56">
-    <enum name="POST_TEXTURE_FILTER_BIAS_SGIX"  count="4" value="0x8179">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="POST_TEXTURE_FILTER_SCALE_SGIX" count="4" value="0x817A">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="POST_TEXTURE_FILTER_BIAS_RANGE_SGIX"      value="0x817B"/>
-    <enum name="POST_TEXTURE_FILTER_SCALE_RANGE_SGIX"     value="0x817C"/>
-</category>
-
-<category name="GL_SGIX_framezoom" number="57">
-    <function name="FrameZoomSGIX">
-        <param name="factor" type="GLint"/>
-        <glx rop="2072" ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_SGIX_tag_sample_buffer" number="58">
-    <function name="TagSampleBufferSGIX">
-        <glx rop="2050" ignore="true"/>
-    </function>
-</category>
-
-<!-- Extension number 59 is not listed in the extension registry. -->
-
-<category name="GL_SGIX_reference_plane" number="60">
-    <function name="ReferencePlaneSGIX">
-        <param name="equation" type="const GLdouble *" count="4"/>
-        <glx rop="2071" ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_SGIX_flush_raster" number="61">
-    <function name="FlushRasterSGIX">
-        <glx vendorpriv="4105" ignore="true"/>
-    </function>
-</category>
-
-<!-- Extension number 62 is a GLX extension. -->
-
-<category name="GL_SGIX_depth_texture" number="63">
-    <enum name="DEPTH_COMPONENT16_SGIX"                   value="0x81A5"/>
-    <enum name="DEPTH_COMPONENT24_SGIX"                   value="0x81A6"/>
-    <enum name="DEPTH_COMPONENT32_SGIX"                   value="0x81A7"/>
-</category>
-
-<category name="GL_SGIS_fog_function" number="64">
-    <function name="FogFuncSGIS">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="points" type="const GLfloat *" count="n" count_scale="2"/>
-        <glx rop="2067" ignore="true"/>
-    </function>
-
-    <function name="GetFogFuncSGIS">
-        <param name="points" type="GLfloat *" output="true"/>
-        <!-- GLX protocol for this function is unknown. -->
-    </function>
-</category>
-
-<category name="GL_SGIX_fog_offset" number="65">
-    <enum name="FOG_OFFSET_SGIX"                          value="0x8198"/>
-    <enum name="FOG_OFFSET_VALUE_SGIX"         count="1"  value="0x8199">
-        <size name="Fogfv"/>
-        <size name="Fogiv"/>
-    </enum>
-</category>
-
-<category name="GL_HP_image_transform" number="66">
-    <function name="ImageTransformParameteriHP">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-    </function>
-
-    <function name="ImageTransformParameterfHP">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-    </function>
-
-    <function name="ImageTransformParameterivHP">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *"/>
-    </function>
-
-    <function name="ImageTransformParameterfvHP">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *"/>
-    </function>
-
-    <function name="GetImageTransformParameterivHP">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-    </function>
-
-    <function name="GetImageTransformParameterfvHP">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-    </function>
-</category>
-
-<category name="GL_HP_convolution_border_modes" number="67">
-    <enum name="IGNORE_BORDER_HP"                         value="0x8150"/>
-    <enum name="CONSTANT_BORDER_HP"                       value="0x8151"/>
-    <enum name="REPLICATE_BORDER_HP"                      value="0x8153"/>
-    <enum name="CONVOLUTION_BORDER_COLOR_HP"   count="4"  value="0x8154">
-        <size name="ConvolutionParameterfv"/>
-        <size name="ConvolutionParameteriv"/>
-        <size name="GetConvolutionParameterfv" mode="get"/>
-        <size name="GetConvolutionParameteriv" mode="get"/>
-    </enum>
-</category>
-
-<!-- Extension number 68 is not listed in the extension registry. -->
-<!-- Extension number 70 is not listed in the extension registry. -->
-<!-- Extension number 71 is not listed in the extension registry. -->
-<!-- Extension number 72 is not listed in the extension registry. -->
-<!-- Extension number 73 is not listed in the extension registry. -->
-
-<category name="GL_EXT_color_subtable" number="74">
-    <function name="ColorSubTableEXT" alias="ColorSubTable" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="start" type="GLsizei"/>
-        <param name="count" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="data" type="const GLvoid *"/>
-    </function>
-
-    <function name="CopyColorSubTableEXT" alias="CopyColorSubTable" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="start" type="GLsizei"/>
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="width" type="GLsizei"/>
-    </function>
-</category>
-
-<!-- Extension number 75 is a GLU extension. -->
-
-<category name="GL_PGI_misc_hints" number="77">
-    <function name="HintPGI">
-        <param name="target" type="GLenum"/>
-        <param name="mode" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_EXT_paletted_texture" number="78">
-    <enum name="COLOR_TABLE_FORMAT_EXT"        count="1"  value="0x80D8">
-        <size name="GetColorTableParameterfv" mode="get"/>
-        <size name="GetColorTableParameteriv" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_WIDTH_EXT"         count="1"  value="0x80D9">
-        <size name="GetColorTableParameterfv" mode="get"/>
-        <size name="GetColorTableParameteriv" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_RED_SIZE_EXT"      count="1"  value="0x80DA">
-        <size name="GetColorTableParameterfv" mode="get"/>
-        <size name="GetColorTableParameteriv" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_GREEN_SIZE_EXT"    count="1"  value="0x80DB">
-        <size name="GetColorTableParameterfv" mode="get"/>
-        <size name="GetColorTableParameteriv" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_BLUE_SIZE_EXT"     count="1"  value="0x80DC">
-        <size name="GetColorTableParameterfv" mode="get"/>
-        <size name="GetColorTableParameteriv" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_ALPHA_SIZE_EXT"    count="1"  value="0x80DD">
-        <size name="GetColorTableParameterfv" mode="get"/>
-        <size name="GetColorTableParameteriv" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_LUMINANCE_SIZE_EXT" count="1" value="0x80DE">
-        <size name="GetColorTableParameterfv" mode="get"/>
-        <size name="GetColorTableParameteriv" mode="get"/>
-    </enum>
-    <enum name="COLOR_TABLE_INTENSITY_SIZE_EXT" count="1" value="0x80DF">
-        <size name="GetColorTableParameterfv" mode="get"/>
-        <size name="GetColorTableParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_INDEX_SIZE_EXT"        count="1"  value="0x80ED">
-        <size name="GetTexLevelParameterfv" mode="get"/>
-        <size name="GetTexLevelParameteriv" mode="get"/>
-    </enum>
-
-    <function name="ColorTableEXT" alias="ColorTable">
-        <param name="target" type="GLenum"/>
-        <param name="internalformat" type="GLenum"/>
-        <param name="width" type="GLsizei"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="table" type="const GLvoid *"/>
-    </function>
-
-    <function name="GetColorTableEXT" alias="GetColorTable">
-        <param name="target" type="GLenum"/>
-        <param name="format" type="GLenum"/>
-        <param name="type" type="GLenum"/>
-        <param name="table" type="GLvoid *" output="true" img_width="width" img_format="format" img_type="type"/>
-        <glx vendorpriv="4098" dimensions_in_reply="true"/>
-    </function>
-
-    <function name="GetColorTableParameterivEXT" alias="GetColorTableParameteriv">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx vendorpriv="4100"/>
-    </function>
-
-    <function name="GetColorTableParameterfvEXT" alias="GetColorTableParameterfv">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx vendorpriv="4099"/>
-    </function>
-</category>
-
-<category name="GL_EXT_clip_volume_hint" number="79">
-    <enum name="CLIP_VOLUME_CLIPPING_HINT_EXT" count="1"  value="0x80F0">
-        <size name="Get" mode="get"/>
-    </enum>
-</category>
-
-<category name="GL_SGIX_list_priority" number="80">
-    <function name="GetListParameterfvSGIX">
-        <param name="list" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetListParameterivSGIX">
-        <param name="list" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="ListParameterfSGIX">
-        <param name="list" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="ListParameterfvSGIX">
-        <param name="list" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="ListParameteriSGIX">
-        <param name="list" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="ListParameterivSGIX">
-        <param name="list" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-</category>
-
-<!-- Extension number 82 is not listed in the extension registry. -->
-<!-- Extension number 83 is a GLX extension. -->
-
-<category name="GL_SGIX_texture_lod_bias" number="84">
-    <enum name="TEXTURE_LOD_BIAS_S_SGIX"       count="1"  value="0x818E">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_LOD_BIAS_T_SGIX"       count="1"  value="0x818F">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_LOD_BIAS_R_SGIX"       count="1"  value="0x8190">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-</category>
-
-<!-- Extension number 85 is a GLU extension. -->
-<!-- Extension number 86 is a GLX extension. -->
-<!-- Extension number 87 is not listed in the extension registry. -->
-<!-- Extension number 88 is not listed in the extension registry. -->
-<!-- Extension number 89 is not listed in the extension registry. -->
-
-
-<category name="GL_SGIX_shadow_ambient" number="90">
-    <enum name="SHADOW_AMBIENT_SGIX"           count="1"  value="0x80BF">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-</category>
-
-<!-- Extension number 91 is a GLX extension. -->
-<!-- Extension number 92 is a GLX extension. -->
-
-<category name="GL_EXT_index_material" number="94">
-    <function name="IndexMaterialEXT">
-        <param name="face" type="GLenum"/>
-        <param name="mode" type="GLenum"/>
-        <glx ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_EXT_index_func" number="95">
-    <function name="IndexFuncEXT">
-        <param name="func" type="GLenum"/>
-        <param name="ref" type="GLclampf"/>
-        <glx ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_EXT_compiled_vertex_array" number="97">
-    <function name="LockArraysEXT" offset="assign">
-        <param name="first" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <glx handcode="true" ignore="true"/>
-    </function>
-
-    <function name="UnlockArraysEXT" offset="assign">
-        <glx handcode="true" ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_EXT_cull_vertex" number="98">
-    <enum name="CULL_VERTEX_EXT"                          value="0x81AA"/>
-    <enum name="CULL_VERTEX_OBJECT_POSITION_EXT" count="4" value="0x81AB">
-        <size name="CullParameterfv"/>
-        <size name="CullParameterdv"/>
-    </enum>
-    <enum name="CULL_VERTEX_EYE_POSITION_EXT"  count="4"  value="0x81AC">
-        <size name="CullParameterfv"/>
-        <size name="CullParameterdv"/>
-    </enum>
-
-    <function name="CullParameterdvEXT" offset="assign" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLdouble *"/> <!-- Spec bug. Should be const. -->
-        <glx ignore="true"/>
-    </function>
-
-    <function name="CullParameterfvEXT" offset="assign" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *"/> <!-- Spec bug. Should be const. -->
-        <glx ignore="true"/>
-    </function>
-</category>
-
-<!-- Extension number 99 is not listed in the extension registry. -->
-<!-- Extension number 100 is a GLU extension. -->
-
-<!-- Shouldn't this be EXT_fragment_lighting? -->
-<category name="GL_SGIX_fragment_lighting" number="102">
-    <function name="FragmentColorMaterialSGIX">
-        <param name="face" type="GLenum"/>
-        <param name="mode" type="GLenum"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="FragmentLightfSGIX">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="FragmentLightfvSGIX">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="FragmentLightiSGIX">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="FragmentLightivSGIX">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="FragmentLightModelfSGIX">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="FragmentLightModelfvSGIX">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="FragmentLightModeliSGIX">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="FragmentLightModelivSGIX">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="FragmentMaterialfSGIX">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="FragmentMaterialfvSGIX">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="FragmentMaterialiSGIX">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="FragmentMaterialivSGIX">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetFragmentLightfvSGIX">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetFragmentLightivSGIX">
-        <param name="light" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetFragmentMaterialfvSGIX">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetFragmentMaterialivSGIX">
-        <param name="face" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="LightEnviSGIX">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-</category>
-
-<!-- Extension number 103 is not listed in the extension registry. -->
-<!-- Extension number 104 is not listed in the extension registry. -->
-<!-- Extension number 105 is not listed in the extension registry. -->
-<!-- Extension number 106 is not listed in the extension registry. -->
-<!-- Extension number 107 is not listed in the extension registry. -->
-<!-- Extension number 108 is not listed in the extension registry. -->
-<!-- Extension number 109 is not listed in the extension registry. -->
-
-<category name="GL_IBM_rasterpos_clip" number="110">
-    <enum name="RASTER_POSITION_UNCLIPPED_IBM"  count="1" value="0x19262">
-        <size name="Get" mode="get"/>
-    </enum>
-</category>
-
-<category name="GL_EXT_draw_range_elements" number="112">
-    <function name="DrawRangeElementsEXT" alias="DrawRangeElements">
-        <param name="mode" type="GLenum"/>
-        <param name="start" type="GLuint"/>
-        <param name="end" type="GLuint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="type" type="GLenum"/>
-        <param name="indices" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-</category>
-
-<!-- Extension number 115 is a GLX extension. -->
-<!-- Extension number 116 is not listed in the extension registry. -->
-
-<category name="GL_EXT_light_texture" number="117">
-    <function name="ApplyTextureEXT">
-        <param name="mode" type="GLenum"/>
-    </function>
-
-    <function name="TextureLightEXT">
-        <param name="pname" type="GLenum"/>
-    </function>
-
-    <function name="TextureMaterialEXT">
-        <param name="face" type="GLenum"/>
-        <param name="mode" type="GLenum"/>
-    </function>
-</category>
-
-<!-- Extension number 118 is not listed in the extension registry. -->
-<!-- Extension number 121 is not listed in the extension registry. -->
-<!-- Extension number 122 is not listed in the extension registry. -->
-<!-- Extension number 123 is not listed in the extension registry. -->
-<!-- Extension number 124 is not listed in the extension registry. -->
-<!-- Extension number 125 is not listed in the extension registry. -->
-<!-- Extension number 126 is not listed in the extension registry. -->
-<!-- Extension number 128 is not listed in the extension registry. -->
-<!-- Extension number 130 is not listed in the extension registry. -->
-<!-- Extension number 131 is not listed in the extension registry. -->
-
-<category name="GL_SGIX_async" number="132">
-    <function name="AsyncMarkerSGIX">
-        <param name="marker" type="GLuint"/>
-    </function>
-
-    <function name="FinishAsyncSGIX">
-        <param name="markerp" type="GLuint *"/> <!-- Spec bug. Should be const. -->
-        <return type="GLint"/>
-    </function>
-
-    <function name="PollAsyncSGIX">
-        <param name="markerp" type="GLuint *"/> <!-- Spec bug. Should be const. -->
-        <return type="GLint"/>
-    </function>
-
-    <function name="GenAsyncMarkersSGIX">
-        <param name="range" type="GLsizei"/>
-        <return type="GLuint"/>
-    </function>
-
-    <function name="DeleteAsyncMarkersSGIX">
-        <param name="marker" type="GLuint"/>
-        <param name="range" type="GLsizei"/>
-    </function>
-
-    <function name="IsAsyncMarkerSGIX">
-        <param name="marker" type="GLuint"/>
-        <return type="GLboolean"/>
-    </function>
-</category>
-
-<category name="GL_INTEL_parallel_arrays" number="136">
-    <function name="VertexPointervINTEL">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="pointer" type="const GLvoid **"/>
-    </function>
-
-    <function name="NormalPointervINTEL">
-        <param name="type" type="GLenum"/>
-        <param name="pointer" type="const GLvoid **"/>
-    </function>
-
-    <function name="ColorPointervINTEL">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="pointer" type="const GLvoid **"/>
-    </function>
-
-    <function name="TexCoordPointervINTEL">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="pointer" type="const GLvoid **"/>
-    </function>
-</category>
-
-<category name="GL_HP_occlusion_test" number="137">
-    <enum name="OCCLUSION_TEST_HP"             count="1"  value="0x8165">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="OCCLUSION_TEST_RESULT_HP"      count="1"  value="0x8166">
-        <size name="Get" mode="get"/>
-    </enum>
-</category>
-
-<category name="GL_EXT_pixel_transform" number="138">
-    <function name="PixelTransformParameteriEXT">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-    </function>
-
-    <function name="PixelTransformParameterfEXT">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-    </function>
-
-    <function name="PixelTransformParameterivEXT">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *"/>
-    </function>
-
-    <function name="PixelTransformParameterfvEXT">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *"/>
-    </function>
-</category>
-
-<!-- Extension number 140 is not listed in the extension registry. -->
-
-<category name="GL_EXT_shared_texture_palette" number="141">
-    <enum name="SHARED_TEXTURE_PALETTE_EXT"    count="1"  value="0x81FB"/>
-</category>
-
-<!-- Extension number 142 is a GLX extension. -->
-<!-- Extension number 143 is not listed in the extension registry. -->
-
-<category name="GL_EXT_separate_specular_color" number="144">
-    <enum name="LIGHT_MODEL_COLOR_CONTROL_EXT" count="1"  value="0x81F8">
-        <size name="LightModelfv"/>
-        <size name="LightModeliv"/>
-    </enum>
-    <enum name="SINGLE_COLOR_EXT"                         value="0x81F9"/>
-    <enum name="SEPARATE_SPECULAR_COLOR_EXT"              value="0x81FA"/>
-</category>
-
-<category name="GL_EXT_secondary_color" number="145">
-    <function name="SecondaryColor3bEXT" offset="assign" vectorequiv="SecondaryColor3bvEXT">
-        <param name="red" type="GLbyte"/>
-        <param name="green" type="GLbyte"/>
-        <param name="blue" type="GLbyte"/>
-    </function>
-
-    <function name="SecondaryColor3bvEXT" offset="assign">
-        <param name="v" type="const GLbyte *" count="3"/>
-        <glx rop="4126"/>
-    </function>
-
-    <function name="SecondaryColor3dEXT" offset="assign" vectorequiv="SecondaryColor3dvEXT">
-        <param name="red" type="GLdouble"/>
-        <param name="green" type="GLdouble"/>
-        <param name="blue" type="GLdouble"/>
-    </function>
-
-    <function name="SecondaryColor3dvEXT" offset="assign">
-        <param name="v" type="const GLdouble *" count="3"/>
-        <glx rop="4130"/>
-    </function>
-
-    <function name="SecondaryColor3fEXT" offset="assign" vectorequiv="SecondaryColor3fvEXT">
-        <param name="red" type="GLfloat"/>
-        <param name="green" type="GLfloat"/>
-        <param name="blue" type="GLfloat"/>
-    </function>
-
-    <function name="SecondaryColor3fvEXT" offset="assign">
-        <param name="v" type="const GLfloat *" count="3"/>
-        <glx rop="4129"/>
-    </function>
-
-    <function name="SecondaryColor3iEXT" offset="assign" vectorequiv="SecondaryColor3ivEXT">
-        <param name="red" type="GLint"/>
-        <param name="green" type="GLint"/>
-        <param name="blue" type="GLint"/>
-    </function>
-
-    <function name="SecondaryColor3ivEXT" offset="assign">
-        <param name="v" type="const GLint *" count="3"/>
-        <glx rop="4128"/>
-    </function>
-
-    <function name="SecondaryColor3sEXT" offset="assign" vectorequiv="SecondaryColor3svEXT">
-        <param name="red" type="GLshort"/>
-        <param name="green" type="GLshort"/>
-        <param name="blue" type="GLshort"/>
-    </function>
-
-    <function name="SecondaryColor3svEXT" offset="assign">
-        <param name="v" type="const GLshort *" count="3"/>
-        <glx rop="4127"/>
-    </function>
-
-    <function name="SecondaryColor3ubEXT" offset="assign" vectorequiv="SecondaryColor3ubvEXT">
-        <param name="red" type="GLubyte"/>
-        <param name="green" type="GLubyte"/>
-        <param name="blue" type="GLubyte"/>
-    </function>
-
-    <function name="SecondaryColor3ubvEXT" offset="assign">
-        <param name="v" type="const GLubyte *" count="3"/>
-        <glx rop="4131"/>
-    </function>
-
-    <function name="SecondaryColor3uiEXT" offset="assign" vectorequiv="SecondaryColor3uivEXT">
-        <param name="red" type="GLuint"/>
-        <param name="green" type="GLuint"/>
-        <param name="blue" type="GLuint"/>
-    </function>
-
-    <function name="SecondaryColor3uivEXT" offset="assign">
-        <param name="v" type="const GLuint *" count="3"/>
-        <glx rop="4133"/>
-    </function>
-
-    <function name="SecondaryColor3usEXT" offset="assign" vectorequiv="SecondaryColor3usvEXT">
-        <param name="red" type="GLushort"/>
-        <param name="green" type="GLushort"/>
-        <param name="blue" type="GLushort"/>
-    </function>
-
-    <function name="SecondaryColor3usvEXT" offset="assign">
-        <param name="v" type="const GLushort *" count="3"/>
-        <glx rop="4132"/>
-    </function>
-
-    <function name="SecondaryColorPointerEXT" offset="assign">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-</category>
-
-<category name="GL_EXT_texture_perturb_normal" number="147">
-    <function name="TextureNormalEXT">
-        <param name="mode" type="GLenum"/>
-    </function>
-</category>
-
-<category name="GL_EXT_multi_draw_arrays" number="148">
-    <function name="MultiDrawArraysEXT" offset="assign">
-        <param name="mode" type="GLenum"/>
-        <param name="first" type="GLint *"/> <!-- Spec bug. Should be const. -->
-        <param name="count" type="GLsizei *"/> <!-- Spec bug. Should be const. -->
-        <param name="primcount" type="GLsizei"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="MultiDrawElementsEXT" offset="assign">
-        <param name="mode" type="GLenum"/>
-        <param name="count" type="const GLsizei *"/>
-        <param name="type" type="GLenum"/>
-        <param name="indices" type="const GLvoid **"/>
-        <param name="primcount" type="GLsizei"/>
-        <glx handcode="true"/>
-    </function>
-</category>
-
-<category name="GL_EXT_fog_coord" number="149">
-    <function name="FogCoordfEXT" offset="assign" vectorequiv="FogCoordfvEXT">
-        <param name="coord" type="GLfloat"/>
-    </function>
-
-    <function name="FogCoordfvEXT" offset="assign">
-        <param name="coord" type="const GLfloat *" count="1"/>
-        <glx rop="4124"/>
-    </function>
-
-    <function name="FogCoorddEXT" offset="assign" vectorequiv="FogCoorddvEXT">
-        <param name="coord" type="GLdouble"/>
-    </function>
-
-    <function name="FogCoorddvEXT" offset="assign">
-        <param name="coord" type="const GLdouble *" count="1"/>
-        <glx rop="4125"/>
-    </function>
-
-    <function name="FogCoordPointerEXT" offset="assign">
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-</category>
-
-<!-- Extension number 150 is not listed in the extension registry. -->
-<!-- Extension number 151 is not listed in the extension registry. -->
-<!-- Extension number 152 is not listed in the extension registry. -->
-<!-- Extension number 153 is not listed in the extension registry. -->
-<!-- Extension number 154 is not listed in the extension registry. -->
-
-<category name="GL_EXT_coordinate_frame" number="156">
-    <function name="Tangent3bEXT">
-        <param name="tx" type="GLbyte"/>
-        <param name="ty" type="GLbyte"/>
-        <param name="tz" type="GLbyte"/>
-    </function>
-
-    <function name="Tangent3bvEXT">
-        <param name="v" type="const GLbyte *"/>
-    </function>
-
-    <function name="Tangent3dEXT">
-        <param name="tx" type="GLdouble"/>
-        <param name="ty" type="GLdouble"/>
-        <param name="tz" type="GLdouble"/>
-    </function>
-
-    <function name="Tangent3dvEXT">
-        <param name="v" type="const GLdouble *"/>
-    </function>
-
-    <function name="Tangent3fEXT">
-        <param name="tx" type="GLfloat"/>
-        <param name="ty" type="GLfloat"/>
-        <param name="tz" type="GLfloat"/>
-    </function>
-
-    <function name="Tangent3fvEXT">
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="Tangent3iEXT">
-        <param name="tx" type="GLint"/>
-        <param name="ty" type="GLint"/>
-        <param name="tz" type="GLint"/>
-    </function>
-
-    <function name="Tangent3ivEXT">
-        <param name="v" type="const GLint *"/>
-    </function>
-
-    <function name="Tangent3sEXT">
-        <param name="tx" type="GLshort"/>
-        <param name="ty" type="GLshort"/>
-        <param name="tz" type="GLshort"/>
-    </function>
-
-    <function name="Tangent3svEXT">
-        <param name="v" type="const GLshort *"/>
-    </function>
-
-    <function name="Binormal3bEXT">
-        <param name="bx" type="GLbyte"/>
-        <param name="by" type="GLbyte"/>
-        <param name="bz" type="GLbyte"/>
-    </function>
-
-    <function name="Binormal3bvEXT">
-        <param name="v" type="const GLbyte *"/>
-    </function>
-
-    <function name="Binormal3dEXT">
-        <param name="bx" type="GLdouble"/>
-        <param name="by" type="GLdouble"/>
-        <param name="bz" type="GLdouble"/>
-    </function>
-
-    <function name="Binormal3dvEXT">
-        <param name="v" type="const GLdouble *"/>
-    </function>
-
-    <function name="Binormal3fEXT">
-        <param name="bx" type="GLfloat"/>
-        <param name="by" type="GLfloat"/>
-        <param name="bz" type="GLfloat"/>
-    </function>
-
-    <function name="Binormal3fvEXT">
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="Binormal3iEXT">
-        <param name="bx" type="GLint"/>
-        <param name="by" type="GLint"/>
-        <param name="bz" type="GLint"/>
-    </function>
-
-    <function name="Binormal3ivEXT">
-        <param name="v" type="const GLint *"/>
-    </function>
-
-    <function name="Binormal3sEXT">
-        <param name="bx" type="GLshort"/>
-        <param name="by" type="GLshort"/>
-        <param name="bz" type="GLshort"/>
-    </function>
-
-    <function name="Binormal3svEXT">
-        <param name="v" type="const GLshort *"/>
-    </function>
-
-    <function name="TangentPointerEXT">
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-    </function>
-
-    <function name="BinormalPointerEXT">
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-    </function>
-</category>
-
-<!-- Extension number 157 is not listed in the extension registry. -->
-
-<category name="GL_EXT_texture_env_combine" number="158">
-    <enum name="COMBINE_EXT"                              value="0x8570"/>
-    <enum name="COMBINE_RGB_EXT"               count="1"  value="0x8571"/>
-    <enum name="COMBINE_ALPHA_EXT"             count="1"  value="0x8572"/>
-    <enum name="RGB_SCALE_EXT"                 count="1"  value="0x8573"/>
-    <enum name="ADD_SIGNED_EXT"                           value="0x8574"/>
-    <enum name="INTERPOLATE_EXT"                          value="0x8575"/>
-    <enum name="CONSTANT_EXT"                             value="0x8576"/>
-    <enum name="PRIMARY_COLOR_EXT"                        value="0x8577"/>
-    <enum name="PREVIOUS_EXT"                             value="0x8578"/>
-    <enum name="SOURCE0_RGB_EXT"               count="1"  value="0x8580"/>
-    <enum name="SOURCE1_RGB_EXT"               count="1"  value="0x8581"/>
-    <enum name="SOURCE2_RGB_EXT"               count="1"  value="0x8582"/>
-    <enum name="SOURCE0_ALPHA_EXT"             count="1"  value="0x8588"/>
-    <enum name="SOURCE1_ALPHA_EXT"             count="1"  value="0x8589"/>
-    <enum name="SOURCE2_ALPHA_EXT"             count="1"  value="0x858A"/>
-    <enum name="OPERAND0_RGB_EXT"              count="1"  value="0x8590"/>
-    <enum name="OPERAND1_RGB_EXT"              count="1"  value="0x8591"/>
-    <enum name="OPERAND2_RGB_EXT"              count="1"  value="0x8592"/>
-    <enum name="OPERAND0_ALPHA_EXT"            count="1"  value="0x8598"/>
-    <enum name="OPERAND1_ALPHA_EXT"            count="1"  value="0x8599"/>
-    <enum name="OPERAND2_ALPHA_EXT"            count="1"  value="0x859A"/>
-</category>
-
-<category name="GL_SGIX_pixel_texture" number="160">
-    <function name="PixelTexGenSGIX" offset="assign" static_dispatch="false">
-        <param name="mode" type="GLenum"/>
-        <glx rop="2059" ignore="true"/>
-    </function>
-</category>
-
-<!-- Extension number 161 is not listed in the extension registry. -->
-<!-- Extension number 162 is not listed in the extension registry. -->
-
-<category name="GL_SUNX_constant_data" number="163">
-    <function name="FinishTextureSUNX">
-    </function>
-</category>
-
-<category name="GL_SUN_global_alpha" number="164">
-    <function name="GlobalAlphaFactorbSUN">
-        <param name="factor" type="GLbyte"/>
-    </function>
-
-    <function name="GlobalAlphaFactorsSUN">
-        <param name="factor" type="GLshort"/>
-    </function>
-
-    <function name="GlobalAlphaFactoriSUN">
-        <param name="factor" type="GLint"/>
-    </function>
-
-    <function name="GlobalAlphaFactorfSUN">
-        <param name="factor" type="GLfloat"/>
-    </function>
-
-    <function name="GlobalAlphaFactordSUN">
-        <param name="factor" type="GLdouble"/>
-    </function>
-
-    <function name="GlobalAlphaFactorubSUN">
-        <param name="factor" type="GLubyte"/>
-    </function>
-
-    <function name="GlobalAlphaFactorusSUN">
-        <param name="factor" type="GLushort"/>
-    </function>
-
-    <function name="GlobalAlphaFactoruiSUN">
-        <param name="factor" type="GLuint"/>
-    </function>
-</category>
-
-<category name="GL_SUN_triangle_list" number="165">
-    <function name="ReplacementCodeuiSUN">
-        <param name="code" type="GLuint"/>
-    </function>
-
-    <function name="ReplacementCodeusSUN">
-        <param name="code" type="GLushort"/>
-    </function>
-
-    <function name="ReplacementCodeubSUN">
-        <param name="code" type="GLubyte"/>
-    </function>
-
-    <function name="ReplacementCodeuivSUN">
-        <param name="code" type="const GLuint *"/>
-    </function>
-
-    <function name="ReplacementCodeusvSUN">
-        <param name="code" type="const GLushort *"/>
-    </function>
-
-    <function name="ReplacementCodeubvSUN">
-        <param name="code" type="const GLubyte *"/>
-    </function>
-
-    <function name="ReplacementCodePointerSUN">
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-    </function>
-</category>
-
-<category name="GL_SUN_vertex" number="166">
-    <function name="Color4ubVertex2fSUN">
-        <param name="r" type="GLubyte"/>
-        <param name="g" type="GLubyte"/>
-        <param name="b" type="GLubyte"/>
-        <param name="a" type="GLubyte"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-    </function>
-
-    <function name="Color4ubVertex2fvSUN">
-        <param name="c" type="const GLubyte *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="Color4ubVertex3fSUN">
-        <param name="r" type="GLubyte"/>
-        <param name="g" type="GLubyte"/>
-        <param name="b" type="GLubyte"/>
-        <param name="a" type="GLubyte"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="Color4ubVertex3fvSUN">
-        <param name="c" type="const GLubyte *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="Color3fVertex3fSUN">
-        <param name="r" type="GLfloat"/>
-        <param name="g" type="GLfloat"/>
-        <param name="b" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="Color3fVertex3fvSUN">
-        <param name="c" type="const GLfloat *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="Normal3fVertex3fSUN">
-        <param name="nx" type="GLfloat"/>
-        <param name="ny" type="GLfloat"/>
-        <param name="nz" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="Normal3fVertex3fvSUN">
-        <param name="n" type="const GLfloat *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="Color4fNormal3fVertex3fSUN">
-        <param name="r" type="GLfloat"/>
-        <param name="g" type="GLfloat"/>
-        <param name="b" type="GLfloat"/>
-        <param name="a" type="GLfloat"/>
-        <param name="nx" type="GLfloat"/>
-        <param name="ny" type="GLfloat"/>
-        <param name="nz" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="Color4fNormal3fVertex3fvSUN">
-        <param name="c" type="const GLfloat *"/>
-        <param name="n" type="const GLfloat *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="TexCoord2fVertex3fSUN">
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="TexCoord2fVertex3fvSUN">
-        <param name="tc" type="const GLfloat *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="TexCoord4fVertex4fSUN">
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="p" type="GLfloat"/>
-        <param name="q" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <param name="w" type="GLfloat"/>
-    </function>
-
-    <function name="TexCoord4fVertex4fvSUN">
-        <param name="tc" type="const GLfloat *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="TexCoord2fColor4ubVertex3fSUN">
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="r" type="GLubyte"/>
-        <param name="g" type="GLubyte"/>
-        <param name="b" type="GLubyte"/>
-        <param name="a" type="GLubyte"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="TexCoord2fColor4ubVertex3fvSUN">
-        <param name="tc" type="const GLfloat *"/>
-        <param name="c" type="const GLubyte *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="TexCoord2fColor3fVertex3fSUN">
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="r" type="GLfloat"/>
-        <param name="g" type="GLfloat"/>
-        <param name="b" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="TexCoord2fColor3fVertex3fvSUN">
-        <param name="tc" type="const GLfloat *"/>
-        <param name="c" type="const GLfloat *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="TexCoord2fNormal3fVertex3fSUN">
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="nx" type="GLfloat"/>
-        <param name="ny" type="GLfloat"/>
-        <param name="nz" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="TexCoord2fNormal3fVertex3fvSUN">
-        <param name="tc" type="const GLfloat *"/>
-        <param name="n" type="const GLfloat *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="TexCoord2fColor4fNormal3fVertex3fSUN">
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="r" type="GLfloat"/>
-        <param name="g" type="GLfloat"/>
-        <param name="b" type="GLfloat"/>
-        <param name="a" type="GLfloat"/>
-        <param name="nx" type="GLfloat"/>
-        <param name="ny" type="GLfloat"/>
-        <param name="nz" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="TexCoord2fColor4fNormal3fVertex3fvSUN">
-        <param name="tc" type="const GLfloat *"/>
-        <param name="c" type="const GLfloat *"/>
-        <param name="n" type="const GLfloat *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="TexCoord4fColor4fNormal3fVertex4fSUN">
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="p" type="GLfloat"/>
-        <param name="q" type="GLfloat"/>
-        <param name="r" type="GLfloat"/>
-        <param name="g" type="GLfloat"/>
-        <param name="b" type="GLfloat"/>
-        <param name="a" type="GLfloat"/>
-        <param name="nx" type="GLfloat"/>
-        <param name="ny" type="GLfloat"/>
-        <param name="nz" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <param name="w" type="GLfloat"/>
-    </function>
-
-    <function name="TexCoord4fColor4fNormal3fVertex4fvSUN">
-        <param name="tc" type="const GLfloat *"/>
-        <param name="c" type="const GLfloat *"/>
-        <param name="n" type="const GLfloat *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="ReplacementCodeuiVertex3fSUN">
-        <param name="rc" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="ReplacementCodeuiVertex3fvSUN">
-        <param name="rc" type="const GLuint *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="ReplacementCodeuiColor4ubVertex3fSUN">
-        <param name="rc" type="GLuint"/>
-        <param name="r" type="GLubyte"/>
-        <param name="g" type="GLubyte"/>
-        <param name="b" type="GLubyte"/>
-        <param name="a" type="GLubyte"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="ReplacementCodeuiColor4ubVertex3fvSUN">
-        <param name="rc" type="const GLuint *"/>
-        <param name="c" type="const GLubyte *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="ReplacementCodeuiColor3fVertex3fSUN">
-        <param name="rc" type="GLuint"/>
-        <param name="r" type="GLfloat"/>
-        <param name="g" type="GLfloat"/>
-        <param name="b" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="ReplacementCodeuiColor3fVertex3fvSUN">
-        <param name="rc" type="const GLuint *"/>
-        <param name="c" type="const GLfloat *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="ReplacementCodeuiNormal3fVertex3fSUN">
-        <param name="rc" type="GLuint"/>
-        <param name="nx" type="GLfloat"/>
-        <param name="ny" type="GLfloat"/>
-        <param name="nz" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="ReplacementCodeuiNormal3fVertex3fvSUN">
-        <param name="rc" type="const GLuint *"/>
-        <param name="n" type="const GLfloat *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="ReplacementCodeuiColor4fNormal3fVertex3fSUN">
-        <param name="rc" type="GLuint"/>
-        <param name="r" type="GLfloat"/>
-        <param name="g" type="GLfloat"/>
-        <param name="b" type="GLfloat"/>
-        <param name="a" type="GLfloat"/>
-        <param name="nx" type="GLfloat"/>
-        <param name="ny" type="GLfloat"/>
-        <param name="nz" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="ReplacementCodeuiColor4fNormal3fVertex3fvSUN">
-        <param name="rc" type="const GLuint *"/>
-        <param name="c" type="const GLfloat *"/>
-        <param name="n" type="const GLfloat *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="ReplacementCodeuiTexCoord2fVertex3fSUN">
-        <param name="rc" type="GLuint"/>
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="ReplacementCodeuiTexCoord2fVertex3fvSUN">
-        <param name="rc" type="const GLuint *"/>
-        <param name="tc" type="const GLfloat *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN">
-        <param name="rc" type="GLuint"/>
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="nx" type="GLfloat"/>
-        <param name="ny" type="GLfloat"/>
-        <param name="nz" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN">
-        <param name="rc" type="const GLuint *"/>
-        <param name="tc" type="const GLfloat *"/>
-        <param name="n" type="const GLfloat *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-
-    <function name="ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN">
-        <param name="rc" type="GLuint"/>
-        <param name="s" type="GLfloat"/>
-        <param name="t" type="GLfloat"/>
-        <param name="r" type="GLfloat"/>
-        <param name="g" type="GLfloat"/>
-        <param name="b" type="GLfloat"/>
-        <param name="a" type="GLfloat"/>
-        <param name="nx" type="GLfloat"/>
-        <param name="ny" type="GLfloat"/>
-        <param name="nz" type="GLfloat"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN">
-        <param name="rc" type="const GLuint *"/>
-        <param name="tc" type="const GLfloat *"/>
-        <param name="c" type="const GLfloat *"/>
-        <param name="n" type="const GLfloat *"/>
-        <param name="v" type="const GLfloat *"/>
-    </function>
-</category>
-
-<!-- Extension number 167 is a WGL extension. -->
-<!-- Extension number 168 is a WGL extension. -->
-<!-- Extension number 169 is a WGL extension. -->
-<!-- Extension number 170 is a WGL extension. -->
-<!-- Extension number 171 is a WGL extension. -->
-<!-- Extension number 172 is a WGL extension. -->
-
-<category name="GL_EXT_blend_func_separate" number="173">
-    <function name="BlendFuncSeparateEXT" offset="assign">
-        <param name="sfactorRGB" type="GLenum"/>
-        <param name="dfactorRGB" type="GLenum"/>
-        <param name="sfactorAlpha" type="GLenum"/>
-        <param name="dfactorAlpha" type="GLenum"/>
-        <glx rop="4134"/>
-    </function>
-</category>
-
-<category name="GL_EXT_stencil_wrap" number="176">
-    <enum name="INCR_WRAP_EXT"                            value="0x8507"/>
-    <enum name="DECR_WRAP_EXT"                            value="0x8508"/>
-</category>
-
-<!-- Extension number 177 is a WGL extension. -->
-
-<category name="GL_NV_texgen_reflection" number="179">
-    <enum name="NORMAL_MAP_NV"                            value="0x8511"/>
-    <enum name="REFLECTION_MAP_NV"                        value="0x8512"/>
-</category>
-
-<!-- Extension number 180 is not listed in the extension registry. -->
-
-<category name="GL_SUN_convolution_border_modes" number="182">
-    <enum name="WRAP_BORDER_SUN"                          value="0x81D4"/>
-</category>
-
-<!-- Extension number 183 is a GLX extension. -->
-<!-- Extension number 184 is not listed in the extension registry. -->
-
-<category name="GL_EXT_texture_env_add" number="185">
-    <!-- No new functions, types, enums. -->
-</category>
-
-<category name="GL_EXT_texture_lod_bias" number="186">
-    <enum name="TEXTURE_LOD_BIAS_EXT"          count="1"  value="0x8501">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-</category>
-
-<category name="GL_EXT_texture_filter_anisotropic" number="187">
-    <enum name="TEXTURE_MAX_ANISOTROPY_EXT"    count="1"  value="0x84FE">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="MAX_TEXTURE_MAX_ANISOTROPY_EXT" count="1" value="0x84FF">
-        <size name="Get" mode="get"/>
-    </enum>
-</category>
-
-<category name="GL_EXT_vertex_weighting" number="188">
-    <function name="VertexWeightfEXT" vectorequiv="VertexWeightfvEXT">
-        <param name="weight" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="VertexWeightfvEXT">
-        <param name="weight" type="const GLfloat *" count="1"/>
-        <glx rop="4135" ignore="true"/>
-    </function>
-
-    <function name="VertexWeightPointerEXT">
-        <param name="size" type="GLsizei"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true" ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_NV_light_max_exponent" number="189">
-    <enum name="MAX_SHININESS_NV"              count="1"  value="0x8504">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="MAX_SPOT_EXPONENT_NV"          count="1"  value="0x8505">
-        <size name="Get" mode="get"/>
-    </enum>
-</category>
-
-<category name="GL_NV_vertex_array_range" number="190">
-    <function name="FlushVertexArrayRangeNV" offset="assign">
-        <glx ignore="true"/>
-    </function>
-
-    <function name="VertexArrayRangeNV" offset="assign">
-        <param name="length" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_NV_register_combiners" number="191">
-    <function name="CombinerParameterfvNV" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *" variable_param="pname"/>
-        <glx rop="4137" ignore="true"/>
-    </function>
-
-    <function name="CombinerParameterfNV" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-        <glx rop="4136" ignore="true"/>
-    </function>
-
-    <function name="CombinerParameterivNV" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="4139" ignore="true"/>
-    </function>
-
-    <function name="CombinerParameteriNV" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="4138" ignore="true"/>
-    </function>
-
-    <function name="CombinerInputNV" offset="assign">
-        <param name="stage" type="GLenum"/>
-        <param name="portion" type="GLenum"/>
-        <param name="variable" type="GLenum"/>
-        <param name="input" type="GLenum"/>
-        <param name="mapping" type="GLenum"/>
-        <param name="componentUsage" type="GLenum"/>
-        <glx rop="4140" ignore="true"/>
-    </function>
-
-    <function name="CombinerOutputNV" offset="assign">
-        <param name="stage" type="GLenum"/>
-        <param name="portion" type="GLenum"/>
-        <param name="abOutput" type="GLenum"/>
-        <param name="cdOutput" type="GLenum"/>
-        <param name="sumOutput" type="GLenum"/>
-        <param name="scale" type="GLenum"/>
-        <param name="bias" type="GLenum"/>
-        <param name="abDotProduct" type="GLboolean"/>
-        <param name="cdDotProduct" type="GLboolean"/>
-        <param name="muxSum" type="GLboolean"/>
-        <glx rop="4141" ignore="true"/>
-    </function>
-
-    <function name="FinalCombinerInputNV" offset="assign">
-        <param name="variable" type="GLenum"/>
-        <param name="input" type="GLenum"/>
-        <param name="mapping" type="GLenum"/>
-        <param name="componentUsage" type="GLenum"/>
-        <glx rop="4142" ignore="true"/>
-    </function>
-
-    <function name="GetCombinerInputParameterfvNV" offset="assign">
-        <param name="stage" type="GLenum"/>
-        <param name="portion" type="GLenum"/>
-        <param name="variable" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true"/>
-        <glx vendorpriv="1270" ignore="true"/>
-    </function>
-
-    <function name="GetCombinerInputParameterivNV" offset="assign">
-        <param name="stage" type="GLenum"/>
-        <param name="portion" type="GLenum"/>
-        <param name="variable" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true"/>
-        <glx vendorpriv="1271" ignore="true"/>
-    </function>
-
-    <function name="GetCombinerOutputParameterfvNV" offset="assign">
-        <param name="stage" type="GLenum"/>
-        <param name="portion" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true"/>
-        <glx vendorpriv="1272" ignore="true"/>
-    </function>
-
-    <function name="GetCombinerOutputParameterivNV" offset="assign">
-        <param name="stage" type="GLenum"/>
-        <param name="portion" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true"/>
-        <glx vendorpriv="1273" ignore="true"/>
-    </function>
-
-    <function name="GetFinalCombinerInputParameterfvNV" offset="assign">
-        <param name="variable" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true"/>
-        <glx vendorpriv="1274" ignore="true"/>
-    </function>
-
-    <function name="GetFinalCombinerInputParameterivNV" offset="assign">
-        <param name="variable" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true"/>
-        <glx vendorpriv="1275" ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_NV_fog_distance" number="192">
-    <enum name="FOG_DISTANCE_MODE_NV"          count="1"  value="0x855A">
-        <size name="Fogfv"/>
-        <size name="Fogiv"/>
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="EYE_RADIAL_NV"                            value="0x855B"/>
-    <enum name="EYE_PLANE_ABSOLUTE_NV"                    value="0x855C"/>
-</category>
-
-<category name="GL_NV_blend_square" number="194">
-    <!-- No new functions, types, enums. -->
-</category>
-
-<category name="GL_NV_texture_env_combine4" number="195">
-    <enum name="COMBINE4"                                 value="0x8503"/>
-    <enum name="SOURCE3_RGB_NV"                count="1"  value="0x8583">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="SOURCE3_ALPHA_NV"              count="1"  value="0x858B">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="OPERAND3_RGB_NV"               count="1"  value="0x8593">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="OPERAND3_ALPHA_NV"             count="1"  value="0x859B">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-</category>
-
-<category name="GL_MESA_resize_buffers" number="196">
-    <function name="ResizeBuffersMESA" offset="assign">
-        <glx ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_MESA_window_pos" number="197">
-    <function name="WindowPos2dMESA" offset="assign">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="WindowPos2dvMESA" offset="assign">
-        <param name="v" type="const GLdouble *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="WindowPos2fMESA" offset="assign">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="WindowPos2fvMESA" offset="assign">
-        <param name="v" type="const GLfloat *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="WindowPos2iMESA" offset="assign">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="WindowPos2ivMESA" offset="assign">
-        <param name="v" type="const GLint *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="WindowPos2sMESA" offset="assign">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="WindowPos2svMESA" offset="assign">
-        <param name="v" type="const GLshort *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="WindowPos3dMESA" offset="assign">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="WindowPos3dvMESA" offset="assign">
-        <param name="v" type="const GLdouble *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="WindowPos3fMESA" offset="assign" vectorequiv="WindowPos3fvMESA">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="WindowPos3fvMESA" offset="assign">
-        <param name="v" type="const GLfloat *" count="3"/>
-        <glx rop="230"/>
-    </function>
-
-    <function name="WindowPos3iMESA" offset="assign">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="z" type="GLint"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="WindowPos3ivMESA" offset="assign">
-        <param name="v" type="const GLint *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="WindowPos3sMESA" offset="assign">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="WindowPos3svMESA" offset="assign">
-        <param name="v" type="const GLshort *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="WindowPos4dMESA" offset="assign">
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <param name="w" type="GLdouble"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="WindowPos4dvMESA" offset="assign">
-        <param name="v" type="const GLdouble *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="WindowPos4fMESA" offset="assign">
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <param name="w" type="GLfloat"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="WindowPos4fvMESA" offset="assign">
-        <param name="v" type="const GLfloat *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="WindowPos4iMESA" offset="assign">
-        <param name="x" type="GLint"/>
-        <param name="y" type="GLint"/>
-        <param name="z" type="GLint"/>
-        <param name="w" type="GLint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="WindowPos4ivMESA" offset="assign">
-        <param name="v" type="const GLint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="WindowPos4sMESA" offset="assign">
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-        <param name="w" type="GLshort"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="WindowPos4svMESA" offset="assign">
-        <param name="v" type="const GLshort *"/>
-        <glx ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_EXT_texture_compression_s3tc" number="198">
-    <enum name="COMPRESSED_RGB_S3TC_DXT1_EXT"             value="0x83F0"/>
-    <enum name="COMPRESSED_RGBA_S3TC_DXT1_EXT"            value="0x83F1"/>
-    <enum name="COMPRESSED_RGBA_S3TC_DXT3_EXT"            value="0x83F2"/>
-    <enum name="COMPRESSED_RGBA_S3TC_DXT5_EXT"            value="0x83F3"/>
-</category>
-
-<category name="GL_IBM_multimode_draw_arrays" number="200">
-    <function name="MultiModeDrawArraysIBM" offset="assign" static_dispatch="false">
-        <param name="mode" type="const GLenum *"/>
-        <param name="first" type="const GLint *"/>
-        <param name="count" type="const GLsizei *"/>
-        <param name="primcount" type="GLsizei"/>
-        <param name="modestride" type="GLint"/>
-        <glx handcode="true" ignore="true"/>
-    </function>
-
-    <function name="MultiModeDrawElementsIBM" offset="assign" static_dispatch="false">
-        <param name="mode" type="const GLenum *"/>
-        <param name="count" type="const GLsizei *"/>
-        <param name="type" type="GLenum"/>
-        <param name="indices" type="const GLvoid * const *"/>
-        <param name="primcount" type="GLsizei"/>
-        <param name="modestride" type="GLint"/>
-        <glx handcode="true" ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_IBM_vertex_array_lists" number="201">
-    <function name="ColorPointerListIBM">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLint"/>
-        <param name="pointer" type="const GLvoid **"/>
-        <param name="ptrstride" type="GLint"/>
-    </function>
-
-    <function name="SecondaryColorPointerListIBM">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLint"/>
-        <param name="pointer" type="const GLvoid **"/>
-        <param name="ptrstride" type="GLint"/>
-    </function>
-
-    <function name="EdgeFlagPointerListIBM">
-        <param name="stride" type="GLint"/>
-        <param name="pointer" type="const GLboolean **"/>
-        <param name="ptrstride" type="GLint"/>
-    </function>
-
-    <function name="FogCoordPointerListIBM">
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLint"/>
-        <param name="pointer" type="const GLvoid **"/>
-        <param name="ptrstride" type="GLint"/>
-    </function>
-
-    <function name="IndexPointerListIBM">
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLint"/>
-        <param name="pointer" type="const GLvoid **"/>
-        <param name="ptrstride" type="GLint"/>
-    </function>
-
-    <function name="NormalPointerListIBM">
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLint"/>
-        <param name="pointer" type="const GLvoid **"/>
-        <param name="ptrstride" type="GLint"/>
-    </function>
-
-    <function name="TexCoordPointerListIBM">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLint"/>
-        <param name="pointer" type="const GLvoid **"/>
-        <param name="ptrstride" type="GLint"/>
-    </function>
-
-    <function name="VertexPointerListIBM">
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLint"/>
-        <param name="pointer" type="const GLvoid **"/>
-        <param name="ptrstride" type="GLint"/>
-    </function>
-</category>
-
-<!-- Extension number 202 is not listed in the extension registry. -->
-<!-- Extension number 203 is not listed in the extension registry. -->
-<!-- Extension number 204 is not listed in the extension registry. -->
-<!-- Extension number 205 is not listed in the extension registry. -->
-
-<category name="GL_3DFX_texture_compression_FXT1" number="206">
-    <enum name="COMPRESSED_RGB_FXT1_3DFX"                 value="0x86B0"/>
-    <enum name="COMPRESSED_RGBA_FXT1_3DFX"                value="0x86B1"/>
-</category>
-
-<category name="GL_3DFX_multisample" number="207">
-    <enum name="MULTISAMPLE_3DFX"                         value="0x86B2"/>
-    <enum name="SAMPLE_BUFFERS_3DFX"                      value="0x86B3"/>
-    <enum name="SAMPLES_3DFX"                             value="0x86B4"/>
-    <enum name="MULTISAMPLE_BIT_3DFX"                     value="0x20000000"/>
-</category>
-
-<category name="GL_3DFX_tbuffer" number="208">
-    <function name="TbufferMask3DFX">
-        <param name="mask" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_EXT_multisample" number="209">
-    <function name="SampleMaskEXT" alias="SampleMaskSGIS" static_dispatch="false">
-        <param name="value" type="GLclampf"/>
-        <param name="invert" type="GLboolean"/>
-    </function>
-
-    <function name="SamplePatternEXT" alias="SamplePatternSGIS" static_dispatch="false">
-        <param name="pattern" type="GLenum"/>
-    </function>
-</category>
-
-<!-- Extension number 211 is not listed in the extension registry. -->
-<!-- Extension number 213 is not listed in the extension registry. -->
-
-<category name="GL_SGIS_texture_color_mask" number="214">
-    <enum name="TEXTURE_COLOR_WRITEMASK_SGIS"             value="0x81EF"/>
-
-    <function name="TextureColorMaskSGIS">
-        <param name="red" type="GLboolean"/>
-        <param name="green" type="GLboolean"/>
-        <param name="blue" type="GLboolean"/>
-        <param name="alpha" type="GLboolean"/>
-        <glx rop="2082" ignore="true"/>
-    </function>
-</category>
-
-<!-- Extension number 215 is a GLX extension. -->
-<!-- Extension number 216 is a GLX extension. -->
-<!-- Extension number 217 is a GLX extension. -->
-<!-- Extension number 218 is a GLX extension. -->
-<!-- Extension number 219 is not listed in the extension registry. -->
-
-<category name="GL_EXT_texture_env_dot3" number="220">
-    <enum name="DOT3_RGB_EXT"                             value="0x8740"/>
-    <enum name="DOT3_RGBA_EXT"                            value="0x8741"/>
-</category>
-
-<category name="GL_ATI_texture_mirror_once" number="221">
-    <enum name="MIRROR_CLAMP_ATI"                         value="0x8742"/>
-    <enum name="MIRROR_CLAMP_TO_EDGE_ATI"                 value="0x8743"/>
-</category>
-
-<category name="GL_NV_fence" number="222">
-    <function name="DeleteFencesNV" offset="assign" static_dispatch="false">
-        <param name="n" type="GLsizei"/>
-        <param name="fences" type="const GLuint *"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GenFencesNV" offset="assign" static_dispatch="false">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="fences" type="GLuint *" output="true" count="n"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="IsFenceNV" offset="assign" static_dispatch="false">
-        <param name="fence" type="GLuint"/>
-        <return type="GLboolean"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="TestFenceNV" offset="assign" static_dispatch="false">
-        <param name="fence" type="GLuint"/>
-        <return type="GLboolean"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="GetFenceivNV" offset="assign" static_dispatch="false">
-        <param name="fence" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="FinishFenceNV" offset="assign" static_dispatch="false">
-        <param name="fence" type="GLuint"/>
-        <glx ignore="true"/>
-    </function>
-
-    <function name="SetFenceNV" offset="assign" static_dispatch="false">
-        <param name="fence" type="GLuint"/>
-        <param name="condition" type="GLenum"/>
-        <glx ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_IBM_texture_mirrored_repeat" number="224">
-    <enum name="MIRRORED_REPEAT_IBM"                      value="0x8370"/>
-</category>
-
-<category name="GL_NV_evaluators" number="225">
-    <function name="MapControlPointsNV">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="type" type="GLenum"/>
-        <param name="ustride" type="GLsizei"/>
-        <param name="vstride" type="GLsizei"/>
-        <param name="uorder" type="GLint"/>
-        <param name="vorder" type="GLint"/>
-        <param name="packed" type="GLboolean"/>
-        <param name="points" type="const GLvoid *"/>
-    </function>
-
-    <function name="MapParameterivNV">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *"/>
-    </function>
-
-    <function name="MapParameterfvNV">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *"/>
-    </function>
-
-    <function name="GetMapControlPointsNV">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="type" type="GLenum"/>
-        <param name="ustride" type="GLsizei"/>
-        <param name="vstride" type="GLsizei"/>
-        <param name="packed" type="GLboolean"/>
-        <param name="points" type="GLvoid *" output="true"/>
-    </function>
-
-    <function name="GetMapParameterivNV">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true"/>
-    </function>
-
-    <function name="GetMapParameterfvNV">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true"/>
-    </function>
-
-    <function name="GetMapAttribParameterivNV">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true"/>
-    </function>
-
-    <function name="GetMapAttribParameterfvNV">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true"/>
-    </function>
-
-    <function name="EvalMapsNV">
-        <param name="target" type="GLenum"/>
-        <param name="mode" type="GLenum"/>
-    </function>
-</category>
-
-<category name="GL_NV_packed_depth_stencil" number="226">
-    <enum name="DEPTH_STENCIL_NV"                         value="0x84F9"/>
-    <enum name="UNSIGNED_INT_24_8_NV"                     value="0x84FA"/>
-</category>
-
-<category name="GL_NV_register_combiners2" number="227">
-    <function name="CombinerStageParameterfvNV">
-        <param name="stage" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *"/>
-    </function>
-
-    <function name="GetCombinerStageParameterfvNV">
-        <param name="stage" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true"/>
-    </function>
-</category>
-
-<category name="GL_NV_texture_compression_vtc" number="228">
-    <enum name="COMPRESSED_RGB_S3TC_DXT1_EXT"             value="0x83F0"/>
-    <enum name="COMPRESSED_RGBA_S3TC_DXT1_EXT"            value="0x83F1"/>
-    <enum name="COMPRESSED_RGBA_S3TC_DXT3_EXT"            value="0x83F2"/>
-    <enum name="COMPRESSED_RGBA_S3TC_DXT5_EXT"            value="0x83F3"/>
-</category>
-
-<category name="GL_NV_texture_rectangle" number="229">
-    <enum name="TEXTURE_RECTANGLE_NV"          count="1"  value="0x84F5">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_BINDING_RECTANGLE_NV"  count="1"  value="0x84F6">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="PROXY_TEXTURE_RECTANGLE_NV"               value="0x84F7"/>
-    <enum name="MAX_RECTANGLE_TEXTURE_SIZE_NV" count="1"  value="0x84F8">
-        <size name="Get" mode="get"/>
-    </enum>
-</category>
-
-<category name="GL_NV_vertex_program" number="233">
-    <enum name="VERTEX_PROGRAM_NV"                        value="0x8620"/>
-    <enum name="VERTEX_STATE_PROGRAM_NV"                  value="0x8621"/>
-    <enum name="ATTRIB_ARRAY_SIZE_NV"          count="1"  value="0x8623">
-        <size name="GetVertexAttribdvNV" mode="get"/>
-        <size name="GetVertexAttribfvNV" mode="get"/>
-        <size name="GetVertexAttribivNV" mode="get"/>
-    </enum>
-    <enum name="ATTRIB_ARRAY_STRIDE_NV"        count="1"  value="0x8624">
-        <size name="GetVertexAttribdvNV" mode="get"/>
-        <size name="GetVertexAttribfvNV" mode="get"/>
-        <size name="GetVertexAttribivNV" mode="get"/>
-    </enum>
-    <enum name="ATTRIB_ARRAY_TYPE_NV"          count="1"  value="0x8625">
-        <size name="GetVertexAttribdvNV" mode="get"/>
-        <size name="GetVertexAttribfvNV" mode="get"/>
-        <size name="GetVertexAttribivNV" mode="get"/>
-    </enum>
-    <enum name="CURRENT_ATTRIB_NV"             count="1"  value="0x8626">
-        <size name="GetVertexAttribdvNV" mode="get"/>
-        <size name="GetVertexAttribfvNV" mode="get"/>
-        <size name="GetVertexAttribivNV" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_LENGTH_NV"             count="1"  value="0x8627">
-        <size name="GetProgramivNV" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_STRING_NV"                        value="0x8628"/>
-    <enum name="MODELVIEW_PROJECTION_NV"                  value="0x8629"/>
-    <enum name="IDENTITY_NV"                              value="0x862A"/>
-    <enum name="INVERSE_NV"                               value="0x862B"/>
-    <enum name="TRANSPOSE_NV"                             value="0x862C"/>
-    <enum name="INVERSE_TRANSPOSE_NV"                     value="0x862D"/>
-    <enum name="MAX_TRACK_MATRIX_STACK_DEPTH_NV"          value="0x862E"/>
-    <enum name="MAX_TRACK_MATRICES_NV"                    value="0x862F"/>
-    <enum name="MATRIX0_NV"                               value="0x8630"/>
-    <enum name="MATRIX1_NV"                               value="0x8631"/>
-    <enum name="MATRIX2_NV"                               value="0x8632"/>
-    <enum name="MATRIX3_NV"                               value="0x8633"/>
-    <enum name="MATRIX4_NV"                               value="0x8634"/>
-    <enum name="MATRIX5_NV"                               value="0x8635"/>
-    <enum name="MATRIX6_NV"                               value="0x8636"/>
-    <enum name="MATRIX7_NV"                               value="0x8637"/>
-    <enum name="CURRENT_MATRIX_STACK_DEPTH_NV"            value="0x8640"/>
-    <enum name="CURRENT_MATRIX_NV"                        value="0x8641"/>
-    <enum name="VERTEX_PROGRAM_POINT_SIZE_NV"             value="0x8642"/>
-    <enum name="VERTEX_PROGRAM_TWO_SIDE_NV"               value="0x8643"/>
-    <enum name="PROGRAM_PARAMETER_NV"                     value="0x8644"/>
-    <enum name="ATTRIB_ARRAY_POINTER_NV"                  value="0x8645"/>
-    <enum name="PROGRAM_TARGET_NV"             count="1"  value="0x8646">
-        <size name="GetProgramivNV" mode="get"/>
-    </enum>
-    <enum name="PROGRAM_RESIDENT_NV"           count="1"  value="0x8647">
-        <size name="GetProgramivNV" mode="get"/>
-    </enum>
-    <enum name="TRACK_MATRIX_NV"                          value="0x8648"/>
-    <enum name="TRACK_MATRIX_TRANSFORM_NV"                value="0x8649"/>
-    <enum name="VERTEX_PROGRAM_BINDING_NV"                value="0x864A"/>
-    <enum name="PROGRAM_ERROR_POSITION_NV"                value="0x864B"/>
-    <enum name="VERTEX_ATTRIB_ARRAY0_NV"                  value="0x8650"/>
-    <enum name="VERTEX_ATTRIB_ARRAY1_NV"                  value="0x8651"/>
-    <enum name="VERTEX_ATTRIB_ARRAY2_NV"                  value="0x8652"/>
-    <enum name="VERTEX_ATTRIB_ARRAY3_NV"                  value="0x8653"/>
-    <enum name="VERTEX_ATTRIB_ARRAY4_NV"                  value="0x8654"/>
-    <enum name="VERTEX_ATTRIB_ARRAY5_NV"                  value="0x8655"/>
-    <enum name="VERTEX_ATTRIB_ARRAY6_NV"                  value="0x8656"/>
-    <enum name="VERTEX_ATTRIB_ARRAY7_NV"                  value="0x8657"/>
-    <enum name="VERTEX_ATTRIB_ARRAY8_NV"                  value="0x8658"/>
-    <enum name="VERTEX_ATTRIB_ARRAY9_NV"                  value="0x8659"/>
-    <enum name="VERTEX_ATTRIB_ARRAY10_NV"                 value="0x865A"/>
-    <enum name="VERTEX_ATTRIB_ARRAY11_NV"                 value="0x865B"/>
-    <enum name="VERTEX_ATTRIB_ARRAY12_NV"                 value="0x865C"/>
-    <enum name="VERTEX_ATTRIB_ARRAY13_NV"                 value="0x865D"/>
-    <enum name="VERTEX_ATTRIB_ARRAY14_NV"                 value="0x865E"/>
-    <enum name="VERTEX_ATTRIB_ARRAY15_NV"                 value="0x865F"/>
-    <enum name="MAP1_VERTEX_ATTRIB0_4_NV"                 value="0x8660"/>
-    <enum name="MAP1_VERTEX_ATTRIB1_4_NV"                 value="0x8661"/>
-    <enum name="MAP1_VERTEX_ATTRIB2_4_NV"                 value="0x8662"/>
-    <enum name="MAP1_VERTEX_ATTRIB3_4_NV"                 value="0x8663"/>
-    <enum name="MAP1_VERTEX_ATTRIB4_4_NV"                 value="0x8664"/>
-    <enum name="MAP1_VERTEX_ATTRIB5_4_NV"                 value="0x8665"/>
-    <enum name="MAP1_VERTEX_ATTRIB6_4_NV"                 value="0x8666"/>
-    <enum name="MAP1_VERTEX_ATTRIB7_4_NV"                 value="0x8667"/>
-    <enum name="MAP1_VERTEX_ATTRIB8_4_NV"                 value="0x8668"/>
-    <enum name="MAP1_VERTEX_ATTRIB9_4_NV"                 value="0x8669"/>
-    <enum name="MAP1_VERTEX_ATTRIB10_4_NV"                value="0x866A"/>
-    <enum name="MAP1_VERTEX_ATTRIB11_4_NV"                value="0x866B"/>
-    <enum name="MAP1_VERTEX_ATTRIB12_4_NV"                value="0x866C"/>
-    <enum name="MAP1_VERTEX_ATTRIB13_4_NV"                value="0x866D"/>
-    <enum name="MAP1_VERTEX_ATTRIB14_4_NV"                value="0x866E"/>
-    <enum name="MAP1_VERTEX_ATTRIB15_4_NV"                value="0x866F"/>
-    <enum name="MAP2_VERTEX_ATTRIB0_4_NV"                 value="0x8670"/>
-    <enum name="MAP2_VERTEX_ATTRIB1_4_NV"                 value="0x8671"/>
-    <enum name="MAP2_VERTEX_ATTRIB2_4_NV"                 value="0x8672"/>
-    <enum name="MAP2_VERTEX_ATTRIB3_4_NV"                 value="0x8673"/>
-    <enum name="MAP2_VERTEX_ATTRIB4_4_NV"                 value="0x8674"/>
-    <enum name="MAP2_VERTEX_ATTRIB5_4_NV"                 value="0x8675"/>
-    <enum name="MAP2_VERTEX_ATTRIB6_4_NV"                 value="0x8676"/>
-    <enum name="MAP2_VERTEX_ATTRIB7_4_NV"                 value="0x8677"/>
-    <enum name="MAP2_VERTEX_ATTRIB8_4_NV"                 value="0x8678"/>
-    <enum name="MAP2_VERTEX_ATTRIB9_4_NV"                 value="0x8679"/>
-    <enum name="MAP2_VERTEX_ATTRIB10_4_NV"                value="0x867A"/>
-    <enum name="MAP2_VERTEX_ATTRIB11_4_NV"                value="0x867B"/>
-    <enum name="MAP2_VERTEX_ATTRIB12_4_NV"                value="0x867C"/>
-    <enum name="MAP2_VERTEX_ATTRIB13_4_NV"                value="0x867D"/>
-    <enum name="MAP2_VERTEX_ATTRIB14_4_NV"                value="0x867E"/>
-    <enum name="MAP2_VERTEX_ATTRIB15_4_NV"                value="0x867F"/>
-
-    <function name="AreProgramsResidentNV" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="ids" type="const GLuint *" count="n"/>
-        <param name="residences" type="GLboolean *" output="true" count="n"/>
-        <return type="GLboolean"/>
-        <glx vendorpriv="1293"/>
-    </function>
-
-    <function name="BindProgramNV" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="program" type="GLuint"/>
-        <glx rop="4180"/>
-    </function>
-
-    <function name="DeleteProgramsNV" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="programs" type="const GLuint *" count="n"/>
-        <glx vendorpriv="1294"/>
-    </function>
-
-    <function name="ExecuteProgramNV" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="id" type="GLuint"/>
-        <param name="params" type="const GLfloat *" count="4"/>
-        <glx rop="4181"/>
-    </function>
-
-    <function name="GenProgramsNV" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="programs" type="GLuint *" output="true" count="n"/>
-        <glx vendorpriv="1295" always_array="true"/>
-     </function>
-
-    <!-- This isn't 100% correct.  Currently, the only valid value of pname
-         is GL_PROGRAM_PARAMETER_NV, and the count for that pname is always
-         4.  This is why the pname parameter was removed in the ARB version
-         of these functions.
-      -->
-
-    <function name="GetProgramParameterdvNV" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLdouble *" output="true" count="4"/>
-        <glx vendorpriv="1297"/>
-    </function>
-
-    <function name="GetProgramParameterfvNV" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" count="4"/>
-        <glx vendorpriv="1296"/>
-    </function>
-
-    <function name="GetProgramivNV" offset="assign">
-        <param name="id" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx vendorpriv="1298"/>
-    </function>
-
-    <function name="GetProgramStringNV" offset="assign">
-        <param name="id" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="program" type="GLubyte *" output="true"/>
-        <glx vendorpriv="1299" handcode="server" always_array="true"/>
-    </function>
-
-    <function name="GetTrackMatrixivNV" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="address" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" count="1"/>
-        <glx vendorpriv="1300"/>
-    </function>
-
-    <function name="GetVertexAttribdvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLdouble *" output="true" variable_param="pname"/>
-        <glx vendorpriv="1301"/>
-    </function>
-
-    <function name="GetVertexAttribfvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
-        <glx vendorpriv="1302"/>
-    </function>
-
-    <function name="GetVertexAttribivNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint *" output="true" variable_param="pname"/>
-        <glx vendorpriv="1303"/>
-    </function>
-
-    <function name="GetVertexAttribPointervNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="pointer" type="GLvoid **" output="true"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="IsProgramNV" offset="assign">
-        <param name="program" type="GLuint"/>
-        <return type="GLboolean"/>
-        <glx vendorpriv="1304"/>
-    </function>
-
-    <function name="LoadProgramNV" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="id" type="GLuint"/>
-        <param name="len" type="GLsizei" counter="true"/>
-        <param name="program" type="const GLubyte *" count="len"/>
-        <glx rop="4183"/>
-    </function>
-
-    <function name="ProgramParameter4dNV" alias="ProgramEnvParameter4dARB">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <param name="w" type="GLdouble"/>
-    </function>
-
-    <function name="ProgramParameter4dvNV" alias="ProgramEnvParameter4dvARB">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="params" type="const GLdouble *"/>
-    </function>
-
-    <function name="ProgramParameter4fNV" alias="ProgramEnvParameter4fARB">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <param name="w" type="GLfloat"/>
-    </function>
-
-    <function name="ProgramParameter4fvNV" alias="ProgramEnvParameter4fvARB">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="params" type="const GLfloat *"/>
-    </function>
-
-    <function name="ProgramParameters4dvNV" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="num" type="GLuint" counter="true"/>
-        <param name="params" type="const GLdouble *" count="num" count_scale="4"/>
-        <glx rop="4187"/>
-    </function>
-
-    <function name="ProgramParameters4fvNV" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="num" type="GLuint" counter="true"/>
-        <param name="params" type="const GLfloat *" count="num" count_scale="4"/>
-        <glx rop="4186"/>
-    </function>
-
-    <function name="RequestResidentProgramsNV" offset="assign">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="ids" type="const GLuint *" count="n"/>
-        <glx rop="4182"/>
-    </function>
-
-    <function name="TrackMatrixNV" offset="assign">
-        <param name="target" type="GLenum"/>
-        <param name="address" type="GLuint"/>
-        <param name="matrix" type="GLenum"/>
-        <param name="transform" type="GLenum"/>
-        <glx rop="4188"/>
-    </function>
-
-    <function name="VertexAttribPointerNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="size" type="GLint"/>
-        <param name="type" type="GLenum"/>
-        <param name="stride" type="GLsizei"/>
-        <param name="pointer" type="const GLvoid *"/>
-        <glx handcode="true"/>
-    </function>
-
-    <function name="VertexAttrib1sNV" offset="assign" vectorequiv="VertexAttrib1svNV">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLshort"/>
-    </function>
-
-    <function name="VertexAttrib1svNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLshort *" count="1"/>
-        <glx rop="4265"/>
-    </function>
-
-    <function name="VertexAttrib2sNV" offset="assign" vectorequiv="VertexAttrib2svNV">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-    </function>
-
-    <function name="VertexAttrib2svNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLshort *" count="2"/>
-        <glx rop="4266"/>
-    </function>
-
-    <function name="VertexAttrib3sNV" offset="assign" vectorequiv="VertexAttrib3svNV">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-    </function>
-
-    <function name="VertexAttrib3svNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLshort *" count="3"/>
-        <glx rop="4267"/>
-    </function>
-
-    <function name="VertexAttrib4sNV" offset="assign" vectorequiv="VertexAttrib4svNV">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLshort"/>
-        <param name="y" type="GLshort"/>
-        <param name="z" type="GLshort"/>
-        <param name="w" type="GLshort"/>
-    </function>
-
-    <function name="VertexAttrib4svNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLshort *" count="4"/>
-        <glx rop="4268"/>
-    </function>
-
-    <function name="VertexAttrib1fNV" offset="assign" vectorequiv="VertexAttrib1fvNV">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-    </function>
-
-    <function name="VertexAttrib1fvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLfloat *" count="1"/>
-        <glx rop="4269"/>
-    </function>
-
-    <function name="VertexAttrib2fNV" offset="assign" vectorequiv="VertexAttrib2fvNV">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-    </function>
-
-    <function name="VertexAttrib2fvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLfloat *" count="2"/>
-        <glx rop="4270"/>
-    </function>
-
-    <function name="VertexAttrib3fNV" offset="assign" vectorequiv="VertexAttrib3fvNV">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-    </function>
-
-    <function name="VertexAttrib3fvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLfloat *" count="3"/>
-        <glx rop="4271"/>
-    </function>
-
-    <function name="VertexAttrib4fNV" offset="assign" vectorequiv="VertexAttrib4fvNV">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <param name="w" type="GLfloat"/>
-    </function>
-
-    <function name="VertexAttrib4fvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLfloat *" count="4"/>
-        <glx rop="4272"/>
-    </function>
-
-    <function name="VertexAttrib1dNV" offset="assign" vectorequiv="VertexAttrib1dvNV">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLdouble"/>
-    </function>
-
-    <function name="VertexAttrib1dvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLdouble *" count="1"/>
-        <glx rop="4273" doubles_in_order="true"/>
-    </function>
-
-    <function name="VertexAttrib2dNV" offset="assign" vectorequiv="VertexAttrib2dvNV">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-    </function>
-
-    <function name="VertexAttrib2dvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLdouble *" count="2"/>
-        <glx rop="4274" doubles_in_order="true"/>
-    </function>
-
-    <function name="VertexAttrib3dNV" offset="assign" vectorequiv="VertexAttrib3dvNV">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-    </function>
-
-    <function name="VertexAttrib3dvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLdouble *" count="3"/>
-        <glx rop="4275" doubles_in_order="true"/>
-    </function>
-
-    <function name="VertexAttrib4dNV" offset="assign" vectorequiv="VertexAttrib4dvNV">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <param name="w" type="GLdouble"/>
-    </function>
-
-    <function name="VertexAttrib4dvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLdouble *" count="4"/>
-        <glx rop="4276" doubles_in_order="true"/>
-    </function>
-
-    <function name="VertexAttrib4ubNV" offset="assign" vectorequiv="VertexAttrib4ubvNV">
-        <param name="index" type="GLuint"/>
-        <param name="x" type="GLubyte"/>
-        <param name="y" type="GLubyte"/>
-        <param name="z" type="GLubyte"/>
-        <param name="w" type="GLubyte"/>
-    </function>
-
-    <function name="VertexAttrib4ubvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="v" type="const GLubyte *" count="4"/>
-        <glx rop="4277"/>
-    </function>
-
-    <function name="VertexAttribs1svNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="v" type="const GLshort *" count="n"/>
-        <glx rop="4202"/>
-    </function>
-
-    <function name="VertexAttribs2svNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="v" type="const GLshort *" count="n" count_scale="2"/>
-        <glx rop="4203"/>
-    </function>
-
-    <function name="VertexAttribs3svNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="v" type="const GLshort *" count="n" count_scale="3"/>
-        <glx rop="4204"/>
-    </function>
-
-    <function name="VertexAttribs4svNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="v" type="const GLshort *" count="n" count_scale="4"/>
-        <glx rop="4205"/>
-    </function>
-
-    <function name="VertexAttribs1fvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="v" type="const GLfloat *" count="n"/>
-        <glx rop="4206"/>
-    </function>
-
-    <function name="VertexAttribs2fvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="v" type="const GLfloat *" count="n" count_scale="2"/>
-        <glx rop="4207"/>
-    </function>
-
-    <function name="VertexAttribs3fvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="v" type="const GLfloat *" count="n" count_scale="3"/>
-        <glx rop="4208"/>
-    </function>
-
-    <function name="VertexAttribs4fvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="v" type="const GLfloat *" count="n" count_scale="4"/>
-        <glx rop="4209"/>
-    </function>
-
-    <function name="VertexAttribs1dvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="v" type="const GLdouble *" count="n"/>
-        <glx rop="4210" doubles_in_order="true"/>
-    </function>
-
-    <function name="VertexAttribs2dvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="v" type="const GLdouble *" count="n" count_scale="2"/>
-        <glx rop="4211" doubles_in_order="true"/>
-    </function>
-
-    <function name="VertexAttribs3dvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="v" type="const GLdouble *" count="n" count_scale="3"/>
-        <glx rop="4212" doubles_in_order="true"/>
-    </function>
-
-    <function name="VertexAttribs4dvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="v" type="const GLdouble *" count="n" count_scale="4"/>
-        <glx rop="4213" doubles_in_order="true"/>
-    </function>
-
-    <function name="VertexAttribs4ubvNV" offset="assign">
-        <param name="index" type="GLuint"/>
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="v" type="const GLubyte *" count="n" count_scale="4"/>
-        <glx rop="4214"/>
-    </function>
-</category>
-
-<!-- Extension number 234 is a GLX extension. -->
-
-<category name="GL_SGIX_texture_coordinate_clamp" number="235">
-    <enum name="TEXTURE_MAX_CLAMP_S_SGIX"      count="1"  value="0x8369">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_MAX_CLAMP_T_SGIX"      count="1"  value="0x836A">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_MAX_CLAMP_R_SGIX"      count="1"  value="0x836B">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-</category>
-
-<!-- Extension number 236 is not listed in the extension registry. -->
-<!-- Extension number 237 is a GLX extension. -->
-<!-- Extension number 238 is a GLX extension. -->
-<!-- Extension number 242 is a WGL extension. -->
-
-<category name="GL_NV_copy_depth_to_color" number="243">
-    <enum name="DEPTH_STENCIL_TO_RGBA_NV"                 value="0x886E"/>
-    <enum name="DEPTH_STENCIL_TO_BGRA_NV"                 value="0x886F"/>
-</category>
-
-<category name="GL_ATI_envmap_bumpmap" number="244">
-    <enum name="BUMP_ROT_MATRIX_ATI"          count="4"   value="0x8775">
-        <size name="TexBumpParameterfv"/>
-        <size name="TexBumpParameteriv"/>
-        <size name="GetTexBumpParameterfv" mode="get"/>
-        <size name="GetTexBumpParameteriv" mode="get"/>
-    </enum>
-    <enum name="BUMP_ROT_MATRIX_SIZE_ATI"     count="1"   value="0x8776">
-        <size name="GetTexBumpParameterfv" mode="get"/>
-        <size name="GetTexBumpParameteriv" mode="get"/>
-    </enum>
-    <enum name="BUMP_NUM_TEX_UNITS_ATI"       count="1"   value="0x8777">
-        <size name="GetTexBumpParameterfv" mode="get"/>
-        <size name="GetTexBumpParameteriv" mode="get"/>
-    </enum>
-    <enum name="BUMP_TEX_UNITS_ATI"           count="-1"  value="0x8778">
-        <size name="GetTexBumpParameterfv" mode="get"/>
-        <size name="GetTexBumpParameteriv" mode="get"/>
-    </enum>
-    <enum name="DUDV_ATI"                                 value="0x8779"/>
-    <enum name="DU8DV8_ATI"                               value="0x877A"/>
-    <enum name="BUMP_ENVMAP_ATI"                          value="0x877B"/>
-    <enum name="BUMP_TARGET_ATI"              count="1"   value="0x877C">
-        <size name="TexEnviv"/>
-        <size name="TexEnvfv"/>
-        <size name="GetTexEnviv" mode="get"/>
-        <size name="GetTexEnvfv" mode="get"/>
-    </enum>
-    <function name="TexBumpParameterfvATI" offset="assign">
-      <param name="pname" type="GLenum"/>
-      <param name="param" type="const GLfloat *" variable_param="pname"/>
-      <glx ignore="true"/>
-    </function>
-    <function name="TexBumpParameterivATI" offset="assign">
-      <param name="pname" type="GLenum"/>
-      <param name="param" type="const GLint *" variable_param="pname"/>
-      <glx ignore="true"/>
-    </function>
-    <function name="GetTexBumpParameterfvATI" offset="assign">
-      <param name="pname" type="GLenum"/>
-      <param name="param" type="GLfloat *" variable_param="pname"/>
-      <glx ignore="true"/>
-    </function>
-    <function name="GetTexBumpParameterivATI" offset="assign">
-      <param name="pname" type="GLenum"/>
-      <param name="param" type="GLint *" variable_param="pname"/>
-      <glx ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_ATI_fragment_shader" number="245">
-    <function name="GenFragmentShadersATI" offset="assign">
-      <return type="GLuint"/>
-      <param name="range" type="GLuint"/>
-      <glx ignore="true"/>
-    </function>
-    
-    <function name="BindFragmentShaderATI" offset="assign">
-      <param name="id" type="GLuint"/>
-      <glx ignore="true"/>
-    </function>
-
-    <function name="DeleteFragmentShaderATI" offset="assign">
-      <param name="id" type="GLuint"/>
-      <glx ignore="true"/>
-    </function>
-
-    <function name="BeginFragmentShaderATI" offset="assign">
-      <glx ignore="true"/>
-    </function>
-
-    <function name="EndFragmentShaderATI" offset="assign">
-      <glx ignore="true"/>
-    </function>
-    
-    <function name="PassTexCoordATI" offset="assign">
-      <param name="dst" type="GLuint"/>
-      <param name="coord" type="GLuint"/>
-      <param name="swizzle" type="GLenum"/>
-      <glx ignore="true"/>
-    </function>
-
-    <function name="SampleMapATI" offset="assign">
-      <param name="dst" type="GLuint"/>
-      <param name="interp" type="GLuint"/>
-      <param name="swizzle" type="GLenum"/>
-      <glx ignore="true"/>
-    </function>
-
-    <function name="ColorFragmentOp1ATI" offset="assign">
-      <param name="op" type="GLenum"/>
-      <param name="dst" type="GLuint"/>
-      <param name="dstMask" type="GLuint"/>
-      <param name="dstMod" type="GLuint"/>
-      <param name="arg1" type="GLuint"/>
-      <param name="arg1Rep" type="GLuint"/>
-      <param name="arg1Mod" type="GLuint"/>
-      <glx ignore="true"/>
-    </function>
-
-    <function name="ColorFragmentOp2ATI" offset="assign">
-      <param name="op" type="GLenum"/>
-      <param name="dst" type="GLuint"/>
-      <param name="dstMask" type="GLuint"/>
-      <param name="dstMod" type="GLuint"/>
-      <param name="arg1" type="GLuint"/>
-      <param name="arg1Rep" type="GLuint"/>
-      <param name="arg1Mod" type="GLuint"/>
-      <param name="arg2" type="GLuint"/>
-      <param name="arg2Rep" type="GLuint"/>
-      <param name="arg2Mod" type="GLuint"/>
-      <glx ignore="true"/>
-    </function>
-
-    <function name="ColorFragmentOp3ATI" offset="assign">
-      <param name="op" type="GLenum"/>
-      <param name="dst" type="GLuint"/>
-      <param name="dstMask" type="GLuint"/>
-      <param name="dstMod" type="GLuint"/>
-      <param name="arg1" type="GLuint"/>
-      <param name="arg1Rep" type="GLuint"/>
-      <param name="arg1Mod" type="GLuint"/>
-      <param name="arg2" type="GLuint"/>
-      <param name="arg2Rep" type="GLuint"/>
-      <param name="arg2Mod" type="GLuint"/>
-      <param name="arg3" type="GLuint"/>
-      <param name="arg3Rep" type="GLuint"/>
-      <param name="arg3Mod" type="GLuint"/>
-      <glx ignore="true"/>
-    </function>
-
-    <function name="AlphaFragmentOp1ATI" offset="assign">
-      <param name="op" type="GLenum"/>
-      <param name="dst" type="GLuint"/>
-      <param name="dstMod" type="GLuint"/>
-      <param name="arg1" type="GLuint"/>
-      <param name="arg1Rep" type="GLuint"/>
-      <param name="arg1Mod" type="GLuint"/>
-      <glx ignore="true"/>
-    </function>
-
-    <function name="AlphaFragmentOp2ATI" offset="assign">
-      <param name="op" type="GLenum"/>
-      <param name="dst" type="GLuint"/>
-      <param name="dstMod" type="GLuint"/>
-      <param name="arg1" type="GLuint"/>
-      <param name="arg1Rep" type="GLuint"/>
-      <param name="arg1Mod" type="GLuint"/>
-      <param name="arg2" type="GLuint"/>
-      <param name="arg2Rep" type="GLuint"/>
-      <param name="arg2Mod" type="GLuint"/>
-      <glx ignore="true"/>
-    </function>
-
-    <function name="AlphaFragmentOp3ATI" offset="assign">
-      <param name="op" type="GLenum"/>
-      <param name="dst" type="GLuint"/>
-      <param name="dstMod" type="GLuint"/>
-      <param name="arg1" type="GLuint"/>
-      <param name="arg1Rep" type="GLuint"/>
-      <param name="arg1Mod" type="GLuint"/>
-      <param name="arg2" type="GLuint"/>
-      <param name="arg2Rep" type="GLuint"/>
-      <param name="arg2Mod" type="GLuint"/>
-      <param name="arg3" type="GLuint"/>
-      <param name="arg3Rep" type="GLuint"/>
-      <param name="arg3Mod" type="GLuint"/>
-      <glx ignore="true"/>
-    </function>
-
-    <function name="SetFragmentShaderConstantATI" offset="assign">
-      <param name="dst" type="GLuint"/>
-      <param name="value" type="const GLfloat *"/>
-      <glx ignore="true"/>
-    </function>
-</category>
-
-<!-- Extension number 250 is a WGL extension. -->
-<!-- Extension number 251 is a WGL extension. -->
-<!-- Extension number 252 is a WGL extension. -->
-<!-- Extension number 253 is a WGL extension. -->
-<!-- Extension number 254 is a WGL extension. -->
-<!-- Extension number 255 is a WGL extension. -->
-
-<category name="GL_SUN_mesh_array" number="257">
-    <enum name="QUAD_MESH_SUN"                            value="0x8614"/>
-    <enum name="TRIANGLE_MESH_SUN"                        value="0x8615"/>
-
-    <function name="DrawMeshArraysSUN">
-        <param name="mode" type="GLenum"/>
-        <param name="first" type="GLint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="width" type="GLsizei"/>
-    </function>
-</category>
-
-<category name="GL_SUN_slice_accum" number="258">
-    <enum name="SLICE_ACCUM_SUN"                          value="0x85CC"/>
-</category>
-
-<category name="GL_NV_multisample_filter_hint" number="259">
-    <enum name="MULTISAMPLE_FILTER_HINT_NV"    count="1"  value="0x8534">
-        <size name="Get" mode="get"/>
-    </enum>
-</category>
-
-<category name="GL_NV_depth_clamp" number="260">
-    <enum name="DEPTH_CLAMP_NV"                count="1"  value="0x864F">
-        <size name="Get" mode="get"/>
-    </enum>
-</category>
-
-<category name="GL_NV_point_sprite" number="262">
-    <!-- These existing enums can be passed as a parameter to the function
-         added for this extension. -->
-
-    <enum name="POINT_SIZE_MIN_EXT"            count="1"  value="0x8126">
-        <size name="PointParameterivNV"/>
-    </enum>
-    <enum name="POINT_SIZE_MAX_EXT"            count="1"  value="0x8127">
-        <size name="PointParameterivNV"/>
-    </enum>
-    <enum name="POINT_FADE_THRESHOLD_SIZE_EXT" count="1"  value="0x8128">
-        <size name="PointParameterivNV"/>
-    </enum>
-    <enum name="POINT_DISTANCE_ATTENUATION_EXT" count="3" value="0x8129">
-        <size name="PointParameterivNV"/>
-    </enum>
-
-    <enum name="POINT_SPRITE_NV"               count="1"  value="0x8861">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="COORD_REPLACE_NV"              count="1"  value="0x8862">
-        <size name="TexEnvfv"/>
-        <size name="TexEnviv"/>
-        <size name="GetTexEnvfv" mode="get"/>
-        <size name="GetTexEnviv" mode="get"/>
-    </enum>
-    <enum name="POINT_SPRITE_R_MODE_NV"        count="1"  value="0x8863">
-        <size name="PointParameterfvEXT"/>
-        <size name="PointParameterivNV"/>
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="PointParameteriNV" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-        <glx rop="4221"/>
-    </function>
-
-    <function name="PointParameterivNV" offset="assign">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLint *" variable_param="pname"/>
-        <glx rop="4222"/>
-    </function>
-</category>
-
-<!-- Extension number 263 is a WGL extension. -->
-<!-- Extension number 264 is a WGL extension. -->
-
-<category name="GL_EXT_shadow_funcs" number="267">
-    <!-- No new functions, types, enums. -->
-</category>
-
-<category name="GL_EXT_stencil_two_side" number="268">
-    <enum name="STENCIL_TEST_TWO_SIDE_EXT"     count="1"  value="0x8910">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="ACTIVE_STENCIL_FACE_EXT"       count="1"  value="0x8911">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="ActiveStencilFaceEXT" offset="assign" static_dispatch="false">
-        <param name="face" type="GLenum"/>
-        <glx rop="4220"/>
-    </function>
-</category>
-
-<xi:include href="APPLE_object_purgeable.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-<xi:include href="APPLE_vertex_array_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<category name="GL_APPLE_ycbcr_422" number="275">
-    <enum name="YCBCR_422_APPLE"                          value="0x85B9"/>
-    <enum name="UNSIGNED_SHORT_8_8_APPLE"                 value="0x85BA"/>
-    <enum name="UNSIGNED_SHORT_8_8_REV_APPLE"             value="0x85BB"/>
-</category>
-
-<category name="GL_S3_s3tc" number="276">
-    <enum name="RGB_S3TC"                                 value="0x83A0"/>
-    <enum name="RGB4_S3TC"                                value="0x83A1"/>
-    <enum name="RGBA_S3TC"                                value="0x83A2"/>
-    <enum name="RGBA4_S3TC"                               value="0x83A3"/>
-    <enum name="RGBA_DXT5_S3TC"                           value="0x83A4"/>
-    <enum name="RGBA4_DXT5_S3TC"                          value="0x83A5"/>
-</category>
-
-<category name="GL_ATI_draw_buffers" number="277">
-    <enum name="MAX_DRAW_BUFFERS_ATI"          count="1"  value="0x8824">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER0_ATI"              count="1"  value="0x8825">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER1_ATI"              count="1"  value="0x8826">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER2_ATI"              count="1"  value="0x8827">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER3_ATI"              count="1"  value="0x8828">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER4_ATI"              count="1"  value="0x8829">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER5_ATI"              count="1"  value="0x882A">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER6_ATI"              count="1"  value="0x882B">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER7_ATI"              count="1"  value="0x882C">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER8_ATI"              count="1"  value="0x882D">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER9_ATI"              count="1"  value="0x882E">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER10_ATI"             count="1"  value="0x882F">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER11_ATI"             count="1"  value="0x8830">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER12_ATI"             count="1"  value="0x8831">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER13_ATI"             count="1"  value="0x8832">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER14_ATI"             count="1"  value="0x8833">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DRAW_BUFFER15_ATI"             count="1"  value="0x8834">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="DrawBuffersATI" alias="DrawBuffersARB">
-        <param name="n" type="GLsizei" counter="true"/>
-        <param name="bufs" type="const GLenum *" count="n"/>
-    </function>
-</category>
-
-<!-- Extension number 278 is a WGL extension. -->
-
-<category name="GL_ATI_texture_env_combine3" number="279">
-    <enum name="MODULATE_ADD_ATI"                         value="0x8744"/>
-    <enum name="MODULATE_SIGNED_ADD_ATI"                  value="0x8745"/>
-    <enum name="MODULATE_SUBTRACT_ATI"                    value="0x8746"/>
-</category>
-
-<category name="GL_NV_fragment_program" number="282">
-    <function name="ProgramNamedParameter4fNV" offset="assign" vectorequiv="ProgramNamedParameter4fvNV">
-        <param name="id" type="GLuint"/>
-        <param name="len" type="GLsizei" counter="true"/>
-        <param name="name" type="const GLubyte *" count="len"/>
-        <param name="x" type="GLfloat"/>
-        <param name="y" type="GLfloat"/>
-        <param name="z" type="GLfloat"/>
-        <param name="w" type="GLfloat"/>
-    </function>
-
-    <function name="ProgramNamedParameter4dNV" offset="assign" vectorequiv="ProgramNamedParameter4dvNV">
-        <param name="id" type="GLuint"/>
-        <param name="len" type="GLsizei" counter="true"/>
-        <param name="name" type="const GLubyte *" count="len"/>
-        <param name="x" type="GLdouble"/>
-        <param name="y" type="GLdouble"/>
-        <param name="z" type="GLdouble"/>
-        <param name="w" type="GLdouble"/>
-    </function>
-
-    <function name="ProgramNamedParameter4fvNV" offset="assign">
-        <param name="id" type="GLuint"/>
-        <param name="len" type="GLsizei" counter="true"/>
-        <param name="name" type="const GLubyte *" count="len"/>
-        <param name="v" type="const GLfloat *" count="4"/>
-        <glx rop="4218"/>
-    </function>
-
-    <function name="ProgramNamedParameter4dvNV" offset="assign">
-        <param name="id" type="GLuint"/>
-        <param name="len" type="GLsizei" counter="true"/>
-        <param name="name" type="const GLubyte *" count="len"/>
-        <param name="v" type="const GLdouble *" count="4"/>
-        <glx rop="4219"/>
-    </function>
-
-    <function name="GetProgramNamedParameterfvNV" offset="assign">
-        <param name="id" type="GLuint"/>
-        <param name="len" type="GLsizei" counter="true"/>
-        <param name="name" type="const GLubyte *" count="len"/>
-        <param name="params" type="GLfloat *" output="true" count="4"/>
-        <glx vendorpriv="1310" always_array="true"/>
-    </function>
-
-    <function name="GetProgramNamedParameterdvNV" offset="assign">
-        <param name="id" type="GLuint"/>
-        <param name="len" type="GLsizei" counter="true"/>
-        <param name="name" type="const GLubyte *" count="len"/>
-        <param name="params" type="GLdouble *" output="true" count="4"/>
-        <glx vendorpriv="1311" always_array="true"/>
-    </function>
-</category>
-
-<category name="GL_NV_texture_expand_normal" number="286">
-    <enum name="TEXTURE_UNSIGNED_REMAP_MODE_NV" count="1" value="0x888F">
-        <size name="TexParameterfv"/>
-        <size name="TexParameteriv"/>
-        <size name="GetTexParameterfv" mode="get"/>
-        <size name="GetTexParameteriv" mode="get"/>
-    </enum>
-</category>
-
-<category name="GL_OES_compressed_paletted_texture" number="294">
-    <enum name="PALETTE4_RGB8_OES"                        value="0x8B90"/>
-    <enum name="PALETTE4_RGBA8_OES"                       value="0x8B91"/>
-    <enum name="PALETTE4_R5_G6_B5_OES"                    value="0x8B92"/>
-    <enum name="PALETTE4_RGBA4_OES"                       value="0x8B93"/>
-    <enum name="PALETTE4_RGB5_A1_OES"                     value="0x8B94"/>
-    <enum name="PALETTE8_RGB8_OES"                        value="0x8B95"/>
-    <enum name="PALETTE8_RGBA8_OES"                       value="0x8B96"/>
-    <enum name="PALETTE8_R5_G6_B5_OES"                    value="0x8B97"/>
-    <enum name="PALETTE8_RGBA4_OES"                       value="0x8B98"/>
-    <enum name="PALETTE8_RGB5_A1_OES"                     value="0x8B99"/>
-</category>
-
-<category name="GL_OES_read_format" number="295">
-    <enum name="IMPLEMENTATION_COLOR_READ_TYPE_OES"       value="0x8B9A"/>
-    <enum name="IMPLEMENTATION_COLOR_READ_FORMAT_OES"     value="0x8B9B"/>
-</category>
-
-<category name="GL_EXT_depth_bounds_test" number="297">
-    <enum name="DEPTH_BOUNDS_TEST_EXT"         count="1"  value="0x8890">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="DEPTH_BOUNDS_EXT"              count="2"  value="0x8891">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="DepthBoundsEXT" offset="assign" static_dispatch="false">
-        <param name="zmin" type="GLclampd"/>
-        <param name="zmax" type="GLclampd"/>
-        <glx rop="4229" ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_EXT_texture_mirror_clamp" number="298">
-    <enum name="MIRROR_CLAMP_EXT"                         value="0x8742"/>
-    <enum name="MIRROR_CLAMP_TO_EDGE_EXT"                 value="0x8743"/>
-    <enum name="MIRROR_CLAMP_TO_BORDER_EXT"               value="0x8912"/>
-</category>
-
-<category name="GL_EXT_blend_equation_separate" number="299">
-    <enum name="BLEND_EQUATION_RGB_EXT"        count="1"  value="0x8009">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="BLEND_EQUATION_ALPHA_EXT"      count="1"  value="0x883D">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="BlendEquationSeparateEXT" offset="assign" static_dispatch="false">
-        <param name="modeRGB" type="GLenum"/>
-        <param name="modeA" type="GLenum"/>
-        <glx rop="4228"/>
-    </function>
-</category>
-
-<category name="GL_MESA_pack_invert" number="300">
-    <enum name="PACK_INVERT_MESA"              count="1"  value="0x8758">
-        <size name="Get" mode="get"/>
-    </enum>
-</category>
-
-<category name="GL_MESA_ycbcr_texture" number="301">
-    <enum name="YCBCR_MESA"                               value="0x8757"/>
-    <enum name="UNSIGNED_SHORT_8_8_MESA"                  value="0x85BA"/>
-    <enum name="UNSIGNED_SHORT_8_8_REV_MESA"              value="0x85BB"/>
-</category>
-
-<category name="GL_EXT_pixel_buffer_object" number="302">
-    <enum name="PIXEL_PACK_BUFFER_EXT"                    value="0x88EB"/>
-    <enum name="PIXEL_UNPACK_BUFFER_EXT"                  value="0x88EC"/>
-    <enum name="PIXEL_PACK_BUFFER_BINDING_EXT"            value="0x88ED"/>
-    <enum name="PIXEL_UNPACK_BUFFER_BINDING_EXT"          value="0x88EF"/>
-</category>
-
-<category name="GL_NV_fragment_program_option" number="303">
-    <!-- No new functions, types, enums. -->
-</category>
-
-<category name="GL_NV_fragment_program2" number="304">
-    <enum name="MAX_PROGRAM_EXEC_INSTRUCTIONS_NV" count="1" value="0x88F4">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_CALL_DEPTH_NV"      count="1"  value="0x88F5">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_IF_DEPTH_NV"        count="1"  value="0x88F6">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_LOOP_DEPTH_NV"      count="1"  value="0x88F7">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_LOOP_COUNT_NV"      count="1"  value="0x88F8">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-</category>
-
-<category name="GL_NV_vertex_program2_option" number="305">
-    <enum name="MAX_PROGRAM_EXEC_INSTRUCTIONS_NV" count="1" value="0x88F4">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-    <enum name="MAX_PROGRAM_CALL_DEPTH_NV"      count="1"  value="0x88F5">
-        <size name="GetProgramivARB" mode="get"/>
-    </enum>
-</category>
-
-<category name="GL_NV_vertex_program3" number="306">
-    <enum name="MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB" count="1" value="0x8B4C"/>
-</category>
-
-<!-- Extension number 307 is a GLX extension. -->
-<!-- Extension number 308 is a GLX extension. -->
-
-<category name="GL_EXT_texture_compression_dxt1" number="309">
-    <enum name="COMPRESSED_RGB_S3TC_DXT1_EXT"             value="0x83F0"/>
-    <enum name="COMPRESSED_RGBA_S3TC_DXT1_EXT"            value="0x83F1"/>
-</category>
-
-<xi:include href="EXT_framebuffer_object.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<xi:include href="EXT_packed_depth_stencil.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<xi:include href="EXT_provoking_vertex.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<xi:include href="EXT_draw_buffers2.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-
-<category name="GL_APPLE_flush_buffer_range" number="321">
-    <enum name="BUFFER_SERIALIZED_MODIFY_APPLE" count="1" value="0x8A12">
-        <size name="GetBufferParameteriv" mode="get"/>
-    </enum>
-    <enum name="BUFFER_FLUSHING_UNMAP_APPLE" count="1" value="0x8A13">
-        <size name="GetBufferParameteriv" mode="get"/>
-    </enum>
-    <function name="BufferParameteriAPPLE" offset="assign" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLint"/>
-    </function>
-    <function name="FlushMappedBufferRangeAPPLE" offset="assign" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="offset" type="GLintptr"/>
-        <param name="size" type="GLsizeiptr"/>
-    </function>
-</category>
-
-<xi:include href="EXT_texture_array.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-<category name="GL_APPLE_texture_range" number="367">
-    <enum name="TEXTURE_STORAGE_HINT_APPLE" count="1" value="0x85BC">
-        <size name="TexParameteriv"/>
-        <size name="TexParameterfv"/>
-        <size name="GetTexParameteriv" mode="get"/>
-        <size name="GetTexParameterfv" mode="get"/>
-    </enum>
-    <enum name="STORAGE_PRIVATE_APPLE" count="1" value="0x85BD">
-        <size name="TexParameteriv"/>
-        <size name="TexParameterfv"/>
-    </enum>
-    <enum name="STORAGE_CACHED_APPLE" count="1" value="0x85BE">
-        <size name="TexParameteriv"/>
-        <size name="TexParameterfv"/>
-    </enum>
-    <enum name="STORAGE_SHARED_APPLE" count="1" value="0x85BF">
-        <size name="TexParameteriv"/>
-        <size name="TexParameterfv"/>
-    </enum>
-    <enum name="TEXTURE_RANGE_LENGTH_APPLE" count="1" value="0x85B7">
-        <size name="GetTexParameteriv" mode="get"/>
-        <size name="GetTexParameterfv" mode="get"/>
-    </enum>
-    <enum name="TEXTURE_RANGE_POINTER_APPLE" count="1" value="0x85B8">
-        <size name="GetTexParameterPointervAPPLE" mode="get"/>
-    </enum>
-    <function name="TextureRangeAPPLE" offset="assign" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="length" type="GLsizei"/>
-        <param name="pointer" type="GLvoid *"/>
-    </function>
-    <function name="GetTexParameterPointervAPPLE" offset="assign" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLvoid **"/>
-    </function>
-</category>
-
-<!-- Unnumbered extensions sorted by name. -->
-
-<category name="GL_ATI_blend_equation_separate">
-    <function name="BlendEquationSeparateATI" alias="BlendEquationSeparateEXT" static_dispatch="false">
-        <param name="modeRGB" type="GLenum"/>
-        <param name="modeA" type="GLenum"/>
-    </function>
-</category>
-
-<category name="GL_ATI_separate_stencil">
-    <enum name="STENCIL_BACK_FUNC_ATI"     count="1"  value="0x8800">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_BACK_FAIL_ATI"     count="1"  value="0x8801">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_BACK_PASS_DEPTH_FAIL_ATI" count="1"  value="0x8802">
-        <size name="Get" mode="get"/>
-    </enum>
-    <enum name="STENCIL_BACK_PASS_DEPTH_PASS_ATI" count="1"  value="0x8803">
-        <size name="Get" mode="get"/>
-    </enum>
-
-    <function name="StencilOpSeparateATI" alias="StencilOpSeparate" static_dispatch="false">
-        <param name="face" type="GLenum"/>
-        <param name="sfail" type="GLenum"/>
-        <param name="zfail" type="GLenum"/>
-        <param name="zpass" type="GLenum"/>
-    </function>
-    <function name="StencilFuncSeparateATI" offset="assign" static_dispatch="false">
-        <param name="frontfunc" type="GLenum"/>
-        <param name="backfunc" type="GLenum"/>
-        <param name="ref" type="GLint"/>
-        <param name="mask" type="GLuint"/>
-    </function>
-
-</category>
-
-<category name="GL_EXT_gpu_program_parameters">
-    <function name="ProgramEnvParameters4fvEXT" offset="assign" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="params" type="const GLfloat *"/>
-    </function>
-
-    <function name="ProgramLocalParameters4fvEXT" offset="assign" static_dispatch="false">
-        <param name="target" type="GLenum"/>
-        <param name="index" type="GLuint"/>
-        <param name="count" type="GLsizei"/>
-        <param name="params" type="const GLfloat *"/>
-    </function>
-</category>
-
-<category name="GL_EXT_timer_query">
-    <enum name="TIME_ELAPSED_EXT" value="0x88BF"/>
-    <type name="int64EXT"                  size="8"/>
-    <type name="uint64EXT" unsigned="true" size="8"/>
-    <function name="GetQueryObjecti64vEXT" offset="assign" static_dispatch="false">
-        <param name="id" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLint64EXT *"/>
-    </function>
-    <function name="GetQueryObjectui64vEXT" offset="assign" static_dispatch="false">
-        <param name="id" type="GLuint"/>
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="GLuint64EXT *"/>
-    </function>
-</category>
-
-<category name="GL_INGR_blend_func_separate">
-    <function name="BlendFuncSeparateINGR" alias="BlendFuncSeparateEXT" static_dispatch="false">
-        <param name="sfactorRGB" type="GLenum"/>
-        <param name="dfactorRGB" type="GLenum"/>
-        <param name="sfactorAlpha" type="GLenum"/>
-        <param name="dfactorAlpha" type="GLenum"/>
-    </function>
-</category>
-
-<category name="GL_MESA_texture_signed_rgba">
-    <enum name="SIGNED_NORMALIZED"                        value="0x8F9C"/>
-    <enum name="RGBA_SNORM"                               value="0x8F93"/>
-    <enum name="RGBA8_SNORM"                              value="0x8F97"/>
-</category>
-
-<category name="GL_MESA_shader_debug">
-    <enum name="DEBUG_OBJECT_MESA"                        value="0x8759"/>
-    <enum name="DEBUG_PRINT_MESA"                         value="0x875A"/>
-    <enum name="DEBUG_ASSERT_MESA"                        value="0x875B"/>
-    <function name="CreateDebugObjectMESA">
-        <return type="GLhandleARB"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="ClearDebugLogMESA">
-        <param name="obj" type="GLhandleARB"/>
-        <param name="logType" type="GLenum"/>
-        <param name="shaderType" type="GLenum"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="GetDebugLogMESA">
-        <param name="obj" type="GLhandleARB"/>
-        <param name="logType" type="GLenum"/>
-        <param name="shaderType" type="GLenum"/>
-        <param name="maxLength" type="GLsizei"/>
-        <param name="length" type="GLsizei *" output="true"/>
-        <param name="debugLog" type="GLcharARB *" output="true"/>
-        <glx ignore="true"/>
-    </function>
-    <function name="GetDebugLogLengthMESA">
-        <return type="GLsizei"/>
-        <param name="obj" type="GLhandleARB"/>
-        <param name="logType" type="GLenum"/>
-        <param name="shaderType" type="GLenum"/>
-        <glx ignore="true"/>
-    </function>
-</category>
-
-<category name="GL_SGIS_point_parameters">
-    <enum name="POINT_SIZE_MIN_SGIS"           count="1"  value="0x8126">
-        <size name="PointParameterfvEXT"/>
-    </enum>
-    <enum name="POINT_SIZE_MAX_SGIS"           count="1"  value="0x8127">
-        <size name="PointParameterfvEXT"/>
-    </enum>
-    <enum name="POINT_FADE_THRESHOLD_SIZE_SGIS" count="1" value="0x8128">
-        <size name="PointParameterfvEXT"/>
-    </enum>
-    <enum name="POINT_DISTANCE_ATTENUATION_SGIS" count="3" value="0x8129">
-        <size name="PointParameterfvEXT"/>
-    </enum>
-
-    <function name="PointParameterfSGIS" alias="PointParameterfEXT" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="param" type="GLfloat"/>
-    </function>
-
-    <function name="PointParameterfvSGIS" alias="PointParameterfvEXT" static_dispatch="false">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLfloat *"/>
-    </function>
-</category>
-
-<category name="GL_SGIX_igloo_interface">
-    <function name="IglooInterfaceSGIX">
-        <param name="pname" type="GLenum"/>
-        <param name="params" type="const GLvoid *"/>
-    </function>
-</category>
-
-<category name="GL_SGIX_polynomial_ffd">
-    <function name="DeformationMap3dSGIX">
-        <param name="target" type="GLenum"/>
-        <param name="u1" type="GLdouble"/>
-        <param name="u2" type="GLdouble"/>
-        <param name="ustride" type="GLint"/>
-        <param name="uorder" type="GLint"/>
-        <param name="v1" type="GLdouble"/>
-        <param name="v2" type="GLdouble"/>
-        <param name="vstride" type="GLint"/>
-        <param name="vorder" type="GLint"/>
-        <param name="w1" type="GLdouble"/>
-        <param name="w2" type="GLdouble"/>
-        <param name="wstride" type="GLint"/>
-        <param name="worder" type="GLint"/>
-        <param name="points" type="const GLdouble *"/>
-    </function>
-
-    <function name="DeformationMap3fSGIX">
-        <param name="target" type="GLenum"/>
-        <param name="u1" type="GLfloat"/>
-        <param name="u2" type="GLfloat"/>
-        <param name="ustride" type="GLint"/>
-        <param name="uorder" type="GLint"/>
-        <param name="v1" type="GLfloat"/>
-        <param name="v2" type="GLfloat"/>
-        <param name="vstride" type="GLint"/>
-        <param name="vorder" type="GLint"/>
-        <param name="w1" type="GLfloat"/>
-        <param name="w2" type="GLfloat"/>
-        <param name="wstride" type="GLint"/>
-        <param name="worder" type="GLint"/>
-        <param name="points" type="const GLfloat *"/>
-    </function>
-
-    <function name="DeformSGIX">
-        <param name="mask" type="GLenum"/>
-    </function>
-
-    <function name="LoadIdentityDeformationMapSGIX">
-        <param name="mask" type="GLenum"/>
-    </function>
-</category>
-
-<xi:include href="OES_EGL_image.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-
-</OpenGLAPI>
diff --git a/src/mesa/glapi/gen/gl_SPARC_asm.py b/src/mesa/glapi/gen/gl_SPARC_asm.py
deleted file mode 100644 (file)
index 33e752d..0000000
+++ /dev/null
@@ -1,275 +0,0 @@
-#!/usr/bin/env python
-
-# (C) Copyright IBM Corporation 2004
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-
-import license
-import gl_XML, glX_XML
-import sys, getopt
-
-class PrintGenericStubs(gl_XML.gl_print_base):
-       def __init__(self):
-               gl_XML.gl_print_base.__init__(self)
-               self.name = "gl_SPARC_asm.py (from Mesa)"
-               self.license = license.bsd_license_template % ( \
-"""Copyright (C) 1999-2003  Brian Paul   All Rights Reserved.
-(C) Copyright IBM Corporation 2004""", "BRIAN PAUL, IBM")
-
-
-       def printRealHeader(self):
-               print '#include "glapi/glapioffsets.h"'
-               print ''
-               print '#ifdef __arch64__'
-               print '#define GL_OFF(N)\t((N) * 8)'
-               print '#define GL_LL\t\tldx'
-               print '#define GL_TIE_LD(SYM)\t%tie_ldx(SYM)'
-               print '#define GL_STACK_SIZE\t128'
-               print '#else'
-               print '#define GL_OFF(N)\t((N) * 4)'
-               print '#define GL_LL\t\tld'
-               print '#define GL_TIE_LD(SYM)\t%tie_ld(SYM)'
-               print '#define GL_STACK_SIZE\t64'
-               print '#endif'
-               print ''
-               print '#define GLOBL_FN(x) .globl x ; .type x, @function'
-               print '#define HIDDEN(x) .hidden x'
-               print ''
-               print '\t.register %g2, #scratch'
-               print '\t.register %g3, #scratch'
-               print ''
-               print '\t.text'
-               print ''
-               print '\tGLOBL_FN(__glapi_sparc_icache_flush)'
-               print '\tHIDDEN(__glapi_sparc_icache_flush)'
-               print '\t.type\t__glapi_sparc_icache_flush, @function'
-               print '__glapi_sparc_icache_flush: /* %o0 = insn_addr */'
-               print '\tflush\t%o0'
-               print '\tretl'
-               print '\t nop'
-               print ''
-               print '\t.align\t32'
-               print ''
-               print '\t.type\t__glapi_sparc_get_pc, @function'
-               print '__glapi_sparc_get_pc:'
-               print '\tretl'
-               print '\t add\t%o7, %g2, %g2'
-               print '\t.size\t__glapi_sparc_get_pc, .-__glapi_sparc_get_pc'
-               print ''
-               print '#ifdef GLX_USE_TLS'
-               print ''
-               print '\tGLOBL_FN(__glapi_sparc_get_dispatch)'
-               print '\tHIDDEN(__glapi_sparc_get_dispatch)'
-               print '__glapi_sparc_get_dispatch:'
-               print '\tmov\t%o7, %g1'
-               print '\tsethi\t%hi(_GLOBAL_OFFSET_TABLE_-4), %g2'
-               print '\tcall\t__glapi_sparc_get_pc'
-               print '\tadd\t%g2, %lo(_GLOBAL_OFFSET_TABLE_+4), %g2'
-               print '\tmov\t%g1, %o7'
-               print '\tsethi\t%tie_hi22(_glapi_tls_Dispatch), %g1'
-               print '\tadd\t%g1, %tie_lo10(_glapi_tls_Dispatch), %g1'
-               print '\tGL_LL\t[%g2 + %g1], %g2, GL_TIE_LD(_glapi_tls_Dispatch)'
-               print '\tretl'
-               print '\t mov\t%g2, %o0'
-               print ''
-               print '\t.data'
-               print '\t.align\t32'
-               print ''
-               print '\t/* --> sethi %hi(_glapi_tls_Dispatch), %g1 */'
-               print '\t/* --> or %g1, %lo(_glapi_tls_Dispatch), %g1 */'
-               print '\tGLOBL_FN(__glapi_sparc_tls_stub)'
-               print '\tHIDDEN(__glapi_sparc_tls_stub)'
-               print '__glapi_sparc_tls_stub: /* Call offset in %g3 */'
-               print '\tmov\t%o7, %g1'
-               print '\tsethi\t%hi(_GLOBAL_OFFSET_TABLE_-4), %g2'
-               print '\tcall\t__glapi_sparc_get_pc'
-               print '\tadd\t%g2, %lo(_GLOBAL_OFFSET_TABLE_+4), %g2'
-               print '\tmov\t%g1, %o7'
-               print '\tsrl\t%g3, 10, %g3'
-               print '\tsethi\t%tie_hi22(_glapi_tls_Dispatch), %g1'
-               print '\tadd\t%g1, %tie_lo10(_glapi_tls_Dispatch), %g1'
-               print '\tGL_LL\t[%g2 + %g1], %g2, GL_TIE_LD(_glapi_tls_Dispatch)'
-               print '\tGL_LL\t[%g7+%g2], %g1'
-               print '\tGL_LL\t[%g1 + %g3], %g1'
-               print '\tjmp\t%g1'
-               print '\t nop'
-               print '\t.size\t__glapi_sparc_tls_stub, .-__glapi_sparc_tls_stub'
-               print ''
-               print '#define GL_STUB(fn, off)\t\t\t\t\\'
-               print '\tGLOBL_FN(fn);\t\t\t\t\t\\'
-               print 'fn:\tba\t__glapi_sparc_tls_stub;\t\t\t\\'
-               print '\t sethi\tGL_OFF(off), %g3;\t\t\t\\'
-               print '\t.size\tfn,.-fn;'
-               print ''
-               print '#elif defined(PTHREADS)'
-               print ''
-               print '\t/* 64-bit 0x00 --> sethi %hh(_glapi_Dispatch), %g1 */'
-               print '\t/* 64-bit 0x04 --> sethi %lm(_glapi_Dispatch), %g2 */'
-               print '\t/* 64-bit 0x08 --> or %g1, %hm(_glapi_Dispatch), %g1 */'
-               print '\t/* 64-bit 0x0c --> sllx %g1, 32, %g1 */'
-               print '\t/* 64-bit 0x10 --> add %g1, %g2, %g1 */'
-               print '\t/* 64-bit 0x14 --> ldx [%g1 + %lo(_glapi_Dispatch)], %g1 */'
-               print ''
-               print '\t/* 32-bit 0x00 --> sethi %hi(_glapi_Dispatch), %g1 */'
-               print '\t/* 32-bit 0x04 --> ld [%g1 + %lo(_glapi_Dispatch)], %g1 */'
-               print ''
-               print '\t.data'
-               print '\t.align\t32'
-               print ''
-               print '\tGLOBL_FN(__glapi_sparc_pthread_stub)'
-               print '\tHIDDEN(__glapi_sparc_pthread_stub)'
-               print '__glapi_sparc_pthread_stub: /* Call offset in %g3 */'
-               print '\tmov\t%o7, %g1'
-               print '\tsethi\t%hi(_GLOBAL_OFFSET_TABLE_-4), %g2'
-               print '\tcall\t__glapi_sparc_get_pc'
-               print '\t add\t%g2, %lo(_GLOBAL_OFFSET_TABLE_+4), %g2'
-               print '\tmov\t%g1, %o7'
-               print '\tsethi\t%hi(_glapi_Dispatch), %g1'
-               print '\tor\t%g1, %lo(_glapi_Dispatch), %g1'
-               print '\tsrl\t%g3, 10, %g3'
-               print '\tGL_LL\t[%g2+%g1], %g2'
-               print '\tGL_LL\t[%g2], %g1'
-               print '\tcmp\t%g1, 0'
-               print '\tbe\t2f'
-               print '\t nop'
-               print '1:\tGL_LL\t[%g1 + %g3], %g1'
-               print '\tjmp\t%g1'
-               print '\t nop'
-               print '2:\tsave\t%sp, GL_STACK_SIZE, %sp'
-               print '\tmov\t%g3, %l0'
-               print '\tcall\t_glapi_get_dispatch'
-               print '\t nop'
-               print '\tmov\t%o0, %g1'
-               print '\tmov\t%l0, %g3'
-               print '\tba\t1b'
-               print '\t restore %g0, %g0, %g0'
-               print '\t.size\t__glapi_sparc_pthread_stub, .-__glapi_sparc_pthread_stub'
-               print ''
-               print '#define GL_STUB(fn, off)\t\t\t\\'
-               print '\tGLOBL_FN(fn);\t\t\t\t\\'
-               print 'fn:\tba\t__glapi_sparc_pthread_stub;\t\\'
-               print '\t sethi\tGL_OFF(off), %g3;\t\t\\'
-               print '\t.size\tfn,.-fn;'
-               print ''
-               print '#else /* Non-threaded version. */'
-               print ''
-               print '\t.type  __glapi_sparc_nothread_stub, @function'
-               print '__glapi_sparc_nothread_stub: /* Call offset in %g3 */'
-               print '\tmov\t%o7, %g1'
-               print '\tsethi\t%hi(_GLOBAL_OFFSET_TABLE_-4), %g2'
-               print '\tcall\t__glapi_sparc_get_pc'
-               print '\t add\t%g2, %lo(_GLOBAL_OFFSET_TABLE_+4), %g2'
-               print '\tmov\t%g1, %o7'
-               print '\tsrl\t%g3, 10, %g3'
-               print '\tsethi\t%hi(_glapi_Dispatch), %g1'
-               print '\tor\t%g1, %lo(_glapi_Dispatch), %g1'
-               print '\tGL_LL\t[%g2+%g1], %g2'
-               print '\tGL_LL\t[%g2], %g1'
-               print '\tGL_LL\t[%g1 + %g3], %g1'
-               print '\tjmp\t%g1'
-               print '\t nop'
-               print '\t.size\t__glapi_sparc_nothread_stub, .-__glapi_sparc_nothread_stub'
-               print ''
-               print '#define GL_STUB(fn, off)\t\t\t\\'
-               print '\tGLOBL_FN(fn);\t\t\t\t\\'
-               print 'fn:\tba\t__glapi_sparc_nothread_stub;\t\\'
-               print '\t sethi\tGL_OFF(off), %g3;\t\t\\'
-               print '\t.size\tfn,.-fn;'
-               print ''
-               print '#endif'
-               print ''
-               print '#define GL_STUB_ALIAS(fn, alias)         \\'
-               print ' .globl  fn;                             \\'
-               print ' .set    fn, alias'
-               print ''
-               print '\t.text'
-               print '\t.align\t32'
-               print ''
-               print '\t.globl\tgl_dispatch_functions_start'
-               print '\tHIDDEN(gl_dispatch_functions_start)'
-               print 'gl_dispatch_functions_start:'
-               print ''
-               return
-
-       def printRealFooter(self):
-               print ''
-               print '\t.globl\tgl_dispatch_functions_end'
-               print '\tHIDDEN(gl_dispatch_functions_end)'
-               print 'gl_dispatch_functions_end:'
-               return
-
-       def printBody(self, api):
-               for f in api.functionIterateByOffset():
-                       name = f.dispatch_name()
-
-                       print '\tGL_STUB(gl%s, _gloffset_%s)' % (name, f.name)
-
-                       if not f.is_static_entry_point(f.name):
-                               print '\tHIDDEN(gl%s)' % (name)
-
-               for f in api.functionIterateByOffset():
-                       name = f.dispatch_name()
-
-                       if f.is_static_entry_point(f.name):
-                               for n in f.entry_points:
-                                       if n != f.name:
-                                               text = '\tGL_STUB_ALIAS(gl%s, gl%s)' % (n, f.name)
-
-                                               if f.has_different_protocol(n):
-                                                       print '#ifndef GLX_INDIRECT_RENDERING'
-                                                       print text
-                                                       print '#endif'
-                                               else:
-                                                       print text
-
-               return
-
-
-def show_usage():
-       print "Usage: %s [-f input_file_name] [-m output_mode]" % sys.argv[0]
-       sys.exit(1)
-
-if __name__ == '__main__':
-       file_name = "gl_API.xml"
-       mode = "generic"
-
-       try:
-               (args, trail) = getopt.getopt(sys.argv[1:], "m:f:")
-       except Exception,e:
-               show_usage()
-
-       for (arg,val) in args:
-               if arg == '-m':
-                       mode = val
-               elif arg == "-f":
-                       file_name = val
-
-       if mode == "generic":
-               printer = PrintGenericStubs()
-       else:
-               print "ERROR: Invalid mode \"%s\" specified." % mode
-               show_usage()
-
-       api = gl_XML.parse_GL_API(file_name, glX_XML.glx_item_factory())
-       printer.Print(api)
diff --git a/src/mesa/glapi/gen/gl_XML.py b/src/mesa/glapi/gen/gl_XML.py
deleted file mode 100644 (file)
index 660c8cf..0000000
+++ /dev/null
@@ -1,967 +0,0 @@
-#!/usr/bin/env python
-
-# (C) Copyright IBM Corporation 2004, 2005
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-
-import libxml2
-import re, sys, string
-import typeexpr
-
-
-def parse_GL_API( file_name, factory = None ):
-       doc = libxml2.readFile( file_name, None, libxml2.XML_PARSE_XINCLUDE + libxml2.XML_PARSE_NOBLANKS + libxml2.XML_PARSE_DTDVALID + libxml2.XML_PARSE_DTDATTR + libxml2.XML_PARSE_DTDLOAD + libxml2.XML_PARSE_NOENT )
-       ret = doc.xincludeProcess()
-
-       if not factory:
-               factory = gl_item_factory()
-
-       api = factory.create_item( "api", None, None )
-       api.process_element( doc )
-
-       # After the XML has been processed, we need to go back and assign
-       # dispatch offsets to the functions that request that their offsets
-       # be assigned by the scripts.  Typically this means all functions
-       # that are not part of the ABI.
-
-       for func in api.functionIterateByCategory():
-               if func.assign_offset:
-                       func.offset = api.next_offset;
-                       api.next_offset += 1
-
-       doc.freeDoc()
-
-       return api
-
-
-def is_attr_true( element, name ):
-       """Read a name value from an element's attributes.
-       
-       The value read from the attribute list must be either 'true' or
-       'false'.  If the value is 'false', zero will be returned.  If the
-       value is 'true', non-zero will be returned.  An exception will be
-       raised for any other value."""
-
-       value = element.nsProp( name, None )
-       if value == "true":
-               return 1
-       elif value == "false":
-               return 0
-       else:
-               raise RuntimeError('Invalid value "%s" for boolean "%s".' % (value, name))
-
-
-class gl_print_base:
-       """Base class of all API pretty-printers.
-
-       In the model-view-controller pattern, this is the view.  Any derived
-       class will want to over-ride the printBody, printRealHader, and
-       printRealFooter methods.  Some derived classes may want to over-ride
-       printHeader and printFooter, or even Print (though this is unlikely).
-       """
-
-       def __init__(self):
-               # Name of the script that is generating the output file.
-               # Every derived class should set this to the name of its
-               # source file.
-
-               self.name = "a"
-
-
-               # License on the *generated* source file.  This may differ
-               # from the license on the script that is generating the file.
-               # Every derived class should set this to some reasonable
-               # value.
-               #
-               # See license.py for an example of a reasonable value.
-
-               self.license = "The license for this file is unspecified."
-
-               
-               # The header_tag is the name of the C preprocessor define
-               # used to prevent multiple inclusion.  Typically only
-               # generated C header files need this to be set.  Setting it
-               # causes code to be generated automatically in printHeader
-               # and printFooter.
-
-               self.header_tag = None
-
-               
-               # List of file-private defines that must be undefined at the
-               # end of the file.  This can be used in header files to define
-               # names for use in the file, then undefine them at the end of
-               # the header file.
-
-               self.undef_list = []
-               return
-
-
-       def Print(self, api):
-               self.printHeader()
-               self.printBody(api)
-               self.printFooter()
-               return
-
-
-       def printHeader(self):
-               """Print the header associated with all files and call the printRealHeader method."""
-
-               print '/* DO NOT EDIT - This file generated automatically by %s script */' \
-                       % (self.name)
-               print ''
-               print '/*'
-               print ' * ' + self.license.replace('\n', '\n * ')
-               print ' */'
-               print ''
-               if self.header_tag:
-                   print '#if !defined( %s )' % (self.header_tag)
-                   print '#  define %s' % (self.header_tag)
-                   print ''
-               self.printRealHeader();
-               return
-
-
-       def printFooter(self):
-               """Print the header associated with all files and call the printRealFooter method."""
-
-               self.printRealFooter()
-
-               if self.undef_list:
-                       print ''
-                       for u in self.undef_list:
-                               print "#  undef %s" % (u)
-
-               if self.header_tag:
-                       print ''
-                       print '#endif /* !defined( %s ) */' % (self.header_tag)
-
-
-       def printRealHeader(self):
-               """Print the "real" header for the created file.
-
-               In the base class, this function is empty.  All derived
-               classes should over-ride this function."""
-               return
-
-
-       def printRealFooter(self):
-               """Print the "real" footer for the created file.
-
-               In the base class, this function is empty.  All derived
-               classes should over-ride this function."""
-               return
-
-
-       def printPure(self):
-               """Conditionally define `PURE' function attribute.
-
-               Conditionally defines a preprocessor macro `PURE' that wraps
-               GCC's `pure' function attribute.  The conditional code can be
-               easilly adapted to other compilers that support a similar
-               feature.
-
-               The name is also added to the file's undef_list.
-               """
-               self.undef_list.append("PURE")
-               print """#  if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590))
-#    define PURE __attribute__((pure))
-#  else
-#    define PURE
-#  endif"""
-               return
-
-
-       def printFastcall(self):
-               """Conditionally define `FASTCALL' function attribute.
-
-               Conditionally defines a preprocessor macro `FASTCALL' that
-               wraps GCC's `fastcall' function attribute.  The conditional
-               code can be easilly adapted to other compilers that support a
-               similar feature.
-
-               The name is also added to the file's undef_list.
-               """
-
-               self.undef_list.append("FASTCALL")
-               print """#  if defined(__i386__) && defined(__GNUC__) && !defined(__CYGWIN__) && !defined(__MINGW32__)
-#    define FASTCALL __attribute__((fastcall))
-#  else
-#    define FASTCALL
-#  endif"""
-               return
-
-
-       def printVisibility(self, S, s):
-               """Conditionally define visibility function attribute.
-
-               Conditionally defines a preprocessor macro name S that wraps
-               GCC's visibility function attribute.  The visibility used is
-               the parameter s.  The conditional code can be easilly adapted
-               to other compilers that support a similar feature.
-
-               The name is also added to the file's undef_list.
-               """
-
-               self.undef_list.append(S)
-               print """#  if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) && defined(__ELF__)
-#    define %s  __attribute__((visibility("%s")))
-#  else
-#    define %s
-#  endif""" % (S, s, S)
-               return
-
-
-       def printNoinline(self):
-               """Conditionally define `NOINLINE' function attribute.
-
-               Conditionally defines a preprocessor macro `NOINLINE' that
-               wraps GCC's `noinline' function attribute.  The conditional
-               code can be easilly adapted to other compilers that support a
-               similar feature.
-
-               The name is also added to the file's undef_list.
-               """
-
-               self.undef_list.append("NOINLINE")
-               print """#  if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590))
-#    define NOINLINE __attribute__((noinline))
-#  else
-#    define NOINLINE
-#  endif"""
-               return
-
-
-def real_function_name(element):
-       name = element.nsProp( "name", None )
-       alias = element.nsProp( "alias", None )
-       
-       if alias:
-               return alias
-       else:
-               return name
-
-
-def real_category_name(c):
-       if re.compile("[1-9][0-9]*[.][0-9]+").match(c):
-               return "GL_VERSION_" + c.replace(".", "_")
-       else:
-               return c
-
-
-def classify_category(name, number):
-       """Based on the category name and number, select a numerical class for it.
-       
-       Categories are divided into four classes numbered 0 through 3.  The
-       classes are:
-
-               0. Core GL versions, sorted by version number.
-               1. ARB extensions, sorted by extension number.
-               2. Non-ARB extensions, sorted by extension number.
-               3. Un-numbered extensions, sorted by extension name.
-       """
-
-       try:
-               core_version = float(name)
-       except Exception,e:
-               core_version = 0.0
-
-       if core_version > 0.0:
-               cat_type = 0
-               key = name
-       elif name.startswith("GL_ARB_") or name.startswith("GLX_ARB_") or name.startswith("WGL_ARB_"):
-               cat_type = 1
-               key = int(number)
-       else:
-               if number != None:
-                       cat_type = 2
-                       key = int(number)
-               else:
-                       cat_type = 3
-                       key = name
-
-
-       return [cat_type, key]
-
-
-def create_parameter_string(parameters, include_names):
-       """Create a parameter string from a list of gl_parameters."""
-
-       list = []
-       for p in parameters:
-               if p.is_padding:
-                       continue
-
-               if include_names:
-                       list.append( p.string() )
-               else:
-                       list.append( p.type_string() )
-
-       if len(list) == 0: list = ["void"]
-
-       return string.join(list, ", ")
-
-
-class gl_item:
-       def __init__(self, element, context):
-               self.context = context
-               self.name = element.nsProp( "name", None )
-               self.category = real_category_name( element.parent.nsProp( "name", None ) )
-               return
-
-
-class gl_type( gl_item ):
-       def __init__(self, element, context):
-               gl_item.__init__(self, element, context)
-               self.size = int( element.nsProp( "size", None ), 0 )
-
-               te = typeexpr.type_expression( None )
-               tn = typeexpr.type_node()
-               tn.size = int( element.nsProp( "size", None ), 0 )
-               tn.integer = not is_attr_true( element, "float" )
-               tn.unsigned = is_attr_true( element, "unsigned" )
-               tn.name = "GL" + self.name
-               te.set_base_type_node( tn )
-
-               self.type_expr = te
-               return
-       
-
-       def get_type_expression(self):
-               return self.type_expr
-
-
-class gl_enum( gl_item ):
-       def __init__(self, element, context):
-               gl_item.__init__(self, element, context)
-               self.value = int( element.nsProp( "value", None ), 0 )
-
-               temp = element.nsProp( "count", None )
-               if not temp or temp == "?":
-                       self.default_count = -1
-               else:
-                       try:
-                               c = int(temp)
-                       except Exception,e:
-                               raise RuntimeError('Invalid count value "%s" for enum "%s" in function "%s" when an integer was expected.' % (temp, self.name, n))
-
-                       self.default_count = c
-
-               return
-
-
-       def priority(self):
-               """Calculate a 'priority' for this enum name.
-               
-               When an enum is looked up by number, there may be many
-               possible names, but only one is the 'prefered' name.  The
-               priority is used to select which name is the 'best'.
-
-               Highest precedence is given to core GL name.  ARB extension
-               names have the next highest, followed by EXT extension names.
-               Vendor extension names are the lowest.
-               """
-
-               if self.name.endswith( "_BIT" ):
-                       bias = 1
-               else:
-                       bias = 0
-
-               if self.category.startswith( "GL_VERSION_" ):
-                       priority = 0
-               elif self.category.startswith( "GL_ARB_" ):
-                       priority = 2
-               elif self.category.startswith( "GL_EXT_" ):
-                       priority = 4
-               else:
-                       priority = 6
-
-               return priority + bias
-
-
-
-class gl_parameter:
-       def __init__(self, element, context):
-               self.name = element.nsProp( "name", None )
-
-               ts = element.nsProp( "type", None )
-               self.type_expr = typeexpr.type_expression( ts, context )
-
-               temp = element.nsProp( "variable_param", None )
-               if temp:
-                       self.count_parameter_list = temp.split( ' ' )
-               else:
-                       self.count_parameter_list = []
-
-               # The count tag can be either a numeric string or the name of
-               # a variable.  If it is the name of a variable, the int(c)
-               # statement will throw an exception, and the except block will
-               # take over.
-
-               c = element.nsProp( "count", None )
-               try: 
-                       count = int(c)
-                       self.count = count
-                       self.counter = None
-               except Exception,e:
-                       count = 1
-                       self.count = 0
-                       self.counter = c
-               
-               self.count_scale = int(element.nsProp( "count_scale", None ))
-
-               elements = (count * self.count_scale)
-               if elements == 1:
-                       elements = 0
-
-               #if ts == "GLdouble":
-               #       print '/* stack size -> %s = %u (before)*/' % (self.name, self.type_expr.get_stack_size())
-               #       print '/* # elements = %u */' % (elements)
-               self.type_expr.set_elements( elements )
-               #if ts == "GLdouble":
-               #       print '/* stack size -> %s = %u (after) */' % (self.name, self.type_expr.get_stack_size())
-
-               self.is_client_only = is_attr_true( element, 'client_only' )
-               self.is_counter     = is_attr_true( element, 'counter' )
-               self.is_output      = is_attr_true( element, 'output' )
-
-
-               # Pixel data has special parameters.
-
-               self.width      = element.nsProp('img_width',  None)
-               self.height     = element.nsProp('img_height', None)
-               self.depth      = element.nsProp('img_depth',  None)
-               self.extent     = element.nsProp('img_extent', None)
-
-               self.img_xoff   = element.nsProp('img_xoff',   None)
-               self.img_yoff   = element.nsProp('img_yoff',   None)
-               self.img_zoff   = element.nsProp('img_zoff',   None)
-               self.img_woff   = element.nsProp('img_woff',   None)
-
-               self.img_format = element.nsProp('img_format', None)
-               self.img_type   = element.nsProp('img_type',   None)
-               self.img_target = element.nsProp('img_target', None)
-
-               self.img_pad_dimensions = is_attr_true( element, 'img_pad_dimensions' )
-               self.img_null_flag      = is_attr_true( element, 'img_null_flag' )
-               self.img_send_null      = is_attr_true( element, 'img_send_null' )
-
-               self.is_padding = is_attr_true( element, 'padding' )
-               return
-
-
-       def compatible(self, other):
-               return 1
-
-
-       def is_array(self):
-               return self.is_pointer()
-
-
-       def is_pointer(self):
-               return self.type_expr.is_pointer()
-
-
-       def is_image(self):
-               if self.width:
-                       return 1
-               else:
-                       return 0
-
-
-       def is_variable_length(self):
-               return len(self.count_parameter_list) or self.counter
-
-
-       def is_64_bit(self):
-               count = self.type_expr.get_element_count()
-               if count:
-                       if (self.size() / count) == 8:
-                               return 1
-               else:
-                       if self.size() == 8:
-                               return 1
-
-               return 0
-
-
-       def string(self):
-               return self.type_expr.original_string + " " + self.name
-
-
-       def type_string(self):
-               return self.type_expr.original_string
-
-
-       def get_base_type_string(self):
-               return self.type_expr.get_base_name()
-
-
-       def get_dimensions(self):
-               if not self.width:
-                       return [ 0, "0", "0", "0", "0" ]
-
-               dim = 1
-               w = self.width
-               h = "1"
-               d = "1"
-               e = "1"
-
-               if self.height:
-                       dim = 2
-                       h = self.height
-
-               if self.depth:
-                       dim = 3
-                       d = self.depth
-
-               if self.extent:
-                       dim = 4
-                       e = self.extent
-
-               return [ dim, w, h, d, e ]
-
-
-       def get_stack_size(self):
-               return self.type_expr.get_stack_size()
-
-
-       def size(self):
-               if self.is_image():
-                       return 0
-               else:
-                       return self.type_expr.get_element_size()
-
-
-       def get_element_count(self):
-               c = self.type_expr.get_element_count()
-               if c == 0:
-                       return 1
-
-               return c
-
-
-       def size_string(self, use_parens = 1):
-               s = self.size()
-               if self.counter or self.count_parameter_list:
-                       list = [ "compsize" ]
-
-                       if self.counter and self.count_parameter_list:
-                               list.append( self.counter )
-                       elif self.counter:
-                               list = [ self.counter ]
-
-                       if s > 1:
-                               list.append( str(s) )
-
-                       if len(list) > 1 and use_parens :
-                               return "(%s)" % (string.join(list, " * "))
-                       else:
-                               return string.join(list, " * ")
-
-               elif self.is_image():
-                       return "compsize"
-               else:
-                       return str(s)
-
-
-       def format_string(self):
-               if self.type_expr.original_string == "GLenum":
-                       return "0x%x"
-               else:
-                       return self.type_expr.format_string()
-
-
-
-class gl_function( gl_item ):
-       def __init__(self, element, context):
-               self.context = context
-               self.name = None
-
-               self.entry_points = []
-               self.return_type = "void"
-               self.parameters = []
-               self.offset = -1
-               self.initialized = 0
-               self.images = []
-
-               self.assign_offset = 0
-
-               self.static_entry_points = []
-
-               # Track the parameter string (for the function prototype)
-               # for each entry-point.  This is done because some functions
-               # change their prototype slightly when promoted from extension
-               # to ARB extension to core.  glTexImage3DEXT and glTexImage3D
-               # are good examples of this.  Scripts that need to generate
-               # code for these differing aliases need to real prototype
-               # for each entry-point.  Otherwise, they may generate code
-               # that won't compile.
-
-               self.parameter_strings = {}
-
-               self.process_element( element )
-
-               return
-
-       
-       def process_element(self, element):
-               name = element.nsProp( "name", None )
-               alias = element.nsProp( "alias", None )
-
-               if is_attr_true(element, "static_dispatch"):
-                       self.static_entry_points.append(name)
-
-               self.entry_points.append( name )
-               if alias:
-                       true_name = alias
-               else:
-                       true_name = name
-
-                       # Only try to set the offset when a non-alias
-                       # entry-point is being processes.
-
-                       offset = element.nsProp( "offset", None )
-                       if offset:
-                               try:
-                                       o = int( offset )
-                                       self.offset = o
-                               except Exception, e:
-                                       self.offset = -1
-                                       if offset == "assign":
-                                               self.assign_offset = 1
-
-
-               if not self.name:
-                       self.name = true_name
-               elif self.name != true_name:
-                       raise RuntimeError("Function true name redefined.  Was %s, now %s." % (self.name, true_name))
-
-
-               # There are two possible cases.  The first time an entry-point
-               # with data is seen, self.initialized will be 0.  On that
-               # pass, we just fill in the data.  The next time an
-               # entry-point with data is seen, self.initialized will be 1.
-               # On that pass we have to make that the new values match the
-               # valuse from the previous entry-point.
-
-               parameters = []
-               return_type = "void"
-               child = element.children
-               while child:
-                       if child.type == "element":
-                               if child.name == "return":
-                                       return_type = child.nsProp( "type", None )
-                               elif child.name == "param":
-                                       param = self.context.factory.create_item( "parameter", child, self.context)
-                                       parameters.append( param )
-
-                       child = child.next
-
-
-               if self.initialized:
-                       if self.return_type != return_type:
-                               raise RuntimeError( "Return type changed in %s.  Was %s, now %s." % (name, self.return_type, return_type))
-
-                       if len(parameters) != len(self.parameters):
-                               raise RuntimeError( "Parameter count mismatch in %s.  Was %d, now %d." % (name, len(self.parameters), len(parameters)))
-
-                       for j in range(0, len(parameters)):
-                               p1 = parameters[j]
-                               p2 = self.parameters[j]
-                               if not p1.compatible( p2 ):
-                                       raise RuntimeError( 'Parameter type mismatch in %s.  "%s" was "%s", now "%s".' % (name, p2.name, p2.type_expr.original_string, p1.type_expr.original_string))
-
-
-               if true_name == name or not self.initialized:
-                       self.return_type = return_type
-                       self.parameters = parameters
-
-                       for param in self.parameters:
-                               if param.is_image():
-                                       self.images.append( param )
-
-               if element.children:
-                       self.initialized = 1
-                       self.parameter_strings[name] = create_parameter_string(parameters, 1)
-               else:
-                       self.parameter_strings[name] = None
-
-               return
-
-
-       def get_images(self):
-               """Return potentially empty list of input images."""
-               return self.images
-
-
-       def parameterIterator(self):
-               return self.parameters.__iter__();
-
-
-       def get_parameter_string(self, entrypoint = None):
-               if entrypoint:
-                       s = self.parameter_strings[ entrypoint ]
-                       if s:
-                               return s
-               
-               return create_parameter_string( self.parameters, 1 )
-
-       def get_called_parameter_string(self):
-               p_string = ""
-               comma = ""
-
-               for p in self.parameterIterator():
-                       p_string = p_string + comma + p.name
-                       comma = ", "
-
-               return p_string
-
-
-       def is_abi(self):
-               return (self.offset >= 0 and not self.assign_offset)
-
-       def is_static_entry_point(self, name):
-               return name in self.static_entry_points
-
-       def dispatch_name(self):
-               if self.name in self.static_entry_points:
-                       return self.name
-               else:
-                       return "_dispatch_stub_%u" % (self.offset)
-
-       def static_name(self, name):
-               if name in self.static_entry_points:
-                       return name
-               else:
-                       return "_dispatch_stub_%u" % (self.offset)
-
-
-class gl_item_factory:
-       """Factory to create objects derived from gl_item."""
-
-       def create_item(self, item_name, element, context):
-               if item_name == "function":
-                       return gl_function(element, context)
-               if item_name == "type":
-                       return gl_type(element, context)
-               elif item_name == "enum":
-                       return gl_enum(element, context)
-               elif item_name == "parameter":
-                       return gl_parameter(element, context)
-               elif item_name == "api":
-                       return gl_api(self)
-               else:
-                       return None
-
-
-class gl_api:
-       def __init__(self, factory):
-               self.functions_by_name = {}
-               self.enums_by_name = {}
-               self.types_by_name = {}
-
-               self.category_dict = {}
-               self.categories = [{}, {}, {}, {}]
-
-               self.factory = factory
-
-               self.next_offset = 0
-
-               typeexpr.create_initial_types()
-               return
-
-
-       def process_element(self, doc):
-               element = doc.children
-               while element.type != "element" or element.name != "OpenGLAPI":
-                       element = element.next
-
-               if element:
-                       self.process_OpenGLAPI(element)
-               return
-
-
-       def process_OpenGLAPI(self, element):
-               child = element.children
-               while child:
-                       if child.type == "element":
-                               if child.name == "category":
-                                       self.process_category( child )
-                               elif child.name == "OpenGLAPI":
-                                       self.process_OpenGLAPI( child )
-
-                       child = child.next
-
-               return
-
-
-       def process_category(self, cat):
-               cat_name = cat.nsProp( "name", None )
-               cat_number = cat.nsProp( "number", None )
-
-               [cat_type, key] = classify_category(cat_name, cat_number)
-               self.categories[cat_type][key] = [cat_name, cat_number]
-
-               child = cat.children
-               while child:
-                       if child.type == "element":
-                               if child.name == "function":
-                                       func_name = real_function_name( child )
-
-                                       temp_name = child.nsProp( "name", None )
-                                       self.category_dict[ temp_name ] = [cat_name, cat_number]
-
-                                       if self.functions_by_name.has_key( func_name ):
-                                               func = self.functions_by_name[ func_name ]
-                                               func.process_element( child )
-                                       else:
-                                               func = self.factory.create_item( "function", child, self )
-                                               self.functions_by_name[ func_name ] = func
-
-                                       if func.offset >= self.next_offset:
-                                               self.next_offset = func.offset + 1
-
-
-                               elif child.name == "enum":
-                                       enum = self.factory.create_item( "enum", child, self )
-                                       self.enums_by_name[ enum.name ] = enum
-                               elif child.name == "type":
-                                       t = self.factory.create_item( "type", child, self )
-                                       self.types_by_name[ "GL" + t.name ] = t
-
-
-                       child = child.next
-
-               return
-
-
-       def functionIterateByCategory(self, cat = None):
-               """Iterate over functions by category.
-               
-               If cat is None, all known functions are iterated in category
-               order.  See classify_category for details of the ordering.
-               Within a category, functions are sorted by name.  If cat is
-               not None, then only functions in that category are iterated.
-               """
-               lists = [{}, {}, {}, {}]
-
-               for func in self.functionIterateAll():
-                       [cat_name, cat_number] = self.category_dict[func.name]
-
-                       if (cat == None) or (cat == cat_name):
-                               [func_cat_type, key] = classify_category(cat_name, cat_number)
-
-                               if not lists[func_cat_type].has_key(key):
-                                       lists[func_cat_type][key] = {}
-
-                               lists[func_cat_type][key][func.name] = func
-
-
-               functions = []
-               for func_cat_type in range(0,4):
-                       keys = lists[func_cat_type].keys()
-                       keys.sort()
-
-                       for key in keys:
-                               names = lists[func_cat_type][key].keys()
-                               names.sort()
-
-                               for name in names:
-                                       functions.append(lists[func_cat_type][key][name])
-
-               return functions.__iter__()
-
-
-       def functionIterateByOffset(self):
-               max_offset = -1
-               for func in self.functions_by_name.itervalues():
-                       if func.offset > max_offset:
-                               max_offset = func.offset
-
-
-               temp = [None for i in range(0, max_offset + 1)]
-               for func in self.functions_by_name.itervalues():
-                       if func.offset != -1:
-                               temp[ func.offset ] = func
-
-
-               list = []
-               for i in range(0, max_offset + 1):
-                       if temp[i]:
-                               list.append(temp[i])
-
-               return list.__iter__();
-
-
-       def functionIterateAll(self):
-               return self.functions_by_name.itervalues()
-
-
-       def enumIterateByName(self):
-               keys = self.enums_by_name.keys()
-               keys.sort()
-               
-               list = []
-               for enum in keys:
-                       list.append( self.enums_by_name[ enum ] )
-
-               return list.__iter__()
-
-
-       def categoryIterate(self):
-               """Iterate over categories.
-               
-               Iterate over all known categories in the order specified by
-               classify_category.  Each iterated value is a tuple of the
-               name and number (which may be None) of the category.
-               """
-
-               list = []
-               for cat_type in range(0,4):
-                       keys = self.categories[cat_type].keys()
-                       keys.sort()
-                       
-                       for key in keys:
-                               list.append(self.categories[cat_type][key])
-                               
-               return list.__iter__()
-
-
-       def get_category_for_name( self, name ):
-               if self.category_dict.has_key(name):
-                       return self.category_dict[name]
-               else:
-                       return ["<unknown category>", None]
-
-
-       def typeIterate(self):
-               return self.types_by_name.itervalues()
-
-
-       def find_type( self, type_name ):
-               if type_name in self.types_by_name:
-                       return self.types_by_name[ type_name ].type_expr
-               else:
-                       print "Unable to find base type matching \"%s\"." % (type_name)
-                       return None
diff --git a/src/mesa/glapi/gen/gl_and_glX_API.xml b/src/mesa/glapi/gen/gl_and_glX_API.xml
deleted file mode 100644 (file)
index 34c977e..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
-
-<OpenGLAPI>
-<xi:include href="glX_API.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-<xi:include href="gl_API.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
-</OpenGLAPI>
\ No newline at end of file
diff --git a/src/mesa/glapi/gen/gl_apitemp.py b/src/mesa/glapi/gen/gl_apitemp.py
deleted file mode 100644 (file)
index 41a40fb..0000000
+++ /dev/null
@@ -1,320 +0,0 @@
-#!/usr/bin/env python
-
-# (C) Copyright IBM Corporation 2004, 2005
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-
-import gl_XML, glX_XML
-import license
-import sys, getopt
-
-class PrintGlOffsets(gl_XML.gl_print_base):
-       def __init__(self, es=False):
-               gl_XML.gl_print_base.__init__(self)
-
-               self.name = "gl_apitemp.py (from Mesa)"
-               self.license = license.bsd_license_template % ( \
-"""Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
-(C) Copyright IBM Corporation 2004""", "BRIAN PAUL, IBM")
-
-               self.es = es
-
-               self.undef_list.append( "KEYWORD1" )
-               self.undef_list.append( "KEYWORD1_ALT" )
-               self.undef_list.append( "KEYWORD2" )
-               self.undef_list.append( "NAME" )
-               self.undef_list.append( "DISPATCH" )
-               self.undef_list.append( "RETURN_DISPATCH" )
-               self.undef_list.append( "DISPATCH_TABLE_NAME" )
-               self.undef_list.append( "UNUSED_TABLE_NAME" )
-               self.undef_list.append( "TABLE_ENTRY" )
-
-
-       def printFunction(self, f, name):
-               p_string = ""
-               o_string = ""
-               t_string = ""
-               comma = ""
-
-               if f.is_static_entry_point(name):
-                       keyword = "KEYWORD1"
-               else:
-                       keyword = "KEYWORD1_ALT"
-
-               n = f.static_name(name)
-
-               for p in f.parameterIterator():
-                       if p.is_padding:
-                               continue
-
-                       if p.is_pointer():
-                               cast = "(const void *) "
-                       else:
-                               cast = ""
-
-                       t_string = t_string + comma + p.format_string()
-                       p_string = p_string + comma + p.name
-                       o_string = o_string + comma + cast + p.name
-                       comma = ", "
-
-
-               if f.return_type != 'void':
-                       dispatch = "RETURN_DISPATCH"
-               else:
-                       dispatch = "DISPATCH"
-
-               need_proto = False
-               if not f.is_static_entry_point(name):
-                       need_proto = True
-               elif self.es:
-                       cat, num = api.get_category_for_name(name)
-                       if (cat.startswith("es") or cat.startswith("GL_OES")):
-                               need_proto = True
-               if need_proto:
-                       print '%s %s KEYWORD2 NAME(%s)(%s);' % (keyword, f.return_type, n, f.get_parameter_string(name))
-                       print ''
-
-               print '%s %s KEYWORD2 NAME(%s)(%s)' % (keyword, f.return_type, n, f.get_parameter_string(name))
-               print '{'
-               if p_string == "":
-                       print '   %s(%s, (), (F, "gl%s();\\n"));' \
-                               % (dispatch, f.name, name)
-               else:
-                       print '   %s(%s, (%s), (F, "gl%s(%s);\\n", %s));' \
-                               % (dispatch, f.name, p_string, name, t_string, o_string)
-               print '}'
-               print ''
-               return
-
-       def printRealHeader(self):
-               print ''
-               self.printVisibility( "HIDDEN", "hidden" )
-               print """
-/*
- * This file is a template which generates the OpenGL API entry point
- * functions.  It should be included by a .c file which first defines
- * the following macros:
- *   KEYWORD1 - usually nothing, but might be __declspec(dllexport) on Win32
- *   KEYWORD2 - usually nothing, but might be __stdcall on Win32
- *   NAME(n)  - builds the final function name (usually add "gl" prefix)
- *   DISPATCH(func, args, msg) - code to do dispatch of named function.
- *                               msg is a printf-style debug message.
- *   RETURN_DISPATCH(func, args, msg) - code to do dispatch with a return value
- *
- * Here is an example which generates the usual OpenGL functions:
- *   #define KEYWORD1
- *   #define KEYWORD2
- *   #define NAME(func)  gl##func
- *   #define DISPATCH(func, args, msg)                           \\
- *          struct _glapi_table *dispatch = CurrentDispatch;     \\
- *          (*dispatch->func) args
- *   #define RETURN DISPATCH(func, args, msg)                    \\
- *          struct _glapi_table *dispatch = CurrentDispatch;     \\
- *          return (*dispatch->func) args
- *
- */
-
-
-#if defined( NAME )
-#ifndef KEYWORD1
-#define KEYWORD1
-#endif
-
-#ifndef KEYWORD1_ALT
-#define KEYWORD1_ALT HIDDEN
-#endif
-
-#ifndef KEYWORD2
-#define KEYWORD2
-#endif
-
-#ifndef DISPATCH
-#error DISPATCH must be defined
-#endif
-
-#ifndef RETURN_DISPATCH
-#error RETURN_DISPATCH must be defined
-#endif
-
-"""
-               return
-
-    
-
-       def printInitDispatch(self, api):
-               print """
-#endif /* defined( NAME ) */
-
-/*
- * This is how a dispatch table can be initialized with all the functions
- * we generated above.
- */
-#ifdef DISPATCH_TABLE_NAME
-
-#ifndef TABLE_ENTRY
-#error TABLE_ENTRY must be defined
-#endif
-
-#ifdef _GLAPI_SKIP_NORMAL_ENTRY_POINTS
-#error _GLAPI_SKIP_NORMAL_ENTRY_POINTS must not be defined
-#endif
-
-_glapi_proc DISPATCH_TABLE_NAME[] = {"""
-               for f in api.functionIterateByOffset():
-                       print '   TABLE_ENTRY(%s),' % (f.dispatch_name())
-
-               print '   /* A whole bunch of no-op functions.  These might be called'
-               print '    * when someone tries to call a dynamically-registered'
-               print '    * extension function without a current rendering context.'
-               print '    */'
-               for i in range(1, 100):
-                       print '   TABLE_ENTRY(Unused),'
-
-               print '};'
-               print '#endif /* DISPATCH_TABLE_NAME */'
-               print ''
-               return
-
-
-       def printAliasedTable(self, api):
-               print """
-/*
- * This is just used to silence compiler warnings.
- * We list the functions which are not otherwise used.
- */
-#ifdef UNUSED_TABLE_NAME
-_glapi_proc UNUSED_TABLE_NAME[] = {"""
-
-               normal_entries = []
-               proto_entries = []
-               for f in api.functionIterateByOffset():
-                       normal_ents, proto_ents = self.classifyEntryPoints(f)
-
-                       # exclude f.name
-                       if f.name in normal_ents:
-                               normal_ents.remove(f.name)
-                       elif f.name in proto_ents:
-                               proto_ents.remove(f.name)
-
-                       normal_ents = [f.static_name(ent) for ent in normal_ents]
-                       proto_ents = [f.static_name(ent) for ent in proto_ents]
-
-                       normal_entries.extend(normal_ents)
-                       proto_entries.extend(proto_ents)
-
-               print '#ifndef _GLAPI_SKIP_NORMAL_ENTRY_POINTS'
-               for ent in normal_entries:
-                       print '   TABLE_ENTRY(%s),' % (ent)
-               print '#endif /* _GLAPI_SKIP_NORMAL_ENTRY_POINTS */'
-               print '#ifndef _GLAPI_SKIP_PROTO_ENTRY_POINTS'
-               for ent in proto_entries:
-                       print '   TABLE_ENTRY(%s),' % (ent)
-               print '#endif /* _GLAPI_SKIP_PROTO_ENTRY_POINTS */'
-
-               print '};'
-               print '#endif /*UNUSED_TABLE_NAME*/'
-               print ''
-               return
-
-
-       def classifyEntryPoints(self, func):
-               normal_names = []
-               normal_stubs = []
-               proto_names = []
-               proto_stubs = []
-               # classify the entry points
-               for name in func.entry_points:
-                       if func.has_different_protocol(name):
-                               if func.is_static_entry_point(name):
-                                       proto_names.append(name)
-                               else:
-                                       proto_stubs.append(name)
-                       else:
-                               if func.is_static_entry_point(name):
-                                       normal_names.append(name)
-                               else:
-                                       normal_stubs.append(name)
-               # there can be at most one stub for a function
-               if normal_stubs:
-                       normal_names.append(normal_stubs[0])
-               elif proto_stubs:
-                       proto_names.append(proto_stubs[0])
-
-               return (normal_names, proto_names)
-
-       def printBody(self, api):
-               normal_entry_points = []
-               proto_entry_points = []
-               for func in api.functionIterateByOffset():
-                       normal_ents, proto_ents = self.classifyEntryPoints(func)
-                       normal_entry_points.append((func, normal_ents))
-                       proto_entry_points.append((func, proto_ents))
-
-               print '#ifndef _GLAPI_SKIP_NORMAL_ENTRY_POINTS'
-               print ''
-               for func, ents in normal_entry_points:
-                       for ent in ents:
-                               self.printFunction(func, ent)
-               print ''
-               print '#endif /* _GLAPI_SKIP_NORMAL_ENTRY_POINTS */'
-               print ''
-               print '/* these entry points might require different protocols */'
-               print '#ifndef _GLAPI_SKIP_PROTO_ENTRY_POINTS'
-               print ''
-               for func, ents in proto_entry_points:
-                       for ent in ents:
-                               self.printFunction(func, ent)
-               print ''
-               print '#endif /* _GLAPI_SKIP_PROTO_ENTRY_POINTS */'
-               print ''
-
-               self.printInitDispatch(api)
-               self.printAliasedTable(api)
-               return
-
-
-def show_usage():
-       print "Usage: %s [-f input_file_name] [-c]" % sys.argv[0]
-       print "-c          Enable compatibility with OpenGL ES."
-       sys.exit(1)
-
-if __name__ == '__main__':
-       file_name = "gl_API.xml"
-    
-       try:
-               (args, trail) = getopt.getopt(sys.argv[1:], "f:c")
-       except Exception,e:
-               show_usage()
-
-       es = False
-       for (arg,val) in args:
-               if arg == "-f":
-                       file_name = val
-               elif arg == "-c":
-                       es = True
-
-       api = gl_XML.parse_GL_API(file_name, glX_XML.glx_item_factory())
-
-       printer = PrintGlOffsets(es)
-       printer.Print(api)
diff --git a/src/mesa/glapi/gen/gl_enums.py b/src/mesa/glapi/gen/gl_enums.py
deleted file mode 100644 (file)
index 644e085..0000000
+++ /dev/null
@@ -1,247 +0,0 @@
-#!/usr/bin/python2
-# -*- Mode: Python; py-indent-offset: 8 -*-
-
-# (C) Copyright Zack Rusin 2005
-# All Rights Reserved.
-# 
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Zack Rusin <zack@kde.org>
-
-import license
-import gl_XML
-import sys, getopt
-
-class PrintGlEnums(gl_XML.gl_print_base):
-
-       def __init__(self):
-               gl_XML.gl_print_base.__init__(self)
-
-               self.name = "gl_enums.py (from Mesa)"
-               self.license = license.bsd_license_template % ( \
-"""Copyright (C) 1999-2005 Brian Paul All Rights Reserved.""", "BRIAN PAUL")
-               self.enum_table = {}
-
-
-       def printRealHeader(self):
-               print '#include "main/glheader.h"'
-               print '#include "main/mfeatures.h"'
-               print '#include "main/enums.h"'
-               print '#include "main/imports.h"'
-               print ''
-               print 'typedef struct {'
-               print '   size_t offset;'
-               print '   int n;'
-               print '} enum_elt;'
-               print ''
-               return
-
-       def print_code(self):
-               print """
-typedef int (*cfunc)(const void *, const void *);
-
-/**
- * Compare a key name to an element in the \c all_enums array.
- *
- * \c bsearch always passes the key as the first parameter and the pointer
- * to the array element as the second parameter.  We can elimiate some
- * extra work by taking advantage of that fact.
- *
- * \param a  Pointer to the desired enum name.
- * \param b  Pointer to an element of the \c all_enums array.
- */
-static int compar_name( const char *a, const enum_elt *b )
-{
-   return strcmp( a, & enum_string_table[ b->offset ] );
-}
-
-/**
- * Compare a key enum value to an element in the \c all_enums array.
- *
- * \c bsearch always passes the key as the first parameter and the pointer
- * to the array element as the second parameter.  We can elimiate some
- * extra work by taking advantage of that fact.
- *
- * \param a  Pointer to the desired enum name.
- * \param b  Pointer to an index into the \c all_enums array.
- */
-static int compar_nr( const int *a, const unsigned *b )
-{
-   return a[0] - all_enums[*b].n;
-}
-
-
-static char token_tmp[20];
-
-const char *_mesa_lookup_enum_by_nr( int nr )
-{
-   unsigned * i;
-
-   i = (unsigned *) _mesa_bsearch(& nr, reduced_enums,
-                                  Elements(reduced_enums),
-                                  sizeof(reduced_enums[0]),
-                                  (cfunc) compar_nr);
-
-   if ( i != NULL ) {
-      return & enum_string_table[ all_enums[ *i ].offset ];
-   }
-   else {
-      /* this is not re-entrant safe, no big deal here */
-      sprintf(token_tmp, "0x%x", nr);
-      return token_tmp;
-   }
-}
-
-/* Get the name of an enum given that it is a primitive type.  Avoids
- * GL_FALSE/GL_POINTS ambiguity and others.
- */
-const char *_mesa_lookup_prim_by_nr( int nr )
-{
-   switch (nr) {
-   case GL_POINTS: return "GL_POINTS";
-   case GL_LINES: return "GL_LINES";
-   case GL_LINE_STRIP: return "GL_LINE_STRIP";
-   case GL_LINE_LOOP: return "GL_LINE_LOOP";
-   case GL_TRIANGLES: return "GL_TRIANGLES";
-   case GL_TRIANGLE_STRIP: return "GL_TRIANGLE_STRIP";
-   case GL_TRIANGLE_FAN: return "GL_TRIANGLE_FAN";
-   case GL_QUADS: return "GL_QUADS";
-   case GL_QUAD_STRIP: return "GL_QUAD_STRIP";
-   case GL_POLYGON: return "GL_POLYGON";
-   case GL_POLYGON+1: return "OUTSIDE_BEGIN_END";
-   default: return "<invalid>";
-   }
-}
-
-
-
-int _mesa_lookup_enum_by_name( const char *symbol )
-{
-   enum_elt * f = NULL;
-
-   if ( symbol != NULL ) {
-      f = (enum_elt *) _mesa_bsearch(symbol, all_enums,
-                                     Elements(all_enums),
-                                     sizeof( enum_elt ),
-                                     (cfunc) compar_name);
-   }
-
-   return (f != NULL) ? f->n : -1;
-}
-
-"""
-               return
-
-
-       def printBody(self, api_list):
-               self.enum_table = {}
-               for api in api_list:
-                       self.process_enums( api )
-
-               keys = self.enum_table.keys()
-               keys.sort()
-
-               name_table = []
-               enum_table = {}
-
-               for enum in keys:
-                       low_pri = 9
-                       for [name, pri] in self.enum_table[ enum ]:
-                               name_table.append( [name, enum] )
-
-                               if pri < low_pri:
-                                       low_pri = pri
-                                       enum_table[enum] = name
-                                               
-
-               name_table.sort()
-
-               string_offsets = {}
-               i = 0;
-               print 'LONGSTRING static const char enum_string_table[] = '
-               for [name, enum] in name_table:
-                       print '   "%s\\0"' % (name)
-                       string_offsets[ name ] = i
-                       i += len(name) + 1
-
-               print '   ;'
-               print ''
-
-
-               print 'static const enum_elt all_enums[%u] =' % (len(name_table))
-               print '{'
-               for [name, enum] in name_table:
-                       print '   { %5u, 0x%08X }, /* %s */' % (string_offsets[name], enum, name)
-               print '};'
-               print ''
-
-               print 'static const unsigned reduced_enums[%u] =' % (len(keys))
-               print '{'
-               for enum in keys:
-                       name = enum_table[ enum ]
-                       if [name, enum] not in name_table:
-                               print '      /* Error! %s, 0x%04x */ 0,' % (name, enum)
-                       else:
-                               i = name_table.index( [name, enum] )
-
-                               print '      %4u, /* %s */' % (i, name)
-               print '};'
-
-
-               self.print_code()
-               return
-
-
-       def process_enums(self, api):
-               for obj in api.enumIterateByName():
-                       if obj.value not in self.enum_table:
-                               self.enum_table[ obj.value ] = []
-
-
-                       enum = self.enum_table[ obj.value ]
-                       name = "GL_" + obj.name
-                       priority = obj.priority()
-                       already_in = False;
-                       for n, p in enum:
-                               if n == name:
-                                       already_in = True
-                       if not already_in:
-                               enum.append( [name, priority] )
-
-
-def show_usage():
-       print "Usage: %s [-f input_file_name]" % sys.argv[0]
-       sys.exit(1)
-
-if __name__ == '__main__':
-       try:
-               (args, trail) = getopt.getopt(sys.argv[1:], "f:")
-       except Exception,e:
-               show_usage()
-
-       api_list = []
-       for (arg,val) in args:
-               if arg == "-f":
-                       api = gl_XML.parse_GL_API( val )
-                       api_list.append(api);
-
-       printer = PrintGlEnums()
-       printer.Print( api_list )
diff --git a/src/mesa/glapi/gen/gl_offsets.py b/src/mesa/glapi/gen/gl_offsets.py
deleted file mode 100644 (file)
index 54867b3..0000000
+++ /dev/null
@@ -1,120 +0,0 @@
-#!/usr/bin/env python
-
-# (C) Copyright IBM Corporation 2004, 2005
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-
-import gl_XML
-import license
-import sys, getopt
-
-class PrintGlOffsets(gl_XML.gl_print_base):
-       def __init__(self, es=False):
-               gl_XML.gl_print_base.__init__(self)
-
-               self.es = es
-               self.name = "gl_offsets.py (from Mesa)"
-               self.header_tag = '_GLAPI_OFFSETS_H_'
-               self.license = license.bsd_license_template % ( \
-"""Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
-(C) Copyright IBM Corporation 2004""", "BRIAN PAUL, IBM")
-               return
-
-       def printBody(self, api):
-               print '/* this file should not be included directly in mesa */'
-               print ''
-
-               functions = []
-               abi_functions = []
-               alias_functions = []
-               count = 0
-               for f in api.functionIterateByOffset():
-                       if not f.is_abi():
-                               functions.append( [f, count] )
-                               count += 1
-                       else:
-                               abi_functions.append( f )
-
-                       if self.es:
-                               # remember functions with aliases
-                               if len(f.entry_points) > 1:
-                                       alias_functions.append(f)
-
-               for f in abi_functions:
-                       print '#define _gloffset_%s %d' % (f.name, f.offset)
-                       last_static = f.offset
-
-               print ''
-               print '#if !defined(_GLAPI_USE_REMAP_TABLE)'
-               print ''
-
-               for [f, index] in functions:
-                       print '#define _gloffset_%s %d' % (f.name, f.offset)
-
-               print '#define _gloffset_FIRST_DYNAMIC %d' % (api.next_offset)
-
-               print ''
-               print '#else'
-               print ''
-
-               for [f, index] in functions:
-                       print '#define _gloffset_%s driDispatchRemapTable[%s_remap_index]' % (f.name, f.name)
-
-               print ''
-               print '#endif /* !defined(_GLAPI_USE_REMAP_TABLE) */'
-
-               if alias_functions:
-                       print ''
-                       print '/* define aliases for compatibility */'
-                       for f in alias_functions:
-                               for name in f.entry_points:
-                                       if name != f.name:
-                                               print '#define _gloffset_%s _gloffset_%s' % (name, f.name)
-               return
-
-
-def show_usage():
-       print "Usage: %s [-f input_file_name] [-c]" % sys.argv[0]
-       print "    -c        Enable compatibility with OpenGL ES."
-       sys.exit(1)
-
-if __name__ == '__main__':
-       file_name = "gl_API.xml"
-    
-       try:
-               (args, trail) = getopt.getopt(sys.argv[1:], "f:c")
-       except Exception,e:
-               show_usage()
-
-       es = False
-       for (arg,val) in args:
-               if arg == "-f":
-                       file_name = val
-               elif arg == "-c":
-                       es = True
-
-       api = gl_XML.parse_GL_API( file_name )
-
-       printer = PrintGlOffsets(es)
-       printer.Print( api )
diff --git a/src/mesa/glapi/gen/gl_procs.py b/src/mesa/glapi/gen/gl_procs.py
deleted file mode 100644 (file)
index 5de61fb..0000000
+++ /dev/null
@@ -1,215 +0,0 @@
-#!/usr/bin/env python
-
-# (C) Copyright IBM Corporation 2004, 2005
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-
-import license
-import gl_XML, glX_XML
-import sys, getopt
-
-class PrintGlProcs(gl_XML.gl_print_base):
-       def __init__(self, long_strings, es=False):
-               gl_XML.gl_print_base.__init__(self)
-
-               self.es = es
-               self.long_strings = long_strings
-               self.name = "gl_procs.py (from Mesa)"
-               self.license = license.bsd_license_template % ( \
-"""Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
-(C) Copyright IBM Corporation 2004, 2006""", "BRIAN PAUL, IBM")
-
-
-       def printRealHeader(self):
-               print """
-/* This file is only included by glapi.c and is used for
- * the GetProcAddress() function
- */
-
-typedef struct {
-    GLint Name_offset;
-#if defined(NEED_FUNCTION_POINTER) || defined(GLX_INDIRECT_RENDERING)
-    _glapi_proc Address;
-#endif
-    GLuint Offset;
-} glprocs_table_t;
-
-#if   !defined(NEED_FUNCTION_POINTER) && !defined(GLX_INDIRECT_RENDERING)
-#  define NAME_FUNC_OFFSET(n,f1,f2,f3,o) { n , o }
-#elif  defined(NEED_FUNCTION_POINTER) && !defined(GLX_INDIRECT_RENDERING)
-#  define NAME_FUNC_OFFSET(n,f1,f2,f3,o) { n , (_glapi_proc) f1 , o }
-#elif  defined(NEED_FUNCTION_POINTER) &&  defined(GLX_INDIRECT_RENDERING)
-#  define NAME_FUNC_OFFSET(n,f1,f2,f3,o) { n , (_glapi_proc) f2 , o }
-#elif !defined(NEED_FUNCTION_POINTER) &&  defined(GLX_INDIRECT_RENDERING)
-#  define NAME_FUNC_OFFSET(n,f1,f2,f3,o) { n , (_glapi_proc) f3 , o }
-#endif
-
-"""
-               return
-
-       def printRealFooter(self):
-               print ''
-               print '#undef NAME_FUNC_OFFSET'
-               return
-
-       def printFunctionString(self, name):
-               if self.long_strings:
-                       print '    "gl%s\\0"' % (name)
-               else:
-                       print "    'g','l',",
-                       for c in name:
-                               print "'%s'," % (c),
-                       
-                       print "'\\0',"
-
-
-       def printBody(self, api):
-               print ''
-               if self.long_strings:
-                       print 'static const char gl_string_table[] ='
-               else:
-                       print 'static const char gl_string_table[] = {'
-
-               base_offset = 0
-               table = []
-               for func in api.functionIterateByOffset():
-                       name = func.dispatch_name()
-                       self.printFunctionString(func.name)
-                       table.append((base_offset, "gl" + name, "gl" + name, "NULL", func.name))
-
-                       # The length of the function's name, plus 2 for "gl",
-                       # plus 1 for the NUL.
-
-                       base_offset += len(func.name) + 3
-
-
-               for func in api.functionIterateByOffset():
-                       for n in func.entry_points:
-                               if n != func.name:
-                                       name = func.dispatch_name()
-                                       self.printFunctionString( n )
-                                       
-                                       if func.has_different_protocol(n):
-                                               alt_name = "gl" + func.static_glx_name(n)
-                                               table.append((base_offset, "gl" + name, alt_name, alt_name, func.name))
-                                       else:
-                                               table.append((base_offset, "gl" + name, "gl" + name, "NULL", func.name))
-
-                                       base_offset += len(n) + 3
-
-
-               if self.long_strings:
-                       print '    ;'
-               else:
-                       print '};'
-
-               print ''
-               print ''
-               print "#ifdef USE_MGL_NAMESPACE"
-               for func in api.functionIterateByOffset():
-                       for n in func.entry_points:
-                               if (not func.is_static_entry_point(func.name)) or (func.has_different_protocol(n) and not func.is_static_entry_point(n)):
-                                       print '#define gl_dispatch_stub_%u mgl_dispatch_stub_%u' % (func.offset, func.offset)
-                                       break
-               print "#endif /* USE_MGL_NAMESPACE */"
-               print ''
-               print ''
-               print '#if defined(NEED_FUNCTION_POINTER) || defined(GLX_INDIRECT_RENDERING)'
-               for func in api.functionIterateByOffset():
-                       for n in func.entry_points:
-                               if (not func.is_static_entry_point(func.name)) or (func.has_different_protocol(n) and not func.is_static_entry_point(n)):
-                                       print '%s GLAPIENTRY gl_dispatch_stub_%u(%s);' % (func.return_type, func.offset, func.get_parameter_string())
-                                       break
-
-               if self.es:
-                       categories = {}
-                       for func in api.functionIterateByOffset():
-                               for n in func.entry_points:
-                                       cat, num = api.get_category_for_name(n)
-                                       if (cat.startswith("es") or cat.startswith("GL_OES")):
-                                               if not categories.has_key(cat):
-                                                       categories[cat] = []
-                                               proto = 'GLAPI %s GLAPIENTRY %s(%s);' \
-                                                               % (func.return_type, "gl" + n, func.get_parameter_string(n))
-                                               categories[cat].append(proto)
-                       if categories:
-                               print ''
-                               print '/* OpenGL ES specific prototypes */'
-                               print ''
-                               keys = categories.keys()
-                               keys.sort()
-                               for key in keys:
-                                       print '/* category %s */' % key
-                                       print "\n".join(categories[key])
-                               print ''
-
-               print '#endif /* defined(NEED_FUNCTION_POINTER) || defined(GLX_INDIRECT_RENDERING) */'
-
-               print ''
-               print 'static const glprocs_table_t static_functions[] = {'
-
-               for info in table:
-                       print '    NAME_FUNC_OFFSET(%5u, %s, %s, %s, _gloffset_%s),' % info
-
-               print '    NAME_FUNC_OFFSET(-1, NULL, NULL, NULL, 0)'
-               print '};'
-               return
-
-
-def show_usage():
-       print "Usage: %s [-f input_file_name] [-m mode] [-c]" % sys.argv[0]
-       print "-c          Enable compatibility with OpenGL ES."
-       print "-m mode     mode can be one of:"
-       print "    long  - Create code for compilers that can handle very"
-       print "            long string constants. (default)"
-       print "    short - Create code for compilers that can only handle"
-       print "            ANSI C89 string constants."
-       sys.exit(1)
-
-if __name__ == '__main__':
-       file_name = "gl_API.xml"
-
-       try:
-               (args, trail) = getopt.getopt(sys.argv[1:], "f:m:c")
-       except Exception,e:
-               show_usage()
-
-       long_string = 1
-       es = False
-       for (arg,val) in args:
-               if arg == "-f":
-                       file_name = val
-               elif arg == "-m":
-                       if val == "short":
-                               long_string = 0
-                       elif val == "long":
-                               long_string = 1
-                       else:
-                               show_usage()
-               elif arg == "-c":
-                   es = True
-
-       api = gl_XML.parse_GL_API(file_name, glX_XML.glx_item_factory())
-       printer = PrintGlProcs(long_string, es)
-       printer.Print(api)
diff --git a/src/mesa/glapi/gen/gl_table.py b/src/mesa/glapi/gen/gl_table.py
deleted file mode 100644 (file)
index 3bd7569..0000000
+++ /dev/null
@@ -1,229 +0,0 @@
-#!/usr/bin/python2
-
-# (C) Copyright IBM Corporation 2004
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-
-import gl_XML
-import license
-import sys, getopt
-
-class PrintGlTable(gl_XML.gl_print_base):
-       def __init__(self, es=False):
-               gl_XML.gl_print_base.__init__(self)
-
-               self.es = es
-               self.header_tag = '_GLAPI_TABLE_H_'
-               self.name = "gl_table.py (from Mesa)"
-               self.license = license.bsd_license_template % ( \
-"""Copyright (C) 1999-2003  Brian Paul   All Rights Reserved.
-(C) Copyright IBM Corporation 2004""", "BRIAN PAUL, IBM")
-               return
-
-
-       def printBody(self, api):
-               for f in api.functionIterateByOffset():
-                       arg_string = f.get_parameter_string()
-                       print '   %s (GLAPIENTRYP %s)(%s); /* %d */' % (f.return_type, f.name, arg_string, f.offset)
-
-
-       def printRealHeader(self):
-               print '#ifndef GLAPIENTRYP'
-               print '# ifndef GLAPIENTRY'
-               print '#  define GLAPIENTRY'
-               print '# endif'
-               print ''
-               print '# define GLAPIENTRYP GLAPIENTRY *'
-               print '#endif'
-               print ''
-               print ''
-               print 'struct _glapi_table'
-               print '{'
-               return
-
-
-       def printRealFooter(self):
-               print '};'
-               return
-
-
-class PrintRemapTable(gl_XML.gl_print_base):
-       def __init__(self, es=False):
-               gl_XML.gl_print_base.__init__(self)
-
-               self.es = es
-               self.header_tag = '_GLAPI_DISPATCH_H_'
-               self.name = "gl_table.py (from Mesa)"
-               self.license = license.bsd_license_template % ("(C) Copyright IBM Corporation 2005", "IBM")
-               return
-
-
-       def printRealHeader(self):
-               print """
-/* this file should not be included directly in mesa */
-
-/**
- * \\file glapidispatch.h
- * Macros for handling GL dispatch tables.
- *
- * For each known GL function, there are 3 macros in this file.  The first
- * macro is named CALL_FuncName and is used to call that GL function using
- * the specified dispatch table.  The other 2 macros, called GET_FuncName
- * can SET_FuncName, are used to get and set the dispatch pointer for the
- * named function in the specified dispatch table.
- */
-"""
-               
-               return
-
-       def printBody(self, api):
-               print '#define CALL_by_offset(disp, cast, offset, parameters) \\'
-               print '    (*(cast (GET_by_offset(disp, offset)))) parameters'
-               print '#define GET_by_offset(disp, offset) \\'
-               print '    (offset >= 0) ? (((_glapi_proc *)(disp))[offset]) : NULL'
-               print '#define SET_by_offset(disp, offset, fn) \\'
-               print '    do { \\'
-               print '        if ( (offset) < 0 ) { \\'
-               print '            /* fprintf( stderr, "[%s:%u] SET_by_offset(%p, %d, %s)!\\n", */ \\'
-               print '            /*         __func__, __LINE__, disp, offset, # fn); */ \\'
-               print '            /* abort(); */ \\'
-               print '        } \\'
-               print '        else { \\'
-               print '            ( (_glapi_proc *) (disp) )[offset] = (_glapi_proc) fn; \\'
-               print '        } \\'
-               print '    } while(0)'
-               print ''
-
-               functions = []
-               abi_functions = []
-               alias_functions = []
-               count = 0
-               for f in api.functionIterateByOffset():
-                       if not f.is_abi():
-                               functions.append( [f, count] )
-                               count += 1
-                       else:
-                               abi_functions.append( f )
-
-                       if self.es:
-                               # remember functions with aliases
-                               if len(f.entry_points) > 1:
-                                       alias_functions.append(f)
-
-
-               for f in abi_functions:
-                       print '#define CALL_%s(disp, parameters) (*((disp)->%s)) parameters' % (f.name, f.name)
-                       print '#define GET_%s(disp) ((disp)->%s)' % (f.name, f.name)
-                       print '#define SET_%s(disp, fn) ((disp)->%s = fn)' % (f.name, f.name)
-
-
-               print ''
-               print '#if !defined(_GLAPI_USE_REMAP_TABLE)'
-               print ''
-
-               for [f, index] in functions:
-                       print '#define CALL_%s(disp, parameters) (*((disp)->%s)) parameters' % (f.name, f.name)
-                       print '#define GET_%s(disp) ((disp)->%s)' % (f.name, f.name)
-                       print '#define SET_%s(disp, fn) ((disp)->%s = fn)' % (f.name, f.name)
-
-               print ''
-               print '#else'
-               print ''
-               print '#define driDispatchRemapTable_size %u' % (count)
-               print 'extern int driDispatchRemapTable[ driDispatchRemapTable_size ];'
-               print ''
-
-               for [f, index] in functions:
-                       print '#define %s_remap_index %u' % (f.name, index)
-
-               print ''
-
-               for [f, index] in functions:
-                       arg_string = gl_XML.create_parameter_string( f.parameters, 0 )
-                       cast = '%s (GLAPIENTRYP)(%s)' % (f.return_type, arg_string)
-
-                       print '#define CALL_%s(disp, parameters) CALL_by_offset(disp, (%s), driDispatchRemapTable[%s_remap_index], parameters)' % (f.name, cast, f.name)
-                       print '#define GET_%s(disp) GET_by_offset(disp, driDispatchRemapTable[%s_remap_index])' % (f.name, f.name)
-                       print '#define SET_%s(disp, fn) SET_by_offset(disp, driDispatchRemapTable[%s_remap_index], fn)' % (f.name, f.name)
-
-
-               print ''
-               print '#endif /* !defined(_GLAPI_USE_REMAP_TABLE) */'
-
-               if alias_functions:
-                       print ''
-                       print '/* define aliases for compatibility */'
-                       for f in alias_functions:
-                               for name in f.entry_points:
-                                       if name != f.name:
-                                               print '#define CALL_%s(disp, parameters) CALL_%s(disp, parameters)' % (name, f.name)
-                                               print '#define GET_%s(disp) GET_%s(disp)' % (name, f.name)
-                                               print '#define SET_%s(disp, fn) SET_%s(disp, fn)' % (name, f.name)
-                       print ''
-
-                       print '#if defined(_GLAPI_USE_REMAP_TABLE)'
-                       for f in alias_functions:
-                               for name in f.entry_points:
-                                       if name != f.name:
-                                               print '#define %s_remap_index %s_remap_index' % (name, f.name)
-                       print '#endif /* defined(_GLAPI_USE_REMAP_TABLE) */'
-                       print ''
-
-               return
-
-
-def show_usage():
-       print "Usage: %s [-f input_file_name] [-m mode] [-c]" % sys.argv[0]
-       print "    -m mode   Mode can be 'table' or 'remap_table'."
-       print "    -c        Enable compatibility with OpenGL ES."
-       sys.exit(1)
-
-if __name__ == '__main__':
-       file_name = "gl_API.xml"
-    
-       try:
-               (args, trail) = getopt.getopt(sys.argv[1:], "f:m:c")
-       except Exception,e:
-               show_usage()
-
-       mode = "table"
-       es = False
-       for (arg,val) in args:
-               if arg == "-f":
-                       file_name = val
-               elif arg == "-m":
-                       mode = val
-               elif arg == "-c":
-                       es = True
-
-       if mode == "table":
-               printer = PrintGlTable(es)
-       elif mode == "remap_table":
-               printer = PrintRemapTable(es)
-       else:
-               show_usage()
-
-       api = gl_XML.parse_GL_API( file_name )
-
-       printer.Print( api )
diff --git a/src/mesa/glapi/gen/gl_x86-64_asm.py b/src/mesa/glapi/gen/gl_x86-64_asm.py
deleted file mode 100644 (file)
index e6e78c4..0000000
+++ /dev/null
@@ -1,334 +0,0 @@
-#!/usr/bin/env python
-
-# (C) Copyright IBM Corporation 2005
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-
-import license
-import gl_XML, glX_XML
-import sys, getopt, copy
-
-def should_use_push(registers):
-       for [reg, offset] in registers:
-               if reg[1:4] == "xmm":
-                       return 0
-
-       N = len(registers)
-       return (N & 1) != 0
-
-
-def local_size(registers):
-       # The x86-64 ABI says "the value (%rsp - 8) is always a multiple of
-       # 16 when control is transfered to the function entry point."  This
-       # means that the local stack usage must be (16*N)+8 for some value
-       # of N.  (16*N)+8 = (8*(2N))+8 = 8*(2N+1).  As long as N is odd, we
-       # meet this requirement.
-
-       N = (len(registers) | 1)
-       return 8*N
-
-
-def save_all_regs(registers):
-       adjust_stack = 0
-       if not should_use_push(registers):
-               adjust_stack = local_size(registers)
-               print '\tsubq\t$%u, %%rsp' % (adjust_stack)
-
-       for [reg, stack_offset] in registers:
-               save_reg( reg, stack_offset, adjust_stack )
-       return
-
-
-def restore_all_regs(registers):
-       adjust_stack = 0
-       if not should_use_push(registers):
-               adjust_stack = local_size(registers)
-
-       temp = copy.deepcopy(registers)
-       while len(temp):
-               [reg, stack_offset] = temp.pop()
-               restore_reg(reg, stack_offset, adjust_stack)
-
-       if adjust_stack:
-               print '\taddq\t$%u, %%rsp' % (adjust_stack)
-       return
-
-
-def save_reg(reg, offset, use_move):
-       if use_move:
-               if offset == 0:
-                       print '\tmovq\t%s, (%%rsp)' % (reg)
-               else:
-                       print '\tmovq\t%s, %u(%%rsp)' % (reg, offset)
-       else:
-               print '\tpushq\t%s' % (reg)
-
-       return
-
-
-def restore_reg(reg, offset, use_move):
-       if use_move:
-               if offset == 0:
-                       print '\tmovq\t(%%rsp), %s' % (reg)
-               else:
-                       print '\tmovq\t%u(%%rsp), %s' % (offset, reg)
-       else:
-               print '\tpopq\t%s' % (reg)
-
-       return
-
-
-class PrintGenericStubs(gl_XML.gl_print_base):
-
-       def __init__(self):
-               gl_XML.gl_print_base.__init__(self)
-
-               self.name = "gl_x86-64_asm.py (from Mesa)"
-               self.license = license.bsd_license_template % ("(C) Copyright IBM Corporation 2005", "IBM")
-               return
-
-
-       def get_stack_size(self, f):
-               size = 0
-               for p in f.parameterIterator():
-                       size += p.get_stack_size()
-
-               return size
-
-
-       def printRealHeader(self):
-               print "/* If we build with gcc's -fvisibility=hidden flag, we'll need to change"
-               print " * the symbol visibility mode to 'default'."
-               print ' */'
-               print ''
-               print '#include "x86/assyntax.h"'
-               print ''
-               print '#ifdef __GNUC__'
-               print '#  pragma GCC visibility push(default)'
-               print '#  define HIDDEN(x) .hidden x'
-               print '#else'
-               print '#  define HIDDEN(x)'
-               print '#endif'
-               print ''
-               print '# if defined(USE_MGL_NAMESPACE)'
-               print '#  define GL_PREFIX(n) GLNAME(CONCAT(mgl,n))'
-               print '#  define _glapi_Dispatch _mglapi_Dispatch'
-               print '# else'
-               print '#  define GL_PREFIX(n) GLNAME(CONCAT(gl,n))'
-               print '# endif'
-               print ''
-               print '#if defined(PTHREADS) || defined(WIN32_THREADS) || defined(BEOS_THREADS)'
-               print '#  define THREADS'
-               print '#endif'
-               print ''
-               print '\t.text'
-               print ''
-               print '#ifdef GLX_USE_TLS'
-               print ''
-               print '\t.globl _x86_64_get_get_dispatch; HIDDEN(_x86_64_get_get_dispatch)'
-               print '_x86_64_get_get_dispatch:'
-               print '\tlea\t_x86_64_get_dispatch(%rip), %rax'
-               print '\tret'
-               print ''
-               print '\t.p2align\t4,,15'
-               print '_x86_64_get_dispatch:'
-               print '\tmovq\t_glapi_tls_Dispatch@GOTTPOFF(%rip), %rax'
-               print '\tmovq\t%fs:(%rax), %rax'
-               print '\tret'
-               print '\t.size\t_x86_64_get_dispatch, .-_x86_64_get_dispatch'
-               print ''
-               print '#elif defined(PTHREADS)'
-               print ''
-               print '\t.extern\t_glapi_Dispatch'
-               print '\t.extern\t_gl_DispatchTSD'
-               print '\t.extern\tpthread_getspecific'
-               print ''
-               print '\t.p2align\t4,,15'
-               print '_x86_64_get_dispatch:'
-               print '\tmovq\t_gl_DispatchTSD(%rip), %rdi'
-               print '\tjmp\tpthread_getspecific@PLT'
-               print ''
-               print '#elif defined(THREADS)'
-               print ''
-               print '\t.extern\t_glapi_get_dispatch'
-               print ''
-               print '#endif'
-               print ''
-               return
-
-
-       def printRealFooter(self):
-               print ''
-               print '#if defined(GLX_USE_TLS) && defined(__linux__)'
-               print ' .section ".note.ABI-tag", "a"'
-               print ' .p2align 2'
-               print ' .long   1f - 0f   /* name length */'
-               print ' .long   3f - 2f   /* data length */'
-               print ' .long   1         /* note length */'
-               print '0:       .asciz "GNU"      /* vendor name */'
-               print '1:       .p2align 2'
-               print '2:       .long   0         /* note data: the ABI tag */'
-               print ' .long   2,4,20    /* Minimum kernel version w/TLS */'
-               print '3:       .p2align 2        /* pad out section */'
-               print '#endif /* GLX_USE_TLS */'
-               print ''
-               print '#if defined (__ELF__) && defined (__linux__)'
-               print ' .section .note.GNU-stack,"",%progbits'
-               print '#endif'
-               return
-
-
-       def printFunction(self, f):
-               
-               # The x86-64 ABI divides function parameters into a couple
-               # classes.  For the OpenGL interface, the only ones that are
-               # relevent are INTEGER and SSE.  Basically, the first 8
-               # GLfloat or GLdouble parameters are placed in %xmm0 - %xmm7,
-               # the first 6 non-GLfloat / non-GLdouble parameters are placed
-               # in registers listed in int_parameters.
-               #
-               # If more parameters than that are required, they are passed
-               # on the stack.  Therefore, we just have to make sure that
-               # %esp hasn't changed when we jump to the actual function.
-               # Since we're jumping to the function (and not calling it), we
-               # have to make sure of that anyway!
-
-               int_parameters = ["%rdi", "%rsi", "%rdx", "%rcx", "%r8", "%r9"]
-
-               int_class = 0
-               sse_class = 0
-               stack_offset = 0
-               registers = []
-               for p in f.parameterIterator():
-                       type_name = p.get_base_type_string()
-
-                       if p.is_pointer() or (type_name != "GLfloat" and type_name != "GLdouble"):
-                               if int_class < 6:
-                                       registers.append( [int_parameters[int_class], stack_offset] )
-                                       int_class += 1
-                                       stack_offset += 8
-                       else:
-                               if sse_class < 8:
-                                       registers.append( ["%%xmm%u" % (sse_class), stack_offset] )
-                                       sse_class += 1
-                                       stack_offset += 8
-
-               if ((int_class & 1) == 0) and (sse_class == 0):
-                       registers.append( ["%rbp", 0] )
-
-
-               name = f.dispatch_name()
-
-               print '\t.p2align\t4,,15'
-               print '\t.globl\tGL_PREFIX(%s)' % (name)
-               print '\t.type\tGL_PREFIX(%s), @function' % (name)
-               if not f.is_static_entry_point(f.name):
-                       print '\tHIDDEN(GL_PREFIX(%s))' % (name)
-               print 'GL_PREFIX(%s):' % (name)
-               print '#if defined(GLX_USE_TLS)'
-               print '\tcall\t_x86_64_get_dispatch@PLT'
-               print '\tmovq\t%u(%%rax), %%r11' % (f.offset * 8)
-               print '\tjmp\t*%r11'
-               print '#elif defined(PTHREADS)'
-               
-               save_all_regs(registers)
-               print '\tcall\t_x86_64_get_dispatch@PLT'
-               restore_all_regs(registers)
-
-               if f.offset == 0:
-                       print '\tmovq\t(%rax), %r11'
-               else:
-                       print '\tmovq\t%u(%%rax), %%r11' % (f.offset * 8)
-
-               print '\tjmp\t*%r11'
-
-               print '#else'
-               print '\tmovq\t_glapi_Dispatch(%rip), %rax'
-               print '\ttestq\t%rax, %rax'
-               print '\tje\t1f'
-               print '\tmovq\t%u(%%rax), %%r11' % (f.offset * 8)
-               print '\tjmp\t*%r11'
-               print '1:'
-
-               save_all_regs(registers)
-               print '\tcall\t_glapi_get_dispatch'
-               restore_all_regs(registers)
-
-               print '\tmovq\t%u(%%rax), %%r11' % (f.offset * 8)
-               print '\tjmp\t*%r11'
-               print '#endif /* defined(GLX_USE_TLS) */'
-
-               print '\t.size\tGL_PREFIX(%s), .-GL_PREFIX(%s)' % (name, name)
-               print ''
-               return
-
-
-       def printBody(self, api):
-               for f in api.functionIterateByOffset():
-                       self.printFunction(f)
-
-
-               for f in api.functionIterateByOffset():
-                       dispatch = f.dispatch_name()
-                       for n in f.entry_points:
-                               if n != f.name:
-                                       if f.is_static_entry_point(n):
-                                               text = '\t.globl GL_PREFIX(%s) ; .set GL_PREFIX(%s), GL_PREFIX(%s)' % (n, n, dispatch)
-
-                                               if f.has_different_protocol(n):
-                                                       print '#ifndef GLX_INDIRECT_RENDERING'
-                                                       print text
-                                                       print '#endif'
-                                               else:
-                                                       print text
-
-               return
-
-def show_usage():
-       print "Usage: %s [-f input_file_name] [-m output_mode]" % sys.argv[0]
-       sys.exit(1)
-
-if __name__ == '__main__':
-       file_name = "gl_API.xml"
-       mode = "generic"
-
-       try:
-               (args, trail) = getopt.getopt(sys.argv[1:], "m:f:")
-       except Exception,e:
-               show_usage()
-
-       for (arg,val) in args:
-               if arg == '-m':
-                       mode = val
-               elif arg == "-f":
-                       file_name = val
-
-       if mode == "generic":
-               printer = PrintGenericStubs()
-       else:
-               print "ERROR: Invalid mode \"%s\" specified." % mode
-               show_usage()
-
-       api = gl_XML.parse_GL_API(file_name, glX_XML.glx_item_factory())
-       printer.Print(api)
diff --git a/src/mesa/glapi/gen/gl_x86_asm.py b/src/mesa/glapi/gen/gl_x86_asm.py
deleted file mode 100644 (file)
index 10dfa1d..0000000
+++ /dev/null
@@ -1,270 +0,0 @@
-#!/usr/bin/env python
-
-# (C) Copyright IBM Corporation 2004, 2005
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-
-import license
-import gl_XML, glX_XML
-import sys, getopt
-
-class PrintGenericStubs(gl_XML.gl_print_base):
-
-       def __init__(self):
-               gl_XML.gl_print_base.__init__(self)
-
-               self.name = "gl_x86_asm.py (from Mesa)"
-               self.license = license.bsd_license_template % ( \
-"""Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
-(C) Copyright IBM Corporation 2004, 2005""", "BRIAN PAUL, IBM")
-               return
-
-
-       def get_stack_size(self, f):
-               size = 0
-               for p in f.parameterIterator():
-                       if p.is_padding:
-                               continue
-
-                       size += p.get_stack_size()
-
-               return size
-
-
-       def printRealHeader(self):
-               print '#include "x86/assyntax.h"'
-               print '#include "glapi/glapioffsets.h"'
-               print ''
-               print '#if defined(STDCALL_API)'
-               print '# if defined(USE_MGL_NAMESPACE)'
-               print '#  define GL_PREFIX(n,n2) GLNAME(CONCAT(mgl,n2))'
-               print '# else'
-               print '#  define GL_PREFIX(n,n2) GLNAME(CONCAT(gl,n2))'
-               print '# endif'
-               print '#else'
-               print '# if defined(USE_MGL_NAMESPACE)'
-               print '#  define GL_PREFIX(n,n2) GLNAME(CONCAT(mgl,n))'
-               print '#  define _glapi_Dispatch _mglapi_Dispatch'
-               print '# else'
-               print '#  define GL_PREFIX(n,n2) GLNAME(CONCAT(gl,n))'
-               print '# endif'
-               print '#endif'
-               print ''
-               print '#define GL_OFFSET(x) CODEPTR(REGOFF(4 * x, EAX))'
-               print ''
-               print '#if defined(GNU_ASSEMBLER) && !defined(__DJGPP__) && !defined(__MINGW32__) && !defined(__APPLE__)'
-               print '#define GLOBL_FN(x) GLOBL x ; .type x, function'
-               print '#else'
-               print '#define GLOBL_FN(x) GLOBL x'
-               print '#endif'
-               print ''
-               print '#if defined(PTHREADS) || defined(WIN32_THREADS) || defined(BEOS_THREADS)'
-               print '#  define THREADS'
-               print '#endif'
-               print ''
-               print '#ifdef GLX_USE_TLS'
-               print ''
-               print '#ifdef GLX_X86_READONLY_TEXT'
-               print '# define CTX_INSNS MOV_L(GS:(EAX), EAX)'
-               print '#else'
-               print '# define CTX_INSNS NOP /* Pad for init_glapi_relocs() */'
-               print '#endif'
-               print ''
-               print '#  define GL_STUB(fn,off,fn_alt)\t\t\t\\'
-               print 'ALIGNTEXT16;\t\t\t\t\t\t\\'
-               print 'GLOBL_FN(GL_PREFIX(fn, fn_alt));\t\t\t\\'
-               print 'GL_PREFIX(fn, fn_alt):\t\t\t\t\t\\'
-               print '\tCALL(_x86_get_dispatch) ;\t\t\t\\'
-               print '\tCTX_INSNS ;                                    \\'
-               print '\tJMP(GL_OFFSET(off))'
-               print ''
-               print '#elif defined(PTHREADS)'
-               print '#  define GL_STUB(fn,off,fn_alt)\t\t\t\\'
-               print 'ALIGNTEXT16;\t\t\t\t\t\t\\'
-               print 'GLOBL_FN(GL_PREFIX(fn, fn_alt));\t\t\t\\'
-               print 'GL_PREFIX(fn, fn_alt):\t\t\t\t\t\\'
-               print '\tMOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX) ;\t\\'
-               print '\tTEST_L(EAX, EAX) ;\t\t\t\t\\'
-               print '\tJE(1f) ;\t\t\t\t\t\\'
-               print '\tJMP(GL_OFFSET(off)) ;\t\t\t\t\\'
-               print '1:\tCALL(_x86_get_dispatch) ;\t\t\t\\'
-               print '\tJMP(GL_OFFSET(off))'
-               print '#elif defined(THREADS)'
-               print '#  define GL_STUB(fn,off,fn_alt)\t\t\t\\'
-               print 'ALIGNTEXT16;\t\t\t\t\t\t\\'
-               print 'GLOBL_FN(GL_PREFIX(fn, fn_alt));\t\t\t\\'
-               print 'GL_PREFIX(fn, fn_alt):\t\t\t\t\t\\'
-               print '\tMOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX) ;\t\\'
-               print '\tTEST_L(EAX, EAX) ;\t\t\t\t\\'
-               print '\tJE(1f) ;\t\t\t\t\t\\'
-               print '\tJMP(GL_OFFSET(off)) ;\t\t\t\t\\'
-               print '1:\tCALL(_glapi_get_dispatch) ;\t\t\t\\'
-               print '\tJMP(GL_OFFSET(off))'
-               print '#else /* Non-threaded version. */'
-               print '#  define GL_STUB(fn,off,fn_alt)\t\t\t\\'
-               print 'ALIGNTEXT16;\t\t\t\t\t\t\\'
-               print 'GLOBL_FN(GL_PREFIX(fn, fn_alt));\t\t\t\\'
-               print 'GL_PREFIX(fn, fn_alt):\t\t\t\t\t\\'
-               print '\tMOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX) ;\t\\'
-               print '\tJMP(GL_OFFSET(off))'
-               print '#endif'
-               print ''
-               print '#ifdef HAVE_ALIAS'
-               print '#  define GL_STUB_ALIAS(fn,off,fn_alt,alias,alias_alt)\t\\'
-               print '\t.globl\tGL_PREFIX(fn, fn_alt) ;\t\t\t\\'
-               print '\t.set\tGL_PREFIX(fn, fn_alt), GL_PREFIX(alias, alias_alt)'
-               print '#else'
-               print '#  define GL_STUB_ALIAS(fn,off,fn_alt,alias,alias_alt)\t\\'
-               print '    GL_STUB(fn, off, fn_alt)'
-               print '#endif'
-               print ''
-               print 'SEG_TEXT'
-               print ''
-               print '#ifdef GLX_USE_TLS'
-               print ''
-               print '\tGLOBL\tGLNAME(_x86_get_dispatch)'
-               print '\tHIDDEN(GLNAME(_x86_get_dispatch))'
-               print 'ALIGNTEXT16'
-               print 'GLNAME(_x86_get_dispatch):'
-               print '\tcall   1f'
-               print '1:\tpopl %eax'
-               print '\taddl   $_GLOBAL_OFFSET_TABLE_+[.-1b], %eax'
-               print '\tmovl   _glapi_tls_Dispatch@GOTNTPOFF(%eax), %eax'
-               print '\tret'
-               print ''
-               print '#elif defined(PTHREADS)'
-               print 'EXTERN GLNAME(_glapi_Dispatch)'
-               print 'EXTERN GLNAME(_gl_DispatchTSD)'
-               print 'EXTERN GLNAME(pthread_getspecific)'
-               print ''
-               print 'ALIGNTEXT16'
-               print 'GLNAME(_x86_get_dispatch):'
-               print '\tSUB_L(CONST(24), ESP)'
-               print '\tPUSH_L(GLNAME(_gl_DispatchTSD))'
-               print '\tCALL(GLNAME(pthread_getspecific))'
-               print '\tADD_L(CONST(28), ESP)'
-               print '\tRET'
-               print '#elif defined(THREADS)'
-               print 'EXTERN GLNAME(_glapi_get_dispatch)'
-               print '#endif'
-               print ''
-
-               print '#if defined( GLX_USE_TLS ) && !defined( GLX_X86_READONLY_TEXT )'
-               print '\t\t.section\twtext, "awx", @progbits'
-               print '#endif /* defined( GLX_USE_TLS ) */'
-
-               print ''
-               print '\t\tALIGNTEXT16'
-               print '\t\tGLOBL GLNAME(gl_dispatch_functions_start)'
-               print '\t\tHIDDEN(GLNAME(gl_dispatch_functions_start))'
-               print 'GLNAME(gl_dispatch_functions_start):'
-               print ''
-               return
-
-
-       def printRealFooter(self):
-               print ''
-               print '\t\tGLOBL\tGLNAME(gl_dispatch_functions_end)'
-               print '\t\tHIDDEN(GLNAME(gl_dispatch_functions_end))'
-               print '\t\tALIGNTEXT16'
-               print 'GLNAME(gl_dispatch_functions_end):'
-               print ''
-               print '#if defined(GLX_USE_TLS) && defined(__linux__)'
-               print ' .section ".note.ABI-tag", "a"'
-               print ' .p2align 2'
-               print ' .long   1f - 0f   /* name length */'
-               print ' .long   3f - 2f   /* data length */'
-               print ' .long   1         /* note length */'
-               print '0:       .asciz "GNU"      /* vendor name */'
-               print '1:       .p2align 2'
-               print '2:       .long   0         /* note data: the ABI tag */'
-               print ' .long   2,4,20    /* Minimum kernel version w/TLS */'
-               print '3:       .p2align 2        /* pad out section */'
-               print '#endif /* GLX_USE_TLS */'
-               print ''
-               print '#if defined (__ELF__) && defined (__linux__)'
-               print ' .section .note.GNU-stack,"",%progbits'
-               print '#endif'
-               return
-
-
-       def printBody(self, api):
-               for f in api.functionIterateByOffset():
-                       name = f.dispatch_name()
-                       stack = self.get_stack_size(f)
-                       alt = "%s@%u" % (name, stack)
-
-                       print '\tGL_STUB(%s, _gloffset_%s, %s)' % (name, f.name, alt)
-
-                       if not f.is_static_entry_point(f.name):
-                               print '\tHIDDEN(GL_PREFIX(%s, %s))' % (name, alt)
-
-
-               for f in api.functionIterateByOffset():
-                       name = f.dispatch_name()
-                       stack = self.get_stack_size(f)
-                       alt = "%s@%u" % (name, stack)
-
-                       for n in f.entry_points:
-                               if f.is_static_entry_point(n):
-                                       if n != f.name:
-                                               alt2 = "%s@%u" % (n, stack)
-                                               text = '\tGL_STUB_ALIAS(%s, _gloffset_%s, %s, %s, %s)' % (n, f.name, alt2, name, alt)
-
-                                               if f.has_different_protocol(n):
-                                                       print '#ifndef GLX_INDIRECT_RENDERING'
-                                                       print text
-                                                       print '#endif'
-                                               else:
-                                                       print text
-
-               return
-
-def show_usage():
-       print "Usage: %s [-f input_file_name] [-m output_mode]" % sys.argv[0]
-       sys.exit(1)
-
-if __name__ == '__main__':
-       file_name = "gl_API.xml"
-       mode = "generic"
-
-       try:
-               (args, trail) = getopt.getopt(sys.argv[1:], "m:f:")
-       except Exception,e:
-               show_usage()
-
-       for (arg,val) in args:
-               if arg == '-m':
-                       mode = val
-               elif arg == "-f":
-                       file_name = val
-
-       if mode == "generic":
-               printer = PrintGenericStubs()
-       else:
-               print "ERROR: Invalid mode \"%s\" specified." % mode
-               show_usage()
-
-       api = gl_XML.parse_GL_API(file_name, glX_XML.glx_item_factory())
-       printer.Print(api)
diff --git a/src/mesa/glapi/gen/license.py b/src/mesa/glapi/gen/license.py
deleted file mode 100644 (file)
index 0218164..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-# (C) Copyright IBM Corporation 2004
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-
-bsd_license_template = """%s
-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
-%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.""" 
diff --git a/src/mesa/glapi/gen/mesadef.py b/src/mesa/glapi/gen/mesadef.py
deleted file mode 100644 (file)
index 38b0246..0000000
+++ /dev/null
@@ -1,216 +0,0 @@
-#!/usr/bin/env python
-
-
-# Mesa 3-D graphics library
-# Version:  4.1
-# 
-# Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
-# 
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# the rights to use, copy, modify, merge, publish, distribute, sublicense,
-# and/or sell copies of the Software, and to permit persons to whom the
-# Software is furnished to do so, subject to the following conditions:
-# 
-# The above copyright notice and this permission notice shall be included
-# in all copies or substantial portions of the Software.
-# 
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
-# BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
-# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
-# Generate the mesa.def file for Windows.
-#
-# Usage:
-#    mesadef.py >mesa.def
-#    Then copy to src/mesa/drivers/windows/gdi
-#
-# Dependencies:
-#    The apispec file must be in the current directory.
-
-
-
-import apiparser
-import string
-
-
-def PrintHead():
-       print '; DO NOT EDIT - This file generated automatically by mesadef.py script'
-       print 'DESCRIPTION \'Mesa (OpenGL work-alike) for Win32\''
-       print 'VERSION 6.0'
-       print ';'
-       print '; Module definition file for Mesa (OPENGL32.DLL)'
-       print ';'
-       print '; Note: The OpenGL functions use the STDCALL'
-       print '; function calling convention.  Microsoft\'s'
-       print '; OPENGL32 uses this convention and so must the'
-       print '; Mesa OPENGL32 so that the Mesa DLL can be used'
-       print '; as a drop-in replacement.'
-       print ';'
-       print '; The linker exports STDCALL entry points with'
-       print '; \'decorated\' names; e.g., _glBegin@0, where the'
-       print '; trailing number is the number of bytes of '
-       print '; parameter data pushed onto the stack.  The'
-       print '; callee is responsible for popping this data'
-       print '; off the stack, usually via a RETF n instruction.'
-       print ';'
-       print '; However, the Microsoft OPENGL32.DLL does not export'
-       print '; the decorated names, even though the calling convention'
-       print '; is STDCALL.  So, this module definition file is'
-       print '; needed to force the Mesa OPENGL32.DLL to export the'
-       print '; symbols in the same manner as the Microsoft DLL.'
-       print '; Were it not for this problem, this file would not'
-       print '; be needed (for the gl* functions) since the entry'
-       print '; points are compiled with dllexport declspec.'
-       print ';'
-       print '; However, this file is still needed to export "internal"'
-       print '; Mesa symbols for the benefit of the OSMESA32.DLL.'
-       print ';'
-       print 'EXPORTS'
-       return
-#enddef
-
-
-def PrintTail():
-       print ';'
-       print '; WGL API'
-       print '\twglChoosePixelFormat'
-       print '\twglCopyContext'
-       print '\twglCreateContext'
-       print '\twglCreateLayerContext'
-       print '\twglDeleteContext'
-       print '\twglDescribeLayerPlane'
-       print '\twglDescribePixelFormat'
-       print '\twglGetCurrentContext'
-       print '\twglGetCurrentDC'
-       print '\twglGetExtensionsStringARB'
-       print '\twglGetLayerPaletteEntries'
-       print '\twglGetPixelFormat'
-       print '\twglGetProcAddress'
-       print '\twglMakeCurrent'
-       print '\twglRealizeLayerPalette'
-       print '\twglSetLayerPaletteEntries'
-       print '\twglSetPixelFormat'
-       print '\twglShareLists'
-       print '\twglSwapBuffers'
-       print '\twglSwapLayerBuffers'
-       print '\twglUseFontBitmapsA'
-       print '\twglUseFontBitmapsW'
-       print '\twglUseFontOutlinesA'
-       print '\twglUseFontOutlinesW'
-       print ';'
-       print '; Mesa internals - mostly for OSMESA'
-       print '\t_ac_CreateContext'
-       print '\t_ac_DestroyContext'
-       print '\t_ac_InvalidateState'
-       print '\t_glapi_get_context'
-       print '\t_glapi_get_proc_address'
-       print '\t_mesa_buffer_data'
-       print '\t_mesa_buffer_map'
-       print '\t_mesa_buffer_subdata'
-       print '\t_mesa_choose_tex_format'
-       print '\t_mesa_compressed_texture_size'
-       print '\t_mesa_create_framebuffer'
-       print '\t_mesa_create_visual'
-       print '\t_mesa_delete_buffer_object'
-       print '\t_mesa_delete_texture_object'
-       print '\t_mesa_destroy_framebuffer'
-       print '\t_mesa_destroy_visual'
-       print '\t_mesa_enable_1_3_extensions'
-       print '\t_mesa_enable_1_4_extensions'
-       print '\t_mesa_enable_1_5_extensions'
-       print '\t_mesa_enable_sw_extensions'
-       print '\t_mesa_error'
-       print '\t_mesa_free_context_data'
-       print '\t_mesa_get_current_context'
-       print '\t_mesa_init_default_imports'
-       print '\t_mesa_initialize_context'
-       print '\t_mesa_make_current'
-       print '\t_mesa_new_buffer_object'
-       print '\t_mesa_new_texture_object'
-       print '\t_mesa_problem'
-       print '\t_mesa_ResizeBuffersMESA'
-       print '\t_mesa_store_compressed_teximage1d'
-       print '\t_mesa_store_compressed_teximage2d'
-       print '\t_mesa_store_compressed_teximage3d'
-       print '\t_mesa_store_compressed_texsubimage1d'
-       print '\t_mesa_store_compressed_texsubimage2d'
-       print '\t_mesa_store_compressed_texsubimage3d'
-       print '\t_mesa_store_teximage1d'
-       print '\t_mesa_store_teximage2d'
-       print '\t_mesa_store_teximage3d'
-       print '\t_mesa_store_texsubimage1d'
-       print '\t_mesa_store_texsubimage2d'
-       print '\t_mesa_store_texsubimage3d'
-       print '\t_mesa_test_proxy_teximage'
-       print '\t_mesa_Viewport'
-       print '\t_mesa_meta_CopyColorSubTable'
-       print '\t_mesa_meta_CopyColorTable'
-       print '\t_mesa_meta_CopyConvolutionFilter1D'
-       print '\t_mesa_meta_CopyConvolutionFilter2D'
-       print '\t_mesa_meta_CopyTexImage1D'
-       print '\t_mesa_meta_CopyTexImage2D'
-       print '\t_mesa_meta_CopyTexSubImage1D'
-       print '\t_mesa_meta_CopyTexSubImage2D'
-       print '\t_mesa_meta_CopyTexSubImage3D'
-       print '\t_swrast_Accum'
-       print '\t_swrast_alloc_buffers'
-       print '\t_swrast_Bitmap'
-       print '\t_swrast_CopyPixels'
-       print '\t_swrast_DrawPixels'
-       print '\t_swrast_GetDeviceDriverReference'
-       print '\t_swrast_Clear'
-       print '\t_swrast_choose_line'
-       print '\t_swrast_choose_triangle'
-       print '\t_swrast_CreateContext'
-       print '\t_swrast_DestroyContext'
-       print '\t_swrast_InvalidateState'
-       print '\t_swrast_ReadPixels'
-       print '\t_swrast_zbuffer_address'
-       print '\t_swsetup_Wakeup'
-       print '\t_swsetup_CreateContext'
-       print '\t_swsetup_DestroyContext'
-       print '\t_swsetup_InvalidateState'
-       print '\t_tnl_CreateContext'
-       print '\t_tnl_DestroyContext'
-       print '\t_tnl_InvalidateState'
-       print '\t_tnl_MakeCurrent'
-       print '\t_tnl_run_pipeline'
-#enddef
-
-
-records = []
-
-def FindOffset(funcName):
-       for (name, alias, offset) in records:
-               if name == funcName:
-                       return offset
-               #endif
-       #endfor
-       return -1
-#enddef
-
-
-def EmitEntry(name, returnType, argTypeList, argNameList, alias, offset):
-       if alias == '':
-               dispatchName = name
-       else:
-               dispatchName = alias
-       if offset < 0:
-               offset = FindOffset(dispatchName)
-       if offset >= 0 and string.find(name, "unused") == -1:
-               print '\tgl%s' % (name)
-               # save this info in case we need to look up an alias later
-               records.append((name, dispatchName, offset))
-
-#enddef
-
-
-PrintHead()
-apiparser.ProcessSpecFile("APIspec", EmitEntry)
-PrintTail()
diff --git a/src/mesa/glapi/gen/next_available_offset.sh b/src/mesa/glapi/gen/next_available_offset.sh
deleted file mode 100755 (executable)
index e7d6c2f..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/usr/bin/env bash
-#
-# (C) Copyright IBM Corporation 2004
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-
-# Trivial shell script to search the API definition file and print out the
-# next numerically available API entry-point offset.  This could probably
-# be made smarter, but it would be better to use the existin Python
-# framework to do that.  This is just a quick-and-dirty hack.
-
-num=$(grep 'offset="' gl_API.xml |\
-    sed 's/.\+ offset="//g;s/".*$//g' |\
-    grep -v '?' |\
-    sort -rn |\
-    head -1)
-    
-echo $((num + 1))
diff --git a/src/mesa/glapi/gen/remap_helper.py b/src/mesa/glapi/gen/remap_helper.py
deleted file mode 100644 (file)
index 69b8e5e..0000000
+++ /dev/null
@@ -1,218 +0,0 @@
-#!/usr/bin/env python
-
-# Copyright (C) 2009 Chia-I Wu <olv@0xlab.org>
-# All Rights Reserved.
-#
-# This is based on extension_helper.py by Ian Romanick.
-#
-# 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
-# IBM 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 gl_XML
-import license
-import sys, getopt, string
-
-def get_function_spec(func):
-       sig = ""
-       # derive parameter signature
-       for p in func.parameterIterator():
-               if p.is_padding:
-                       continue
-               # FIXME: This is a *really* ugly hack. :(
-               tn = p.type_expr.get_base_type_node()
-               if p.is_pointer():
-                       sig += 'p'
-               elif tn.integer:
-                       sig += 'i'
-               elif tn.size == 4:
-                       sig += 'f'
-               else:
-                       sig += 'd'
-
-       spec = [sig]
-       for ent in func.entry_points:
-               spec.append("gl" + ent)
-
-       # spec is terminated by an empty string
-       spec.append('')
-
-       return spec
-
-class PrintGlRemap(gl_XML.gl_print_base):
-       def __init__(self):
-               gl_XML.gl_print_base.__init__(self)
-
-               self.name = "remap_helper.py (from Mesa)"
-               self.license = license.bsd_license_template % ("Copyright (C) 2009 Chia-I Wu <olv@0xlab.org>", "Chia-I Wu")
-               return
-
-
-       def printRealHeader(self):
-               print '#include "main/dispatch.h"'
-               print '#include "main/remap.h"'
-               print ''
-               return
-
-
-       def printBody(self, api):
-               pool_indices = {}
-
-               print '/* this is internal to remap.c */'
-               print '#ifdef need_MESA_remap_table'
-               print ''
-               print 'static const char _mesa_function_pool[] ='
-
-               # output string pool
-               index = 0;
-               for f in api.functionIterateAll():
-                       pool_indices[f] = index
-
-                       spec = get_function_spec(f)
-
-                       # a function has either assigned offset, fixed offset,
-                       # or no offset
-                       if f.assign_offset:
-                               comments = "will be remapped"
-                       elif f.offset > 0:
-                               comments = "offset %d" % f.offset
-                       else:
-                               comments = "dynamic"
-
-                       print '   /* _mesa_function_pool[%d]: %s (%s) */' \
-                                       % (index, f.name, comments)
-                       for line in spec:
-                               print '   "%s\\0"' % line
-                               index += len(line) + 1
-               print '   ;'
-               print ''
-
-               print '/* these functions need to be remapped */'
-               print 'static const struct gl_function_pool_remap MESA_remap_table_functions[] = {'
-               # output all functions that need to be remapped
-               # iterate by offsets so that they are sorted by remap indices
-               for f in api.functionIterateByOffset():
-                       if not f.assign_offset:
-                               continue
-                       print '   { %5d, %s_remap_index },' \
-                                       % (pool_indices[f], f.name)
-               print '   {    -1, -1 }'
-               print '};'
-               print ''
-
-               # collect functions by versions/extensions
-               extension_functions = {}
-               abi_extensions = []
-               for f in api.functionIterateAll():
-                       for n in f.entry_points:
-                               category, num = api.get_category_for_name(n)
-                               # consider only GL_VERSION_X_Y or extensions
-                               c = gl_XML.real_category_name(category)
-                               if c.startswith("GL_"):
-                                       if not extension_functions.has_key(c):
-                                               extension_functions[c] = []
-                                       extension_functions[c].append(f)
-                                       # remember the ext names of the ABI
-                                       if (f.is_abi() and n == f.name and
-                                               c not in abi_extensions):
-                                               abi_extensions.append(c)
-               # ignore the ABI itself
-               for ext in abi_extensions:
-                       extension_functions.pop(ext)
-
-               extensions = extension_functions.keys()
-               extensions.sort()
-
-               # output ABI functions that have alternative names (with ext suffix)
-               print '/* these functions are in the ABI, but have alternative names */'
-               print 'static const struct gl_function_remap MESA_alt_functions[] = {'
-               for ext in extensions:
-                       funcs = []
-                       for f in extension_functions[ext]:
-                               # test if the function is in the ABI and has alt names
-                               if f.is_abi() and len(f.entry_points) > 1:
-                                       funcs.append(f)
-                       if not funcs:
-                               continue
-                       print '   /* from %s */' % ext
-                       for f in funcs:
-                               print '   { %5d, _gloffset_%s },' \
-                                               % (pool_indices[f], f.name)
-               print '   {    -1, -1 }'
-               print '};'
-               print ''
-
-               print '#endif /* need_MESA_remap_table */'
-               print ''
-
-               # output remap helpers for DRI drivers
-
-               for ext in extensions:
-                       funcs = []
-                       remapped = []
-                       for f in extension_functions[ext]:
-                               if f.assign_offset:
-                                       # these are handled above
-                                       remapped.append(f)
-                               else:
-                                       # these functions are either in the
-                                       # abi, or have offset -1
-                                       funcs.append(f)
-
-                       print '#if defined(need_%s)' % (ext)
-                       if remapped:
-                               print '/* functions defined in MESA_remap_table_functions are excluded */'
-
-                       # output extension functions that need to be mapped
-                       print 'static const struct gl_function_remap %s_functions[] = {' % (ext)
-                       for f in funcs:
-                               if f.offset >= 0:
-                                       print '   { %5d, _gloffset_%s },' \
-                                                       % (pool_indices[f], f.name)
-                               else:
-                                       print '   { %5d, -1 }, /* %s */' % \
-                                                       (pool_indices[f], f.name)
-                       print '   {    -1, -1 }'
-                       print '};'
-
-                       print '#endif'
-                       print ''
-
-               return
-
-
-def show_usage():
-       print "Usage: %s [-f input_file_name]" % sys.argv[0]
-       sys.exit(1)
-
-if __name__ == '__main__':
-       file_name = "gl_API.xml"
-
-       try:
-               (args, trail) = getopt.getopt(sys.argv[1:], "f:")
-       except Exception,e:
-               show_usage()
-
-       for (arg,val) in args:
-               if arg == "-f":
-                       file_name = val
-
-       api = gl_XML.parse_GL_API( file_name )
-
-       printer = PrintGlRemap()
-       printer.Print( api )
diff --git a/src/mesa/glapi/gen/typeexpr.py b/src/mesa/glapi/gen/typeexpr.py
deleted file mode 100644 (file)
index 8ba7de4..0000000
+++ /dev/null
@@ -1,292 +0,0 @@
-#!/usr/bin/env python
-
-# (C) Copyright IBM Corporation 2005
-# All Rights Reserved.
-#
-# Permission is hereby granted, free of charge, to any person obtaining a
-# copy of this software and associated documentation files (the "Software"),
-# to deal in the Software without restriction, including without limitation
-# on the rights to use, copy, modify, merge, publish, distribute, sub
-# license, and/or sell copies of the Software, and to permit persons to whom
-# the Software is furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice (including the next
-# paragraph) shall be included in all copies or substantial portions of the
-# Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
-# IBM 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.
-#
-# Authors:
-#    Ian Romanick <idr@us.ibm.com>
-
-import string, copy
-
-class type_node:
-       def __init__(self):
-               self.pointer = 0  # bool
-               self.const = 0    # bool
-               self.signed = 1   # bool
-               self.integer = 1  # bool
-
-               # If elements is set to non-zero, then field is an array.
-               self.elements = 0
-
-               self.name = None
-               self.size = 0     # type's size in bytes
-               return
-
-
-       def string(self):
-               """Return string representation of this type_node."""
-               s = ""
-               
-               if self.pointer:
-                       s = "* "
-
-               if self.const:
-                       s += "const "
-
-               if not self.pointer:
-                       if self.integer:
-                               if self.signed:
-                                       s += "signed "
-                               else:
-                                       s += "unsigned "
-
-                       if self.name:
-                               s += "%s " % (self.name)
-
-               return s
-
-
-class type_table:
-       def __init__(self):
-               self.types_by_name = {}
-               return
-
-
-       def add_type(self, type_expr):
-               self.types_by_name[ type_expr.get_base_name() ] = type_expr
-               return
-
-
-       def find_type(self, name):
-               if name in self.types_by_name:
-                       return self.types_by_name[ name ]
-               else:
-                       return None
-
-
-def create_initial_types():
-       tt = type_table()
-
-       basic_types = [
-               ("char",   1, 1),
-               ("short",  2, 1),
-               ("int",    4, 1),
-               ("long",   4, 1),
-               ("float",  4, 0),
-               ("double", 8, 0),
-               ("enum",   4, 1)
-       ]
-
-       for (type_name, type_size, integer) in basic_types:
-               te = type_expression(None)
-               tn = type_node()
-               tn.name = type_name
-               tn.size = type_size
-               tn.integer = integer
-               te.expr.append(tn)
-               tt.add_type( te )
-
-       type_expression.built_in_types = tt
-       return
-
-
-class type_expression:
-       built_in_types = None
-
-       def __init__(self, type_string, extra_types = None):
-               self.expr = []
-
-               if not type_string:
-                       return
-
-               self.original_string = type_string
-
-               if not type_expression.built_in_types:
-                       raise RuntimeError("create_initial_types must be called before creating type_expression objects.")
-
-               # Replace '*' with ' * ' in type_string.  Then, split the string
-               # into tokens, separated by spaces.
-               tokens = string.split( string.replace( type_string, "*", " * " ) )
-
-               const = 0
-               t = None
-               signed = 0
-               unsigned = 0
-
-               for i in tokens:
-                       if i == "const":
-                               if t and t.pointer:
-                                       t.const = 1
-                               else:
-                                       const = 1
-                       elif i == "signed":
-                               signed = 1
-                       elif i == "unsigned":
-                               unsigned = 1
-                       elif i == "*":
-                               # This is a quirky special-case because of the
-                               # way the C works for types.  If 'unsigned' is
-                               # specified all by itself, it is treated the
-                               # same as "unsigned int".
-
-                               if unsigned:
-                                       self.set_base_type( "int", signed, unsigned, const, extra_types )
-                                       const = 0
-                                       signed = 0
-                                       unsigned = 0
-
-                               if not self.expr:
-                                       raise RuntimeError("Invalid type expression (dangling pointer)")
-
-                               if signed:
-                                       raise RuntimeError("Invalid type expression (signed / unsigned applied to pointer)")
-
-                               t = type_node()
-                               t.pointer = 1
-                               self.expr.append( t )
-                       else:
-                               if self.expr:
-                                       raise RuntimeError('Invalid type expression (garbage after pointer qualifier -> "%s")' % (self.original_string))
-
-                               self.set_base_type( i, signed, unsigned, const, extra_types )
-                               const = 0
-                               signed = 0
-                               unsigned = 0
-
-                       if signed and unsigned:
-                               raise RuntimeError("Invalid type expression (both signed and unsigned specified)")
-                               
-
-               if const:
-                       raise RuntimeError("Invalid type expression (dangling const)")
-
-               if unsigned:
-                       raise RuntimeError("Invalid type expression (dangling signed)")
-
-               if signed:
-                       raise RuntimeError("Invalid type expression (dangling unsigned)")
-
-               return
-
-
-       def set_base_type(self, type_name, signed, unsigned, const, extra_types):
-               te = type_expression.built_in_types.find_type( type_name )
-               if not te:
-                       te = extra_types.find_type( type_name )
-
-               if not te:
-                       raise RuntimeError('Unknown base type "%s".' % (type_name))
-
-               self.expr = copy.deepcopy(te.expr)
-
-               t = self.expr[ len(self.expr) - 1 ]
-               t.const = const
-               if signed:
-                       t.signed = 1
-               elif unsigned:
-                       t.signed = 0
-
-
-       def set_base_type_node(self, tn):
-               self.expr = [tn]
-               return
-
-
-       def set_elements(self, count):
-               tn = self.expr[0]
-
-               tn.elements = count
-               return
-
-
-       def string(self):
-               s = ""
-               for t in self.expr:
-                       s += t.string()
-
-               return s
-
-
-       def get_base_type_node(self):
-               return self.expr[0]
-
-
-       def get_base_name(self):
-               if len(self.expr):
-                       return self.expr[0].name
-               else:
-                       return None
-
-
-       def get_element_size(self):
-               tn = self.expr[0]
-
-               if tn.elements:
-                       return tn.elements * tn.size
-               else:
-                       return tn.size
-
-
-       def get_element_count(self):
-               tn = self.expr[0]
-               return tn.elements
-
-
-       def get_stack_size(self):
-               tn = self.expr[ len(self.expr) - 1 ]
-
-               if tn.elements or tn.pointer:
-                       return 4
-               elif not tn.integer:
-                       return tn.size
-               else:
-                       return 4
-
-
-       def is_pointer(self):
-               tn = self.expr[ len(self.expr) - 1 ]
-               return tn.pointer
-
-
-       def format_string(self):
-               tn = self.expr[ len(self.expr) - 1 ]
-               if tn.pointer:
-                       return "%p"
-               elif not tn.integer:
-                       return "%f"
-               else:
-                       return "%d"
-
-
-
-if __name__ == '__main__':
-       
-       types_to_try = [ "int", "int *", "const int *", "int * const", "const int * const", \
-                        "unsigned * const *", \
-                        "float", "const double", "double * const"]
-
-       create_initial_types()
-
-       for t in types_to_try:
-               print 'Trying "%s"...' % (t)
-               te = type_expression( t )
-               print 'Got "%s" (%u, %u).' % (te.string(), te.get_stack_size(), te.get_element_size())
diff --git a/src/mesa/glapi/glapi.c b/src/mesa/glapi/glapi.c
deleted file mode 100644 (file)
index ce85cf6..0000000
+++ /dev/null
@@ -1,293 +0,0 @@
-/*
- * Mesa 3-D graphics library
- * Version:  7.1
- *
- * Copyright (C) 1999-2008  Brian Paul   All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-/*
- * This file manages the OpenGL API dispatch layer.
- * The dispatch table (struct _glapi_table) is basically just a list
- * of function pointers.
- * There are functions to set/get the current dispatch table for the
- * current thread and to manage registration/dispatch of dynamically
- * added extension functions.
- *
- * It's intended that this file and the other glapi*.[ch] files are
- * flexible enough to be reused in several places:  XFree86, DRI-
- * based libGL.so, and perhaps the SGI SI.
- *
- * NOTE: There are no dependencies on Mesa in this code.
- *
- * Versions (API changes):
- *   2000/02/23  - original version for Mesa 3.3 and XFree86 4.0
- *   2001/01/16  - added dispatch override feature for Mesa 3.5
- *   2002/06/28  - added _glapi_set_warning_func(), Mesa 4.1.
- *   2002/10/01  - _glapi_get_proc_address() will now generate new entrypoints
- *                 itself (using offset ~0).  _glapi_add_entrypoint() can be
- *                 called afterward and it'll fill in the correct dispatch
- *                 offset.  This allows DRI libGL to avoid probing for DRI
- *                 drivers!  No changes to the public glapi interface.
- */
-
-
-
-#ifdef HAVE_DIX_CONFIG_H
-#include <dix-config.h>
-#include "glapi/mesa.h"
-#else
-#include "main/glheader.h"
-#include "main/compiler.h"
-#endif
-
-#include "glapi/glapi.h"
-#include "glapi/glapi_priv.h"
-
-extern _glapi_proc __glapi_noop_table[];
-
-
-/**
- * \name Current dispatch and current context control variables
- *
- * Depending on whether or not multithreading is support, and the type of
- * support available, several variables are used to store the current context
- * pointer and the current dispatch table pointer.  In the non-threaded case,
- * the variables \c _glapi_Dispatch and \c _glapi_Context are used for this
- * purpose.
- *
- * In the "normal" threaded case, the variables \c _glapi_Dispatch and
- * \c _glapi_Context will be \c NULL if an application is detected as being
- * multithreaded.  Single-threaded applications will use \c _glapi_Dispatch
- * and \c _glapi_Context just like the case without any threading support.
- * When \c _glapi_Dispatch and \c _glapi_Context are \c NULL, the thread state
- * data \c _gl_DispatchTSD and \c ContextTSD are used.  Drivers and the
- * static dispatch functions access these variables via \c _glapi_get_dispatch
- * and \c _glapi_get_context.
- *
- * There is a race condition in setting \c _glapi_Dispatch to \c NULL.  It is
- * possible for the original thread to be setting it at the same instant a new
- * thread, perhaps running on a different processor, is clearing it.  Because
- * of that, \c ThreadSafe, which can only ever be changed to \c GL_TRUE, is
- * used to determine whether or not the application is multithreaded.
- * 
- * In the TLS case, the variables \c _glapi_Dispatch and \c _glapi_Context are
- * hardcoded to \c NULL.  Instead the TLS variables \c _glapi_tls_Dispatch and
- * \c _glapi_tls_Context are used.  Having \c _glapi_Dispatch and
- * \c _glapi_Context be hardcoded to \c NULL maintains binary compatability
- * between TLS enabled loaders and non-TLS DRI drivers.
- */
-/*@{*/
-#if defined(GLX_USE_TLS)
-
-PUBLIC __thread struct _glapi_table * _glapi_tls_Dispatch
-    __attribute__((tls_model("initial-exec")))
-    = (struct _glapi_table *) __glapi_noop_table;
-
-PUBLIC __thread void * _glapi_tls_Context
-    __attribute__((tls_model("initial-exec")));
-
-PUBLIC const struct _glapi_table *_glapi_Dispatch = NULL;
-
-PUBLIC const void *_glapi_Context = NULL;
-
-#else
-
-#if defined(THREADS)
-
-static GLboolean ThreadSafe = GL_FALSE;  /**< In thread-safe mode? */
-
-_glthread_TSD _gl_DispatchTSD;           /**< Per-thread dispatch pointer */
-
-static _glthread_TSD ContextTSD;         /**< Per-thread context pointer */
-
-#endif /* defined(THREADS) */
-
-PUBLIC struct _glapi_table *_glapi_Dispatch = (struct _glapi_table *) __glapi_noop_table;
-
-PUBLIC void *_glapi_Context = NULL;
-
-#endif /* defined(GLX_USE_TLS) */
-/*@}*/
-
-
-
-#if defined(THREADS) && !defined(GLX_USE_TLS)
-
-void
-_glapi_init_multithread(void)
-{
-   _glthread_InitTSD(&_gl_DispatchTSD);
-   _glthread_InitTSD(&ContextTSD);
-}
-
-void
-_glapi_destroy_multithread(void)
-{
-#ifdef WIN32_THREADS
-   _glthread_DestroyTSD(&_gl_DispatchTSD);
-   _glthread_DestroyTSD(&ContextTSD);
-#endif
-}
-
-/**
- * Mutex for multithread check.
- */
-#ifdef WIN32_THREADS
-/* _glthread_DECLARE_STATIC_MUTEX is broken on windows.  There will be race! */
-#define CHECK_MULTITHREAD_LOCK()
-#define CHECK_MULTITHREAD_UNLOCK()
-#else
-_glthread_DECLARE_STATIC_MUTEX(ThreadCheckMutex);
-#define CHECK_MULTITHREAD_LOCK() _glthread_LOCK_MUTEX(ThreadCheckMutex)
-#define CHECK_MULTITHREAD_UNLOCK() _glthread_UNLOCK_MUTEX(ThreadCheckMutex)
-#endif
-
-/**
- * We should call this periodically from a function such as glXMakeCurrent
- * in order to test if multiple threads are being used.
- */
-PUBLIC void
-_glapi_check_multithread(void)
-{
-   static unsigned long knownID;
-   static GLboolean firstCall = GL_TRUE;
-
-   if (ThreadSafe)
-      return;
-
-   CHECK_MULTITHREAD_LOCK();
-   if (firstCall) {
-      _glapi_init_multithread();
-
-      knownID = _glthread_GetID();
-      firstCall = GL_FALSE;
-   }
-   else if (knownID != _glthread_GetID()) {
-      ThreadSafe = GL_TRUE;
-      _glapi_set_dispatch(NULL);
-      _glapi_set_context(NULL);
-   }
-   CHECK_MULTITHREAD_UNLOCK();
-}
-
-#else
-
-void
-_glapi_init_multithread(void) { }
-
-void
-_glapi_destroy_multithread(void) { }
-
-PUBLIC void
-_glapi_check_multithread(void) { }
-
-#endif
-
-
-
-/**
- * Set the current context pointer for this thread.
- * The context pointer is an opaque type which should be cast to
- * void from the real context pointer type.
- */
-PUBLIC void
-_glapi_set_context(void *context)
-{
-#if defined(GLX_USE_TLS)
-   _glapi_tls_Context = context;
-#elif defined(THREADS)
-   _glthread_SetTSD(&ContextTSD, context);
-   _glapi_Context = (ThreadSafe) ? NULL : context;
-#else
-   _glapi_Context = context;
-#endif
-}
-
-
-
-/**
- * Get the current context pointer for this thread.
- * The context pointer is an opaque type which should be cast from
- * void to the real context pointer type.
- */
-PUBLIC void *
-_glapi_get_context(void)
-{
-#if defined(GLX_USE_TLS)
-   return _glapi_tls_Context;
-#elif defined(THREADS)
-   return (ThreadSafe) ? _glthread_GetTSD(&ContextTSD) : _glapi_Context;
-#else
-   return _glapi_Context;
-#endif
-}
-
-
-
-/**
- * Set the global or per-thread dispatch table pointer.
- * If the dispatch parameter is NULL we'll plug in the no-op dispatch
- * table (__glapi_noop_table).
- */
-PUBLIC void
-_glapi_set_dispatch(struct _glapi_table *dispatch)
-{
-   init_glapi_relocs_once();
-
-   if (dispatch == NULL) {
-      /* use the no-op functions */
-      dispatch = (struct _glapi_table *) __glapi_noop_table;
-   }
-#ifdef DEBUG
-   else {
-      _glapi_check_table_not_null(dispatch);
-      _glapi_check_table(dispatch);
-   }
-#endif
-
-#if defined(GLX_USE_TLS)
-   _glapi_tls_Dispatch = dispatch;
-#elif defined(THREADS)
-   _glthread_SetTSD(&_gl_DispatchTSD, (void *) dispatch);
-   _glapi_Dispatch = (ThreadSafe) ? NULL : dispatch;
-#else
-   _glapi_Dispatch = dispatch;
-#endif
-}
-
-
-
-/**
- * Return pointer to current dispatch table for calling thread.
- */
-PUBLIC struct _glapi_table *
-_glapi_get_dispatch(void)
-{
-#if defined(GLX_USE_TLS)
-   return _glapi_tls_Dispatch;
-#elif defined(THREADS)
-   return (ThreadSafe)
-     ? (struct _glapi_table *) _glthread_GetTSD(&_gl_DispatchTSD)
-     : _glapi_Dispatch;
-#else
-   return _glapi_Dispatch;
-#endif
-}
diff --git a/src/mesa/glapi/glapi.h b/src/mesa/glapi/glapi.h
deleted file mode 100644 (file)
index 7dcf2e8..0000000
+++ /dev/null
@@ -1,172 +0,0 @@
-/*
- * Mesa 3-D graphics library
- * Version:  7.1
- *
- * Copyright (C) 1999-2008  Brian Paul   All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-/**
- * \mainpage Mesa GL API Module
- *
- * \section GLAPIIntroduction Introduction
- *
- * The Mesa GL API module is responsible for dispatching all the
- * gl*() functions.  All GL functions are dispatched by jumping through
- * the current dispatch table (basically a struct full of function
- * pointers.)
- *
- * A per-thread current dispatch table and per-thread current context
- * pointer are managed by this module too.
- *
- * This module is intended to be non-Mesa-specific so it can be used
- * with the X/DRI libGL also.
- */
-
-
-#ifndef _GLAPI_H
-#define _GLAPI_H
-
-#include "glthread.h"
-
-
-struct _glapi_table;
-
-typedef void (*_glapi_proc)(void); /* generic function pointer */
-
-
-#if defined(USE_MGL_NAMESPACE)
-#define _glapi_set_dispatch _mglapi_set_dispatch
-#define _glapi_get_dispatch _mglapi_get_dispatch
-#define _glapi_set_context _mglapi_set_context
-#define _glapi_get_context _mglapi_get_context
-#define _glapi_Dispatch _mglapi_Dispatch
-#define _glapi_Context _mglapi_Context
-#endif
-
-
-#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
-
-
-/**
- ** Define the GET_DISPATCH() and GET_CURRENT_CONTEXT() macros.
- **
- ** \param C local variable which will hold the current context.
- **/
-#if defined (GLX_USE_TLS)
-
-extern const struct _glapi_table *_glapi_Dispatch;
-
-extern const void *_glapi_Context;
-
-extern __thread struct _glapi_table * _glapi_tls_Dispatch
-    __attribute__((tls_model("initial-exec")));
-
-extern __thread void * _glapi_tls_Context
-    __attribute__((tls_model("initial-exec")));
-
-# define GET_DISPATCH() _glapi_tls_Dispatch
-
-# define GET_CURRENT_CONTEXT(C)  GLcontext *C = (GLcontext *) _glapi_tls_Context
-
-#else
-
-extern struct _glapi_table *_glapi_Dispatch;
-
-extern void *_glapi_Context;
-
-# ifdef THREADS
-
-#  define GET_DISPATCH() \
-     (likely(_glapi_Dispatch) ? _glapi_Dispatch : _glapi_get_dispatch())
-
-#  define GET_CURRENT_CONTEXT(C)  GLcontext *C = (GLcontext *) \
-     (likely(_glapi_Context) ? _glapi_Context : _glapi_get_context())
-
-# else
-
-#  define GET_DISPATCH() _glapi_Dispatch
-
-#  define GET_CURRENT_CONTEXT(C)  GLcontext *C = (GLcontext *) _glapi_Context
-
-# endif
-
-#endif /* defined (GLX_USE_TLS) */
-
-
-/**
- ** GL API public functions
- **/
-
-extern void
-_glapi_init_multithread(void);
-
-
-extern void
-_glapi_destroy_multithread(void);
-
-
-extern void
-_glapi_check_multithread(void);
-
-
-extern void
-_glapi_set_context(void *context);
-
-
-extern void *
-_glapi_get_context(void);
-
-
-extern void
-_glapi_set_dispatch(struct _glapi_table *dispatch);
-
-
-extern struct _glapi_table *
-_glapi_get_dispatch(void);
-
-
-extern unsigned int
-_glapi_get_dispatch_table_size(void);
-
-
-extern int
-_glapi_add_dispatch( const char * const * function_names,
-                    const char * parameter_signature );
-
-extern int
-_glapi_get_proc_offset(const char *funcName);
-
-
-extern _glapi_proc
-_glapi_get_proc_address(const char *funcName);
-
-
-extern const char *
-_glapi_get_proc_name(unsigned int offset);
-
-
-#endif
diff --git a/src/mesa/glapi/glapi_dispatch.c b/src/mesa/glapi/glapi_dispatch.c
deleted file mode 100644 (file)
index ae59140..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * Mesa 3-D graphics library
- * Version:  6.3
- *
- * Copyright (C) 1999-2004  Brian Paul   All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-/**
- * \file glapi_dispatch.c
- *
- * This file generates all the gl* function entrypoints.  This code is not
- * used if optimized assembly stubs are available (e.g., using
- * glapi/glapi_x86.S on IA32 or glapi/glapi_sparc.S on SPARC).
- *
- * \note
- * This file is also used to build the client-side libGL that loads DRI-based
- * device drivers.  At build-time it is symlinked to src/glx.
- *
- * \author Brian Paul <brian@precisioninsight.com>
- */
-
-#ifdef HAVE_DIX_CONFIG_H
-#include <dix-config.h>
-#include "glapi/mesa.h"
-#else
-#include "main/glheader.h"
-#include "main/compiler.h"
-#endif
-
-#include "glapi/glapi.h"
-#include "glapi/glapitable.h"
-#include "glapi/glapidispatch.h"
-#include "glapi/glthread.h"
-
-
-#if !(defined(USE_X86_ASM) || defined(USE_X86_64_ASM) || defined(USE_SPARC_ASM))
-
-#if defined(WIN32)
-#define KEYWORD1 GLAPI
-#else
-#define KEYWORD1 PUBLIC
-#endif
-
-#define KEYWORD2 GLAPIENTRY
-
-#if defined(USE_MGL_NAMESPACE)
-#define NAME(func)  mgl##func
-#else
-#define NAME(func)  gl##func
-#endif
-
-#if 0  /* Use this to log GL calls to stdout (for DEBUG only!) */
-
-#define F stdout
-#define DISPATCH(FUNC, ARGS, MESSAGE)          \
-   fprintf MESSAGE;                            \
-   CALL_ ## FUNC(GET_DISPATCH(), ARGS);
-
-#define RETURN_DISPATCH(FUNC, ARGS, MESSAGE)   \
-   fprintf MESSAGE;                            \
-   return CALL_ ## FUNC(GET_DISPATCH(), ARGS);
-
-#else
-
-#define DISPATCH(FUNC, ARGS, MESSAGE)          \
-   CALL_ ## FUNC(GET_DISPATCH(), ARGS);
-
-#define RETURN_DISPATCH(FUNC, ARGS, MESSAGE)   \
-   return CALL_ ## FUNC(GET_DISPATCH(), ARGS);
-
-#endif /* logging */
-
-
-#ifndef GLAPIENTRY
-#define GLAPIENTRY
-#endif
-
-#ifdef GLX_INDIRECT_RENDERING
-/* those link to libglapi.a should provide the entry points */
-#define _GLAPI_SKIP_PROTO_ENTRY_POINTS
-#endif
-#include "glapi/glapitemp.h"
-
-#endif /* USE_X86_ASM */
diff --git a/src/mesa/glapi/glapi_entrypoint.c b/src/mesa/glapi/glapi_entrypoint.c
deleted file mode 100644 (file)
index 239780e..0000000
+++ /dev/null
@@ -1,352 +0,0 @@
-/*
- * Mesa 3-D graphics library
- * Version:  7.1
- *
- * Copyright (C) 1999-2008  Brian Paul   All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-/**
- * \file glapi_entrypoint.c
- *
- * Arch-specific code for manipulating GL API entrypoints (dispatch stubs).
- */
-
-
-#ifdef HAVE_DIX_CONFIG_H
-#include <dix-config.h>
-#include "glapi/mesa.h"
-#else
-#include "main/glheader.h"
-#include "main/compiler.h"
-#endif
-
-#include "glapi/glapi.h"
-#include "glapi/glapi_priv.h"
-
-
-#ifdef USE_X86_ASM
-
-#if defined( GLX_USE_TLS )
-extern       GLubyte gl_dispatch_functions_start[];
-extern       GLubyte gl_dispatch_functions_end[];
-#else
-extern const GLubyte gl_dispatch_functions_start[];
-#endif
-
-#endif /* USE_X86_ASM */
-
-
-#if defined(DISPATCH_FUNCTION_SIZE)
-
-_glapi_proc
-get_entrypoint_address(unsigned int functionOffset)
-{
-   return (_glapi_proc) (gl_dispatch_functions_start
-                         + (DISPATCH_FUNCTION_SIZE * functionOffset));
-}
-
-#endif
-
-
-#if defined(USE_X86_ASM)
-
-/**
- * Perform platform-specific GL API entry-point fixups.
- */
-static void
-init_glapi_relocs( void )
-{
-#if defined(GLX_USE_TLS) && !defined(GLX_X86_READONLY_TEXT)
-    extern unsigned long _x86_get_dispatch(void);
-    char run_time_patch[] = {
-       0x65, 0xa1, 0, 0, 0, 0 /* movl %gs:0,%eax */
-    };
-    GLuint *offset = (GLuint *) &run_time_patch[2]; /* 32-bits for x86/32 */
-    const GLubyte * const get_disp = (const GLubyte *) run_time_patch;
-    GLubyte * curr_func = (GLubyte *) gl_dispatch_functions_start;
-
-    *offset = _x86_get_dispatch();
-    while ( curr_func != (GLubyte *) gl_dispatch_functions_end ) {
-       (void) memcpy( curr_func, get_disp, sizeof(run_time_patch));
-       curr_func += DISPATCH_FUNCTION_SIZE;
-    }
-#endif
-}
-
-
-/**
- * Generate a dispatch function (entrypoint) which jumps through
- * the given slot number (offset) in the current dispatch table.
- * We need assembly language in order to accomplish this.
- */
-_glapi_proc
-generate_entrypoint(unsigned int functionOffset)
-{
-   /* 32 is chosen as something of a magic offset.  For x86, the dispatch
-    * at offset 32 is the first one where the offset in the
-    * "jmp OFFSET*4(%eax)" can't be encoded in a single byte.
-    */
-   const GLubyte * const template_func = gl_dispatch_functions_start 
-     + (DISPATCH_FUNCTION_SIZE * 32);
-   GLubyte * const code = (GLubyte *) _glapi_exec_malloc(DISPATCH_FUNCTION_SIZE);
-
-
-   if ( code != NULL ) {
-      (void) memcpy(code, template_func, DISPATCH_FUNCTION_SIZE);
-      fill_in_entrypoint_offset( (_glapi_proc) code, functionOffset );
-   }
-
-   return (_glapi_proc) code;
-}
-
-
-/**
- * This function inserts a new dispatch offset into the assembly language
- * stub that was generated with the preceeding function.
- */
-void
-fill_in_entrypoint_offset(_glapi_proc entrypoint, unsigned int offset)
-{
-   GLubyte * const code = (GLubyte *) entrypoint;
-
-#if defined(GLX_USE_TLS)
-   *((unsigned int *)(code +  8)) = 4 * offset;
-#elif defined(THREADS)
-   *((unsigned int *)(code + 11)) = 4 * offset;
-   *((unsigned int *)(code + 22)) = 4 * offset;
-#else
-   *((unsigned int *)(code +  7)) = 4 * offset;
-#endif
-}
-
-
-#elif defined(USE_SPARC_ASM)
-
-extern void __glapi_sparc_icache_flush(unsigned int *);
-
-static void
-init_glapi_relocs( void )
-{
-#if defined(PTHREADS) || defined(GLX_USE_TLS)
-    static const unsigned int template[] = {
-#ifdef GLX_USE_TLS
-       0x05000000, /* sethi %hi(_glapi_tls_Dispatch), %g2 */
-       0x8730e00a, /* srl %g3, 10, %g3 */
-       0x8410a000, /* or %g2, %lo(_glapi_tls_Dispatch), %g2 */
-#ifdef __arch64__
-       0xc259c002, /* ldx [%g7 + %g2], %g1 */
-       0xc2584003, /* ldx [%g1 + %g3], %g1 */
-#else
-       0xc201c002, /* ld [%g7 + %g2], %g1 */
-       0xc2004003, /* ld [%g1 + %g3], %g1 */
-#endif
-       0x81c04000, /* jmp %g1 */
-       0x01000000, /* nop  */
-#else
-#ifdef __arch64__
-       0x03000000, /* 64-bit 0x00 --> sethi %hh(_glapi_Dispatch), %g1 */
-       0x05000000, /* 64-bit 0x04 --> sethi %lm(_glapi_Dispatch), %g2 */
-       0x82106000, /* 64-bit 0x08 --> or %g1, %hm(_glapi_Dispatch), %g1 */
-       0x8730e00a, /* 64-bit 0x0c --> srl %g3, 10, %g3 */
-       0x83287020, /* 64-bit 0x10 --> sllx %g1, 32, %g1 */
-       0x82004002, /* 64-bit 0x14 --> add %g1, %g2, %g1 */
-       0xc2586000, /* 64-bit 0x18 --> ldx [%g1 + %lo(_glapi_Dispatch)], %g1 */
-#else
-       0x03000000, /* 32-bit 0x00 --> sethi %hi(_glapi_Dispatch), %g1 */
-       0x8730e00a, /* 32-bit 0x04 --> srl %g3, 10, %g3 */
-       0xc2006000, /* 32-bit 0x08 --> ld [%g1 + %lo(_glapi_Dispatch)], %g1 */
-#endif
-       0x80a06000, /*             --> cmp %g1, 0 */
-       0x02800005, /*             --> be +4*5 */
-       0x01000000, /*             -->  nop  */
-#ifdef __arch64__
-       0xc2584003, /* 64-bit      --> ldx [%g1 + %g3], %g1 */
-#else
-       0xc2004003, /* 32-bit      --> ld [%g1 + %g3], %g1 */
-#endif
-       0x81c04000, /*             --> jmp %g1 */
-       0x01000000, /*             --> nop  */
-#ifdef __arch64__
-       0x9de3bf80, /* 64-bit      --> save  %sp, -128, %sp */
-#else
-       0x9de3bfc0, /* 32-bit      --> save  %sp, -64, %sp */
-#endif
-       0xa0100003, /*             --> mov  %g3, %l0 */
-       0x40000000, /*             --> call _glapi_get_dispatch */
-       0x01000000, /*             -->  nop */
-       0x82100008, /*             --> mov %o0, %g1 */
-       0x86100010, /*             --> mov %l0, %g3 */
-       0x10bffff7, /*             --> ba -4*9 */
-       0x81e80000, /*             -->  restore  */
-#endif
-    };
-#ifdef GLX_USE_TLS
-    extern unsigned int __glapi_sparc_tls_stub;
-    extern unsigned long __glapi_sparc_get_dispatch(void);
-    unsigned int *code = &__glapi_sparc_tls_stub;
-    unsigned long dispatch = __glapi_sparc_get_dispatch();
-#else
-    extern unsigned int __glapi_sparc_pthread_stub;
-    unsigned int *code = &__glapi_sparc_pthread_stub;
-    unsigned long dispatch = (unsigned long) &_glapi_Dispatch;
-    unsigned long call_dest = (unsigned long ) &_glapi_get_dispatch;
-    int idx;
-#endif
-
-#ifdef GLX_USE_TLS
-    code[0] = template[0] | (dispatch >> 10);
-    code[1] = template[1];
-    __glapi_sparc_icache_flush(&code[0]);
-    code[2] = template[2] | (dispatch & 0x3ff);
-    code[3] = template[3];
-    __glapi_sparc_icache_flush(&code[2]);
-    code[4] = template[4];
-    code[5] = template[5];
-    __glapi_sparc_icache_flush(&code[4]);
-    code[6] = template[6];
-    __glapi_sparc_icache_flush(&code[6]);
-#else
-#if defined(__arch64__)
-    code[0] = template[0] | (dispatch >> (32 + 10));
-    code[1] = template[1] | ((dispatch & 0xffffffff) >> 10);
-    __glapi_sparc_icache_flush(&code[0]);
-    code[2] = template[2] | ((dispatch >> 32) & 0x3ff);
-    code[3] = template[3];
-    __glapi_sparc_icache_flush(&code[2]);
-    code[4] = template[4];
-    code[5] = template[5];
-    __glapi_sparc_icache_flush(&code[4]);
-    code[6] = template[6] | (dispatch & 0x3ff);
-    idx = 7;
-#else
-    code[0] = template[0] | (dispatch >> 10);
-    code[1] = template[1];
-    __glapi_sparc_icache_flush(&code[0]);
-    code[2] = template[2] | (dispatch & 0x3ff);
-    idx = 3;
-#endif
-    code[idx + 0] = template[idx + 0];
-    __glapi_sparc_icache_flush(&code[idx - 1]);
-    code[idx + 1] = template[idx + 1];
-    code[idx + 2] = template[idx + 2];
-    __glapi_sparc_icache_flush(&code[idx + 1]);
-    code[idx + 3] = template[idx + 3];
-    code[idx + 4] = template[idx + 4];
-    __glapi_sparc_icache_flush(&code[idx + 3]);
-    code[idx + 5] = template[idx + 5];
-    code[idx + 6] = template[idx + 6];
-    __glapi_sparc_icache_flush(&code[idx + 5]);
-    code[idx + 7] = template[idx + 7];
-    code[idx + 8] = template[idx + 8] |
-           (((call_dest - ((unsigned long) &code[idx + 8]))
-             >> 2) & 0x3fffffff);
-    __glapi_sparc_icache_flush(&code[idx + 7]);
-    code[idx + 9] = template[idx + 9];
-    code[idx + 10] = template[idx + 10];
-    __glapi_sparc_icache_flush(&code[idx + 9]);
-    code[idx + 11] = template[idx + 11];
-    code[idx + 12] = template[idx + 12];
-    __glapi_sparc_icache_flush(&code[idx + 11]);
-    code[idx + 13] = template[idx + 13];
-    __glapi_sparc_icache_flush(&code[idx + 13]);
-#endif
-#endif
-}
-
-
-_glapi_proc
-generate_entrypoint(GLuint functionOffset)
-{
-#if defined(PTHREADS) || defined(GLX_USE_TLS)
-   static const unsigned int template[] = {
-      0x07000000, /* sethi %hi(0), %g3 */
-      0x8210000f, /* mov  %o7, %g1 */
-      0x40000000, /* call */
-      0x9e100001, /* mov  %g1, %o7 */
-   };
-#ifdef GLX_USE_TLS
-   extern unsigned int __glapi_sparc_tls_stub;
-   unsigned long call_dest = (unsigned long ) &__glapi_sparc_tls_stub;
-#else
-   extern unsigned int __glapi_sparc_pthread_stub;
-   unsigned long call_dest = (unsigned long ) &__glapi_sparc_pthread_stub;
-#endif
-   unsigned int *code = (unsigned int *) _glapi_exec_malloc(sizeof(template));
-   if (code) {
-      code[0] = template[0] | (functionOffset & 0x3fffff);
-      code[1] = template[1];
-      __glapi_sparc_icache_flush(&code[0]);
-      code[2] = template[2] |
-         (((call_dest - ((unsigned long) &code[2]))
-          >> 2) & 0x3fffffff);
-      code[3] = template[3];
-      __glapi_sparc_icache_flush(&code[2]);
-   }
-   return (_glapi_proc) code;
-#endif
-}
-
-
-void
-fill_in_entrypoint_offset(_glapi_proc entrypoint, GLuint offset)
-{
-   unsigned int *code = (unsigned int *) entrypoint;
-
-   code[0] &= ~0x3fffff;
-   code[0] |= (offset * sizeof(void *)) & 0x3fffff;
-   __glapi_sparc_icache_flush(&code[0]);
-}
-
-
-#else /* USE_*_ASM */
-
-static void
-init_glapi_relocs( void )
-{
-}
-
-
-_glapi_proc
-generate_entrypoint(GLuint functionOffset)
-{
-   (void) functionOffset;
-   return NULL;
-}
-
-
-void
-fill_in_entrypoint_offset(_glapi_proc entrypoint, GLuint offset)
-{
-   /* an unimplemented architecture */
-   (void) entrypoint;
-   (void) offset;
-}
-
-#endif /* USE_*_ASM */
-
-
-void
-init_glapi_relocs_once( void )
-{
-#if defined(PTHREADS) || defined(GLX_USE_TLS)
-   static pthread_once_t once_control = PTHREAD_ONCE_INIT;
-   pthread_once( & once_control, init_glapi_relocs );
-#endif
-}
diff --git a/src/mesa/glapi/glapi_execmem.c b/src/mesa/glapi/glapi_execmem.c
deleted file mode 100644 (file)
index 57f00be..0000000
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * Mesa 3-D graphics library
- * Version:  6.5
- *
- * Copyright (C) 1999-2005  Brian Paul   All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-/**
- * \file glapi_execmem.c
- *
- * Function for allocating executable memory for dispatch stubs.
- *
- * Copied from main/execmem.c and simplified for dispatch stubs.
- */
-
-
-#ifdef HAVE_DIX_CONFIG_H
-#include <dix-config.h>
-#include "glapi/mesa.h"
-#else
-#include "main/compiler.h"
-#endif
-
-#include "glapi/glthread.h"
-#include "glapi/glapi_priv.h"
-
-
-#if defined(__linux__) || defined(__OpenBSD__) || defined(_NetBSD__) || defined(__sun)
-
-#include <unistd.h>
-#include <sys/mman.h>
-
-#ifdef MESA_SELINUX
-#include <selinux/selinux.h>
-#endif
-
-
-#ifndef MAP_ANONYMOUS
-#define MAP_ANONYMOUS MAP_ANON
-#endif
-
-
-#define EXEC_MAP_SIZE (4*1024)
-
-_glthread_DECLARE_STATIC_MUTEX(exec_mutex);
-
-static unsigned int head = 0;
-
-static unsigned char *exec_mem = NULL;
-
-
-/*
- * Dispatch stubs are of fixed size and never freed. Thus, we do not need to
- * overlay a heap, we just mmap a page and manage through an index.
- */
-
-static int
-init_map(void)
-{
-#ifdef MESA_SELINUX
-   if (is_selinux_enabled()) {
-      if (!security_get_boolean_active("allow_execmem") ||
-         !security_get_boolean_pending("allow_execmem"))
-         return 0;
-   }
-#endif
-
-   if (!exec_mem)
-      exec_mem = mmap(NULL, EXEC_MAP_SIZE, PROT_EXEC | PROT_READ | PROT_WRITE,
-                     MAP_PRIVATE | MAP_ANONYMOUS, -1, 0);
-
-   return (exec_mem != MAP_FAILED);
-}
-
-
-void *
-_glapi_exec_malloc(unsigned int size)
-{
-   void *addr = NULL;
-
-   _glthread_LOCK_MUTEX(exec_mutex);
-
-   if (!init_map())
-      goto bail;
-
-   /* free space check, assumes no integer overflow */
-   if (head + size > EXEC_MAP_SIZE)
-      goto bail;
-
-   /* allocation, assumes proper addr and size alignement */
-   addr = exec_mem + head;
-   head += size;
-
-bail:
-   _glthread_UNLOCK_MUTEX(exec_mutex);
-
-   return addr;
-}
-
-
-#else
-
-void *
-_glapi_exec_malloc(unsigned int size)
-{
-   return malloc(size);
-}
-
-
-#endif
diff --git a/src/mesa/glapi/glapi_getproc.c b/src/mesa/glapi/glapi_getproc.c
deleted file mode 100644 (file)
index c73e8dd..0000000
+++ /dev/null
@@ -1,695 +0,0 @@
-/*
- * Mesa 3-D graphics library
- * Version:  7.1
- *
- * Copyright (C) 1999-2008  Brian Paul   All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-/**
- * \file glapi_getproc.c
- *
- * Code for implementing glXGetProcAddress(), etc.
- * This was originally in glapi.c but refactored out.
- */
-
-
-#ifdef HAVE_DIX_CONFIG_H
-#include <dix-config.h>
-#include "glapi/mesa.h"
-#else
-#include "main/glheader.h"
-#include "main/compiler.h"
-#endif
-
-#include "glapi/glapi.h"
-#include "glapi/glapi_priv.h"
-#include "glapi/glapitable.h"
-#include "glapi/glapioffsets.h"
-
-
-/**********************************************************************
- * Static function management.
- */
-
-
-#if !defined(DISPATCH_FUNCTION_SIZE) && !defined(XFree86Server)
-# define NEED_FUNCTION_POINTER
-#endif
-#include "glapi/glprocs.h"
-
-
-/**
- * Search the table of static entrypoint functions for the named function
- * and return the corresponding glprocs_table_t entry.
- */
-static const glprocs_table_t *
-get_static_proc( const char * n )
-{
-   GLuint i;
-   for (i = 0; static_functions[i].Name_offset >= 0; i++) {
-      const char *testName = gl_string_table + static_functions[i].Name_offset;
-#ifdef MANGLE
-      /* skip the prefix on the name */
-      if (strcmp(testName, n + 1) == 0)
-#else
-      if (strcmp(testName, n) == 0)
-#endif
-      {
-        return &static_functions[i];
-      }
-   }
-   return NULL;
-}
-
-
-/**
- * Return dispatch table offset of the named static (built-in) function.
- * Return -1 if function not found.
- */
-static GLint
-get_static_proc_offset(const char *funcName)
-{
-   const glprocs_table_t * const f = get_static_proc( funcName );
-   if (f == NULL) {
-      return -1;
-   }
-
-   return f->Offset;
-}
-
-
-#if !defined(XFree86Server)
-
-/**
- * Return dispatch function address for the named static (built-in) function.
- * Return NULL if function not found.
- */
-static _glapi_proc
-get_static_proc_address(const char *funcName)
-{
-   const glprocs_table_t * const f = get_static_proc( funcName );
-   if (f == NULL) {
-      return NULL;
-   }
-
-#if defined(DISPATCH_FUNCTION_SIZE) && defined(GLX_INDIRECT_RENDERING)
-   return (f->Address == NULL)
-      ? get_entrypoint_address(f->Offset)
-      : f->Address;
-#elif defined(DISPATCH_FUNCTION_SIZE)
-   return get_entrypoint_address(f->Offset);
-#else
-   return f->Address;
-#endif
-}
-
-#else
-
-static _glapi_proc
-get_static_proc_address(const char *funcName)
-{
-   (void) funcName;
-   return NULL;
-}
-
-#endif /* !defined(XFree86Server) */
-
-
-/**
- * Return the name of the function at the given offset in the dispatch
- * table.  For debugging only.
- */
-static const char *
-get_static_proc_name( GLuint offset )
-{
-   GLuint i;
-   for (i = 0; static_functions[i].Name_offset >= 0; i++) {
-      if (static_functions[i].Offset == offset) {
-        return gl_string_table + static_functions[i].Name_offset;
-      }
-   }
-   return NULL;
-}
-
-
-
-/**********************************************************************
- * Extension function management.
- */
-
-
-/**
- * Track information about a function added to the GL API.
- */
-struct _glapi_function {
-   /**
-    * Name of the function.
-    */
-   const char * name;
-
-
-   /**
-    * Text string that describes the types of the parameters passed to the
-    * named function.   Parameter types are converted to characters using the
-    * following rules:
-    *   - 'i' for \c GLint, \c GLuint, and \c GLenum
-    *   - 'p' for any pointer type
-    *   - 'f' for \c GLfloat and \c GLclampf
-    *   - 'd' for \c GLdouble and \c GLclampd
-    */
-   const char * parameter_signature;
-
-
-   /**
-    * Offset in the dispatch table where the pointer to the real function is
-    * located.  If the driver has not requested that the named function be
-    * added to the dispatch table, this will have the value ~0.
-    */
-   unsigned dispatch_offset;
-
-
-   /**
-    * Pointer to the dispatch stub for the named function.
-    * 
-    * \todo
-    * The semantic of this field should be changed slightly.  Currently, it
-    * is always expected to be non-\c NULL.  However, it would be better to
-    * only allocate the entry-point stub when the application requests the
-    * function via \c glXGetProcAddress.  This would save memory for all the
-    * functions that the driver exports but that the application never wants
-    * to call.
-    */
-   _glapi_proc dispatch_stub;
-};
-
-
-static struct _glapi_function ExtEntryTable[MAX_EXTENSION_FUNCS];
-static GLuint NumExtEntryPoints = 0;
-
-
-static struct _glapi_function *
-get_extension_proc(const char *funcName)
-{
-   GLuint i;
-   for (i = 0; i < NumExtEntryPoints; i++) {
-      if (strcmp(ExtEntryTable[i].name, funcName) == 0) {
-         return & ExtEntryTable[i];
-      }
-   }
-   return NULL;
-}
-
-
-static GLint
-get_extension_proc_offset(const char *funcName)
-{
-   const struct _glapi_function * const f = get_extension_proc( funcName );
-   if (f == NULL) {
-      return -1;
-   }
-
-   return f->dispatch_offset;
-}
-
-
-static _glapi_proc
-get_extension_proc_address(const char *funcName)
-{
-   const struct _glapi_function * const f = get_extension_proc( funcName );
-   if (f == NULL) {
-      return NULL;
-   }
-
-   return f->dispatch_stub;
-}
-
-
-static const char *
-get_extension_proc_name(GLuint offset)
-{
-   GLuint i;
-   for (i = 0; i < NumExtEntryPoints; i++) {
-      if (ExtEntryTable[i].dispatch_offset == offset) {
-         return ExtEntryTable[i].name;
-      }
-   }
-   return NULL;
-}
-
-
-/**
- * strdup() is actually not a standard ANSI C or POSIX routine.
- * Irix will not define it if ANSI mode is in effect.
- */
-static char *
-str_dup(const char *str)
-{
-   char *copy;
-   copy = (char*) malloc(strlen(str) + 1);
-   if (!copy)
-      return NULL;
-   strcpy(copy, str);
-   return copy;
-}
-
-
-/**
- * Generate new entrypoint
- *
- * Use a temporary dispatch offset of ~0 (i.e. -1).  Later, when the driver
- * calls \c _glapi_add_dispatch we'll put in the proper offset.  If that
- * never happens, and the user calls this function, he'll segfault.  That's
- * what you get when you try calling a GL function that doesn't really exist.
- * 
- * \param funcName  Name of the function to create an entry-point for.
- * 
- * \sa _glapi_add_entrypoint
- */
-
-static struct _glapi_function *
-add_function_name( const char * funcName )
-{
-   struct _glapi_function * entry = NULL;
-   _glapi_proc entrypoint = NULL;
-   char * name_dup = NULL;
-
-   if (NumExtEntryPoints >= MAX_EXTENSION_FUNCS)
-      return NULL;
-
-   if (funcName == NULL)
-      return NULL;
-
-   name_dup = str_dup(funcName);
-   if (name_dup == NULL)
-      return NULL;
-
-   entrypoint = generate_entrypoint(~0);
-
-   if (entrypoint == NULL) {
-      free(name_dup);
-      return NULL;
-   }
-
-   entry = & ExtEntryTable[NumExtEntryPoints];
-   NumExtEntryPoints++;
-
-   entry->name = name_dup;
-   entry->parameter_signature = NULL;
-   entry->dispatch_offset = ~0;
-   entry->dispatch_stub = entrypoint;
-
-   return entry;
-}
-
-
-static struct _glapi_function *
-set_entry_info( struct _glapi_function * entry, const char * signature, unsigned offset )
-{
-   char * sig_dup = NULL;
-
-   if (signature == NULL)
-      return NULL;
-
-   sig_dup = str_dup(signature);
-   if (sig_dup == NULL)
-      return NULL;
-
-   fill_in_entrypoint_offset(entry->dispatch_stub, offset);
-
-   entry->parameter_signature = sig_dup;
-   entry->dispatch_offset = offset;
-
-   return entry;
-}
-
-
-/**
- * Fill-in the dispatch stub for the named function.
- * 
- * This function is intended to be called by a hardware driver.  When called,
- * a dispatch stub may be created created for the function.  A pointer to this
- * dispatch function will be returned by glXGetProcAddress.
- *
- * \param function_names       Array of pointers to function names that should
- *                             share a common dispatch offset.
- * \param parameter_signature  String representing the types of the parameters
- *                             passed to the named function.  Parameter types
- *                             are converted to characters using the following
- *                             rules:
- *                               - 'i' for \c GLint, \c GLuint, and \c GLenum
- *                               - 'p' for any pointer type
- *                               - 'f' for \c GLfloat and \c GLclampf
- *                               - 'd' for \c GLdouble and \c GLclampd
- *
- * \returns
- * The offset in the dispatch table of the named function.  A pointer to the
- * driver's implementation of the named function should be stored at
- * \c dispatch_table[\c offset].  Return -1 if error/problem.
- *
- * \sa glXGetProcAddress
- *
- * \warning
- * This function can only handle up to 8 names at a time.  As far as I know,
- * the maximum number of names ever associated with an existing GL function is
- * 4 (\c glPointParameterfSGIS, \c glPointParameterfEXT,
- * \c glPointParameterfARB, and \c glPointParameterf), so this should not be
- * too painful of a limitation.
- *
- * \todo
- * Determine whether or not \c parameter_signature should be allowed to be
- * \c NULL.  It doesn't seem like much of a hardship for drivers to have to
- * pass in an empty string.
- *
- * \todo
- * Determine if code should be added to reject function names that start with
- * 'glX'.
- * 
- * \bug
- * Add code to compare \c parameter_signature with the parameter signature of
- * a static function.  In order to do that, we need to find a way to \b get
- * the parameter signature of a static function.
- */
-
-PUBLIC int
-_glapi_add_dispatch( const char * const * function_names,
-                    const char * parameter_signature )
-{
-   static int next_dynamic_offset = _gloffset_FIRST_DYNAMIC;
-   const char * const real_sig = (parameter_signature != NULL)
-     ? parameter_signature : "";
-   struct _glapi_function * entry[8];
-   GLboolean is_static[8];
-   unsigned i;
-   int offset = ~0;
-
-   init_glapi_relocs_once();
-
-   (void) memset( is_static, 0, sizeof( is_static ) );
-   (void) memset( entry, 0, sizeof( entry ) );
-
-   /* Find the _single_ dispatch offset for all function names that already
-    * exist (and have a dispatch offset).
-    */
-
-   for ( i = 0 ; function_names[i] != NULL ; i++ ) {
-      const char * funcName = function_names[i];
-      int static_offset;
-      int extension_offset;
-
-      if (funcName[0] != 'g' || funcName[1] != 'l')
-         return -1;
-
-      /* search built-in functions */
-      static_offset = get_static_proc_offset(funcName);
-
-      if (static_offset >= 0) {
-
-        is_static[i] = GL_TRUE;
-
-        /* FIXME: Make sure the parameter signatures match!  How do we get
-         * FIXME: the parameter signature for static functions?
-         */
-
-        if ( (offset != ~0) && (static_offset != offset) ) {
-           return -1;
-        }
-
-        offset = static_offset;
-
-        continue;
-      }
-
-      /* search added extension functions */
-      entry[i] = get_extension_proc(funcName);
-
-      if (entry[i] != NULL) {
-        extension_offset = entry[i]->dispatch_offset;
-
-        /* The offset may be ~0 if the function name was added by
-         * glXGetProcAddress but never filled in by the driver.
-         */
-
-        if (extension_offset == ~0) {
-           continue;
-        }
-
-        if (strcmp(real_sig, entry[i]->parameter_signature) != 0) {
-           return -1;
-        }
-
-        if ( (offset != ~0) && (extension_offset != offset) ) {
-           return -1;
-        }
-
-        offset = extension_offset;
-      }
-   }
-
-   /* If all function names are either new (or with no dispatch offset),
-    * allocate a new dispatch offset.
-    */
-
-   if (offset == ~0) {
-      offset = next_dynamic_offset;
-      next_dynamic_offset++;
-   }
-
-   /* Fill in the dispatch offset for the new function names (and those with
-    * no dispatch offset).
-    */
-
-   for ( i = 0 ; function_names[i] != NULL ; i++ ) {
-      if (is_static[i]) {
-        continue;
-      }
-
-      /* generate entrypoints for new function names */
-      if (entry[i] == NULL) {
-        entry[i] = add_function_name( function_names[i] );
-        if (entry[i] == NULL) {
-           /* FIXME: Possible memory leak here. */
-           return -1;
-        }
-      }
-
-      if (entry[i]->dispatch_offset == ~0) {
-        set_entry_info( entry[i], real_sig, offset );
-      }
-   }
-
-   return offset;
-}
-
-
-/**
- * Return offset of entrypoint for named function within dispatch table.
- */
-PUBLIC GLint
-_glapi_get_proc_offset(const char *funcName)
-{
-   GLint offset;
-
-   /* search extension functions first */
-   offset = get_extension_proc_offset(funcName);
-   if (offset >= 0)
-      return offset;
-
-   /* search static functions */
-   return get_static_proc_offset(funcName);
-}
-
-
-
-/**
- * Return pointer to the named function.  If the function name isn't found
- * in the name of static functions, try generating a new API entrypoint on
- * the fly with assembly language.
- */
-PUBLIC _glapi_proc
-_glapi_get_proc_address(const char *funcName)
-{
-   _glapi_proc func;
-   struct _glapi_function * entry;
-
-   init_glapi_relocs_once();
-
-#ifdef MANGLE
-   /* skip the prefix on the name */
-   if (funcName[1] != 'g' || funcName[2] != 'l')
-      return NULL;
-#else
-   if (funcName[0] != 'g' || funcName[1] != 'l')
-      return NULL;
-#endif
-
-   /* search extension functions first */
-   func = get_extension_proc_address(funcName);
-   if (func)
-      return func;
-
-   /* search static functions */
-   func = get_static_proc_address(funcName);
-   if (func)
-      return func;
-
-   /* generate entrypoint, dispatch offset must be filled in by the driver */
-   entry = add_function_name(funcName);
-   if (entry == NULL)
-      return NULL;
-
-   return entry->dispatch_stub;
-}
-
-
-
-/**
- * Return the name of the function at the given dispatch offset.
- * This is only intended for debugging.
- */
-const char *
-_glapi_get_proc_name(GLuint offset)
-{
-   const char * n;
-
-   /* search built-in functions */
-   n = get_static_proc_name(offset);
-   if ( n != NULL ) {
-      return n;
-   }
-
-   /* search added extension functions */
-   return get_extension_proc_name(offset);
-}
-
-
-
-/**********************************************************************
- * GL API table functions.
- */
-
-
-/*
- * The dispatch table size (number of entries) is the size of the
- * _glapi_table struct plus the number of dynamic entries we can add.
- * The extra slots can be filled in by DRI drivers that register new extension
- * functions.
- */
-#define DISPATCH_TABLE_SIZE (sizeof(struct _glapi_table) / sizeof(void *) + MAX_EXTENSION_FUNCS)
-
-
-/**
- * Return size of dispatch table struct as number of functions (or
- * slots).
- */
-PUBLIC GLuint
-_glapi_get_dispatch_table_size(void)
-{
-   return DISPATCH_TABLE_SIZE;
-}
-
-
-/**
- * Make sure there are no NULL pointers in the given dispatch table.
- * Intended for debugging purposes.
- */
-void
-_glapi_check_table_not_null(const struct _glapi_table *table)
-{
-#ifdef EXTRA_DEBUG /* set to DEBUG for extra DEBUG */
-   const GLuint entries = _glapi_get_dispatch_table_size();
-   const void **tab = (const void **) table;
-   GLuint i;
-   for (i = 1; i < entries; i++) {
-      assert(tab[i]);
-   }
-#else
-   (void) table;
-#endif
-}
-
-
-/**
- * Do some spot checks to be sure that the dispatch table
- * slots are assigned correctly. For debugging only.
- */
-void
-_glapi_check_table(const struct _glapi_table *table)
-{
-#ifdef EXTRA_DEBUG /* set to DEBUG for extra DEBUG */
-   {
-      GLuint BeginOffset = _glapi_get_proc_offset("glBegin");
-      char *BeginFunc = (char*) &table->Begin;
-      GLuint offset = (BeginFunc - (char *) table) / sizeof(void *);
-      assert(BeginOffset == _gloffset_Begin);
-      assert(BeginOffset == offset);
-   }
-   {
-      GLuint viewportOffset = _glapi_get_proc_offset("glViewport");
-      char *viewportFunc = (char*) &table->Viewport;
-      GLuint offset = (viewportFunc - (char *) table) / sizeof(void *);
-      assert(viewportOffset == _gloffset_Viewport);
-      assert(viewportOffset == offset);
-   }
-   {
-      GLuint VertexPointerOffset = _glapi_get_proc_offset("glVertexPointer");
-      char *VertexPointerFunc = (char*) &table->VertexPointer;
-      GLuint offset = (VertexPointerFunc - (char *) table) / sizeof(void *);
-      assert(VertexPointerOffset == _gloffset_VertexPointer);
-      assert(VertexPointerOffset == offset);
-   }
-   {
-      GLuint ResetMinMaxOffset = _glapi_get_proc_offset("glResetMinmax");
-      char *ResetMinMaxFunc = (char*) &table->ResetMinmax;
-      GLuint offset = (ResetMinMaxFunc - (char *) table) / sizeof(void *);
-      assert(ResetMinMaxOffset == _gloffset_ResetMinmax);
-      assert(ResetMinMaxOffset == offset);
-   }
-   {
-      GLuint blendColorOffset = _glapi_get_proc_offset("glBlendColor");
-      char *blendColorFunc = (char*) &table->BlendColor;
-      GLuint offset = (blendColorFunc - (char *) table) / sizeof(void *);
-      assert(blendColorOffset == _gloffset_BlendColor);
-      assert(blendColorOffset == offset);
-   }
-   {
-      GLuint secondaryColor3fOffset = _glapi_get_proc_offset("glSecondaryColor3fEXT");
-      char *secondaryColor3fFunc = (char*) &table->SecondaryColor3fEXT;
-      GLuint offset = (secondaryColor3fFunc - (char *) table) / sizeof(void *);
-      assert(secondaryColor3fOffset == _gloffset_SecondaryColor3fEXT);
-      assert(secondaryColor3fOffset == offset);
-   }
-   {
-      GLuint pointParameterivOffset = _glapi_get_proc_offset("glPointParameterivNV");
-      char *pointParameterivFunc = (char*) &table->PointParameterivNV;
-      GLuint offset = (pointParameterivFunc - (char *) table) / sizeof(void *);
-      assert(pointParameterivOffset == _gloffset_PointParameterivNV);
-      assert(pointParameterivOffset == offset);
-   }
-   {
-      GLuint setFenceOffset = _glapi_get_proc_offset("glSetFenceNV");
-      char *setFenceFunc = (char*) &table->SetFenceNV;
-      GLuint offset = (setFenceFunc - (char *) table) / sizeof(void *);
-      assert(setFenceOffset == _gloffset_SetFenceNV);
-      assert(setFenceOffset == offset);
-   }
-#else
-   (void) table;
-#endif
-}
diff --git a/src/mesa/glapi/glapi_nop.c b/src/mesa/glapi/glapi_nop.c
deleted file mode 100644 (file)
index 4257b1f..0000000
+++ /dev/null
@@ -1,134 +0,0 @@
-/*
- * Mesa 3-D graphics library
- * Version:  7.8
- *
- * Copyright (C) 1999-2008  Brian Paul   All Rights Reserved.
- * Copyright (C) 2010  VMWare, Inc.  All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-/**
- * No-op dispatch table.
- *
- * This file defines a special dispatch table which is loaded with no-op
- * functions.
- *
- * When there's no current rendering context, calling a GL function like
- * glBegin() is a no-op.  Apps should never normally do this.  So as a
- * debugging aid, each of the no-op functions will emit a warning to
- * stderr if the MESA_DEBUG or LIBGL_DEBUG env var is set.
- */
-
-
-
-#ifdef HAVE_DIX_CONFIG_H
-#include <dix-config.h>
-#include "glapi/mesa.h"
-#else
-#include "main/compiler.h"
-#include "main/glheader.h"
-#endif
-
-#include "glapi/glapi.h"
-
-
-/*
- * These stubs are kept so that the old DRI drivers still load.
- */
-PUBLIC void
-_glapi_noop_enable_warnings(GLboolean enable);
-
-PUBLIC void
-_glapi_set_warning_func(_glapi_proc func);
-
-void
-_glapi_noop_enable_warnings(GLboolean enable)
-{
-}
-
-void
-_glapi_set_warning_func(_glapi_proc func)
-{
-}
-
-#ifdef DEBUG
-
-/**
- * Called by each of the no-op GL entrypoints.
- */
-static int
-Warn(const char *func)
-{
-#if !defined(_WIN32_WCE)
-   if (getenv("MESA_DEBUG") || getenv("LIBGL_DEBUG")) {
-      fprintf(stderr, "GL User Error: gl%s called without a rendering context\n",
-              func);
-   }
-#endif
-   return 0;
-}
-
-
-/**
- * This is called if the user somehow calls an unassigned GL dispatch function.
- */
-static GLint
-NoOpUnused(void)
-{
-   return Warn(" function");
-}
-
-/*
- * Defines for the glapitemp.h functions.
- */
-#define KEYWORD1 static
-#define KEYWORD1_ALT static
-#define KEYWORD2 GLAPIENTRY
-#define NAME(func)  NoOp##func
-#define DISPATCH(func, args, msg)  Warn(#func);
-#define RETURN_DISPATCH(func, args, msg)  Warn(#func); return 0
-
-
-/*
- * Defines for the table of no-op entry points.
- */
-#define TABLE_ENTRY(name) (_glapi_proc) NoOp##name
-
-#else
-
-static int
-NoOpGeneric(void)
-{
-#if !defined(_WIN32_WCE)
-   if (getenv("MESA_DEBUG") || getenv("LIBGL_DEBUG")) {
-      fprintf(stderr, "GL User Error: calling GL function without a rendering context\n");
-   }
-#endif
-   return 0;
-}
-
-#define TABLE_ENTRY(name) (_glapi_proc) NoOpGeneric
-
-#endif
-
-#define DISPATCH_TABLE_NAME __glapi_noop_table
-#define UNUSED_TABLE_NAME __unused_noop_functions
-
-#include "glapi/glapitemp.h"
diff --git a/src/mesa/glapi/glapi_priv.h b/src/mesa/glapi/glapi_priv.h
deleted file mode 100644 (file)
index da6fee6..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * Mesa 3-D graphics library
- * Version:  7.1
- *
- * Copyright (C) 1999-2008  Brian Paul   All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-#ifndef _GLAPI_PRIV_H
-#define _GLAPI_PRIV_H
-
-#include "glthread.h"
-#include "glapi.h"
-
-
-
-/* getproc */
-
-extern void
-_glapi_check_table_not_null(const struct _glapi_table *table);
-
-
-extern void
-_glapi_check_table(const struct _glapi_table *table);
-
-
-/* execmem */
-
-extern void *
-_glapi_exec_malloc(unsigned int size);
-
-
-/* entrypoint */
-
-extern void
-init_glapi_relocs_once(void);
-
-
-extern _glapi_proc
-generate_entrypoint(unsigned int functionOffset);
-
-
-extern void
-fill_in_entrypoint_offset(_glapi_proc entrypoint, unsigned int offset);
-
-
-extern _glapi_proc
-get_entrypoint_address(unsigned int functionOffset);
-
-
-/**
- * Size (in bytes) of dispatch function (entrypoint).
- */
-#if defined(USE_X86_ASM)
-# if defined(GLX_USE_TLS)
-#  define DISPATCH_FUNCTION_SIZE  16
-# elif defined(THREADS)
-#  define DISPATCH_FUNCTION_SIZE  32
-# else
-#  define DISPATCH_FUNCTION_SIZE  16
-# endif
-#endif
-
-#if defined(USE_X64_64_ASM)
-# if defined(GLX_USE_TLS)
-#  define DISPATCH_FUNCTION_SIZE  16
-# endif
-#endif
-
-
-/**
- * Number of extension functions which we can dynamically add at runtime.
- *
- * Number of extension functions is also subject to the size of backing exec
- * mem we allocate. For the common case of dispatch stubs with size 16 bytes,
- * the two limits will be hit simultaneously. For larger dispatch function
- * sizes, MAX_EXTENSION_FUNCS is effectively reduced.
- */
-#define MAX_EXTENSION_FUNCS 256
-
-
-#endif
diff --git a/src/mesa/glapi/glapi_sparc.S b/src/mesa/glapi/glapi_sparc.S
deleted file mode 100644 (file)
index e9f887b..0000000
+++ /dev/null
@@ -1,1402 +0,0 @@
-/* DO NOT EDIT - This file generated automatically by gl_SPARC_asm.py (from Mesa) script */
-
-/*
- * Copyright (C) 1999-2003  Brian Paul   All Rights Reserved.
- * (C) Copyright IBM Corporation 2004
- * 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
- * BRIAN PAUL, IBM,
- * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
- * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#include "glapi/glapioffsets.h"
-
-#ifdef __arch64__
-#define GL_OFF(N)      ((N) * 8)
-#define GL_LL          ldx
-#define GL_TIE_LD(SYM) %tie_ldx(SYM)
-#define GL_STACK_SIZE  128
-#else
-#define GL_OFF(N)      ((N) * 4)
-#define GL_LL          ld
-#define GL_TIE_LD(SYM) %tie_ld(SYM)
-#define GL_STACK_SIZE  64
-#endif
-
-#define GLOBL_FN(x) .globl x ; .type x, @function
-#define HIDDEN(x) .hidden x
-
-       .register %g2, #scratch
-       .register %g3, #scratch
-
-       .text
-
-       GLOBL_FN(__glapi_sparc_icache_flush)
-       HIDDEN(__glapi_sparc_icache_flush)
-       .type   __glapi_sparc_icache_flush, @function
-__glapi_sparc_icache_flush: /* %o0 = insn_addr */
-       flush   %o0
-       retl
-        nop
-
-       .align  32
-
-       .type   __glapi_sparc_get_pc, @function
-__glapi_sparc_get_pc:
-       retl
-        add    %o7, %g2, %g2
-       .size   __glapi_sparc_get_pc, .-__glapi_sparc_get_pc
-
-#ifdef GLX_USE_TLS
-
-       GLOBL_FN(__glapi_sparc_get_dispatch)
-       HIDDEN(__glapi_sparc_get_dispatch)
-__glapi_sparc_get_dispatch:
-       mov     %o7, %g1
-       sethi   %hi(_GLOBAL_OFFSET_TABLE_-4), %g2
-       call    __glapi_sparc_get_pc
-       add     %g2, %lo(_GLOBAL_OFFSET_TABLE_+4), %g2
-       mov     %g1, %o7
-       sethi   %tie_hi22(_glapi_tls_Dispatch), %g1
-       add     %g1, %tie_lo10(_glapi_tls_Dispatch), %g1
-       GL_LL   [%g2 + %g1], %g2, GL_TIE_LD(_glapi_tls_Dispatch)
-       retl
-        mov    %g2, %o0
-
-       .data
-       .align  32
-
-       /* --> sethi %hi(_glapi_tls_Dispatch), %g1 */
-       /* --> or %g1, %lo(_glapi_tls_Dispatch), %g1 */
-       GLOBL_FN(__glapi_sparc_tls_stub)
-       HIDDEN(__glapi_sparc_tls_stub)
-__glapi_sparc_tls_stub: /* Call offset in %g3 */
-       mov     %o7, %g1
-       sethi   %hi(_GLOBAL_OFFSET_TABLE_-4), %g2
-       call    __glapi_sparc_get_pc
-       add     %g2, %lo(_GLOBAL_OFFSET_TABLE_+4), %g2
-       mov     %g1, %o7
-       srl     %g3, 10, %g3
-       sethi   %tie_hi22(_glapi_tls_Dispatch), %g1
-       add     %g1, %tie_lo10(_glapi_tls_Dispatch), %g1
-       GL_LL   [%g2 + %g1], %g2, GL_TIE_LD(_glapi_tls_Dispatch)
-       GL_LL   [%g7+%g2], %g1
-       GL_LL   [%g1 + %g3], %g1
-       jmp     %g1
-        nop
-       .size   __glapi_sparc_tls_stub, .-__glapi_sparc_tls_stub
-
-#define GL_STUB(fn, off)                               \
-       GLOBL_FN(fn);                                   \
-fn:    ba      __glapi_sparc_tls_stub;                 \
-        sethi  GL_OFF(off), %g3;                       \
-       .size   fn,.-fn;
-
-#elif defined(PTHREADS)
-
-       /* 64-bit 0x00 --> sethi %hh(_glapi_Dispatch), %g1 */
-       /* 64-bit 0x04 --> sethi %lm(_glapi_Dispatch), %g2 */
-       /* 64-bit 0x08 --> or %g1, %hm(_glapi_Dispatch), %g1 */
-       /* 64-bit 0x0c --> sllx %g1, 32, %g1 */
-       /* 64-bit 0x10 --> add %g1, %g2, %g1 */
-       /* 64-bit 0x14 --> ldx [%g1 + %lo(_glapi_Dispatch)], %g1 */
-
-       /* 32-bit 0x00 --> sethi %hi(_glapi_Dispatch), %g1 */
-       /* 32-bit 0x04 --> ld [%g1 + %lo(_glapi_Dispatch)], %g1 */
-
-       .data
-       .align  32
-
-       GLOBL_FN(__glapi_sparc_pthread_stub)
-       HIDDEN(__glapi_sparc_pthread_stub)
-__glapi_sparc_pthread_stub: /* Call offset in %g3 */
-       mov     %o7, %g1
-       sethi   %hi(_GLOBAL_OFFSET_TABLE_-4), %g2
-       call    __glapi_sparc_get_pc
-        add    %g2, %lo(_GLOBAL_OFFSET_TABLE_+4), %g2
-       mov     %g1, %o7
-       sethi   %hi(_glapi_Dispatch), %g1
-       or      %g1, %lo(_glapi_Dispatch), %g1
-       srl     %g3, 10, %g3
-       GL_LL   [%g2+%g1], %g2
-       GL_LL   [%g2], %g1
-       cmp     %g1, 0
-       be      2f
-        nop
-1:     GL_LL   [%g1 + %g3], %g1
-       jmp     %g1
-        nop
-2:     save    %sp, GL_STACK_SIZE, %sp
-       mov     %g3, %l0
-       call    _glapi_get_dispatch
-        nop
-       mov     %o0, %g1
-       mov     %l0, %g3
-       ba      1b
-        restore %g0, %g0, %g0
-       .size   __glapi_sparc_pthread_stub, .-__glapi_sparc_pthread_stub
-
-#define GL_STUB(fn, off)                       \
-       GLOBL_FN(fn);                           \
-fn:    ba      __glapi_sparc_pthread_stub;     \
-        sethi  GL_OFF(off), %g3;               \
-       .size   fn,.-fn;
-
-#else /* Non-threaded version. */
-
-       .type   __glapi_sparc_nothread_stub, @function
-__glapi_sparc_nothread_stub: /* Call offset in %g3 */
-       mov     %o7, %g1
-       sethi   %hi(_GLOBAL_OFFSET_TABLE_-4), %g2
-       call    __glapi_sparc_get_pc
-        add    %g2, %lo(_GLOBAL_OFFSET_TABLE_+4), %g2
-       mov     %g1, %o7
-       srl     %g3, 10, %g3
-       sethi   %hi(_glapi_Dispatch), %g1
-       or      %g1, %lo(_glapi_Dispatch), %g1
-       GL_LL   [%g2+%g1], %g2
-       GL_LL   [%g2], %g1
-       GL_LL   [%g1 + %g3], %g1
-       jmp     %g1
-        nop
-       .size   __glapi_sparc_nothread_stub, .-__glapi_sparc_nothread_stub
-
-#define GL_STUB(fn, off)                       \
-       GLOBL_FN(fn);                           \
-fn:    ba      __glapi_sparc_nothread_stub;    \
-        sethi  GL_OFF(off), %g3;               \
-       .size   fn,.-fn;
-
-#endif
-
-#define GL_STUB_ALIAS(fn, alias)               \
-       .globl  fn;                             \
-       .set    fn, alias
-
-       .text
-       .align  32
-
-       .globl  gl_dispatch_functions_start
-       HIDDEN(gl_dispatch_functions_start)
-gl_dispatch_functions_start:
-
-       GL_STUB(glNewList, _gloffset_NewList)
-       GL_STUB(glEndList, _gloffset_EndList)
-       GL_STUB(glCallList, _gloffset_CallList)
-       GL_STUB(glCallLists, _gloffset_CallLists)
-       GL_STUB(glDeleteLists, _gloffset_DeleteLists)
-       GL_STUB(glGenLists, _gloffset_GenLists)
-       GL_STUB(glListBase, _gloffset_ListBase)
-       GL_STUB(glBegin, _gloffset_Begin)
-       GL_STUB(glBitmap, _gloffset_Bitmap)
-       GL_STUB(glColor3b, _gloffset_Color3b)
-       GL_STUB(glColor3bv, _gloffset_Color3bv)
-       GL_STUB(glColor3d, _gloffset_Color3d)
-       GL_STUB(glColor3dv, _gloffset_Color3dv)
-       GL_STUB(glColor3f, _gloffset_Color3f)
-       GL_STUB(glColor3fv, _gloffset_Color3fv)
-       GL_STUB(glColor3i, _gloffset_Color3i)
-       GL_STUB(glColor3iv, _gloffset_Color3iv)
-       GL_STUB(glColor3s, _gloffset_Color3s)
-       GL_STUB(glColor3sv, _gloffset_Color3sv)
-       GL_STUB(glColor3ub, _gloffset_Color3ub)
-       GL_STUB(glColor3ubv, _gloffset_Color3ubv)
-       GL_STUB(glColor3ui, _gloffset_Color3ui)
-       GL_STUB(glColor3uiv, _gloffset_Color3uiv)
-       GL_STUB(glColor3us, _gloffset_Color3us)
-       GL_STUB(glColor3usv, _gloffset_Color3usv)
-       GL_STUB(glColor4b, _gloffset_Color4b)
-       GL_STUB(glColor4bv, _gloffset_Color4bv)
-       GL_STUB(glColor4d, _gloffset_Color4d)
-       GL_STUB(glColor4dv, _gloffset_Color4dv)
-       GL_STUB(glColor4f, _gloffset_Color4f)
-       GL_STUB(glColor4fv, _gloffset_Color4fv)
-       GL_STUB(glColor4i, _gloffset_Color4i)
-       GL_STUB(glColor4iv, _gloffset_Color4iv)
-       GL_STUB(glColor4s, _gloffset_Color4s)
-       GL_STUB(glColor4sv, _gloffset_Color4sv)
-       GL_STUB(glColor4ub, _gloffset_Color4ub)
-       GL_STUB(glColor4ubv, _gloffset_Color4ubv)
-       GL_STUB(glColor4ui, _gloffset_Color4ui)
-       GL_STUB(glColor4uiv, _gloffset_Color4uiv)
-       GL_STUB(glColor4us, _gloffset_Color4us)
-       GL_STUB(glColor4usv, _gloffset_Color4usv)
-       GL_STUB(glEdgeFlag, _gloffset_EdgeFlag)
-       GL_STUB(glEdgeFlagv, _gloffset_EdgeFlagv)
-       GL_STUB(glEnd, _gloffset_End)
-       GL_STUB(glIndexd, _gloffset_Indexd)
-       GL_STUB(glIndexdv, _gloffset_Indexdv)
-       GL_STUB(glIndexf, _gloffset_Indexf)
-       GL_STUB(glIndexfv, _gloffset_Indexfv)
-       GL_STUB(glIndexi, _gloffset_Indexi)
-       GL_STUB(glIndexiv, _gloffset_Indexiv)
-       GL_STUB(glIndexs, _gloffset_Indexs)
-       GL_STUB(glIndexsv, _gloffset_Indexsv)
-       GL_STUB(glNormal3b, _gloffset_Normal3b)
-       GL_STUB(glNormal3bv, _gloffset_Normal3bv)
-       GL_STUB(glNormal3d, _gloffset_Normal3d)
-       GL_STUB(glNormal3dv, _gloffset_Normal3dv)
-       GL_STUB(glNormal3f, _gloffset_Normal3f)
-       GL_STUB(glNormal3fv, _gloffset_Normal3fv)
-       GL_STUB(glNormal3i, _gloffset_Normal3i)
-       GL_STUB(glNormal3iv, _gloffset_Normal3iv)
-       GL_STUB(glNormal3s, _gloffset_Normal3s)
-       GL_STUB(glNormal3sv, _gloffset_Normal3sv)
-       GL_STUB(glRasterPos2d, _gloffset_RasterPos2d)
-       GL_STUB(glRasterPos2dv, _gloffset_RasterPos2dv)
-       GL_STUB(glRasterPos2f, _gloffset_RasterPos2f)
-       GL_STUB(glRasterPos2fv, _gloffset_RasterPos2fv)
-       GL_STUB(glRasterPos2i, _gloffset_RasterPos2i)
-       GL_STUB(glRasterPos2iv, _gloffset_RasterPos2iv)
-       GL_STUB(glRasterPos2s, _gloffset_RasterPos2s)
-       GL_STUB(glRasterPos2sv, _gloffset_RasterPos2sv)
-       GL_STUB(glRasterPos3d, _gloffset_RasterPos3d)
-       GL_STUB(glRasterPos3dv, _gloffset_RasterPos3dv)
-       GL_STUB(glRasterPos3f, _gloffset_RasterPos3f)
-       GL_STUB(glRasterPos3fv, _gloffset_RasterPos3fv)
-       GL_STUB(glRasterPos3i, _gloffset_RasterPos3i)
-       GL_STUB(glRasterPos3iv, _gloffset_RasterPos3iv)
-       GL_STUB(glRasterPos3s, _gloffset_RasterPos3s)
-       GL_STUB(glRasterPos3sv, _gloffset_RasterPos3sv)
-       GL_STUB(glRasterPos4d, _gloffset_RasterPos4d)
-       GL_STUB(glRasterPos4dv, _gloffset_RasterPos4dv)
-       GL_STUB(glRasterPos4f, _gloffset_RasterPos4f)
-       GL_STUB(glRasterPos4fv, _gloffset_RasterPos4fv)
-       GL_STUB(glRasterPos4i, _gloffset_RasterPos4i)
-       GL_STUB(glRasterPos4iv, _gloffset_RasterPos4iv)
-       GL_STUB(glRasterPos4s, _gloffset_RasterPos4s)
-       GL_STUB(glRasterPos4sv, _gloffset_RasterPos4sv)
-       GL_STUB(glRectd, _gloffset_Rectd)
-       GL_STUB(glRectdv, _gloffset_Rectdv)
-       GL_STUB(glRectf, _gloffset_Rectf)
-       GL_STUB(glRectfv, _gloffset_Rectfv)
-       GL_STUB(glRecti, _gloffset_Recti)
-       GL_STUB(glRectiv, _gloffset_Rectiv)
-       GL_STUB(glRects, _gloffset_Rects)
-       GL_STUB(glRectsv, _gloffset_Rectsv)
-       GL_STUB(glTexCoord1d, _gloffset_TexCoord1d)
-       GL_STUB(glTexCoord1dv, _gloffset_TexCoord1dv)
-       GL_STUB(glTexCoord1f, _gloffset_TexCoord1f)
-       GL_STUB(glTexCoord1fv, _gloffset_TexCoord1fv)
-       GL_STUB(glTexCoord1i, _gloffset_TexCoord1i)
-       GL_STUB(glTexCoord1iv, _gloffset_TexCoord1iv)
-       GL_STUB(glTexCoord1s, _gloffset_TexCoord1s)
-       GL_STUB(glTexCoord1sv, _gloffset_TexCoord1sv)
-       GL_STUB(glTexCoord2d, _gloffset_TexCoord2d)
-       GL_STUB(glTexCoord2dv, _gloffset_TexCoord2dv)
-       GL_STUB(glTexCoord2f, _gloffset_TexCoord2f)
-       GL_STUB(glTexCoord2fv, _gloffset_TexCoord2fv)
-       GL_STUB(glTexCoord2i, _gloffset_TexCoord2i)
-       GL_STUB(glTexCoord2iv, _gloffset_TexCoord2iv)
-       GL_STUB(glTexCoord2s, _gloffset_TexCoord2s)
-       GL_STUB(glTexCoord2sv, _gloffset_TexCoord2sv)
-       GL_STUB(glTexCoord3d, _gloffset_TexCoord3d)
-       GL_STUB(glTexCoord3dv, _gloffset_TexCoord3dv)
-       GL_STUB(glTexCoord3f, _gloffset_TexCoord3f)
-       GL_STUB(glTexCoord3fv, _gloffset_TexCoord3fv)
-       GL_STUB(glTexCoord3i, _gloffset_TexCoord3i)
-       GL_STUB(glTexCoord3iv, _gloffset_TexCoord3iv)
-       GL_STUB(glTexCoord3s, _gloffset_TexCoord3s)
-       GL_STUB(glTexCoord3sv, _gloffset_TexCoord3sv)
-       GL_STUB(glTexCoord4d, _gloffset_TexCoord4d)
-       GL_STUB(glTexCoord4dv, _gloffset_TexCoord4dv)
-       GL_STUB(glTexCoord4f, _gloffset_TexCoord4f)
-       GL_STUB(glTexCoord4fv, _gloffset_TexCoord4fv)
-       GL_STUB(glTexCoord4i, _gloffset_TexCoord4i)
-       GL_STUB(glTexCoord4iv, _gloffset_TexCoord4iv)
-       GL_STUB(glTexCoord4s, _gloffset_TexCoord4s)
-       GL_STUB(glTexCoord4sv, _gloffset_TexCoord4sv)
-       GL_STUB(glVertex2d, _gloffset_Vertex2d)
-       GL_STUB(glVertex2dv, _gloffset_Vertex2dv)
-       GL_STUB(glVertex2f, _gloffset_Vertex2f)
-       GL_STUB(glVertex2fv, _gloffset_Vertex2fv)
-       GL_STUB(glVertex2i, _gloffset_Vertex2i)
-       GL_STUB(glVertex2iv, _gloffset_Vertex2iv)
-       GL_STUB(glVertex2s, _gloffset_Vertex2s)
-       GL_STUB(glVertex2sv, _gloffset_Vertex2sv)
-       GL_STUB(glVertex3d, _gloffset_Vertex3d)
-       GL_STUB(glVertex3dv, _gloffset_Vertex3dv)
-       GL_STUB(glVertex3f, _gloffset_Vertex3f)
-       GL_STUB(glVertex3fv, _gloffset_Vertex3fv)
-       GL_STUB(glVertex3i, _gloffset_Vertex3i)
-       GL_STUB(glVertex3iv, _gloffset_Vertex3iv)
-       GL_STUB(glVertex3s, _gloffset_Vertex3s)
-       GL_STUB(glVertex3sv, _gloffset_Vertex3sv)
-       GL_STUB(glVertex4d, _gloffset_Vertex4d)
-       GL_STUB(glVertex4dv, _gloffset_Vertex4dv)
-       GL_STUB(glVertex4f, _gloffset_Vertex4f)
-       GL_STUB(glVertex4fv, _gloffset_Vertex4fv)
-       GL_STUB(glVertex4i, _gloffset_Vertex4i)
-       GL_STUB(glVertex4iv, _gloffset_Vertex4iv)
-       GL_STUB(glVertex4s, _gloffset_Vertex4s)
-       GL_STUB(glVertex4sv, _gloffset_Vertex4sv)
-       GL_STUB(glClipPlane, _gloffset_ClipPlane)
-       GL_STUB(glColorMaterial, _gloffset_ColorMaterial)
-       GL_STUB(glCullFace, _gloffset_CullFace)
-       GL_STUB(glFogf, _gloffset_Fogf)
-       GL_STUB(glFogfv, _gloffset_Fogfv)
-       GL_STUB(glFogi, _gloffset_Fogi)
-       GL_STUB(glFogiv, _gloffset_Fogiv)
-       GL_STUB(glFrontFace, _gloffset_FrontFace)
-       GL_STUB(glHint, _gloffset_Hint)
-       GL_STUB(glLightf, _gloffset_Lightf)
-       GL_STUB(glLightfv, _gloffset_Lightfv)
-       GL_STUB(glLighti, _gloffset_Lighti)
-       GL_STUB(glLightiv, _gloffset_Lightiv)
-       GL_STUB(glLightModelf, _gloffset_LightModelf)
-       GL_STUB(glLightModelfv, _gloffset_LightModelfv)
-       GL_STUB(glLightModeli, _gloffset_LightModeli)
-       GL_STUB(glLightModeliv, _gloffset_LightModeliv)
-       GL_STUB(glLineStipple, _gloffset_LineStipple)
-       GL_STUB(glLineWidth, _gloffset_LineWidth)
-       GL_STUB(glMaterialf, _gloffset_Materialf)
-       GL_STUB(glMaterialfv, _gloffset_Materialfv)
-       GL_STUB(glMateriali, _gloffset_Materiali)
-       GL_STUB(glMaterialiv, _gloffset_Materialiv)
-       GL_STUB(glPointSize, _gloffset_PointSize)
-       GL_STUB(glPolygonMode, _gloffset_PolygonMode)
-       GL_STUB(glPolygonStipple, _gloffset_PolygonStipple)
-       GL_STUB(glScissor, _gloffset_Scissor)
-       GL_STUB(glShadeModel, _gloffset_ShadeModel)
-       GL_STUB(glTexParameterf, _gloffset_TexParameterf)
-       GL_STUB(glTexParameterfv, _gloffset_TexParameterfv)
-       GL_STUB(glTexParameteri, _gloffset_TexParameteri)
-       GL_STUB(glTexParameteriv, _gloffset_TexParameteriv)
-       GL_STUB(glTexImage1D, _gloffset_TexImage1D)
-       GL_STUB(glTexImage2D, _gloffset_TexImage2D)
-       GL_STUB(glTexEnvf, _gloffset_TexEnvf)
-       GL_STUB(glTexEnvfv, _gloffset_TexEnvfv)
-       GL_STUB(glTexEnvi, _gloffset_TexEnvi)
-       GL_STUB(glTexEnviv, _gloffset_TexEnviv)
-       GL_STUB(glTexGend, _gloffset_TexGend)
-       GL_STUB(glTexGendv, _gloffset_TexGendv)
-       GL_STUB(glTexGenf, _gloffset_TexGenf)
-       GL_STUB(glTexGenfv, _gloffset_TexGenfv)
-       GL_STUB(glTexGeni, _gloffset_TexGeni)
-       GL_STUB(glTexGeniv, _gloffset_TexGeniv)
-       GL_STUB(glFeedbackBuffer, _gloffset_FeedbackBuffer)
-       GL_STUB(glSelectBuffer, _gloffset_SelectBuffer)
-       GL_STUB(glRenderMode, _gloffset_RenderMode)
-       GL_STUB(glInitNames, _gloffset_InitNames)
-       GL_STUB(glLoadName, _gloffset_LoadName)
-       GL_STUB(glPassThrough, _gloffset_PassThrough)
-       GL_STUB(glPopName, _gloffset_PopName)
-       GL_STUB(glPushName, _gloffset_PushName)
-       GL_STUB(glDrawBuffer, _gloffset_DrawBuffer)
-       GL_STUB(glClear, _gloffset_Clear)
-       GL_STUB(glClearAccum, _gloffset_ClearAccum)
-       GL_STUB(glClearIndex, _gloffset_ClearIndex)
-       GL_STUB(glClearColor, _gloffset_ClearColor)
-       GL_STUB(glClearStencil, _gloffset_ClearStencil)
-       GL_STUB(glClearDepth, _gloffset_ClearDepth)
-       GL_STUB(glStencilMask, _gloffset_StencilMask)
-       GL_STUB(glColorMask, _gloffset_ColorMask)
-       GL_STUB(glDepthMask, _gloffset_DepthMask)
-       GL_STUB(glIndexMask, _gloffset_IndexMask)
-       GL_STUB(glAccum, _gloffset_Accum)
-       GL_STUB(glDisable, _gloffset_Disable)
-       GL_STUB(glEnable, _gloffset_Enable)
-       GL_STUB(glFinish, _gloffset_Finish)
-       GL_STUB(glFlush, _gloffset_Flush)
-       GL_STUB(glPopAttrib, _gloffset_PopAttrib)
-       GL_STUB(glPushAttrib, _gloffset_PushAttrib)
-       GL_STUB(glMap1d, _gloffset_Map1d)
-       GL_STUB(glMap1f, _gloffset_Map1f)
-       GL_STUB(glMap2d, _gloffset_Map2d)
-       GL_STUB(glMap2f, _gloffset_Map2f)
-       GL_STUB(glMapGrid1d, _gloffset_MapGrid1d)
-       GL_STUB(glMapGrid1f, _gloffset_MapGrid1f)
-       GL_STUB(glMapGrid2d, _gloffset_MapGrid2d)
-       GL_STUB(glMapGrid2f, _gloffset_MapGrid2f)
-       GL_STUB(glEvalCoord1d, _gloffset_EvalCoord1d)
-       GL_STUB(glEvalCoord1dv, _gloffset_EvalCoord1dv)
-       GL_STUB(glEvalCoord1f, _gloffset_EvalCoord1f)
-       GL_STUB(glEvalCoord1fv, _gloffset_EvalCoord1fv)
-       GL_STUB(glEvalCoord2d, _gloffset_EvalCoord2d)
-       GL_STUB(glEvalCoord2dv, _gloffset_EvalCoord2dv)
-       GL_STUB(glEvalCoord2f, _gloffset_EvalCoord2f)
-       GL_STUB(glEvalCoord2fv, _gloffset_EvalCoord2fv)
-       GL_STUB(glEvalMesh1, _gloffset_EvalMesh1)
-       GL_STUB(glEvalPoint1, _gloffset_EvalPoint1)
-       GL_STUB(glEvalMesh2, _gloffset_EvalMesh2)
-       GL_STUB(glEvalPoint2, _gloffset_EvalPoint2)
-       GL_STUB(glAlphaFunc, _gloffset_AlphaFunc)
-       GL_STUB(glBlendFunc, _gloffset_BlendFunc)
-       GL_STUB(glLogicOp, _gloffset_LogicOp)
-       GL_STUB(glStencilFunc, _gloffset_StencilFunc)
-       GL_STUB(glStencilOp, _gloffset_StencilOp)
-       GL_STUB(glDepthFunc, _gloffset_DepthFunc)
-       GL_STUB(glPixelZoom, _gloffset_PixelZoom)
-       GL_STUB(glPixelTransferf, _gloffset_PixelTransferf)
-       GL_STUB(glPixelTransferi, _gloffset_PixelTransferi)
-       GL_STUB(glPixelStoref, _gloffset_PixelStoref)
-       GL_STUB(glPixelStorei, _gloffset_PixelStorei)
-       GL_STUB(glPixelMapfv, _gloffset_PixelMapfv)
-       GL_STUB(glPixelMapuiv, _gloffset_PixelMapuiv)
-       GL_STUB(glPixelMapusv, _gloffset_PixelMapusv)
-       GL_STUB(glReadBuffer, _gloffset_ReadBuffer)
-       GL_STUB(glCopyPixels, _gloffset_CopyPixels)
-       GL_STUB(glReadPixels, _gloffset_ReadPixels)
-       GL_STUB(glDrawPixels, _gloffset_DrawPixels)
-       GL_STUB(glGetBooleanv, _gloffset_GetBooleanv)
-       GL_STUB(glGetClipPlane, _gloffset_GetClipPlane)
-       GL_STUB(glGetDoublev, _gloffset_GetDoublev)
-       GL_STUB(glGetError, _gloffset_GetError)
-       GL_STUB(glGetFloatv, _gloffset_GetFloatv)
-       GL_STUB(glGetIntegerv, _gloffset_GetIntegerv)
-       GL_STUB(glGetLightfv, _gloffset_GetLightfv)
-       GL_STUB(glGetLightiv, _gloffset_GetLightiv)
-       GL_STUB(glGetMapdv, _gloffset_GetMapdv)
-       GL_STUB(glGetMapfv, _gloffset_GetMapfv)
-       GL_STUB(glGetMapiv, _gloffset_GetMapiv)
-       GL_STUB(glGetMaterialfv, _gloffset_GetMaterialfv)
-       GL_STUB(glGetMaterialiv, _gloffset_GetMaterialiv)
-       GL_STUB(glGetPixelMapfv, _gloffset_GetPixelMapfv)
-       GL_STUB(glGetPixelMapuiv, _gloffset_GetPixelMapuiv)
-       GL_STUB(glGetPixelMapusv, _gloffset_GetPixelMapusv)
-       GL_STUB(glGetPolygonStipple, _gloffset_GetPolygonStipple)
-       GL_STUB(glGetString, _gloffset_GetString)
-       GL_STUB(glGetTexEnvfv, _gloffset_GetTexEnvfv)
-       GL_STUB(glGetTexEnviv, _gloffset_GetTexEnviv)
-       GL_STUB(glGetTexGendv, _gloffset_GetTexGendv)
-       GL_STUB(glGetTexGenfv, _gloffset_GetTexGenfv)
-       GL_STUB(glGetTexGeniv, _gloffset_GetTexGeniv)
-       GL_STUB(glGetTexImage, _gloffset_GetTexImage)
-       GL_STUB(glGetTexParameterfv, _gloffset_GetTexParameterfv)
-       GL_STUB(glGetTexParameteriv, _gloffset_GetTexParameteriv)
-       GL_STUB(glGetTexLevelParameterfv, _gloffset_GetTexLevelParameterfv)
-       GL_STUB(glGetTexLevelParameteriv, _gloffset_GetTexLevelParameteriv)
-       GL_STUB(glIsEnabled, _gloffset_IsEnabled)
-       GL_STUB(glIsList, _gloffset_IsList)
-       GL_STUB(glDepthRange, _gloffset_DepthRange)
-       GL_STUB(glFrustum, _gloffset_Frustum)
-       GL_STUB(glLoadIdentity, _gloffset_LoadIdentity)
-       GL_STUB(glLoadMatrixf, _gloffset_LoadMatrixf)
-       GL_STUB(glLoadMatrixd, _gloffset_LoadMatrixd)
-       GL_STUB(glMatrixMode, _gloffset_MatrixMode)
-       GL_STUB(glMultMatrixf, _gloffset_MultMatrixf)
-       GL_STUB(glMultMatrixd, _gloffset_MultMatrixd)
-       GL_STUB(glOrtho, _gloffset_Ortho)
-       GL_STUB(glPopMatrix, _gloffset_PopMatrix)
-       GL_STUB(glPushMatrix, _gloffset_PushMatrix)
-       GL_STUB(glRotated, _gloffset_Rotated)
-       GL_STUB(glRotatef, _gloffset_Rotatef)
-       GL_STUB(glScaled, _gloffset_Scaled)
-       GL_STUB(glScalef, _gloffset_Scalef)
-       GL_STUB(glTranslated, _gloffset_Translated)
-       GL_STUB(glTranslatef, _gloffset_Translatef)
-       GL_STUB(glViewport, _gloffset_Viewport)
-       GL_STUB(glArrayElement, _gloffset_ArrayElement)
-       GL_STUB(glBindTexture, _gloffset_BindTexture)
-       GL_STUB(glColorPointer, _gloffset_ColorPointer)
-       GL_STUB(glDisableClientState, _gloffset_DisableClientState)
-       GL_STUB(glDrawArrays, _gloffset_DrawArrays)
-       GL_STUB(glDrawElements, _gloffset_DrawElements)
-       GL_STUB(glEdgeFlagPointer, _gloffset_EdgeFlagPointer)
-       GL_STUB(glEnableClientState, _gloffset_EnableClientState)
-       GL_STUB(glIndexPointer, _gloffset_IndexPointer)
-       GL_STUB(glIndexub, _gloffset_Indexub)
-       GL_STUB(glIndexubv, _gloffset_Indexubv)
-       GL_STUB(glInterleavedArrays, _gloffset_InterleavedArrays)
-       GL_STUB(glNormalPointer, _gloffset_NormalPointer)
-       GL_STUB(glPolygonOffset, _gloffset_PolygonOffset)
-       GL_STUB(glTexCoordPointer, _gloffset_TexCoordPointer)
-       GL_STUB(glVertexPointer, _gloffset_VertexPointer)
-       GL_STUB(glAreTexturesResident, _gloffset_AreTexturesResident)
-       GL_STUB(glCopyTexImage1D, _gloffset_CopyTexImage1D)
-       GL_STUB(glCopyTexImage2D, _gloffset_CopyTexImage2D)
-       GL_STUB(glCopyTexSubImage1D, _gloffset_CopyTexSubImage1D)
-       GL_STUB(glCopyTexSubImage2D, _gloffset_CopyTexSubImage2D)
-       GL_STUB(glDeleteTextures, _gloffset_DeleteTextures)
-       GL_STUB(glGenTextures, _gloffset_GenTextures)
-       GL_STUB(glGetPointerv, _gloffset_GetPointerv)
-       GL_STUB(glIsTexture, _gloffset_IsTexture)
-       GL_STUB(glPrioritizeTextures, _gloffset_PrioritizeTextures)
-       GL_STUB(glTexSubImage1D, _gloffset_TexSubImage1D)
-       GL_STUB(glTexSubImage2D, _gloffset_TexSubImage2D)
-       GL_STUB(glPopClientAttrib, _gloffset_PopClientAttrib)
-       GL_STUB(glPushClientAttrib, _gloffset_PushClientAttrib)
-       GL_STUB(glBlendColor, _gloffset_BlendColor)
-       GL_STUB(glBlendEquation, _gloffset_BlendEquation)
-       GL_STUB(glDrawRangeElements, _gloffset_DrawRangeElements)
-       GL_STUB(glColorTable, _gloffset_ColorTable)
-       GL_STUB(glColorTableParameterfv, _gloffset_ColorTableParameterfv)
-       GL_STUB(glColorTableParameteriv, _gloffset_ColorTableParameteriv)
-       GL_STUB(glCopyColorTable, _gloffset_CopyColorTable)
-       GL_STUB(glGetColorTable, _gloffset_GetColorTable)
-       GL_STUB(glGetColorTableParameterfv, _gloffset_GetColorTableParameterfv)
-       GL_STUB(glGetColorTableParameteriv, _gloffset_GetColorTableParameteriv)
-       GL_STUB(glColorSubTable, _gloffset_ColorSubTable)
-       GL_STUB(glCopyColorSubTable, _gloffset_CopyColorSubTable)
-       GL_STUB(glConvolutionFilter1D, _gloffset_ConvolutionFilter1D)
-       GL_STUB(glConvolutionFilter2D, _gloffset_ConvolutionFilter2D)
-       GL_STUB(glConvolutionParameterf, _gloffset_ConvolutionParameterf)
-       GL_STUB(glConvolutionParameterfv, _gloffset_ConvolutionParameterfv)
-       GL_STUB(glConvolutionParameteri, _gloffset_ConvolutionParameteri)
-       GL_STUB(glConvolutionParameteriv, _gloffset_ConvolutionParameteriv)
-       GL_STUB(glCopyConvolutionFilter1D, _gloffset_CopyConvolutionFilter1D)
-       GL_STUB(glCopyConvolutionFilter2D, _gloffset_CopyConvolutionFilter2D)
-       GL_STUB(glGetConvolutionFilter, _gloffset_GetConvolutionFilter)
-       GL_STUB(glGetConvolutionParameterfv, _gloffset_GetConvolutionParameterfv)
-       GL_STUB(glGetConvolutionParameteriv, _gloffset_GetConvolutionParameteriv)
-       GL_STUB(glGetSeparableFilter, _gloffset_GetSeparableFilter)
-       GL_STUB(glSeparableFilter2D, _gloffset_SeparableFilter2D)
-       GL_STUB(glGetHistogram, _gloffset_GetHistogram)
-       GL_STUB(glGetHistogramParameterfv, _gloffset_GetHistogramParameterfv)
-       GL_STUB(glGetHistogramParameteriv, _gloffset_GetHistogramParameteriv)
-       GL_STUB(glGetMinmax, _gloffset_GetMinmax)
-       GL_STUB(glGetMinmaxParameterfv, _gloffset_GetMinmaxParameterfv)
-       GL_STUB(glGetMinmaxParameteriv, _gloffset_GetMinmaxParameteriv)
-       GL_STUB(glHistogram, _gloffset_Histogram)
-       GL_STUB(glMinmax, _gloffset_Minmax)
-       GL_STUB(glResetHistogram, _gloffset_ResetHistogram)
-       GL_STUB(glResetMinmax, _gloffset_ResetMinmax)
-       GL_STUB(glTexImage3D, _gloffset_TexImage3D)
-       GL_STUB(glTexSubImage3D, _gloffset_TexSubImage3D)
-       GL_STUB(glCopyTexSubImage3D, _gloffset_CopyTexSubImage3D)
-       GL_STUB(glActiveTextureARB, _gloffset_ActiveTextureARB)
-       GL_STUB(glClientActiveTextureARB, _gloffset_ClientActiveTextureARB)
-       GL_STUB(glMultiTexCoord1dARB, _gloffset_MultiTexCoord1dARB)
-       GL_STUB(glMultiTexCoord1dvARB, _gloffset_MultiTexCoord1dvARB)
-       GL_STUB(glMultiTexCoord1fARB, _gloffset_MultiTexCoord1fARB)
-       GL_STUB(glMultiTexCoord1fvARB, _gloffset_MultiTexCoord1fvARB)
-       GL_STUB(glMultiTexCoord1iARB, _gloffset_MultiTexCoord1iARB)
-       GL_STUB(glMultiTexCoord1ivARB, _gloffset_MultiTexCoord1ivARB)
-       GL_STUB(glMultiTexCoord1sARB, _gloffset_MultiTexCoord1sARB)
-       GL_STUB(glMultiTexCoord1svARB, _gloffset_MultiTexCoord1svARB)
-       GL_STUB(glMultiTexCoord2dARB, _gloffset_MultiTexCoord2dARB)
-       GL_STUB(glMultiTexCoord2dvARB, _gloffset_MultiTexCoord2dvARB)
-       GL_STUB(glMultiTexCoord2fARB, _gloffset_MultiTexCoord2fARB)
-       GL_STUB(glMultiTexCoord2fvARB, _gloffset_MultiTexCoord2fvARB)
-       GL_STUB(glMultiTexCoord2iARB, _gloffset_MultiTexCoord2iARB)
-       GL_STUB(glMultiTexCoord2ivARB, _gloffset_MultiTexCoord2ivARB)
-       GL_STUB(glMultiTexCoord2sARB, _gloffset_MultiTexCoord2sARB)
-       GL_STUB(glMultiTexCoord2svARB, _gloffset_MultiTexCoord2svARB)
-       GL_STUB(glMultiTexCoord3dARB, _gloffset_MultiTexCoord3dARB)
-       GL_STUB(glMultiTexCoord3dvARB, _gloffset_MultiTexCoord3dvARB)
-       GL_STUB(glMultiTexCoord3fARB, _gloffset_MultiTexCoord3fARB)
-       GL_STUB(glMultiTexCoord3fvARB, _gloffset_MultiTexCoord3fvARB)
-       GL_STUB(glMultiTexCoord3iARB, _gloffset_MultiTexCoord3iARB)
-       GL_STUB(glMultiTexCoord3ivARB, _gloffset_MultiTexCoord3ivARB)
-       GL_STUB(glMultiTexCoord3sARB, _gloffset_MultiTexCoord3sARB)
-       GL_STUB(glMultiTexCoord3svARB, _gloffset_MultiTexCoord3svARB)
-       GL_STUB(glMultiTexCoord4dARB, _gloffset_MultiTexCoord4dARB)
-       GL_STUB(glMultiTexCoord4dvARB, _gloffset_MultiTexCoord4dvARB)
-       GL_STUB(glMultiTexCoord4fARB, _gloffset_MultiTexCoord4fARB)
-       GL_STUB(glMultiTexCoord4fvARB, _gloffset_MultiTexCoord4fvARB)
-       GL_STUB(glMultiTexCoord4iARB, _gloffset_MultiTexCoord4iARB)
-       GL_STUB(glMultiTexCoord4ivARB, _gloffset_MultiTexCoord4ivARB)
-       GL_STUB(glMultiTexCoord4sARB, _gloffset_MultiTexCoord4sARB)
-       GL_STUB(glMultiTexCoord4svARB, _gloffset_MultiTexCoord4svARB)
-       GL_STUB(glAttachShader, _gloffset_AttachShader)
-       GL_STUB(glCreateProgram, _gloffset_CreateProgram)
-       GL_STUB(glCreateShader, _gloffset_CreateShader)
-       GL_STUB(glDeleteProgram, _gloffset_DeleteProgram)
-       GL_STUB(glDeleteShader, _gloffset_DeleteShader)
-       GL_STUB(glDetachShader, _gloffset_DetachShader)
-       GL_STUB(glGetAttachedShaders, _gloffset_GetAttachedShaders)
-       GL_STUB(glGetProgramInfoLog, _gloffset_GetProgramInfoLog)
-       GL_STUB(glGetProgramiv, _gloffset_GetProgramiv)
-       GL_STUB(glGetShaderInfoLog, _gloffset_GetShaderInfoLog)
-       GL_STUB(glGetShaderiv, _gloffset_GetShaderiv)
-       GL_STUB(glIsProgram, _gloffset_IsProgram)
-       GL_STUB(glIsShader, _gloffset_IsShader)
-       GL_STUB(glStencilFuncSeparate, _gloffset_StencilFuncSeparate)
-       GL_STUB(glStencilMaskSeparate, _gloffset_StencilMaskSeparate)
-       GL_STUB(glStencilOpSeparate, _gloffset_StencilOpSeparate)
-       GL_STUB(glUniformMatrix2x3fv, _gloffset_UniformMatrix2x3fv)
-       GL_STUB(glUniformMatrix2x4fv, _gloffset_UniformMatrix2x4fv)
-       GL_STUB(glUniformMatrix3x2fv, _gloffset_UniformMatrix3x2fv)
-       GL_STUB(glUniformMatrix3x4fv, _gloffset_UniformMatrix3x4fv)
-       GL_STUB(glUniformMatrix4x2fv, _gloffset_UniformMatrix4x2fv)
-       GL_STUB(glUniformMatrix4x3fv, _gloffset_UniformMatrix4x3fv)
-       GL_STUB(glDrawArraysInstanced, _gloffset_DrawArraysInstanced)
-       GL_STUB(glDrawElementsInstanced, _gloffset_DrawElementsInstanced)
-       GL_STUB(glLoadTransposeMatrixdARB, _gloffset_LoadTransposeMatrixdARB)
-       GL_STUB(glLoadTransposeMatrixfARB, _gloffset_LoadTransposeMatrixfARB)
-       GL_STUB(glMultTransposeMatrixdARB, _gloffset_MultTransposeMatrixdARB)
-       GL_STUB(glMultTransposeMatrixfARB, _gloffset_MultTransposeMatrixfARB)
-       GL_STUB(glSampleCoverageARB, _gloffset_SampleCoverageARB)
-       GL_STUB(glCompressedTexImage1DARB, _gloffset_CompressedTexImage1DARB)
-       GL_STUB(glCompressedTexImage2DARB, _gloffset_CompressedTexImage2DARB)
-       GL_STUB(glCompressedTexImage3DARB, _gloffset_CompressedTexImage3DARB)
-       GL_STUB(glCompressedTexSubImage1DARB, _gloffset_CompressedTexSubImage1DARB)
-       GL_STUB(glCompressedTexSubImage2DARB, _gloffset_CompressedTexSubImage2DARB)
-       GL_STUB(glCompressedTexSubImage3DARB, _gloffset_CompressedTexSubImage3DARB)
-       GL_STUB(glGetCompressedTexImageARB, _gloffset_GetCompressedTexImageARB)
-       GL_STUB(glDisableVertexAttribArrayARB, _gloffset_DisableVertexAttribArrayARB)
-       GL_STUB(glEnableVertexAttribArrayARB, _gloffset_EnableVertexAttribArrayARB)
-       GL_STUB(glGetProgramEnvParameterdvARB, _gloffset_GetProgramEnvParameterdvARB)
-       GL_STUB(glGetProgramEnvParameterfvARB, _gloffset_GetProgramEnvParameterfvARB)
-       GL_STUB(glGetProgramLocalParameterdvARB, _gloffset_GetProgramLocalParameterdvARB)
-       GL_STUB(glGetProgramLocalParameterfvARB, _gloffset_GetProgramLocalParameterfvARB)
-       GL_STUB(glGetProgramStringARB, _gloffset_GetProgramStringARB)
-       GL_STUB(glGetProgramivARB, _gloffset_GetProgramivARB)
-       GL_STUB(glGetVertexAttribdvARB, _gloffset_GetVertexAttribdvARB)
-       GL_STUB(glGetVertexAttribfvARB, _gloffset_GetVertexAttribfvARB)
-       GL_STUB(glGetVertexAttribivARB, _gloffset_GetVertexAttribivARB)
-       GL_STUB(glProgramEnvParameter4dARB, _gloffset_ProgramEnvParameter4dARB)
-       GL_STUB(glProgramEnvParameter4dvARB, _gloffset_ProgramEnvParameter4dvARB)
-       GL_STUB(glProgramEnvParameter4fARB, _gloffset_ProgramEnvParameter4fARB)
-       GL_STUB(glProgramEnvParameter4fvARB, _gloffset_ProgramEnvParameter4fvARB)
-       GL_STUB(glProgramLocalParameter4dARB, _gloffset_ProgramLocalParameter4dARB)
-       GL_STUB(glProgramLocalParameter4dvARB, _gloffset_ProgramLocalParameter4dvARB)
-       GL_STUB(glProgramLocalParameter4fARB, _gloffset_ProgramLocalParameter4fARB)
-       GL_STUB(glProgramLocalParameter4fvARB, _gloffset_ProgramLocalParameter4fvARB)
-       GL_STUB(glProgramStringARB, _gloffset_ProgramStringARB)
-       GL_STUB(glVertexAttrib1dARB, _gloffset_VertexAttrib1dARB)
-       GL_STUB(glVertexAttrib1dvARB, _gloffset_VertexAttrib1dvARB)
-       GL_STUB(glVertexAttrib1fARB, _gloffset_VertexAttrib1fARB)
-       GL_STUB(glVertexAttrib1fvARB, _gloffset_VertexAttrib1fvARB)
-       GL_STUB(glVertexAttrib1sARB, _gloffset_VertexAttrib1sARB)
-       GL_STUB(glVertexAttrib1svARB, _gloffset_VertexAttrib1svARB)
-       GL_STUB(glVertexAttrib2dARB, _gloffset_VertexAttrib2dARB)
-       GL_STUB(glVertexAttrib2dvARB, _gloffset_VertexAttrib2dvARB)
-       GL_STUB(glVertexAttrib2fARB, _gloffset_VertexAttrib2fARB)
-       GL_STUB(glVertexAttrib2fvARB, _gloffset_VertexAttrib2fvARB)
-       GL_STUB(glVertexAttrib2sARB, _gloffset_VertexAttrib2sARB)
-       GL_STUB(glVertexAttrib2svARB, _gloffset_VertexAttrib2svARB)
-       GL_STUB(glVertexAttrib3dARB, _gloffset_VertexAttrib3dARB)
-       GL_STUB(glVertexAttrib3dvARB, _gloffset_VertexAttrib3dvARB)
-       GL_STUB(glVertexAttrib3fARB, _gloffset_VertexAttrib3fARB)
-       GL_STUB(glVertexAttrib3fvARB, _gloffset_VertexAttrib3fvARB)
-       GL_STUB(glVertexAttrib3sARB, _gloffset_VertexAttrib3sARB)
-       GL_STUB(glVertexAttrib3svARB, _gloffset_VertexAttrib3svARB)
-       GL_STUB(glVertexAttrib4NbvARB, _gloffset_VertexAttrib4NbvARB)
-       GL_STUB(glVertexAttrib4NivARB, _gloffset_VertexAttrib4NivARB)
-       GL_STUB(glVertexAttrib4NsvARB, _gloffset_VertexAttrib4NsvARB)
-       GL_STUB(glVertexAttrib4NubARB, _gloffset_VertexAttrib4NubARB)
-       GL_STUB(glVertexAttrib4NubvARB, _gloffset_VertexAttrib4NubvARB)
-       GL_STUB(glVertexAttrib4NuivARB, _gloffset_VertexAttrib4NuivARB)
-       GL_STUB(glVertexAttrib4NusvARB, _gloffset_VertexAttrib4NusvARB)
-       GL_STUB(glVertexAttrib4bvARB, _gloffset_VertexAttrib4bvARB)
-       GL_STUB(glVertexAttrib4dARB, _gloffset_VertexAttrib4dARB)
-       GL_STUB(glVertexAttrib4dvARB, _gloffset_VertexAttrib4dvARB)
-       GL_STUB(glVertexAttrib4fARB, _gloffset_VertexAttrib4fARB)
-       GL_STUB(glVertexAttrib4fvARB, _gloffset_VertexAttrib4fvARB)
-       GL_STUB(glVertexAttrib4ivARB, _gloffset_VertexAttrib4ivARB)
-       GL_STUB(glVertexAttrib4sARB, _gloffset_VertexAttrib4sARB)
-       GL_STUB(glVertexAttrib4svARB, _gloffset_VertexAttrib4svARB)
-       GL_STUB(glVertexAttrib4ubvARB, _gloffset_VertexAttrib4ubvARB)
-       GL_STUB(glVertexAttrib4uivARB, _gloffset_VertexAttrib4uivARB)
-       GL_STUB(glVertexAttrib4usvARB, _gloffset_VertexAttrib4usvARB)
-       GL_STUB(glVertexAttribPointerARB, _gloffset_VertexAttribPointerARB)
-       GL_STUB(glBindBufferARB, _gloffset_BindBufferARB)
-       GL_STUB(glBufferDataARB, _gloffset_BufferDataARB)
-       GL_STUB(glBufferSubDataARB, _gloffset_BufferSubDataARB)
-       GL_STUB(glDeleteBuffersARB, _gloffset_DeleteBuffersARB)
-       GL_STUB(glGenBuffersARB, _gloffset_GenBuffersARB)
-       GL_STUB(glGetBufferParameterivARB, _gloffset_GetBufferParameterivARB)
-       GL_STUB(glGetBufferPointervARB, _gloffset_GetBufferPointervARB)
-       GL_STUB(glGetBufferSubDataARB, _gloffset_GetBufferSubDataARB)
-       GL_STUB(glIsBufferARB, _gloffset_IsBufferARB)
-       GL_STUB(glMapBufferARB, _gloffset_MapBufferARB)
-       GL_STUB(glUnmapBufferARB, _gloffset_UnmapBufferARB)
-       GL_STUB(glBeginQueryARB, _gloffset_BeginQueryARB)
-       GL_STUB(glDeleteQueriesARB, _gloffset_DeleteQueriesARB)
-       GL_STUB(glEndQueryARB, _gloffset_EndQueryARB)
-       GL_STUB(glGenQueriesARB, _gloffset_GenQueriesARB)
-       GL_STUB(glGetQueryObjectivARB, _gloffset_GetQueryObjectivARB)
-       GL_STUB(glGetQueryObjectuivARB, _gloffset_GetQueryObjectuivARB)
-       GL_STUB(glGetQueryivARB, _gloffset_GetQueryivARB)
-       GL_STUB(glIsQueryARB, _gloffset_IsQueryARB)
-       GL_STUB(glAttachObjectARB, _gloffset_AttachObjectARB)
-       GL_STUB(glCompileShaderARB, _gloffset_CompileShaderARB)
-       GL_STUB(glCreateProgramObjectARB, _gloffset_CreateProgramObjectARB)
-       GL_STUB(glCreateShaderObjectARB, _gloffset_CreateShaderObjectARB)
-       GL_STUB(glDeleteObjectARB, _gloffset_DeleteObjectARB)
-       GL_STUB(glDetachObjectARB, _gloffset_DetachObjectARB)
-       GL_STUB(glGetActiveUniformARB, _gloffset_GetActiveUniformARB)
-       GL_STUB(glGetAttachedObjectsARB, _gloffset_GetAttachedObjectsARB)
-       GL_STUB(glGetHandleARB, _gloffset_GetHandleARB)
-       GL_STUB(glGetInfoLogARB, _gloffset_GetInfoLogARB)
-       GL_STUB(glGetObjectParameterfvARB, _gloffset_GetObjectParameterfvARB)
-       GL_STUB(glGetObjectParameterivARB, _gloffset_GetObjectParameterivARB)
-       GL_STUB(glGetShaderSourceARB, _gloffset_GetShaderSourceARB)
-       GL_STUB(glGetUniformLocationARB, _gloffset_GetUniformLocationARB)
-       GL_STUB(glGetUniformfvARB, _gloffset_GetUniformfvARB)
-       GL_STUB(glGetUniformivARB, _gloffset_GetUniformivARB)
-       GL_STUB(glLinkProgramARB, _gloffset_LinkProgramARB)
-       GL_STUB(glShaderSourceARB, _gloffset_ShaderSourceARB)
-       GL_STUB(glUniform1fARB, _gloffset_Uniform1fARB)
-       GL_STUB(glUniform1fvARB, _gloffset_Uniform1fvARB)
-       GL_STUB(glUniform1iARB, _gloffset_Uniform1iARB)
-       GL_STUB(glUniform1ivARB, _gloffset_Uniform1ivARB)
-       GL_STUB(glUniform2fARB, _gloffset_Uniform2fARB)
-       GL_STUB(glUniform2fvARB, _gloffset_Uniform2fvARB)
-       GL_STUB(glUniform2iARB, _gloffset_Uniform2iARB)
-       GL_STUB(glUniform2ivARB, _gloffset_Uniform2ivARB)
-       GL_STUB(glUniform3fARB, _gloffset_Uniform3fARB)
-       GL_STUB(glUniform3fvARB, _gloffset_Uniform3fvARB)
-       GL_STUB(glUniform3iARB, _gloffset_Uniform3iARB)
-       GL_STUB(glUniform3ivARB, _gloffset_Uniform3ivARB)
-       GL_STUB(glUniform4fARB, _gloffset_Uniform4fARB)
-       GL_STUB(glUniform4fvARB, _gloffset_Uniform4fvARB)
-       GL_STUB(glUniform4iARB, _gloffset_Uniform4iARB)
-       GL_STUB(glUniform4ivARB, _gloffset_Uniform4ivARB)
-       GL_STUB(glUniformMatrix2fvARB, _gloffset_UniformMatrix2fvARB)
-       GL_STUB(glUniformMatrix3fvARB, _gloffset_UniformMatrix3fvARB)
-       GL_STUB(glUniformMatrix4fvARB, _gloffset_UniformMatrix4fvARB)
-       GL_STUB(glUseProgramObjectARB, _gloffset_UseProgramObjectARB)
-       GL_STUB(glValidateProgramARB, _gloffset_ValidateProgramARB)
-       GL_STUB(glBindAttribLocationARB, _gloffset_BindAttribLocationARB)
-       GL_STUB(glGetActiveAttribARB, _gloffset_GetActiveAttribARB)
-       GL_STUB(glGetAttribLocationARB, _gloffset_GetAttribLocationARB)
-       GL_STUB(glDrawBuffersARB, _gloffset_DrawBuffersARB)
-       GL_STUB(glRenderbufferStorageMultisample, _gloffset_RenderbufferStorageMultisample)
-       GL_STUB(glFlushMappedBufferRange, _gloffset_FlushMappedBufferRange)
-       GL_STUB(glMapBufferRange, _gloffset_MapBufferRange)
-       GL_STUB(glBindVertexArray, _gloffset_BindVertexArray)
-       GL_STUB(glGenVertexArrays, _gloffset_GenVertexArrays)
-       GL_STUB(glCopyBufferSubData, _gloffset_CopyBufferSubData)
-       GL_STUB(glClientWaitSync, _gloffset_ClientWaitSync)
-       GL_STUB(glDeleteSync, _gloffset_DeleteSync)
-       GL_STUB(glFenceSync, _gloffset_FenceSync)
-       GL_STUB(glGetInteger64v, _gloffset_GetInteger64v)
-       GL_STUB(glGetSynciv, _gloffset_GetSynciv)
-       GL_STUB(glIsSync, _gloffset_IsSync)
-       GL_STUB(glWaitSync, _gloffset_WaitSync)
-       GL_STUB(glDrawElementsBaseVertex, _gloffset_DrawElementsBaseVertex)
-       GL_STUB(glDrawRangeElementsBaseVertex, _gloffset_DrawRangeElementsBaseVertex)
-       GL_STUB(glMultiDrawElementsBaseVertex, _gloffset_MultiDrawElementsBaseVertex)
-       GL_STUB(glPolygonOffsetEXT, _gloffset_PolygonOffsetEXT)
-       GL_STUB(gl_dispatch_stub_580, _gloffset_GetPixelTexGenParameterfvSGIS)
-       HIDDEN(gl_dispatch_stub_580)
-       GL_STUB(gl_dispatch_stub_581, _gloffset_GetPixelTexGenParameterivSGIS)
-       HIDDEN(gl_dispatch_stub_581)
-       GL_STUB(gl_dispatch_stub_582, _gloffset_PixelTexGenParameterfSGIS)
-       HIDDEN(gl_dispatch_stub_582)
-       GL_STUB(gl_dispatch_stub_583, _gloffset_PixelTexGenParameterfvSGIS)
-       HIDDEN(gl_dispatch_stub_583)
-       GL_STUB(gl_dispatch_stub_584, _gloffset_PixelTexGenParameteriSGIS)
-       HIDDEN(gl_dispatch_stub_584)
-       GL_STUB(gl_dispatch_stub_585, _gloffset_PixelTexGenParameterivSGIS)
-       HIDDEN(gl_dispatch_stub_585)
-       GL_STUB(gl_dispatch_stub_586, _gloffset_SampleMaskSGIS)
-       HIDDEN(gl_dispatch_stub_586)
-       GL_STUB(gl_dispatch_stub_587, _gloffset_SamplePatternSGIS)
-       HIDDEN(gl_dispatch_stub_587)
-       GL_STUB(glColorPointerEXT, _gloffset_ColorPointerEXT)
-       GL_STUB(glEdgeFlagPointerEXT, _gloffset_EdgeFlagPointerEXT)
-       GL_STUB(glIndexPointerEXT, _gloffset_IndexPointerEXT)
-       GL_STUB(glNormalPointerEXT, _gloffset_NormalPointerEXT)
-       GL_STUB(glTexCoordPointerEXT, _gloffset_TexCoordPointerEXT)
-       GL_STUB(glVertexPointerEXT, _gloffset_VertexPointerEXT)
-       GL_STUB(glPointParameterfEXT, _gloffset_PointParameterfEXT)
-       GL_STUB(glPointParameterfvEXT, _gloffset_PointParameterfvEXT)
-       GL_STUB(glLockArraysEXT, _gloffset_LockArraysEXT)
-       GL_STUB(glUnlockArraysEXT, _gloffset_UnlockArraysEXT)
-       GL_STUB(gl_dispatch_stub_598, _gloffset_CullParameterdvEXT)
-       HIDDEN(gl_dispatch_stub_598)
-       GL_STUB(gl_dispatch_stub_599, _gloffset_CullParameterfvEXT)
-       HIDDEN(gl_dispatch_stub_599)
-       GL_STUB(glSecondaryColor3bEXT, _gloffset_SecondaryColor3bEXT)
-       GL_STUB(glSecondaryColor3bvEXT, _gloffset_SecondaryColor3bvEXT)
-       GL_STUB(glSecondaryColor3dEXT, _gloffset_SecondaryColor3dEXT)
-       GL_STUB(glSecondaryColor3dvEXT, _gloffset_SecondaryColor3dvEXT)
-       GL_STUB(glSecondaryColor3fEXT, _gloffset_SecondaryColor3fEXT)
-       GL_STUB(glSecondaryColor3fvEXT, _gloffset_SecondaryColor3fvEXT)
-       GL_STUB(glSecondaryColor3iEXT, _gloffset_SecondaryColor3iEXT)
-       GL_STUB(glSecondaryColor3ivEXT, _gloffset_SecondaryColor3ivEXT)
-       GL_STUB(glSecondaryColor3sEXT, _gloffset_SecondaryColor3sEXT)
-       GL_STUB(glSecondaryColor3svEXT, _gloffset_SecondaryColor3svEXT)
-       GL_STUB(glSecondaryColor3ubEXT, _gloffset_SecondaryColor3ubEXT)
-       GL_STUB(glSecondaryColor3ubvEXT, _gloffset_SecondaryColor3ubvEXT)
-       GL_STUB(glSecondaryColor3uiEXT, _gloffset_SecondaryColor3uiEXT)
-       GL_STUB(glSecondaryColor3uivEXT, _gloffset_SecondaryColor3uivEXT)
-       GL_STUB(glSecondaryColor3usEXT, _gloffset_SecondaryColor3usEXT)
-       GL_STUB(glSecondaryColor3usvEXT, _gloffset_SecondaryColor3usvEXT)
-       GL_STUB(glSecondaryColorPointerEXT, _gloffset_SecondaryColorPointerEXT)
-       GL_STUB(glMultiDrawArraysEXT, _gloffset_MultiDrawArraysEXT)
-       GL_STUB(glMultiDrawElementsEXT, _gloffset_MultiDrawElementsEXT)
-       GL_STUB(glFogCoordPointerEXT, _gloffset_FogCoordPointerEXT)
-       GL_STUB(glFogCoorddEXT, _gloffset_FogCoorddEXT)
-       GL_STUB(glFogCoorddvEXT, _gloffset_FogCoorddvEXT)
-       GL_STUB(glFogCoordfEXT, _gloffset_FogCoordfEXT)
-       GL_STUB(glFogCoordfvEXT, _gloffset_FogCoordfvEXT)
-       GL_STUB(gl_dispatch_stub_624, _gloffset_PixelTexGenSGIX)
-       HIDDEN(gl_dispatch_stub_624)
-       GL_STUB(glBlendFuncSeparateEXT, _gloffset_BlendFuncSeparateEXT)
-       GL_STUB(glFlushVertexArrayRangeNV, _gloffset_FlushVertexArrayRangeNV)
-       GL_STUB(glVertexArrayRangeNV, _gloffset_VertexArrayRangeNV)
-       GL_STUB(glCombinerInputNV, _gloffset_CombinerInputNV)
-       GL_STUB(glCombinerOutputNV, _gloffset_CombinerOutputNV)
-       GL_STUB(glCombinerParameterfNV, _gloffset_CombinerParameterfNV)
-       GL_STUB(glCombinerParameterfvNV, _gloffset_CombinerParameterfvNV)
-       GL_STUB(glCombinerParameteriNV, _gloffset_CombinerParameteriNV)
-       GL_STUB(glCombinerParameterivNV, _gloffset_CombinerParameterivNV)
-       GL_STUB(glFinalCombinerInputNV, _gloffset_FinalCombinerInputNV)
-       GL_STUB(glGetCombinerInputParameterfvNV, _gloffset_GetCombinerInputParameterfvNV)
-       GL_STUB(glGetCombinerInputParameterivNV, _gloffset_GetCombinerInputParameterivNV)
-       GL_STUB(glGetCombinerOutputParameterfvNV, _gloffset_GetCombinerOutputParameterfvNV)
-       GL_STUB(glGetCombinerOutputParameterivNV, _gloffset_GetCombinerOutputParameterivNV)
-       GL_STUB(glGetFinalCombinerInputParameterfvNV, _gloffset_GetFinalCombinerInputParameterfvNV)
-       GL_STUB(glGetFinalCombinerInputParameterivNV, _gloffset_GetFinalCombinerInputParameterivNV)
-       GL_STUB(glResizeBuffersMESA, _gloffset_ResizeBuffersMESA)
-       GL_STUB(glWindowPos2dMESA, _gloffset_WindowPos2dMESA)
-       GL_STUB(glWindowPos2dvMESA, _gloffset_WindowPos2dvMESA)
-       GL_STUB(glWindowPos2fMESA, _gloffset_WindowPos2fMESA)
-       GL_STUB(glWindowPos2fvMESA, _gloffset_WindowPos2fvMESA)
-       GL_STUB(glWindowPos2iMESA, _gloffset_WindowPos2iMESA)
-       GL_STUB(glWindowPos2ivMESA, _gloffset_WindowPos2ivMESA)
-       GL_STUB(glWindowPos2sMESA, _gloffset_WindowPos2sMESA)
-       GL_STUB(glWindowPos2svMESA, _gloffset_WindowPos2svMESA)
-       GL_STUB(glWindowPos3dMESA, _gloffset_WindowPos3dMESA)
-       GL_STUB(glWindowPos3dvMESA, _gloffset_WindowPos3dvMESA)
-       GL_STUB(glWindowPos3fMESA, _gloffset_WindowPos3fMESA)
-       GL_STUB(glWindowPos3fvMESA, _gloffset_WindowPos3fvMESA)
-       GL_STUB(glWindowPos3iMESA, _gloffset_WindowPos3iMESA)
-       GL_STUB(glWindowPos3ivMESA, _gloffset_WindowPos3ivMESA)
-       GL_STUB(glWindowPos3sMESA, _gloffset_WindowPos3sMESA)
-       GL_STUB(glWindowPos3svMESA, _gloffset_WindowPos3svMESA)
-       GL_STUB(glWindowPos4dMESA, _gloffset_WindowPos4dMESA)
-       GL_STUB(glWindowPos4dvMESA, _gloffset_WindowPos4dvMESA)
-       GL_STUB(glWindowPos4fMESA, _gloffset_WindowPos4fMESA)
-       GL_STUB(glWindowPos4fvMESA, _gloffset_WindowPos4fvMESA)
-       GL_STUB(glWindowPos4iMESA, _gloffset_WindowPos4iMESA)
-       GL_STUB(glWindowPos4ivMESA, _gloffset_WindowPos4ivMESA)
-       GL_STUB(glWindowPos4sMESA, _gloffset_WindowPos4sMESA)
-       GL_STUB(glWindowPos4svMESA, _gloffset_WindowPos4svMESA)
-       GL_STUB(gl_dispatch_stub_666, _gloffset_MultiModeDrawArraysIBM)
-       HIDDEN(gl_dispatch_stub_666)
-       GL_STUB(gl_dispatch_stub_667, _gloffset_MultiModeDrawElementsIBM)
-       HIDDEN(gl_dispatch_stub_667)
-       GL_STUB(gl_dispatch_stub_668, _gloffset_DeleteFencesNV)
-       HIDDEN(gl_dispatch_stub_668)
-       GL_STUB(gl_dispatch_stub_669, _gloffset_FinishFenceNV)
-       HIDDEN(gl_dispatch_stub_669)
-       GL_STUB(gl_dispatch_stub_670, _gloffset_GenFencesNV)
-       HIDDEN(gl_dispatch_stub_670)
-       GL_STUB(gl_dispatch_stub_671, _gloffset_GetFenceivNV)
-       HIDDEN(gl_dispatch_stub_671)
-       GL_STUB(gl_dispatch_stub_672, _gloffset_IsFenceNV)
-       HIDDEN(gl_dispatch_stub_672)
-       GL_STUB(gl_dispatch_stub_673, _gloffset_SetFenceNV)
-       HIDDEN(gl_dispatch_stub_673)
-       GL_STUB(gl_dispatch_stub_674, _gloffset_TestFenceNV)
-       HIDDEN(gl_dispatch_stub_674)
-       GL_STUB(glAreProgramsResidentNV, _gloffset_AreProgramsResidentNV)
-       GL_STUB(glBindProgramNV, _gloffset_BindProgramNV)
-       GL_STUB(glDeleteProgramsNV, _gloffset_DeleteProgramsNV)
-       GL_STUB(glExecuteProgramNV, _gloffset_ExecuteProgramNV)
-       GL_STUB(glGenProgramsNV, _gloffset_GenProgramsNV)
-       GL_STUB(glGetProgramParameterdvNV, _gloffset_GetProgramParameterdvNV)
-       GL_STUB(glGetProgramParameterfvNV, _gloffset_GetProgramParameterfvNV)
-       GL_STUB(glGetProgramStringNV, _gloffset_GetProgramStringNV)
-       GL_STUB(glGetProgramivNV, _gloffset_GetProgramivNV)
-       GL_STUB(glGetTrackMatrixivNV, _gloffset_GetTrackMatrixivNV)
-       GL_STUB(glGetVertexAttribPointervNV, _gloffset_GetVertexAttribPointervNV)
-       GL_STUB(glGetVertexAttribdvNV, _gloffset_GetVertexAttribdvNV)
-       GL_STUB(glGetVertexAttribfvNV, _gloffset_GetVertexAttribfvNV)
-       GL_STUB(glGetVertexAttribivNV, _gloffset_GetVertexAttribivNV)
-       GL_STUB(glIsProgramNV, _gloffset_IsProgramNV)
-       GL_STUB(glLoadProgramNV, _gloffset_LoadProgramNV)
-       GL_STUB(glProgramParameters4dvNV, _gloffset_ProgramParameters4dvNV)
-       GL_STUB(glProgramParameters4fvNV, _gloffset_ProgramParameters4fvNV)
-       GL_STUB(glRequestResidentProgramsNV, _gloffset_RequestResidentProgramsNV)
-       GL_STUB(glTrackMatrixNV, _gloffset_TrackMatrixNV)
-       GL_STUB(glVertexAttrib1dNV, _gloffset_VertexAttrib1dNV)
-       GL_STUB(glVertexAttrib1dvNV, _gloffset_VertexAttrib1dvNV)
-       GL_STUB(glVertexAttrib1fNV, _gloffset_VertexAttrib1fNV)
-       GL_STUB(glVertexAttrib1fvNV, _gloffset_VertexAttrib1fvNV)
-       GL_STUB(glVertexAttrib1sNV, _gloffset_VertexAttrib1sNV)
-       GL_STUB(glVertexAttrib1svNV, _gloffset_VertexAttrib1svNV)
-       GL_STUB(glVertexAttrib2dNV, _gloffset_VertexAttrib2dNV)
-       GL_STUB(glVertexAttrib2dvNV, _gloffset_VertexAttrib2dvNV)
-       GL_STUB(glVertexAttrib2fNV, _gloffset_VertexAttrib2fNV)
-       GL_STUB(glVertexAttrib2fvNV, _gloffset_VertexAttrib2fvNV)
-       GL_STUB(glVertexAttrib2sNV, _gloffset_VertexAttrib2sNV)
-       GL_STUB(glVertexAttrib2svNV, _gloffset_VertexAttrib2svNV)
-       GL_STUB(glVertexAttrib3dNV, _gloffset_VertexAttrib3dNV)
-       GL_STUB(glVertexAttrib3dvNV, _gloffset_VertexAttrib3dvNV)
-       GL_STUB(glVertexAttrib3fNV, _gloffset_VertexAttrib3fNV)
-       GL_STUB(glVertexAttrib3fvNV, _gloffset_VertexAttrib3fvNV)
-       GL_STUB(glVertexAttrib3sNV, _gloffset_VertexAttrib3sNV)
-       GL_STUB(glVertexAttrib3svNV, _gloffset_VertexAttrib3svNV)
-       GL_STUB(glVertexAttrib4dNV, _gloffset_VertexAttrib4dNV)
-       GL_STUB(glVertexAttrib4dvNV, _gloffset_VertexAttrib4dvNV)
-       GL_STUB(glVertexAttrib4fNV, _gloffset_VertexAttrib4fNV)
-       GL_STUB(glVertexAttrib4fvNV, _gloffset_VertexAttrib4fvNV)
-       GL_STUB(glVertexAttrib4sNV, _gloffset_VertexAttrib4sNV)
-       GL_STUB(glVertexAttrib4svNV, _gloffset_VertexAttrib4svNV)
-       GL_STUB(glVertexAttrib4ubNV, _gloffset_VertexAttrib4ubNV)
-       GL_STUB(glVertexAttrib4ubvNV, _gloffset_VertexAttrib4ubvNV)
-       GL_STUB(glVertexAttribPointerNV, _gloffset_VertexAttribPointerNV)
-       GL_STUB(glVertexAttribs1dvNV, _gloffset_VertexAttribs1dvNV)
-       GL_STUB(glVertexAttribs1fvNV, _gloffset_VertexAttribs1fvNV)
-       GL_STUB(glVertexAttribs1svNV, _gloffset_VertexAttribs1svNV)
-       GL_STUB(glVertexAttribs2dvNV, _gloffset_VertexAttribs2dvNV)
-       GL_STUB(glVertexAttribs2fvNV, _gloffset_VertexAttribs2fvNV)
-       GL_STUB(glVertexAttribs2svNV, _gloffset_VertexAttribs2svNV)
-       GL_STUB(glVertexAttribs3dvNV, _gloffset_VertexAttribs3dvNV)
-       GL_STUB(glVertexAttribs3fvNV, _gloffset_VertexAttribs3fvNV)
-       GL_STUB(glVertexAttribs3svNV, _gloffset_VertexAttribs3svNV)
-       GL_STUB(glVertexAttribs4dvNV, _gloffset_VertexAttribs4dvNV)
-       GL_STUB(glVertexAttribs4fvNV, _gloffset_VertexAttribs4fvNV)
-       GL_STUB(glVertexAttribs4svNV, _gloffset_VertexAttribs4svNV)
-       GL_STUB(glVertexAttribs4ubvNV, _gloffset_VertexAttribs4ubvNV)
-       GL_STUB(glGetTexBumpParameterfvATI, _gloffset_GetTexBumpParameterfvATI)
-       GL_STUB(glGetTexBumpParameterivATI, _gloffset_GetTexBumpParameterivATI)
-       GL_STUB(glTexBumpParameterfvATI, _gloffset_TexBumpParameterfvATI)
-       GL_STUB(glTexBumpParameterivATI, _gloffset_TexBumpParameterivATI)
-       GL_STUB(glAlphaFragmentOp1ATI, _gloffset_AlphaFragmentOp1ATI)
-       GL_STUB(glAlphaFragmentOp2ATI, _gloffset_AlphaFragmentOp2ATI)
-       GL_STUB(glAlphaFragmentOp3ATI, _gloffset_AlphaFragmentOp3ATI)
-       GL_STUB(glBeginFragmentShaderATI, _gloffset_BeginFragmentShaderATI)
-       GL_STUB(glBindFragmentShaderATI, _gloffset_BindFragmentShaderATI)
-       GL_STUB(glColorFragmentOp1ATI, _gloffset_ColorFragmentOp1ATI)
-       GL_STUB(glColorFragmentOp2ATI, _gloffset_ColorFragmentOp2ATI)
-       GL_STUB(glColorFragmentOp3ATI, _gloffset_ColorFragmentOp3ATI)
-       GL_STUB(glDeleteFragmentShaderATI, _gloffset_DeleteFragmentShaderATI)
-       GL_STUB(glEndFragmentShaderATI, _gloffset_EndFragmentShaderATI)
-       GL_STUB(glGenFragmentShadersATI, _gloffset_GenFragmentShadersATI)
-       GL_STUB(glPassTexCoordATI, _gloffset_PassTexCoordATI)
-       GL_STUB(glSampleMapATI, _gloffset_SampleMapATI)
-       GL_STUB(glSetFragmentShaderConstantATI, _gloffset_SetFragmentShaderConstantATI)
-       GL_STUB(glPointParameteriNV, _gloffset_PointParameteriNV)
-       GL_STUB(glPointParameterivNV, _gloffset_PointParameterivNV)
-       GL_STUB(gl_dispatch_stub_755, _gloffset_ActiveStencilFaceEXT)
-       HIDDEN(gl_dispatch_stub_755)
-       GL_STUB(gl_dispatch_stub_756, _gloffset_BindVertexArrayAPPLE)
-       HIDDEN(gl_dispatch_stub_756)
-       GL_STUB(gl_dispatch_stub_757, _gloffset_DeleteVertexArraysAPPLE)
-       HIDDEN(gl_dispatch_stub_757)
-       GL_STUB(gl_dispatch_stub_758, _gloffset_GenVertexArraysAPPLE)
-       HIDDEN(gl_dispatch_stub_758)
-       GL_STUB(gl_dispatch_stub_759, _gloffset_IsVertexArrayAPPLE)
-       HIDDEN(gl_dispatch_stub_759)
-       GL_STUB(glGetProgramNamedParameterdvNV, _gloffset_GetProgramNamedParameterdvNV)
-       GL_STUB(glGetProgramNamedParameterfvNV, _gloffset_GetProgramNamedParameterfvNV)
-       GL_STUB(glProgramNamedParameter4dNV, _gloffset_ProgramNamedParameter4dNV)
-       GL_STUB(glProgramNamedParameter4dvNV, _gloffset_ProgramNamedParameter4dvNV)
-       GL_STUB(glProgramNamedParameter4fNV, _gloffset_ProgramNamedParameter4fNV)
-       GL_STUB(glProgramNamedParameter4fvNV, _gloffset_ProgramNamedParameter4fvNV)
-       GL_STUB(gl_dispatch_stub_766, _gloffset_DepthBoundsEXT)
-       HIDDEN(gl_dispatch_stub_766)
-       GL_STUB(gl_dispatch_stub_767, _gloffset_BlendEquationSeparateEXT)
-       HIDDEN(gl_dispatch_stub_767)
-       GL_STUB(glBindFramebufferEXT, _gloffset_BindFramebufferEXT)
-       GL_STUB(glBindRenderbufferEXT, _gloffset_BindRenderbufferEXT)
-       GL_STUB(glCheckFramebufferStatusEXT, _gloffset_CheckFramebufferStatusEXT)
-       GL_STUB(glDeleteFramebuffersEXT, _gloffset_DeleteFramebuffersEXT)
-       GL_STUB(glDeleteRenderbuffersEXT, _gloffset_DeleteRenderbuffersEXT)
-       GL_STUB(glFramebufferRenderbufferEXT, _gloffset_FramebufferRenderbufferEXT)
-       GL_STUB(glFramebufferTexture1DEXT, _gloffset_FramebufferTexture1DEXT)
-       GL_STUB(glFramebufferTexture2DEXT, _gloffset_FramebufferTexture2DEXT)
-       GL_STUB(glFramebufferTexture3DEXT, _gloffset_FramebufferTexture3DEXT)
-       GL_STUB(glGenFramebuffersEXT, _gloffset_GenFramebuffersEXT)
-       GL_STUB(glGenRenderbuffersEXT, _gloffset_GenRenderbuffersEXT)
-       GL_STUB(glGenerateMipmapEXT, _gloffset_GenerateMipmapEXT)
-       GL_STUB(glGetFramebufferAttachmentParameterivEXT, _gloffset_GetFramebufferAttachmentParameterivEXT)
-       GL_STUB(glGetRenderbufferParameterivEXT, _gloffset_GetRenderbufferParameterivEXT)
-       GL_STUB(glIsFramebufferEXT, _gloffset_IsFramebufferEXT)
-       GL_STUB(glIsRenderbufferEXT, _gloffset_IsRenderbufferEXT)
-       GL_STUB(glRenderbufferStorageEXT, _gloffset_RenderbufferStorageEXT)
-       GL_STUB(gl_dispatch_stub_785, _gloffset_BlitFramebufferEXT)
-       HIDDEN(gl_dispatch_stub_785)
-       GL_STUB(gl_dispatch_stub_786, _gloffset_BufferParameteriAPPLE)
-       HIDDEN(gl_dispatch_stub_786)
-       GL_STUB(gl_dispatch_stub_787, _gloffset_FlushMappedBufferRangeAPPLE)
-       HIDDEN(gl_dispatch_stub_787)
-       GL_STUB(glFramebufferTextureLayerEXT, _gloffset_FramebufferTextureLayerEXT)
-       GL_STUB(glColorMaskIndexedEXT, _gloffset_ColorMaskIndexedEXT)
-       GL_STUB(glDisableIndexedEXT, _gloffset_DisableIndexedEXT)
-       GL_STUB(glEnableIndexedEXT, _gloffset_EnableIndexedEXT)
-       GL_STUB(glGetBooleanIndexedvEXT, _gloffset_GetBooleanIndexedvEXT)
-       GL_STUB(glGetIntegerIndexedvEXT, _gloffset_GetIntegerIndexedvEXT)
-       GL_STUB(glIsEnabledIndexedEXT, _gloffset_IsEnabledIndexedEXT)
-       GL_STUB(glBeginConditionalRenderNV, _gloffset_BeginConditionalRenderNV)
-       GL_STUB(glEndConditionalRenderNV, _gloffset_EndConditionalRenderNV)
-       GL_STUB(glBeginTransformFeedbackEXT, _gloffset_BeginTransformFeedbackEXT)
-       GL_STUB(glBindBufferBaseEXT, _gloffset_BindBufferBaseEXT)
-       GL_STUB(glBindBufferOffsetEXT, _gloffset_BindBufferOffsetEXT)
-       GL_STUB(glBindBufferRangeEXT, _gloffset_BindBufferRangeEXT)
-       GL_STUB(glEndTransformFeedbackEXT, _gloffset_EndTransformFeedbackEXT)
-       GL_STUB(glGetTransformFeedbackVaryingEXT, _gloffset_GetTransformFeedbackVaryingEXT)
-       GL_STUB(glTransformFeedbackVaryingsEXT, _gloffset_TransformFeedbackVaryingsEXT)
-       GL_STUB(glProvokingVertexEXT, _gloffset_ProvokingVertexEXT)
-       GL_STUB(gl_dispatch_stub_805, _gloffset_GetTexParameterPointervAPPLE)
-       HIDDEN(gl_dispatch_stub_805)
-       GL_STUB(gl_dispatch_stub_806, _gloffset_TextureRangeAPPLE)
-       HIDDEN(gl_dispatch_stub_806)
-       GL_STUB(glGetObjectParameterivAPPLE, _gloffset_GetObjectParameterivAPPLE)
-       GL_STUB(glObjectPurgeableAPPLE, _gloffset_ObjectPurgeableAPPLE)
-       GL_STUB(glObjectUnpurgeableAPPLE, _gloffset_ObjectUnpurgeableAPPLE)
-       GL_STUB(gl_dispatch_stub_810, _gloffset_StencilFuncSeparateATI)
-       HIDDEN(gl_dispatch_stub_810)
-       GL_STUB(gl_dispatch_stub_811, _gloffset_ProgramEnvParameters4fvEXT)
-       HIDDEN(gl_dispatch_stub_811)
-       GL_STUB(gl_dispatch_stub_812, _gloffset_ProgramLocalParameters4fvEXT)
-       HIDDEN(gl_dispatch_stub_812)
-       GL_STUB(gl_dispatch_stub_813, _gloffset_GetQueryObjecti64vEXT)
-       HIDDEN(gl_dispatch_stub_813)
-       GL_STUB(gl_dispatch_stub_814, _gloffset_GetQueryObjectui64vEXT)
-       HIDDEN(gl_dispatch_stub_814)
-       GL_STUB(glEGLImageTargetRenderbufferStorageOES, _gloffset_EGLImageTargetRenderbufferStorageOES)
-       GL_STUB(glEGLImageTargetTexture2DOES, _gloffset_EGLImageTargetTexture2DOES)
-       GL_STUB_ALIAS(glArrayElementEXT, glArrayElement)
-       GL_STUB_ALIAS(glBindTextureEXT, glBindTexture)
-       GL_STUB_ALIAS(glDrawArraysEXT, glDrawArrays)
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glAreTexturesResidentEXT, glAreTexturesResident)
-#endif
-       GL_STUB_ALIAS(glCopyTexImage1DEXT, glCopyTexImage1D)
-       GL_STUB_ALIAS(glCopyTexImage2DEXT, glCopyTexImage2D)
-       GL_STUB_ALIAS(glCopyTexSubImage1DEXT, glCopyTexSubImage1D)
-       GL_STUB_ALIAS(glCopyTexSubImage2DEXT, glCopyTexSubImage2D)
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glDeleteTexturesEXT, glDeleteTextures)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glGenTexturesEXT, glGenTextures)
-#endif
-       GL_STUB_ALIAS(glGetPointervEXT, glGetPointerv)
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glIsTextureEXT, glIsTexture)
-#endif
-       GL_STUB_ALIAS(glPrioritizeTexturesEXT, glPrioritizeTextures)
-       GL_STUB_ALIAS(glTexSubImage1DEXT, glTexSubImage1D)
-       GL_STUB_ALIAS(glTexSubImage2DEXT, glTexSubImage2D)
-       GL_STUB_ALIAS(glBlendColorEXT, glBlendColor)
-       GL_STUB_ALIAS(glBlendEquationEXT, glBlendEquation)
-       GL_STUB_ALIAS(glDrawRangeElementsEXT, glDrawRangeElements)
-       GL_STUB_ALIAS(glColorTableSGI, glColorTable)
-       GL_STUB_ALIAS(glColorTableEXT, glColorTable)
-       GL_STUB_ALIAS(glColorTableParameterfvSGI, glColorTableParameterfv)
-       GL_STUB_ALIAS(glColorTableParameterivSGI, glColorTableParameteriv)
-       GL_STUB_ALIAS(glCopyColorTableSGI, glCopyColorTable)
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glGetColorTableSGI, glGetColorTable)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glGetColorTableEXT, glGetColorTable)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glGetColorTableParameterfvSGI, glGetColorTableParameterfv)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glGetColorTableParameterfvEXT, glGetColorTableParameterfv)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glGetColorTableParameterivSGI, glGetColorTableParameteriv)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glGetColorTableParameterivEXT, glGetColorTableParameteriv)
-#endif
-       GL_STUB_ALIAS(glColorSubTableEXT, glColorSubTable)
-       GL_STUB_ALIAS(glCopyColorSubTableEXT, glCopyColorSubTable)
-       GL_STUB_ALIAS(glConvolutionFilter1DEXT, glConvolutionFilter1D)
-       GL_STUB_ALIAS(glConvolutionFilter2DEXT, glConvolutionFilter2D)
-       GL_STUB_ALIAS(glConvolutionParameterfEXT, glConvolutionParameterf)
-       GL_STUB_ALIAS(glConvolutionParameterfvEXT, glConvolutionParameterfv)
-       GL_STUB_ALIAS(glConvolutionParameteriEXT, glConvolutionParameteri)
-       GL_STUB_ALIAS(glConvolutionParameterivEXT, glConvolutionParameteriv)
-       GL_STUB_ALIAS(glCopyConvolutionFilter1DEXT, glCopyConvolutionFilter1D)
-       GL_STUB_ALIAS(glCopyConvolutionFilter2DEXT, glCopyConvolutionFilter2D)
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glGetConvolutionFilterEXT, glGetConvolutionFilter)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glGetConvolutionParameterfvEXT, glGetConvolutionParameterfv)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glGetConvolutionParameterivEXT, glGetConvolutionParameteriv)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glGetSeparableFilterEXT, glGetSeparableFilter)
-#endif
-       GL_STUB_ALIAS(glSeparableFilter2DEXT, glSeparableFilter2D)
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glGetHistogramEXT, glGetHistogram)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glGetHistogramParameterfvEXT, glGetHistogramParameterfv)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glGetHistogramParameterivEXT, glGetHistogramParameteriv)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glGetMinmaxEXT, glGetMinmax)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glGetMinmaxParameterfvEXT, glGetMinmaxParameterfv)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(glGetMinmaxParameterivEXT, glGetMinmaxParameteriv)
-#endif
-       GL_STUB_ALIAS(glHistogramEXT, glHistogram)
-       GL_STUB_ALIAS(glMinmaxEXT, glMinmax)
-       GL_STUB_ALIAS(glResetHistogramEXT, glResetHistogram)
-       GL_STUB_ALIAS(glResetMinmaxEXT, glResetMinmax)
-       GL_STUB_ALIAS(glTexImage3DEXT, glTexImage3D)
-       GL_STUB_ALIAS(glTexSubImage3DEXT, glTexSubImage3D)
-       GL_STUB_ALIAS(glCopyTexSubImage3DEXT, glCopyTexSubImage3D)
-       GL_STUB_ALIAS(glActiveTexture, glActiveTextureARB)
-       GL_STUB_ALIAS(glClientActiveTexture, glClientActiveTextureARB)
-       GL_STUB_ALIAS(glMultiTexCoord1d, glMultiTexCoord1dARB)
-       GL_STUB_ALIAS(glMultiTexCoord1dv, glMultiTexCoord1dvARB)
-       GL_STUB_ALIAS(glMultiTexCoord1f, glMultiTexCoord1fARB)
-       GL_STUB_ALIAS(glMultiTexCoord1fv, glMultiTexCoord1fvARB)
-       GL_STUB_ALIAS(glMultiTexCoord1i, glMultiTexCoord1iARB)
-       GL_STUB_ALIAS(glMultiTexCoord1iv, glMultiTexCoord1ivARB)
-       GL_STUB_ALIAS(glMultiTexCoord1s, glMultiTexCoord1sARB)
-       GL_STUB_ALIAS(glMultiTexCoord1sv, glMultiTexCoord1svARB)
-       GL_STUB_ALIAS(glMultiTexCoord2d, glMultiTexCoord2dARB)
-       GL_STUB_ALIAS(glMultiTexCoord2dv, glMultiTexCoord2dvARB)
-       GL_STUB_ALIAS(glMultiTexCoord2f, glMultiTexCoord2fARB)
-       GL_STUB_ALIAS(glMultiTexCoord2fv, glMultiTexCoord2fvARB)
-       GL_STUB_ALIAS(glMultiTexCoord2i, glMultiTexCoord2iARB)
-       GL_STUB_ALIAS(glMultiTexCoord2iv, glMultiTexCoord2ivARB)
-       GL_STUB_ALIAS(glMultiTexCoord2s, glMultiTexCoord2sARB)
-       GL_STUB_ALIAS(glMultiTexCoord2sv, glMultiTexCoord2svARB)
-       GL_STUB_ALIAS(glMultiTexCoord3d, glMultiTexCoord3dARB)
-       GL_STUB_ALIAS(glMultiTexCoord3dv, glMultiTexCoord3dvARB)
-       GL_STUB_ALIAS(glMultiTexCoord3f, glMultiTexCoord3fARB)
-       GL_STUB_ALIAS(glMultiTexCoord3fv, glMultiTexCoord3fvARB)
-       GL_STUB_ALIAS(glMultiTexCoord3i, glMultiTexCoord3iARB)
-       GL_STUB_ALIAS(glMultiTexCoord3iv, glMultiTexCoord3ivARB)
-       GL_STUB_ALIAS(glMultiTexCoord3s, glMultiTexCoord3sARB)
-       GL_STUB_ALIAS(glMultiTexCoord3sv, glMultiTexCoord3svARB)
-       GL_STUB_ALIAS(glMultiTexCoord4d, glMultiTexCoord4dARB)
-       GL_STUB_ALIAS(glMultiTexCoord4dv, glMultiTexCoord4dvARB)
-       GL_STUB_ALIAS(glMultiTexCoord4f, glMultiTexCoord4fARB)
-       GL_STUB_ALIAS(glMultiTexCoord4fv, glMultiTexCoord4fvARB)
-       GL_STUB_ALIAS(glMultiTexCoord4i, glMultiTexCoord4iARB)
-       GL_STUB_ALIAS(glMultiTexCoord4iv, glMultiTexCoord4ivARB)
-       GL_STUB_ALIAS(glMultiTexCoord4s, glMultiTexCoord4sARB)
-       GL_STUB_ALIAS(glMultiTexCoord4sv, glMultiTexCoord4svARB)
-       GL_STUB_ALIAS(glStencilOpSeparateATI, glStencilOpSeparate)
-       GL_STUB_ALIAS(glDrawArraysInstancedARB, glDrawArraysInstanced)
-       GL_STUB_ALIAS(glDrawArraysInstancedEXT, glDrawArraysInstanced)
-       GL_STUB_ALIAS(glDrawElementsInstancedARB, glDrawElementsInstanced)
-       GL_STUB_ALIAS(glDrawElementsInstancedEXT, glDrawElementsInstanced)
-       GL_STUB_ALIAS(glLoadTransposeMatrixd, glLoadTransposeMatrixdARB)
-       GL_STUB_ALIAS(glLoadTransposeMatrixf, glLoadTransposeMatrixfARB)
-       GL_STUB_ALIAS(glMultTransposeMatrixd, glMultTransposeMatrixdARB)
-       GL_STUB_ALIAS(glMultTransposeMatrixf, glMultTransposeMatrixfARB)
-       GL_STUB_ALIAS(glSampleCoverage, glSampleCoverageARB)
-       GL_STUB_ALIAS(glCompressedTexImage1D, glCompressedTexImage1DARB)
-       GL_STUB_ALIAS(glCompressedTexImage2D, glCompressedTexImage2DARB)
-       GL_STUB_ALIAS(glCompressedTexImage3D, glCompressedTexImage3DARB)
-       GL_STUB_ALIAS(glCompressedTexSubImage1D, glCompressedTexSubImage1DARB)
-       GL_STUB_ALIAS(glCompressedTexSubImage2D, glCompressedTexSubImage2DARB)
-       GL_STUB_ALIAS(glCompressedTexSubImage3D, glCompressedTexSubImage3DARB)
-       GL_STUB_ALIAS(glGetCompressedTexImage, glGetCompressedTexImageARB)
-       GL_STUB_ALIAS(glDisableVertexAttribArray, glDisableVertexAttribArrayARB)
-       GL_STUB_ALIAS(glEnableVertexAttribArray, glEnableVertexAttribArrayARB)
-       GL_STUB_ALIAS(glGetVertexAttribdv, glGetVertexAttribdvARB)
-       GL_STUB_ALIAS(glGetVertexAttribfv, glGetVertexAttribfvARB)
-       GL_STUB_ALIAS(glGetVertexAttribiv, glGetVertexAttribivARB)
-       GL_STUB_ALIAS(glProgramParameter4dNV, glProgramEnvParameter4dARB)
-       GL_STUB_ALIAS(glProgramParameter4dvNV, glProgramEnvParameter4dvARB)
-       GL_STUB_ALIAS(glProgramParameter4fNV, glProgramEnvParameter4fARB)
-       GL_STUB_ALIAS(glProgramParameter4fvNV, glProgramEnvParameter4fvARB)
-       GL_STUB_ALIAS(glVertexAttrib1d, glVertexAttrib1dARB)
-       GL_STUB_ALIAS(glVertexAttrib1dv, glVertexAttrib1dvARB)
-       GL_STUB_ALIAS(glVertexAttrib1f, glVertexAttrib1fARB)
-       GL_STUB_ALIAS(glVertexAttrib1fv, glVertexAttrib1fvARB)
-       GL_STUB_ALIAS(glVertexAttrib1s, glVertexAttrib1sARB)
-       GL_STUB_ALIAS(glVertexAttrib1sv, glVertexAttrib1svARB)
-       GL_STUB_ALIAS(glVertexAttrib2d, glVertexAttrib2dARB)
-       GL_STUB_ALIAS(glVertexAttrib2dv, glVertexAttrib2dvARB)
-       GL_STUB_ALIAS(glVertexAttrib2f, glVertexAttrib2fARB)
-       GL_STUB_ALIAS(glVertexAttrib2fv, glVertexAttrib2fvARB)
-       GL_STUB_ALIAS(glVertexAttrib2s, glVertexAttrib2sARB)
-       GL_STUB_ALIAS(glVertexAttrib2sv, glVertexAttrib2svARB)
-       GL_STUB_ALIAS(glVertexAttrib3d, glVertexAttrib3dARB)
-       GL_STUB_ALIAS(glVertexAttrib3dv, glVertexAttrib3dvARB)
-       GL_STUB_ALIAS(glVertexAttrib3f, glVertexAttrib3fARB)
-       GL_STUB_ALIAS(glVertexAttrib3fv, glVertexAttrib3fvARB)
-       GL_STUB_ALIAS(glVertexAttrib3s, glVertexAttrib3sARB)
-       GL_STUB_ALIAS(glVertexAttrib3sv, glVertexAttrib3svARB)
-       GL_STUB_ALIAS(glVertexAttrib4Nbv, glVertexAttrib4NbvARB)
-       GL_STUB_ALIAS(glVertexAttrib4Niv, glVertexAttrib4NivARB)
-       GL_STUB_ALIAS(glVertexAttrib4Nsv, glVertexAttrib4NsvARB)
-       GL_STUB_ALIAS(glVertexAttrib4Nub, glVertexAttrib4NubARB)
-       GL_STUB_ALIAS(glVertexAttrib4Nubv, glVertexAttrib4NubvARB)
-       GL_STUB_ALIAS(glVertexAttrib4Nuiv, glVertexAttrib4NuivARB)
-       GL_STUB_ALIAS(glVertexAttrib4Nusv, glVertexAttrib4NusvARB)
-       GL_STUB_ALIAS(glVertexAttrib4bv, glVertexAttrib4bvARB)
-       GL_STUB_ALIAS(glVertexAttrib4d, glVertexAttrib4dARB)
-       GL_STUB_ALIAS(glVertexAttrib4dv, glVertexAttrib4dvARB)
-       GL_STUB_ALIAS(glVertexAttrib4f, glVertexAttrib4fARB)
-       GL_STUB_ALIAS(glVertexAttrib4fv, glVertexAttrib4fvARB)
-       GL_STUB_ALIAS(glVertexAttrib4iv, glVertexAttrib4ivARB)
-       GL_STUB_ALIAS(glVertexAttrib4s, glVertexAttrib4sARB)
-       GL_STUB_ALIAS(glVertexAttrib4sv, glVertexAttrib4svARB)
-       GL_STUB_ALIAS(glVertexAttrib4ubv, glVertexAttrib4ubvARB)
-       GL_STUB_ALIAS(glVertexAttrib4uiv, glVertexAttrib4uivARB)
-       GL_STUB_ALIAS(glVertexAttrib4usv, glVertexAttrib4usvARB)
-       GL_STUB_ALIAS(glVertexAttribPointer, glVertexAttribPointerARB)
-       GL_STUB_ALIAS(glBindBuffer, glBindBufferARB)
-       GL_STUB_ALIAS(glBufferData, glBufferDataARB)
-       GL_STUB_ALIAS(glBufferSubData, glBufferSubDataARB)
-       GL_STUB_ALIAS(glDeleteBuffers, glDeleteBuffersARB)
-       GL_STUB_ALIAS(glGenBuffers, glGenBuffersARB)
-       GL_STUB_ALIAS(glGetBufferParameteriv, glGetBufferParameterivARB)
-       GL_STUB_ALIAS(glGetBufferPointerv, glGetBufferPointervARB)
-       GL_STUB_ALIAS(glGetBufferSubData, glGetBufferSubDataARB)
-       GL_STUB_ALIAS(glIsBuffer, glIsBufferARB)
-       GL_STUB_ALIAS(glMapBuffer, glMapBufferARB)
-       GL_STUB_ALIAS(glUnmapBuffer, glUnmapBufferARB)
-       GL_STUB_ALIAS(glBeginQuery, glBeginQueryARB)
-       GL_STUB_ALIAS(glDeleteQueries, glDeleteQueriesARB)
-       GL_STUB_ALIAS(glEndQuery, glEndQueryARB)
-       GL_STUB_ALIAS(glGenQueries, glGenQueriesARB)
-       GL_STUB_ALIAS(glGetQueryObjectiv, glGetQueryObjectivARB)
-       GL_STUB_ALIAS(glGetQueryObjectuiv, glGetQueryObjectuivARB)
-       GL_STUB_ALIAS(glGetQueryiv, glGetQueryivARB)
-       GL_STUB_ALIAS(glIsQuery, glIsQueryARB)
-       GL_STUB_ALIAS(glCompileShader, glCompileShaderARB)
-       GL_STUB_ALIAS(glGetActiveUniform, glGetActiveUniformARB)
-       GL_STUB_ALIAS(glGetShaderSource, glGetShaderSourceARB)
-       GL_STUB_ALIAS(glGetUniformLocation, glGetUniformLocationARB)
-       GL_STUB_ALIAS(glGetUniformfv, glGetUniformfvARB)
-       GL_STUB_ALIAS(glGetUniformiv, glGetUniformivARB)
-       GL_STUB_ALIAS(glLinkProgram, glLinkProgramARB)
-       GL_STUB_ALIAS(glShaderSource, glShaderSourceARB)
-       GL_STUB_ALIAS(glUniform1f, glUniform1fARB)
-       GL_STUB_ALIAS(glUniform1fv, glUniform1fvARB)
-       GL_STUB_ALIAS(glUniform1i, glUniform1iARB)
-       GL_STUB_ALIAS(glUniform1iv, glUniform1ivARB)
-       GL_STUB_ALIAS(glUniform2f, glUniform2fARB)
-       GL_STUB_ALIAS(glUniform2fv, glUniform2fvARB)
-       GL_STUB_ALIAS(glUniform2i, glUniform2iARB)
-       GL_STUB_ALIAS(glUniform2iv, glUniform2ivARB)
-       GL_STUB_ALIAS(glUniform3f, glUniform3fARB)
-       GL_STUB_ALIAS(glUniform3fv, glUniform3fvARB)
-       GL_STUB_ALIAS(glUniform3i, glUniform3iARB)
-       GL_STUB_ALIAS(glUniform3iv, glUniform3ivARB)
-       GL_STUB_ALIAS(glUniform4f, glUniform4fARB)
-       GL_STUB_ALIAS(glUniform4fv, glUniform4fvARB)
-       GL_STUB_ALIAS(glUniform4i, glUniform4iARB)
-       GL_STUB_ALIAS(glUniform4iv, glUniform4ivARB)
-       GL_STUB_ALIAS(glUniformMatrix2fv, glUniformMatrix2fvARB)
-       GL_STUB_ALIAS(glUniformMatrix3fv, glUniformMatrix3fvARB)
-       GL_STUB_ALIAS(glUniformMatrix4fv, glUniformMatrix4fvARB)
-       GL_STUB_ALIAS(glUseProgram, glUseProgramObjectARB)
-       GL_STUB_ALIAS(glValidateProgram, glValidateProgramARB)
-       GL_STUB_ALIAS(glBindAttribLocation, glBindAttribLocationARB)
-       GL_STUB_ALIAS(glGetActiveAttrib, glGetActiveAttribARB)
-       GL_STUB_ALIAS(glGetAttribLocation, glGetAttribLocationARB)
-       GL_STUB_ALIAS(glDrawBuffers, glDrawBuffersARB)
-       GL_STUB_ALIAS(glDrawBuffersATI, glDrawBuffersARB)
-       GL_STUB_ALIAS(glRenderbufferStorageMultisampleEXT, glRenderbufferStorageMultisample)
-       GL_STUB_ALIAS(glPointParameterf, glPointParameterfEXT)
-       GL_STUB_ALIAS(glPointParameterfARB, glPointParameterfEXT)
-       GL_STUB_ALIAS(glPointParameterfSGIS, glPointParameterfEXT)
-       GL_STUB_ALIAS(glPointParameterfv, glPointParameterfvEXT)
-       GL_STUB_ALIAS(glPointParameterfvARB, glPointParameterfvEXT)
-       GL_STUB_ALIAS(glPointParameterfvSGIS, glPointParameterfvEXT)
-       GL_STUB_ALIAS(glSecondaryColor3b, glSecondaryColor3bEXT)
-       GL_STUB_ALIAS(glSecondaryColor3bv, glSecondaryColor3bvEXT)
-       GL_STUB_ALIAS(glSecondaryColor3d, glSecondaryColor3dEXT)
-       GL_STUB_ALIAS(glSecondaryColor3dv, glSecondaryColor3dvEXT)
-       GL_STUB_ALIAS(glSecondaryColor3f, glSecondaryColor3fEXT)
-       GL_STUB_ALIAS(glSecondaryColor3fv, glSecondaryColor3fvEXT)
-       GL_STUB_ALIAS(glSecondaryColor3i, glSecondaryColor3iEXT)
-       GL_STUB_ALIAS(glSecondaryColor3iv, glSecondaryColor3ivEXT)
-       GL_STUB_ALIAS(glSecondaryColor3s, glSecondaryColor3sEXT)
-       GL_STUB_ALIAS(glSecondaryColor3sv, glSecondaryColor3svEXT)
-       GL_STUB_ALIAS(glSecondaryColor3ub, glSecondaryColor3ubEXT)
-       GL_STUB_ALIAS(glSecondaryColor3ubv, glSecondaryColor3ubvEXT)
-       GL_STUB_ALIAS(glSecondaryColor3ui, glSecondaryColor3uiEXT)
-       GL_STUB_ALIAS(glSecondaryColor3uiv, glSecondaryColor3uivEXT)
-       GL_STUB_ALIAS(glSecondaryColor3us, glSecondaryColor3usEXT)
-       GL_STUB_ALIAS(glSecondaryColor3usv, glSecondaryColor3usvEXT)
-       GL_STUB_ALIAS(glSecondaryColorPointer, glSecondaryColorPointerEXT)
-       GL_STUB_ALIAS(glMultiDrawArrays, glMultiDrawArraysEXT)
-       GL_STUB_ALIAS(glMultiDrawElements, glMultiDrawElementsEXT)
-       GL_STUB_ALIAS(glFogCoordPointer, glFogCoordPointerEXT)
-       GL_STUB_ALIAS(glFogCoordd, glFogCoorddEXT)
-       GL_STUB_ALIAS(glFogCoorddv, glFogCoorddvEXT)
-       GL_STUB_ALIAS(glFogCoordf, glFogCoordfEXT)
-       GL_STUB_ALIAS(glFogCoordfv, glFogCoordfvEXT)
-       GL_STUB_ALIAS(glBlendFuncSeparate, glBlendFuncSeparateEXT)
-       GL_STUB_ALIAS(glBlendFuncSeparateINGR, glBlendFuncSeparateEXT)
-       GL_STUB_ALIAS(glWindowPos2d, glWindowPos2dMESA)
-       GL_STUB_ALIAS(glWindowPos2dARB, glWindowPos2dMESA)
-       GL_STUB_ALIAS(glWindowPos2dv, glWindowPos2dvMESA)
-       GL_STUB_ALIAS(glWindowPos2dvARB, glWindowPos2dvMESA)
-       GL_STUB_ALIAS(glWindowPos2f, glWindowPos2fMESA)
-       GL_STUB_ALIAS(glWindowPos2fARB, glWindowPos2fMESA)
-       GL_STUB_ALIAS(glWindowPos2fv, glWindowPos2fvMESA)
-       GL_STUB_ALIAS(glWindowPos2fvARB, glWindowPos2fvMESA)
-       GL_STUB_ALIAS(glWindowPos2i, glWindowPos2iMESA)
-       GL_STUB_ALIAS(glWindowPos2iARB, glWindowPos2iMESA)
-       GL_STUB_ALIAS(glWindowPos2iv, glWindowPos2ivMESA)
-       GL_STUB_ALIAS(glWindowPos2ivARB, glWindowPos2ivMESA)
-       GL_STUB_ALIAS(glWindowPos2s, glWindowPos2sMESA)
-       GL_STUB_ALIAS(glWindowPos2sARB, glWindowPos2sMESA)
-       GL_STUB_ALIAS(glWindowPos2sv, glWindowPos2svMESA)
-       GL_STUB_ALIAS(glWindowPos2svARB, glWindowPos2svMESA)
-       GL_STUB_ALIAS(glWindowPos3d, glWindowPos3dMESA)
-       GL_STUB_ALIAS(glWindowPos3dARB, glWindowPos3dMESA)
-       GL_STUB_ALIAS(glWindowPos3dv, glWindowPos3dvMESA)
-       GL_STUB_ALIAS(glWindowPos3dvARB, glWindowPos3dvMESA)
-       GL_STUB_ALIAS(glWindowPos3f, glWindowPos3fMESA)
-       GL_STUB_ALIAS(glWindowPos3fARB, glWindowPos3fMESA)
-       GL_STUB_ALIAS(glWindowPos3fv, glWindowPos3fvMESA)
-       GL_STUB_ALIAS(glWindowPos3fvARB, glWindowPos3fvMESA)
-       GL_STUB_ALIAS(glWindowPos3i, glWindowPos3iMESA)
-       GL_STUB_ALIAS(glWindowPos3iARB, glWindowPos3iMESA)
-       GL_STUB_ALIAS(glWindowPos3iv, glWindowPos3ivMESA)
-       GL_STUB_ALIAS(glWindowPos3ivARB, glWindowPos3ivMESA)
-       GL_STUB_ALIAS(glWindowPos3s, glWindowPos3sMESA)
-       GL_STUB_ALIAS(glWindowPos3sARB, glWindowPos3sMESA)
-       GL_STUB_ALIAS(glWindowPos3sv, glWindowPos3svMESA)
-       GL_STUB_ALIAS(glWindowPos3svARB, glWindowPos3svMESA)
-       GL_STUB_ALIAS(glBindProgramARB, glBindProgramNV)
-       GL_STUB_ALIAS(glDeleteProgramsARB, glDeleteProgramsNV)
-       GL_STUB_ALIAS(glGenProgramsARB, glGenProgramsNV)
-       GL_STUB_ALIAS(glGetVertexAttribPointerv, glGetVertexAttribPointervNV)
-       GL_STUB_ALIAS(glGetVertexAttribPointervARB, glGetVertexAttribPointervNV)
-       GL_STUB_ALIAS(glIsProgramARB, glIsProgramNV)
-       GL_STUB_ALIAS(glPointParameteri, glPointParameteriNV)
-       GL_STUB_ALIAS(glPointParameteriv, glPointParameterivNV)
-       GL_STUB_ALIAS(glBindFramebuffer, glBindFramebufferEXT)
-       GL_STUB_ALIAS(glBindRenderbuffer, glBindRenderbufferEXT)
-       GL_STUB_ALIAS(glCheckFramebufferStatus, glCheckFramebufferStatusEXT)
-       GL_STUB_ALIAS(glDeleteFramebuffers, glDeleteFramebuffersEXT)
-       GL_STUB_ALIAS(glDeleteRenderbuffers, glDeleteRenderbuffersEXT)
-       GL_STUB_ALIAS(glFramebufferRenderbuffer, glFramebufferRenderbufferEXT)
-       GL_STUB_ALIAS(glFramebufferTexture1D, glFramebufferTexture1DEXT)
-       GL_STUB_ALIAS(glFramebufferTexture2D, glFramebufferTexture2DEXT)
-       GL_STUB_ALIAS(glFramebufferTexture3D, glFramebufferTexture3DEXT)
-       GL_STUB_ALIAS(glGenFramebuffers, glGenFramebuffersEXT)
-       GL_STUB_ALIAS(glGenRenderbuffers, glGenRenderbuffersEXT)
-       GL_STUB_ALIAS(glGenerateMipmap, glGenerateMipmapEXT)
-       GL_STUB_ALIAS(glGetFramebufferAttachmentParameteriv, glGetFramebufferAttachmentParameterivEXT)
-       GL_STUB_ALIAS(glGetRenderbufferParameteriv, glGetRenderbufferParameterivEXT)
-       GL_STUB_ALIAS(glIsFramebuffer, glIsFramebufferEXT)
-       GL_STUB_ALIAS(glIsRenderbuffer, glIsRenderbufferEXT)
-       GL_STUB_ALIAS(glRenderbufferStorage, glRenderbufferStorageEXT)
-       GL_STUB_ALIAS(glFramebufferTextureLayer, glFramebufferTextureLayerEXT)
-       GL_STUB_ALIAS(glBeginTransformFeedback, glBeginTransformFeedbackEXT)
-       GL_STUB_ALIAS(glBindBufferBase, glBindBufferBaseEXT)
-       GL_STUB_ALIAS(glBindBufferRange, glBindBufferRangeEXT)
-       GL_STUB_ALIAS(glEndTransformFeedback, glEndTransformFeedbackEXT)
-       GL_STUB_ALIAS(glGetTransformFeedbackVarying, glGetTransformFeedbackVaryingEXT)
-       GL_STUB_ALIAS(glTransformFeedbackVaryings, glTransformFeedbackVaryingsEXT)
-       GL_STUB_ALIAS(glProvokingVertex, glProvokingVertexEXT)
-
-       .globl  gl_dispatch_functions_end
-       HIDDEN(gl_dispatch_functions_end)
-gl_dispatch_functions_end:
diff --git a/src/mesa/glapi/glapi_x86-64.S b/src/mesa/glapi/glapi_x86-64.S
deleted file mode 100644 (file)
index 9693016..0000000
+++ /dev/null
@@ -1,31286 +0,0 @@
-/* DO NOT EDIT - This file generated automatically by gl_x86-64_asm.py (from Mesa) script */
-
-/*
- * (C) Copyright IBM Corporation 2005
- * 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
- * IBM,
- * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
- * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-/* If we build with gcc's -fvisibility=hidden flag, we'll need to change
- * the symbol visibility mode to 'default'.
- */
-
-#include "x86/assyntax.h"
-
-#ifdef __GNUC__
-#  pragma GCC visibility push(default)
-#  define HIDDEN(x) .hidden x
-#else
-#  define HIDDEN(x)
-#endif
-
-# if defined(USE_MGL_NAMESPACE)
-#  define GL_PREFIX(n) GLNAME(CONCAT(mgl,n))
-#  define _glapi_Dispatch _mglapi_Dispatch
-# else
-#  define GL_PREFIX(n) GLNAME(CONCAT(gl,n))
-# endif
-
-#if defined(PTHREADS) || defined(WIN32_THREADS) || defined(BEOS_THREADS)
-#  define THREADS
-#endif
-
-       .text
-
-#ifdef GLX_USE_TLS
-
-       .globl _x86_64_get_get_dispatch; HIDDEN(_x86_64_get_get_dispatch)
-_x86_64_get_get_dispatch:
-       lea     _x86_64_get_dispatch(%rip), %rax
-       ret
-
-       .p2align        4,,15
-_x86_64_get_dispatch:
-       movq    _glapi_tls_Dispatch@GOTTPOFF(%rip), %rax
-       movq    %fs:(%rax), %rax
-       ret
-       .size   _x86_64_get_dispatch, .-_x86_64_get_dispatch
-
-#elif defined(PTHREADS)
-
-       .extern _glapi_Dispatch
-       .extern _gl_DispatchTSD
-       .extern pthread_getspecific
-
-       .p2align        4,,15
-_x86_64_get_dispatch:
-       movq    _gl_DispatchTSD(%rip), %rdi
-       jmp     pthread_getspecific@PLT
-
-#elif defined(THREADS)
-
-       .extern _glapi_get_dispatch
-
-#endif
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(NewList)
-       .type   GL_PREFIX(NewList), @function
-GL_PREFIX(NewList):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    0(%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    (%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    0(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    0(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(NewList), .-GL_PREFIX(NewList)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EndList)
-       .type   GL_PREFIX(EndList), @function
-GL_PREFIX(EndList):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    8(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    8(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    8(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EndList), .-GL_PREFIX(EndList)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CallList)
-       .type   GL_PREFIX(CallList), @function
-GL_PREFIX(CallList):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    16(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    16(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    16(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CallList), .-GL_PREFIX(CallList)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CallLists)
-       .type   GL_PREFIX(CallLists), @function
-GL_PREFIX(CallLists):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%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    24(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    24(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    24(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CallLists), .-GL_PREFIX(CallLists)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DeleteLists)
-       .type   GL_PREFIX(DeleteLists), @function
-GL_PREFIX(DeleteLists):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    32(%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    32(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    32(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    32(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DeleteLists), .-GL_PREFIX(DeleteLists)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GenLists)
-       .type   GL_PREFIX(GenLists), @function
-GL_PREFIX(GenLists):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    40(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    40(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    40(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    40(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GenLists), .-GL_PREFIX(GenLists)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ListBase)
-       .type   GL_PREFIX(ListBase), @function
-GL_PREFIX(ListBase):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    48(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    48(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    48(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    48(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ListBase), .-GL_PREFIX(ListBase)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Begin)
-       .type   GL_PREFIX(Begin), @function
-GL_PREFIX(Begin):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    56(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    56(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    56(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    56(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Begin), .-GL_PREFIX(Begin)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Bitmap)
-       .type   GL_PREFIX(Bitmap), @function
-GL_PREFIX(Bitmap):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    64(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $56, %rsp
-       movq    %rdi, (%rsp)
-       movq    %rsi, 8(%rsp)
-       movq    %xmm0, 16(%rsp)
-       movq    %xmm1, 24(%rsp)
-       movq    %xmm2, 32(%rsp)
-       movq    %xmm3, 40(%rsp)
-       movq    %rdx, 48(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    48(%rsp), %rdx
-       movq    40(%rsp), %xmm3
-       movq    32(%rsp), %xmm2
-       movq    24(%rsp), %xmm1
-       movq    16(%rsp), %xmm0
-       movq    8(%rsp), %rsi
-       movq    (%rsp), %rdi
-       addq    $56, %rsp
-       movq    64(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    64(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $56, %rsp
-       movq    %rdi, (%rsp)
-       movq    %rsi, 8(%rsp)
-       movq    %xmm0, 16(%rsp)
-       movq    %xmm1, 24(%rsp)
-       movq    %xmm2, 32(%rsp)
-       movq    %xmm3, 40(%rsp)
-       movq    %rdx, 48(%rsp)
-       call    _glapi_get_dispatch
-       movq    48(%rsp), %rdx
-       movq    40(%rsp), %xmm3
-       movq    32(%rsp), %xmm2
-       movq    24(%rsp), %xmm1
-       movq    16(%rsp), %xmm0
-       movq    8(%rsp), %rsi
-       movq    (%rsp), %rdi
-       addq    $56, %rsp
-       movq    64(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Bitmap), .-GL_PREFIX(Bitmap)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color3b)
-       .type   GL_PREFIX(Color3b), @function
-GL_PREFIX(Color3b):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    72(%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    72(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    72(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    72(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color3b), .-GL_PREFIX(Color3b)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color3bv)
-       .type   GL_PREFIX(Color3bv), @function
-GL_PREFIX(Color3bv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    80(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    80(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    80(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    80(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color3bv), .-GL_PREFIX(Color3bv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color3d)
-       .type   GL_PREFIX(Color3d), @function
-GL_PREFIX(Color3d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    88(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    88(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    88(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    88(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color3d), .-GL_PREFIX(Color3d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color3dv)
-       .type   GL_PREFIX(Color3dv), @function
-GL_PREFIX(Color3dv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    96(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    96(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    96(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    96(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color3dv), .-GL_PREFIX(Color3dv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color3f)
-       .type   GL_PREFIX(Color3f), @function
-GL_PREFIX(Color3f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    104(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    104(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    104(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    104(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color3f), .-GL_PREFIX(Color3f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color3fv)
-       .type   GL_PREFIX(Color3fv), @function
-GL_PREFIX(Color3fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    112(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    112(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    112(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    112(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color3fv), .-GL_PREFIX(Color3fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color3i)
-       .type   GL_PREFIX(Color3i), @function
-GL_PREFIX(Color3i):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    120(%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    120(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    120(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    120(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color3i), .-GL_PREFIX(Color3i)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color3iv)
-       .type   GL_PREFIX(Color3iv), @function
-GL_PREFIX(Color3iv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    128(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    128(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    128(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    128(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color3iv), .-GL_PREFIX(Color3iv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color3s)
-       .type   GL_PREFIX(Color3s), @function
-GL_PREFIX(Color3s):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    136(%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    136(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    136(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    136(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color3s), .-GL_PREFIX(Color3s)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color3sv)
-       .type   GL_PREFIX(Color3sv), @function
-GL_PREFIX(Color3sv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    144(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    144(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    144(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    144(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color3sv), .-GL_PREFIX(Color3sv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color3ub)
-       .type   GL_PREFIX(Color3ub), @function
-GL_PREFIX(Color3ub):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    152(%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    152(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    152(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    152(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color3ub), .-GL_PREFIX(Color3ub)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color3ubv)
-       .type   GL_PREFIX(Color3ubv), @function
-GL_PREFIX(Color3ubv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    160(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    160(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    160(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    160(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color3ubv), .-GL_PREFIX(Color3ubv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color3ui)
-       .type   GL_PREFIX(Color3ui), @function
-GL_PREFIX(Color3ui):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    168(%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    168(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    168(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    168(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color3ui), .-GL_PREFIX(Color3ui)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color3uiv)
-       .type   GL_PREFIX(Color3uiv), @function
-GL_PREFIX(Color3uiv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    176(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    176(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    176(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    176(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color3uiv), .-GL_PREFIX(Color3uiv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color3us)
-       .type   GL_PREFIX(Color3us), @function
-GL_PREFIX(Color3us):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    184(%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    184(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    184(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    184(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color3us), .-GL_PREFIX(Color3us)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color3usv)
-       .type   GL_PREFIX(Color3usv), @function
-GL_PREFIX(Color3usv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    192(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    192(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    192(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    192(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color3usv), .-GL_PREFIX(Color3usv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color4b)
-       .type   GL_PREFIX(Color4b), @function
-GL_PREFIX(Color4b):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    200(%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    200(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    200(%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    200(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color4b), .-GL_PREFIX(Color4b)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color4bv)
-       .type   GL_PREFIX(Color4bv), @function
-GL_PREFIX(Color4bv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    208(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    208(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    208(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    208(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color4bv), .-GL_PREFIX(Color4bv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color4d)
-       .type   GL_PREFIX(Color4d), @function
-GL_PREFIX(Color4d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    216(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    216(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    216(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    216(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color4d), .-GL_PREFIX(Color4d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color4dv)
-       .type   GL_PREFIX(Color4dv), @function
-GL_PREFIX(Color4dv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    224(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    224(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    224(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    224(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color4dv), .-GL_PREFIX(Color4dv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color4f)
-       .type   GL_PREFIX(Color4f), @function
-GL_PREFIX(Color4f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    232(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    232(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    232(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    232(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color4f), .-GL_PREFIX(Color4f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color4fv)
-       .type   GL_PREFIX(Color4fv), @function
-GL_PREFIX(Color4fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    240(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    240(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    240(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    240(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color4fv), .-GL_PREFIX(Color4fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color4i)
-       .type   GL_PREFIX(Color4i), @function
-GL_PREFIX(Color4i):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    248(%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    248(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    248(%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    248(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color4i), .-GL_PREFIX(Color4i)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color4iv)
-       .type   GL_PREFIX(Color4iv), @function
-GL_PREFIX(Color4iv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    256(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    256(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    256(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    256(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color4iv), .-GL_PREFIX(Color4iv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color4s)
-       .type   GL_PREFIX(Color4s), @function
-GL_PREFIX(Color4s):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    264(%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    264(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    264(%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    264(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color4s), .-GL_PREFIX(Color4s)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color4sv)
-       .type   GL_PREFIX(Color4sv), @function
-GL_PREFIX(Color4sv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    272(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    272(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    272(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    272(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color4sv), .-GL_PREFIX(Color4sv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color4ub)
-       .type   GL_PREFIX(Color4ub), @function
-GL_PREFIX(Color4ub):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    280(%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    280(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    280(%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    280(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color4ub), .-GL_PREFIX(Color4ub)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color4ubv)
-       .type   GL_PREFIX(Color4ubv), @function
-GL_PREFIX(Color4ubv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    288(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    288(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    288(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    288(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color4ubv), .-GL_PREFIX(Color4ubv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color4ui)
-       .type   GL_PREFIX(Color4ui), @function
-GL_PREFIX(Color4ui):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    296(%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    296(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    296(%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    296(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color4ui), .-GL_PREFIX(Color4ui)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color4uiv)
-       .type   GL_PREFIX(Color4uiv), @function
-GL_PREFIX(Color4uiv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    304(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    304(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    304(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    304(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color4uiv), .-GL_PREFIX(Color4uiv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color4us)
-       .type   GL_PREFIX(Color4us), @function
-GL_PREFIX(Color4us):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    312(%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    312(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    312(%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    312(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color4us), .-GL_PREFIX(Color4us)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Color4usv)
-       .type   GL_PREFIX(Color4usv), @function
-GL_PREFIX(Color4usv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    320(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    320(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    320(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    320(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Color4usv), .-GL_PREFIX(Color4usv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EdgeFlag)
-       .type   GL_PREFIX(EdgeFlag), @function
-GL_PREFIX(EdgeFlag):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    328(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    328(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    328(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    328(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EdgeFlag), .-GL_PREFIX(EdgeFlag)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EdgeFlagv)
-       .type   GL_PREFIX(EdgeFlagv), @function
-GL_PREFIX(EdgeFlagv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    336(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    336(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    336(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    336(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EdgeFlagv), .-GL_PREFIX(EdgeFlagv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(End)
-       .type   GL_PREFIX(End), @function
-GL_PREFIX(End):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    344(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    344(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    344(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    344(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(End), .-GL_PREFIX(End)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Indexd)
-       .type   GL_PREFIX(Indexd), @function
-GL_PREFIX(Indexd):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    352(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    352(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    352(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _glapi_get_dispatch
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    352(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Indexd), .-GL_PREFIX(Indexd)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Indexdv)
-       .type   GL_PREFIX(Indexdv), @function
-GL_PREFIX(Indexdv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    360(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    360(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    360(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    360(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Indexdv), .-GL_PREFIX(Indexdv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Indexf)
-       .type   GL_PREFIX(Indexf), @function
-GL_PREFIX(Indexf):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    368(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    368(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    368(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _glapi_get_dispatch
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    368(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Indexf), .-GL_PREFIX(Indexf)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Indexfv)
-       .type   GL_PREFIX(Indexfv), @function
-GL_PREFIX(Indexfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    376(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    376(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    376(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    376(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Indexfv), .-GL_PREFIX(Indexfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Indexi)
-       .type   GL_PREFIX(Indexi), @function
-GL_PREFIX(Indexi):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    384(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    384(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    384(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    384(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Indexi), .-GL_PREFIX(Indexi)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Indexiv)
-       .type   GL_PREFIX(Indexiv), @function
-GL_PREFIX(Indexiv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    392(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    392(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    392(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    392(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Indexiv), .-GL_PREFIX(Indexiv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Indexs)
-       .type   GL_PREFIX(Indexs), @function
-GL_PREFIX(Indexs):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    400(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    400(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    400(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    400(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Indexs), .-GL_PREFIX(Indexs)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Indexsv)
-       .type   GL_PREFIX(Indexsv), @function
-GL_PREFIX(Indexsv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    408(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    408(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    408(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    408(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Indexsv), .-GL_PREFIX(Indexsv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Normal3b)
-       .type   GL_PREFIX(Normal3b), @function
-GL_PREFIX(Normal3b):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    416(%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    416(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    416(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    416(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Normal3b), .-GL_PREFIX(Normal3b)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Normal3bv)
-       .type   GL_PREFIX(Normal3bv), @function
-GL_PREFIX(Normal3bv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    424(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    424(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    424(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    424(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Normal3bv), .-GL_PREFIX(Normal3bv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Normal3d)
-       .type   GL_PREFIX(Normal3d), @function
-GL_PREFIX(Normal3d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    432(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    432(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    432(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    432(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Normal3d), .-GL_PREFIX(Normal3d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Normal3dv)
-       .type   GL_PREFIX(Normal3dv), @function
-GL_PREFIX(Normal3dv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    440(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    440(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    440(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    440(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Normal3dv), .-GL_PREFIX(Normal3dv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Normal3f)
-       .type   GL_PREFIX(Normal3f), @function
-GL_PREFIX(Normal3f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    448(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    448(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    448(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    448(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Normal3f), .-GL_PREFIX(Normal3f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Normal3fv)
-       .type   GL_PREFIX(Normal3fv), @function
-GL_PREFIX(Normal3fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    456(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    456(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    456(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    456(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Normal3fv), .-GL_PREFIX(Normal3fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Normal3i)
-       .type   GL_PREFIX(Normal3i), @function
-GL_PREFIX(Normal3i):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    464(%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    464(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    464(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    464(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Normal3i), .-GL_PREFIX(Normal3i)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Normal3iv)
-       .type   GL_PREFIX(Normal3iv), @function
-GL_PREFIX(Normal3iv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    472(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    472(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    472(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    472(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Normal3iv), .-GL_PREFIX(Normal3iv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Normal3s)
-       .type   GL_PREFIX(Normal3s), @function
-GL_PREFIX(Normal3s):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    480(%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    480(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    480(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    480(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Normal3s), .-GL_PREFIX(Normal3s)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Normal3sv)
-       .type   GL_PREFIX(Normal3sv), @function
-GL_PREFIX(Normal3sv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    488(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    488(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    488(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    488(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Normal3sv), .-GL_PREFIX(Normal3sv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos2d)
-       .type   GL_PREFIX(RasterPos2d), @function
-GL_PREFIX(RasterPos2d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    496(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    496(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    496(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    496(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos2d), .-GL_PREFIX(RasterPos2d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos2dv)
-       .type   GL_PREFIX(RasterPos2dv), @function
-GL_PREFIX(RasterPos2dv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    504(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    504(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    504(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    504(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos2dv), .-GL_PREFIX(RasterPos2dv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos2f)
-       .type   GL_PREFIX(RasterPos2f), @function
-GL_PREFIX(RasterPos2f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    512(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    512(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    512(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    512(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos2f), .-GL_PREFIX(RasterPos2f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos2fv)
-       .type   GL_PREFIX(RasterPos2fv), @function
-GL_PREFIX(RasterPos2fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    520(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    520(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    520(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    520(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos2fv), .-GL_PREFIX(RasterPos2fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos2i)
-       .type   GL_PREFIX(RasterPos2i), @function
-GL_PREFIX(RasterPos2i):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    528(%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    528(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    528(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    528(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos2i), .-GL_PREFIX(RasterPos2i)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos2iv)
-       .type   GL_PREFIX(RasterPos2iv), @function
-GL_PREFIX(RasterPos2iv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    536(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    536(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    536(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    536(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos2iv), .-GL_PREFIX(RasterPos2iv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos2s)
-       .type   GL_PREFIX(RasterPos2s), @function
-GL_PREFIX(RasterPos2s):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    544(%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    544(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    544(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    544(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos2s), .-GL_PREFIX(RasterPos2s)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos2sv)
-       .type   GL_PREFIX(RasterPos2sv), @function
-GL_PREFIX(RasterPos2sv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    552(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    552(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    552(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    552(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos2sv), .-GL_PREFIX(RasterPos2sv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos3d)
-       .type   GL_PREFIX(RasterPos3d), @function
-GL_PREFIX(RasterPos3d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    560(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    560(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    560(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    560(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos3d), .-GL_PREFIX(RasterPos3d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos3dv)
-       .type   GL_PREFIX(RasterPos3dv), @function
-GL_PREFIX(RasterPos3dv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    568(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    568(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    568(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    568(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos3dv), .-GL_PREFIX(RasterPos3dv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos3f)
-       .type   GL_PREFIX(RasterPos3f), @function
-GL_PREFIX(RasterPos3f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    576(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    576(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    576(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    576(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos3f), .-GL_PREFIX(RasterPos3f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos3fv)
-       .type   GL_PREFIX(RasterPos3fv), @function
-GL_PREFIX(RasterPos3fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    584(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    584(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    584(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    584(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos3fv), .-GL_PREFIX(RasterPos3fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos3i)
-       .type   GL_PREFIX(RasterPos3i), @function
-GL_PREFIX(RasterPos3i):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    592(%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    592(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    592(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    592(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos3i), .-GL_PREFIX(RasterPos3i)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos3iv)
-       .type   GL_PREFIX(RasterPos3iv), @function
-GL_PREFIX(RasterPos3iv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    600(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    600(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    600(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    600(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos3iv), .-GL_PREFIX(RasterPos3iv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos3s)
-       .type   GL_PREFIX(RasterPos3s), @function
-GL_PREFIX(RasterPos3s):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    608(%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    608(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    608(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    608(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos3s), .-GL_PREFIX(RasterPos3s)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos3sv)
-       .type   GL_PREFIX(RasterPos3sv), @function
-GL_PREFIX(RasterPos3sv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    616(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    616(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    616(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    616(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos3sv), .-GL_PREFIX(RasterPos3sv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos4d)
-       .type   GL_PREFIX(RasterPos4d), @function
-GL_PREFIX(RasterPos4d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    624(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    624(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    624(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    624(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos4d), .-GL_PREFIX(RasterPos4d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos4dv)
-       .type   GL_PREFIX(RasterPos4dv), @function
-GL_PREFIX(RasterPos4dv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    632(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    632(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    632(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    632(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos4dv), .-GL_PREFIX(RasterPos4dv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos4f)
-       .type   GL_PREFIX(RasterPos4f), @function
-GL_PREFIX(RasterPos4f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    640(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    640(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    640(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    640(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos4f), .-GL_PREFIX(RasterPos4f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos4fv)
-       .type   GL_PREFIX(RasterPos4fv), @function
-GL_PREFIX(RasterPos4fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    648(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    648(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    648(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    648(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos4fv), .-GL_PREFIX(RasterPos4fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos4i)
-       .type   GL_PREFIX(RasterPos4i), @function
-GL_PREFIX(RasterPos4i):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    656(%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    656(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    656(%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    656(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos4i), .-GL_PREFIX(RasterPos4i)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos4iv)
-       .type   GL_PREFIX(RasterPos4iv), @function
-GL_PREFIX(RasterPos4iv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    664(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    664(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    664(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    664(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos4iv), .-GL_PREFIX(RasterPos4iv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos4s)
-       .type   GL_PREFIX(RasterPos4s), @function
-GL_PREFIX(RasterPos4s):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    672(%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    672(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    672(%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    672(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos4s), .-GL_PREFIX(RasterPos4s)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RasterPos4sv)
-       .type   GL_PREFIX(RasterPos4sv), @function
-GL_PREFIX(RasterPos4sv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    680(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    680(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    680(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    680(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RasterPos4sv), .-GL_PREFIX(RasterPos4sv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Rectd)
-       .type   GL_PREFIX(Rectd), @function
-GL_PREFIX(Rectd):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    688(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    688(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    688(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    688(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Rectd), .-GL_PREFIX(Rectd)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Rectdv)
-       .type   GL_PREFIX(Rectdv), @function
-GL_PREFIX(Rectdv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    696(%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    696(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    696(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    696(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Rectdv), .-GL_PREFIX(Rectdv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Rectf)
-       .type   GL_PREFIX(Rectf), @function
-GL_PREFIX(Rectf):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    704(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    704(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    704(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    704(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Rectf), .-GL_PREFIX(Rectf)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Rectfv)
-       .type   GL_PREFIX(Rectfv), @function
-GL_PREFIX(Rectfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    712(%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    712(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    712(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    712(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Rectfv), .-GL_PREFIX(Rectfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Recti)
-       .type   GL_PREFIX(Recti), @function
-GL_PREFIX(Recti):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    720(%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    720(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    720(%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    720(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Recti), .-GL_PREFIX(Recti)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Rectiv)
-       .type   GL_PREFIX(Rectiv), @function
-GL_PREFIX(Rectiv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    728(%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    728(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    728(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    728(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Rectiv), .-GL_PREFIX(Rectiv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Rects)
-       .type   GL_PREFIX(Rects), @function
-GL_PREFIX(Rects):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    736(%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    736(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    736(%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    736(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Rects), .-GL_PREFIX(Rects)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Rectsv)
-       .type   GL_PREFIX(Rectsv), @function
-GL_PREFIX(Rectsv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    744(%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    744(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    744(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    744(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Rectsv), .-GL_PREFIX(Rectsv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord1d)
-       .type   GL_PREFIX(TexCoord1d), @function
-GL_PREFIX(TexCoord1d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    752(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    752(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    752(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _glapi_get_dispatch
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    752(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord1d), .-GL_PREFIX(TexCoord1d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord1dv)
-       .type   GL_PREFIX(TexCoord1dv), @function
-GL_PREFIX(TexCoord1dv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    760(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    760(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    760(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    760(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord1dv), .-GL_PREFIX(TexCoord1dv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord1f)
-       .type   GL_PREFIX(TexCoord1f), @function
-GL_PREFIX(TexCoord1f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    768(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    768(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    768(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _glapi_get_dispatch
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    768(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord1f), .-GL_PREFIX(TexCoord1f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord1fv)
-       .type   GL_PREFIX(TexCoord1fv), @function
-GL_PREFIX(TexCoord1fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    776(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    776(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    776(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    776(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord1fv), .-GL_PREFIX(TexCoord1fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord1i)
-       .type   GL_PREFIX(TexCoord1i), @function
-GL_PREFIX(TexCoord1i):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    784(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    784(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    784(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    784(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord1i), .-GL_PREFIX(TexCoord1i)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord1iv)
-       .type   GL_PREFIX(TexCoord1iv), @function
-GL_PREFIX(TexCoord1iv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    792(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    792(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    792(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    792(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord1iv), .-GL_PREFIX(TexCoord1iv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord1s)
-       .type   GL_PREFIX(TexCoord1s), @function
-GL_PREFIX(TexCoord1s):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    800(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    800(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    800(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    800(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord1s), .-GL_PREFIX(TexCoord1s)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord1sv)
-       .type   GL_PREFIX(TexCoord1sv), @function
-GL_PREFIX(TexCoord1sv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    808(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    808(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    808(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    808(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord1sv), .-GL_PREFIX(TexCoord1sv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord2d)
-       .type   GL_PREFIX(TexCoord2d), @function
-GL_PREFIX(TexCoord2d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    816(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    816(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    816(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    816(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord2d), .-GL_PREFIX(TexCoord2d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord2dv)
-       .type   GL_PREFIX(TexCoord2dv), @function
-GL_PREFIX(TexCoord2dv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    824(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    824(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    824(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    824(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord2dv), .-GL_PREFIX(TexCoord2dv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord2f)
-       .type   GL_PREFIX(TexCoord2f), @function
-GL_PREFIX(TexCoord2f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    832(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    832(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    832(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    832(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord2f), .-GL_PREFIX(TexCoord2f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord2fv)
-       .type   GL_PREFIX(TexCoord2fv), @function
-GL_PREFIX(TexCoord2fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    840(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    840(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    840(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    840(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord2fv), .-GL_PREFIX(TexCoord2fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord2i)
-       .type   GL_PREFIX(TexCoord2i), @function
-GL_PREFIX(TexCoord2i):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    848(%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    848(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    848(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    848(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord2i), .-GL_PREFIX(TexCoord2i)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord2iv)
-       .type   GL_PREFIX(TexCoord2iv), @function
-GL_PREFIX(TexCoord2iv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    856(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    856(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    856(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    856(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord2iv), .-GL_PREFIX(TexCoord2iv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord2s)
-       .type   GL_PREFIX(TexCoord2s), @function
-GL_PREFIX(TexCoord2s):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    864(%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    864(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    864(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    864(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord2s), .-GL_PREFIX(TexCoord2s)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord2sv)
-       .type   GL_PREFIX(TexCoord2sv), @function
-GL_PREFIX(TexCoord2sv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    872(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    872(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    872(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    872(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord2sv), .-GL_PREFIX(TexCoord2sv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord3d)
-       .type   GL_PREFIX(TexCoord3d), @function
-GL_PREFIX(TexCoord3d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    880(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    880(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    880(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    880(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord3d), .-GL_PREFIX(TexCoord3d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord3dv)
-       .type   GL_PREFIX(TexCoord3dv), @function
-GL_PREFIX(TexCoord3dv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    888(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    888(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    888(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    888(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord3dv), .-GL_PREFIX(TexCoord3dv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord3f)
-       .type   GL_PREFIX(TexCoord3f), @function
-GL_PREFIX(TexCoord3f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    896(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    896(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    896(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    896(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord3f), .-GL_PREFIX(TexCoord3f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord3fv)
-       .type   GL_PREFIX(TexCoord3fv), @function
-GL_PREFIX(TexCoord3fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    904(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    904(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    904(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    904(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord3fv), .-GL_PREFIX(TexCoord3fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord3i)
-       .type   GL_PREFIX(TexCoord3i), @function
-GL_PREFIX(TexCoord3i):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    912(%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    912(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    912(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    912(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord3i), .-GL_PREFIX(TexCoord3i)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord3iv)
-       .type   GL_PREFIX(TexCoord3iv), @function
-GL_PREFIX(TexCoord3iv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    920(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    920(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    920(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    920(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord3iv), .-GL_PREFIX(TexCoord3iv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord3s)
-       .type   GL_PREFIX(TexCoord3s), @function
-GL_PREFIX(TexCoord3s):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    928(%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    928(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    928(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    928(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord3s), .-GL_PREFIX(TexCoord3s)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord3sv)
-       .type   GL_PREFIX(TexCoord3sv), @function
-GL_PREFIX(TexCoord3sv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    936(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    936(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    936(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    936(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord3sv), .-GL_PREFIX(TexCoord3sv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord4d)
-       .type   GL_PREFIX(TexCoord4d), @function
-GL_PREFIX(TexCoord4d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    944(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    944(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    944(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    944(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord4d), .-GL_PREFIX(TexCoord4d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord4dv)
-       .type   GL_PREFIX(TexCoord4dv), @function
-GL_PREFIX(TexCoord4dv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    952(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    952(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    952(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    952(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord4dv), .-GL_PREFIX(TexCoord4dv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord4f)
-       .type   GL_PREFIX(TexCoord4f), @function
-GL_PREFIX(TexCoord4f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    960(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    960(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    960(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    960(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord4f), .-GL_PREFIX(TexCoord4f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord4fv)
-       .type   GL_PREFIX(TexCoord4fv), @function
-GL_PREFIX(TexCoord4fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    968(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    968(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    968(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    968(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord4fv), .-GL_PREFIX(TexCoord4fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord4i)
-       .type   GL_PREFIX(TexCoord4i), @function
-GL_PREFIX(TexCoord4i):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    976(%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    976(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    976(%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    976(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord4i), .-GL_PREFIX(TexCoord4i)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord4iv)
-       .type   GL_PREFIX(TexCoord4iv), @function
-GL_PREFIX(TexCoord4iv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    984(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    984(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    984(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    984(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord4iv), .-GL_PREFIX(TexCoord4iv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord4s)
-       .type   GL_PREFIX(TexCoord4s), @function
-GL_PREFIX(TexCoord4s):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    992(%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    992(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    992(%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    992(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord4s), .-GL_PREFIX(TexCoord4s)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoord4sv)
-       .type   GL_PREFIX(TexCoord4sv), @function
-GL_PREFIX(TexCoord4sv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1000(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1000(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1000(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1000(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoord4sv), .-GL_PREFIX(TexCoord4sv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex2d)
-       .type   GL_PREFIX(Vertex2d), @function
-GL_PREFIX(Vertex2d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1008(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    1008(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1008(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    1008(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex2d), .-GL_PREFIX(Vertex2d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex2dv)
-       .type   GL_PREFIX(Vertex2dv), @function
-GL_PREFIX(Vertex2dv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1016(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1016(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1016(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1016(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex2dv), .-GL_PREFIX(Vertex2dv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex2f)
-       .type   GL_PREFIX(Vertex2f), @function
-GL_PREFIX(Vertex2f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1024(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    1024(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1024(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    1024(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex2f), .-GL_PREFIX(Vertex2f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex2fv)
-       .type   GL_PREFIX(Vertex2fv), @function
-GL_PREFIX(Vertex2fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1032(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1032(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1032(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1032(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex2fv), .-GL_PREFIX(Vertex2fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex2i)
-       .type   GL_PREFIX(Vertex2i), @function
-GL_PREFIX(Vertex2i):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1040(%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    1040(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1040(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    1040(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex2i), .-GL_PREFIX(Vertex2i)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex2iv)
-       .type   GL_PREFIX(Vertex2iv), @function
-GL_PREFIX(Vertex2iv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1048(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1048(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1048(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1048(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex2iv), .-GL_PREFIX(Vertex2iv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex2s)
-       .type   GL_PREFIX(Vertex2s), @function
-GL_PREFIX(Vertex2s):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1056(%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    1056(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1056(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    1056(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex2s), .-GL_PREFIX(Vertex2s)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex2sv)
-       .type   GL_PREFIX(Vertex2sv), @function
-GL_PREFIX(Vertex2sv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1064(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1064(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1064(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1064(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex2sv), .-GL_PREFIX(Vertex2sv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex3d)
-       .type   GL_PREFIX(Vertex3d), @function
-GL_PREFIX(Vertex3d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1072(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    1072(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1072(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    1072(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex3d), .-GL_PREFIX(Vertex3d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex3dv)
-       .type   GL_PREFIX(Vertex3dv), @function
-GL_PREFIX(Vertex3dv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1080(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1080(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1080(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1080(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex3dv), .-GL_PREFIX(Vertex3dv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex3f)
-       .type   GL_PREFIX(Vertex3f), @function
-GL_PREFIX(Vertex3f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1088(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    1088(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1088(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    1088(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex3f), .-GL_PREFIX(Vertex3f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex3fv)
-       .type   GL_PREFIX(Vertex3fv), @function
-GL_PREFIX(Vertex3fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1096(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1096(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1096(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1096(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex3fv), .-GL_PREFIX(Vertex3fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex3i)
-       .type   GL_PREFIX(Vertex3i), @function
-GL_PREFIX(Vertex3i):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1104(%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    1104(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1104(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1104(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex3i), .-GL_PREFIX(Vertex3i)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex3iv)
-       .type   GL_PREFIX(Vertex3iv), @function
-GL_PREFIX(Vertex3iv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1112(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1112(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1112(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1112(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex3iv), .-GL_PREFIX(Vertex3iv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex3s)
-       .type   GL_PREFIX(Vertex3s), @function
-GL_PREFIX(Vertex3s):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1120(%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    1120(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1120(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1120(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex3s), .-GL_PREFIX(Vertex3s)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex3sv)
-       .type   GL_PREFIX(Vertex3sv), @function
-GL_PREFIX(Vertex3sv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1128(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1128(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1128(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1128(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex3sv), .-GL_PREFIX(Vertex3sv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex4d)
-       .type   GL_PREFIX(Vertex4d), @function
-GL_PREFIX(Vertex4d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1136(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    1136(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1136(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    1136(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex4d), .-GL_PREFIX(Vertex4d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex4dv)
-       .type   GL_PREFIX(Vertex4dv), @function
-GL_PREFIX(Vertex4dv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1144(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1144(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1144(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1144(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex4dv), .-GL_PREFIX(Vertex4dv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex4f)
-       .type   GL_PREFIX(Vertex4f), @function
-GL_PREFIX(Vertex4f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1152(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    1152(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1152(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    1152(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex4f), .-GL_PREFIX(Vertex4f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex4fv)
-       .type   GL_PREFIX(Vertex4fv), @function
-GL_PREFIX(Vertex4fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1160(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1160(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1160(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1160(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex4fv), .-GL_PREFIX(Vertex4fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex4i)
-       .type   GL_PREFIX(Vertex4i), @function
-GL_PREFIX(Vertex4i):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1168(%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    1168(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1168(%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    1168(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex4i), .-GL_PREFIX(Vertex4i)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex4iv)
-       .type   GL_PREFIX(Vertex4iv), @function
-GL_PREFIX(Vertex4iv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1176(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1176(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1176(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1176(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex4iv), .-GL_PREFIX(Vertex4iv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex4s)
-       .type   GL_PREFIX(Vertex4s), @function
-GL_PREFIX(Vertex4s):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1184(%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    1184(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1184(%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    1184(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex4s), .-GL_PREFIX(Vertex4s)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Vertex4sv)
-       .type   GL_PREFIX(Vertex4sv), @function
-GL_PREFIX(Vertex4sv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1192(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1192(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1192(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1192(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Vertex4sv), .-GL_PREFIX(Vertex4sv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ClipPlane)
-       .type   GL_PREFIX(ClipPlane), @function
-GL_PREFIX(ClipPlane):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1200(%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    1200(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1200(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    1200(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ClipPlane), .-GL_PREFIX(ClipPlane)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ColorMaterial)
-       .type   GL_PREFIX(ColorMaterial), @function
-GL_PREFIX(ColorMaterial):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1208(%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    1208(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1208(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    1208(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ColorMaterial), .-GL_PREFIX(ColorMaterial)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CullFace)
-       .type   GL_PREFIX(CullFace), @function
-GL_PREFIX(CullFace):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1216(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1216(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1216(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1216(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CullFace), .-GL_PREFIX(CullFace)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Fogf)
-       .type   GL_PREFIX(Fogf), @function
-GL_PREFIX(Fogf):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1224(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    1224(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1224(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    1224(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Fogf), .-GL_PREFIX(Fogf)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Fogfv)
-       .type   GL_PREFIX(Fogfv), @function
-GL_PREFIX(Fogfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1232(%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    1232(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1232(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    1232(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Fogfv), .-GL_PREFIX(Fogfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Fogi)
-       .type   GL_PREFIX(Fogi), @function
-GL_PREFIX(Fogi):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1240(%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    1240(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1240(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    1240(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Fogi), .-GL_PREFIX(Fogi)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Fogiv)
-       .type   GL_PREFIX(Fogiv), @function
-GL_PREFIX(Fogiv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1248(%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    1248(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1248(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    1248(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Fogiv), .-GL_PREFIX(Fogiv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(FrontFace)
-       .type   GL_PREFIX(FrontFace), @function
-GL_PREFIX(FrontFace):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1256(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1256(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1256(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1256(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(FrontFace), .-GL_PREFIX(FrontFace)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Hint)
-       .type   GL_PREFIX(Hint), @function
-GL_PREFIX(Hint):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1264(%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    1264(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1264(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    1264(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Hint), .-GL_PREFIX(Hint)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Lightf)
-       .type   GL_PREFIX(Lightf), @function
-GL_PREFIX(Lightf):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1272(%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    1272(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1272(%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    1272(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Lightf), .-GL_PREFIX(Lightf)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Lightfv)
-       .type   GL_PREFIX(Lightfv), @function
-GL_PREFIX(Lightfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1280(%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    1280(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1280(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1280(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Lightfv), .-GL_PREFIX(Lightfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Lighti)
-       .type   GL_PREFIX(Lighti), @function
-GL_PREFIX(Lighti):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1288(%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    1288(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1288(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1288(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Lighti), .-GL_PREFIX(Lighti)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Lightiv)
-       .type   GL_PREFIX(Lightiv), @function
-GL_PREFIX(Lightiv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1296(%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    1296(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1296(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1296(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Lightiv), .-GL_PREFIX(Lightiv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(LightModelf)
-       .type   GL_PREFIX(LightModelf), @function
-GL_PREFIX(LightModelf):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1304(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    1304(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1304(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    1304(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(LightModelf), .-GL_PREFIX(LightModelf)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(LightModelfv)
-       .type   GL_PREFIX(LightModelfv), @function
-GL_PREFIX(LightModelfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1312(%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    1312(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1312(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    1312(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(LightModelfv), .-GL_PREFIX(LightModelfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(LightModeli)
-       .type   GL_PREFIX(LightModeli), @function
-GL_PREFIX(LightModeli):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1320(%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    1320(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1320(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    1320(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(LightModeli), .-GL_PREFIX(LightModeli)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(LightModeliv)
-       .type   GL_PREFIX(LightModeliv), @function
-GL_PREFIX(LightModeliv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1328(%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    1328(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1328(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    1328(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(LightModeliv), .-GL_PREFIX(LightModeliv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(LineStipple)
-       .type   GL_PREFIX(LineStipple), @function
-GL_PREFIX(LineStipple):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1336(%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    1336(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1336(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    1336(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(LineStipple), .-GL_PREFIX(LineStipple)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(LineWidth)
-       .type   GL_PREFIX(LineWidth), @function
-GL_PREFIX(LineWidth):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1344(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    1344(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1344(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _glapi_get_dispatch
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    1344(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(LineWidth), .-GL_PREFIX(LineWidth)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Materialf)
-       .type   GL_PREFIX(Materialf), @function
-GL_PREFIX(Materialf):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1352(%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    1352(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1352(%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    1352(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Materialf), .-GL_PREFIX(Materialf)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Materialfv)
-       .type   GL_PREFIX(Materialfv), @function
-GL_PREFIX(Materialfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1360(%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    1360(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1360(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1360(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Materialfv), .-GL_PREFIX(Materialfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Materiali)
-       .type   GL_PREFIX(Materiali), @function
-GL_PREFIX(Materiali):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1368(%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    1368(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1368(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1368(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Materiali), .-GL_PREFIX(Materiali)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Materialiv)
-       .type   GL_PREFIX(Materialiv), @function
-GL_PREFIX(Materialiv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1376(%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    1376(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1376(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1376(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Materialiv), .-GL_PREFIX(Materialiv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PointSize)
-       .type   GL_PREFIX(PointSize), @function
-GL_PREFIX(PointSize):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1384(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    1384(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1384(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _glapi_get_dispatch
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    1384(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PointSize), .-GL_PREFIX(PointSize)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PolygonMode)
-       .type   GL_PREFIX(PolygonMode), @function
-GL_PREFIX(PolygonMode):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1392(%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    1392(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1392(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    1392(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PolygonMode), .-GL_PREFIX(PolygonMode)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PolygonStipple)
-       .type   GL_PREFIX(PolygonStipple), @function
-GL_PREFIX(PolygonStipple):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1400(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1400(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1400(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1400(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PolygonStipple), .-GL_PREFIX(PolygonStipple)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Scissor)
-       .type   GL_PREFIX(Scissor), @function
-GL_PREFIX(Scissor):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1408(%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    1408(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1408(%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    1408(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Scissor), .-GL_PREFIX(Scissor)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ShadeModel)
-       .type   GL_PREFIX(ShadeModel), @function
-GL_PREFIX(ShadeModel):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1416(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1416(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1416(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1416(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ShadeModel), .-GL_PREFIX(ShadeModel)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexParameterf)
-       .type   GL_PREFIX(TexParameterf), @function
-GL_PREFIX(TexParameterf):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1424(%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    1424(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1424(%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    1424(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexParameterf), .-GL_PREFIX(TexParameterf)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexParameterfv)
-       .type   GL_PREFIX(TexParameterfv), @function
-GL_PREFIX(TexParameterfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1432(%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    1432(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1432(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1432(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexParameterfv), .-GL_PREFIX(TexParameterfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexParameteri)
-       .type   GL_PREFIX(TexParameteri), @function
-GL_PREFIX(TexParameteri):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1440(%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    1440(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1440(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1440(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexParameteri), .-GL_PREFIX(TexParameteri)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexParameteriv)
-       .type   GL_PREFIX(TexParameteriv), @function
-GL_PREFIX(TexParameteriv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1448(%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    1448(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1448(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1448(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexParameteriv), .-GL_PREFIX(TexParameteriv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexImage1D)
-       .type   GL_PREFIX(TexImage1D), @function
-GL_PREFIX(TexImage1D):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1456(%rax), %r11
-       jmp     *%r11
-#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    1456(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1456(%rax), %r11
-       jmp     *%r11
-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    1456(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexImage1D), .-GL_PREFIX(TexImage1D)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexImage2D)
-       .type   GL_PREFIX(TexImage2D), @function
-GL_PREFIX(TexImage2D):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1464(%rax), %r11
-       jmp     *%r11
-#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    1464(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1464(%rax), %r11
-       jmp     *%r11
-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    1464(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexImage2D), .-GL_PREFIX(TexImage2D)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexEnvf)
-       .type   GL_PREFIX(TexEnvf), @function
-GL_PREFIX(TexEnvf):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1472(%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    1472(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1472(%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    1472(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexEnvf), .-GL_PREFIX(TexEnvf)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexEnvfv)
-       .type   GL_PREFIX(TexEnvfv), @function
-GL_PREFIX(TexEnvfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1480(%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    1480(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1480(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1480(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexEnvfv), .-GL_PREFIX(TexEnvfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexEnvi)
-       .type   GL_PREFIX(TexEnvi), @function
-GL_PREFIX(TexEnvi):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1488(%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    1488(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1488(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1488(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexEnvi), .-GL_PREFIX(TexEnvi)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexEnviv)
-       .type   GL_PREFIX(TexEnviv), @function
-GL_PREFIX(TexEnviv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1496(%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    1496(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1496(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1496(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexEnviv), .-GL_PREFIX(TexEnviv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexGend)
-       .type   GL_PREFIX(TexGend), @function
-GL_PREFIX(TexGend):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1504(%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    1504(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1504(%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    1504(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexGend), .-GL_PREFIX(TexGend)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexGendv)
-       .type   GL_PREFIX(TexGendv), @function
-GL_PREFIX(TexGendv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1512(%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    1512(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1512(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1512(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexGendv), .-GL_PREFIX(TexGendv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexGenf)
-       .type   GL_PREFIX(TexGenf), @function
-GL_PREFIX(TexGenf):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1520(%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    1520(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1520(%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    1520(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexGenf), .-GL_PREFIX(TexGenf)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexGenfv)
-       .type   GL_PREFIX(TexGenfv), @function
-GL_PREFIX(TexGenfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1528(%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    1528(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1528(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1528(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexGenfv), .-GL_PREFIX(TexGenfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexGeni)
-       .type   GL_PREFIX(TexGeni), @function
-GL_PREFIX(TexGeni):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1536(%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    1536(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1536(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1536(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexGeni), .-GL_PREFIX(TexGeni)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexGeniv)
-       .type   GL_PREFIX(TexGeniv), @function
-GL_PREFIX(TexGeniv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1544(%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    1544(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1544(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1544(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexGeniv), .-GL_PREFIX(TexGeniv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(FeedbackBuffer)
-       .type   GL_PREFIX(FeedbackBuffer), @function
-GL_PREFIX(FeedbackBuffer):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1552(%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    1552(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1552(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1552(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(FeedbackBuffer), .-GL_PREFIX(FeedbackBuffer)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SelectBuffer)
-       .type   GL_PREFIX(SelectBuffer), @function
-GL_PREFIX(SelectBuffer):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1560(%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    1560(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1560(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    1560(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(SelectBuffer), .-GL_PREFIX(SelectBuffer)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RenderMode)
-       .type   GL_PREFIX(RenderMode), @function
-GL_PREFIX(RenderMode):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1568(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1568(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1568(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1568(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RenderMode), .-GL_PREFIX(RenderMode)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(InitNames)
-       .type   GL_PREFIX(InitNames), @function
-GL_PREFIX(InitNames):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1576(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    1576(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1576(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    1576(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(InitNames), .-GL_PREFIX(InitNames)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(LoadName)
-       .type   GL_PREFIX(LoadName), @function
-GL_PREFIX(LoadName):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1584(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1584(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1584(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1584(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(LoadName), .-GL_PREFIX(LoadName)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PassThrough)
-       .type   GL_PREFIX(PassThrough), @function
-GL_PREFIX(PassThrough):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1592(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    1592(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1592(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _glapi_get_dispatch
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    1592(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PassThrough), .-GL_PREFIX(PassThrough)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PopName)
-       .type   GL_PREFIX(PopName), @function
-GL_PREFIX(PopName):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1600(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    1600(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1600(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    1600(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PopName), .-GL_PREFIX(PopName)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PushName)
-       .type   GL_PREFIX(PushName), @function
-GL_PREFIX(PushName):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1608(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1608(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1608(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1608(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PushName), .-GL_PREFIX(PushName)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DrawBuffer)
-       .type   GL_PREFIX(DrawBuffer), @function
-GL_PREFIX(DrawBuffer):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1616(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1616(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1616(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1616(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DrawBuffer), .-GL_PREFIX(DrawBuffer)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Clear)
-       .type   GL_PREFIX(Clear), @function
-GL_PREFIX(Clear):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1624(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1624(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1624(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1624(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Clear), .-GL_PREFIX(Clear)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ClearAccum)
-       .type   GL_PREFIX(ClearAccum), @function
-GL_PREFIX(ClearAccum):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1632(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    1632(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1632(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    1632(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ClearAccum), .-GL_PREFIX(ClearAccum)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ClearIndex)
-       .type   GL_PREFIX(ClearIndex), @function
-GL_PREFIX(ClearIndex):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1640(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    1640(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1640(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _glapi_get_dispatch
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    1640(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ClearIndex), .-GL_PREFIX(ClearIndex)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ClearColor)
-       .type   GL_PREFIX(ClearColor), @function
-GL_PREFIX(ClearColor):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1648(%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    1648(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1648(%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    1648(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ClearColor), .-GL_PREFIX(ClearColor)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ClearStencil)
-       .type   GL_PREFIX(ClearStencil), @function
-GL_PREFIX(ClearStencil):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1656(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1656(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1656(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1656(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ClearStencil), .-GL_PREFIX(ClearStencil)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ClearDepth)
-       .type   GL_PREFIX(ClearDepth), @function
-GL_PREFIX(ClearDepth):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1664(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1664(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1664(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1664(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ClearDepth), .-GL_PREFIX(ClearDepth)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(StencilMask)
-       .type   GL_PREFIX(StencilMask), @function
-GL_PREFIX(StencilMask):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1672(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1672(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1672(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1672(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(StencilMask), .-GL_PREFIX(StencilMask)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ColorMask)
-       .type   GL_PREFIX(ColorMask), @function
-GL_PREFIX(ColorMask):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1680(%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    1680(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1680(%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    1680(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ColorMask), .-GL_PREFIX(ColorMask)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DepthMask)
-       .type   GL_PREFIX(DepthMask), @function
-GL_PREFIX(DepthMask):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1688(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1688(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1688(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1688(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DepthMask), .-GL_PREFIX(DepthMask)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(IndexMask)
-       .type   GL_PREFIX(IndexMask), @function
-GL_PREFIX(IndexMask):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1696(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1696(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1696(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1696(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(IndexMask), .-GL_PREFIX(IndexMask)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Accum)
-       .type   GL_PREFIX(Accum), @function
-GL_PREFIX(Accum):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1704(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    1704(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1704(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    1704(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Accum), .-GL_PREFIX(Accum)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Disable)
-       .type   GL_PREFIX(Disable), @function
-GL_PREFIX(Disable):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1712(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1712(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1712(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1712(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Disable), .-GL_PREFIX(Disable)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Enable)
-       .type   GL_PREFIX(Enable), @function
-GL_PREFIX(Enable):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1720(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1720(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1720(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1720(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Enable), .-GL_PREFIX(Enable)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Finish)
-       .type   GL_PREFIX(Finish), @function
-GL_PREFIX(Finish):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1728(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    1728(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1728(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    1728(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Finish), .-GL_PREFIX(Finish)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Flush)
-       .type   GL_PREFIX(Flush), @function
-GL_PREFIX(Flush):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1736(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    1736(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1736(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    1736(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Flush), .-GL_PREFIX(Flush)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PopAttrib)
-       .type   GL_PREFIX(PopAttrib), @function
-GL_PREFIX(PopAttrib):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1744(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    1744(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1744(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    1744(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PopAttrib), .-GL_PREFIX(PopAttrib)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PushAttrib)
-       .type   GL_PREFIX(PushAttrib), @function
-GL_PREFIX(PushAttrib):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1752(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1752(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1752(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1752(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PushAttrib), .-GL_PREFIX(PushAttrib)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Map1d)
-       .type   GL_PREFIX(Map1d), @function
-GL_PREFIX(Map1d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1760(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $56, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %rsi, 24(%rsp)
-       movq    %rdx, 32(%rsp)
-       movq    %rcx, 40(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    40(%rsp), %rcx
-       movq    32(%rsp), %rdx
-       movq    24(%rsp), %rsi
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $56, %rsp
-       movq    1760(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1760(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $56, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %rsi, 24(%rsp)
-       movq    %rdx, 32(%rsp)
-       movq    %rcx, 40(%rsp)
-       call    _glapi_get_dispatch
-       movq    40(%rsp), %rcx
-       movq    32(%rsp), %rdx
-       movq    24(%rsp), %rsi
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $56, %rsp
-       movq    1760(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Map1d), .-GL_PREFIX(Map1d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Map1f)
-       .type   GL_PREFIX(Map1f), @function
-GL_PREFIX(Map1f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1768(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $56, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %rsi, 24(%rsp)
-       movq    %rdx, 32(%rsp)
-       movq    %rcx, 40(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    40(%rsp), %rcx
-       movq    32(%rsp), %rdx
-       movq    24(%rsp), %rsi
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $56, %rsp
-       movq    1768(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1768(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $56, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %rsi, 24(%rsp)
-       movq    %rdx, 32(%rsp)
-       movq    %rcx, 40(%rsp)
-       call    _glapi_get_dispatch
-       movq    40(%rsp), %rcx
-       movq    32(%rsp), %rdx
-       movq    24(%rsp), %rsi
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $56, %rsp
-       movq    1768(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Map1f), .-GL_PREFIX(Map1f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Map2d)
-       .type   GL_PREFIX(Map2d), @function
-GL_PREFIX(Map2d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1776(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $88, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %rsi, 24(%rsp)
-       movq    %rdx, 32(%rsp)
-       movq    %xmm2, 40(%rsp)
-       movq    %xmm3, 48(%rsp)
-       movq    %rcx, 56(%rsp)
-       movq    %r8, 64(%rsp)
-       movq    %r9, 72(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    72(%rsp), %r9
-       movq    64(%rsp), %r8
-       movq    56(%rsp), %rcx
-       movq    48(%rsp), %xmm3
-       movq    40(%rsp), %xmm2
-       movq    32(%rsp), %rdx
-       movq    24(%rsp), %rsi
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $88, %rsp
-       movq    1776(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1776(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $88, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %rsi, 24(%rsp)
-       movq    %rdx, 32(%rsp)
-       movq    %xmm2, 40(%rsp)
-       movq    %xmm3, 48(%rsp)
-       movq    %rcx, 56(%rsp)
-       movq    %r8, 64(%rsp)
-       movq    %r9, 72(%rsp)
-       call    _glapi_get_dispatch
-       movq    72(%rsp), %r9
-       movq    64(%rsp), %r8
-       movq    56(%rsp), %rcx
-       movq    48(%rsp), %xmm3
-       movq    40(%rsp), %xmm2
-       movq    32(%rsp), %rdx
-       movq    24(%rsp), %rsi
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $88, %rsp
-       movq    1776(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Map2d), .-GL_PREFIX(Map2d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Map2f)
-       .type   GL_PREFIX(Map2f), @function
-GL_PREFIX(Map2f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1784(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $88, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %rsi, 24(%rsp)
-       movq    %rdx, 32(%rsp)
-       movq    %xmm2, 40(%rsp)
-       movq    %xmm3, 48(%rsp)
-       movq    %rcx, 56(%rsp)
-       movq    %r8, 64(%rsp)
-       movq    %r9, 72(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    72(%rsp), %r9
-       movq    64(%rsp), %r8
-       movq    56(%rsp), %rcx
-       movq    48(%rsp), %xmm3
-       movq    40(%rsp), %xmm2
-       movq    32(%rsp), %rdx
-       movq    24(%rsp), %rsi
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $88, %rsp
-       movq    1784(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1784(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $88, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %rsi, 24(%rsp)
-       movq    %rdx, 32(%rsp)
-       movq    %xmm2, 40(%rsp)
-       movq    %xmm3, 48(%rsp)
-       movq    %rcx, 56(%rsp)
-       movq    %r8, 64(%rsp)
-       movq    %r9, 72(%rsp)
-       call    _glapi_get_dispatch
-       movq    72(%rsp), %r9
-       movq    64(%rsp), %r8
-       movq    56(%rsp), %rcx
-       movq    48(%rsp), %xmm3
-       movq    40(%rsp), %xmm2
-       movq    32(%rsp), %rdx
-       movq    24(%rsp), %rsi
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $88, %rsp
-       movq    1784(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Map2f), .-GL_PREFIX(Map2f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MapGrid1d)
-       .type   GL_PREFIX(MapGrid1d), @function
-GL_PREFIX(MapGrid1d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1792(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    1792(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1792(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    1792(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MapGrid1d), .-GL_PREFIX(MapGrid1d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MapGrid1f)
-       .type   GL_PREFIX(MapGrid1f), @function
-GL_PREFIX(MapGrid1f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1800(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    1800(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1800(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    1800(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MapGrid1f), .-GL_PREFIX(MapGrid1f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MapGrid2d)
-       .type   GL_PREFIX(MapGrid2d), @function
-GL_PREFIX(MapGrid2d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1808(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $56, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %rsi, 24(%rsp)
-       movq    %xmm2, 32(%rsp)
-       movq    %xmm3, 40(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    40(%rsp), %xmm3
-       movq    32(%rsp), %xmm2
-       movq    24(%rsp), %rsi
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $56, %rsp
-       movq    1808(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1808(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $56, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %rsi, 24(%rsp)
-       movq    %xmm2, 32(%rsp)
-       movq    %xmm3, 40(%rsp)
-       call    _glapi_get_dispatch
-       movq    40(%rsp), %xmm3
-       movq    32(%rsp), %xmm2
-       movq    24(%rsp), %rsi
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $56, %rsp
-       movq    1808(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MapGrid2d), .-GL_PREFIX(MapGrid2d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MapGrid2f)
-       .type   GL_PREFIX(MapGrid2f), @function
-GL_PREFIX(MapGrid2f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1816(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $56, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %rsi, 24(%rsp)
-       movq    %xmm2, 32(%rsp)
-       movq    %xmm3, 40(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    40(%rsp), %xmm3
-       movq    32(%rsp), %xmm2
-       movq    24(%rsp), %rsi
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $56, %rsp
-       movq    1816(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1816(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $56, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %rsi, 24(%rsp)
-       movq    %xmm2, 32(%rsp)
-       movq    %xmm3, 40(%rsp)
-       call    _glapi_get_dispatch
-       movq    40(%rsp), %xmm3
-       movq    32(%rsp), %xmm2
-       movq    24(%rsp), %rsi
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $56, %rsp
-       movq    1816(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MapGrid2f), .-GL_PREFIX(MapGrid2f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EvalCoord1d)
-       .type   GL_PREFIX(EvalCoord1d), @function
-GL_PREFIX(EvalCoord1d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1824(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    1824(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1824(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _glapi_get_dispatch
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    1824(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EvalCoord1d), .-GL_PREFIX(EvalCoord1d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EvalCoord1dv)
-       .type   GL_PREFIX(EvalCoord1dv), @function
-GL_PREFIX(EvalCoord1dv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1832(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1832(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1832(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1832(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EvalCoord1dv), .-GL_PREFIX(EvalCoord1dv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EvalCoord1f)
-       .type   GL_PREFIX(EvalCoord1f), @function
-GL_PREFIX(EvalCoord1f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1840(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    1840(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1840(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _glapi_get_dispatch
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    1840(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EvalCoord1f), .-GL_PREFIX(EvalCoord1f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EvalCoord1fv)
-       .type   GL_PREFIX(EvalCoord1fv), @function
-GL_PREFIX(EvalCoord1fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1848(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1848(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1848(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1848(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EvalCoord1fv), .-GL_PREFIX(EvalCoord1fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EvalCoord2d)
-       .type   GL_PREFIX(EvalCoord2d), @function
-GL_PREFIX(EvalCoord2d):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1856(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    1856(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1856(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    1856(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EvalCoord2d), .-GL_PREFIX(EvalCoord2d)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EvalCoord2dv)
-       .type   GL_PREFIX(EvalCoord2dv), @function
-GL_PREFIX(EvalCoord2dv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1864(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1864(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1864(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1864(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EvalCoord2dv), .-GL_PREFIX(EvalCoord2dv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EvalCoord2f)
-       .type   GL_PREFIX(EvalCoord2f), @function
-GL_PREFIX(EvalCoord2f):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1872(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    1872(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1872(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    1872(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EvalCoord2f), .-GL_PREFIX(EvalCoord2f)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EvalCoord2fv)
-       .type   GL_PREFIX(EvalCoord2fv), @function
-GL_PREFIX(EvalCoord2fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1880(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1880(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1880(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1880(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EvalCoord2fv), .-GL_PREFIX(EvalCoord2fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EvalMesh1)
-       .type   GL_PREFIX(EvalMesh1), @function
-GL_PREFIX(EvalMesh1):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1888(%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    1888(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1888(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1888(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EvalMesh1), .-GL_PREFIX(EvalMesh1)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EvalPoint1)
-       .type   GL_PREFIX(EvalPoint1), @function
-GL_PREFIX(EvalPoint1):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1896(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1896(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1896(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1896(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EvalPoint1), .-GL_PREFIX(EvalPoint1)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EvalMesh2)
-       .type   GL_PREFIX(EvalMesh2), @function
-GL_PREFIX(EvalMesh2):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1904(%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    1904(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1904(%rax), %r11
-       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    1904(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EvalMesh2), .-GL_PREFIX(EvalMesh2)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EvalPoint2)
-       .type   GL_PREFIX(EvalPoint2), @function
-GL_PREFIX(EvalPoint2):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1912(%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    1912(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1912(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    1912(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EvalPoint2), .-GL_PREFIX(EvalPoint2)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(AlphaFunc)
-       .type   GL_PREFIX(AlphaFunc), @function
-GL_PREFIX(AlphaFunc):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1920(%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    1920(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1920(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    1920(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(AlphaFunc), .-GL_PREFIX(AlphaFunc)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BlendFunc)
-       .type   GL_PREFIX(BlendFunc), @function
-GL_PREFIX(BlendFunc):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1928(%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    1928(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1928(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    1928(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BlendFunc), .-GL_PREFIX(BlendFunc)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(LogicOp)
-       .type   GL_PREFIX(LogicOp), @function
-GL_PREFIX(LogicOp):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1936(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1936(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1936(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1936(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(LogicOp), .-GL_PREFIX(LogicOp)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(StencilFunc)
-       .type   GL_PREFIX(StencilFunc), @function
-GL_PREFIX(StencilFunc):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1944(%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    1944(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1944(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1944(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(StencilFunc), .-GL_PREFIX(StencilFunc)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(StencilOp)
-       .type   GL_PREFIX(StencilOp), @function
-GL_PREFIX(StencilOp):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1952(%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    1952(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1952(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    1952(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(StencilOp), .-GL_PREFIX(StencilOp)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DepthFunc)
-       .type   GL_PREFIX(DepthFunc), @function
-GL_PREFIX(DepthFunc):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1960(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    1960(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1960(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    1960(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DepthFunc), .-GL_PREFIX(DepthFunc)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PixelZoom)
-       .type   GL_PREFIX(PixelZoom), @function
-GL_PREFIX(PixelZoom):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1968(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    1968(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1968(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    1968(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PixelZoom), .-GL_PREFIX(PixelZoom)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PixelTransferf)
-       .type   GL_PREFIX(PixelTransferf), @function
-GL_PREFIX(PixelTransferf):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1976(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    1976(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1976(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    1976(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PixelTransferf), .-GL_PREFIX(PixelTransferf)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PixelTransferi)
-       .type   GL_PREFIX(PixelTransferi), @function
-GL_PREFIX(PixelTransferi):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1984(%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    1984(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1984(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    1984(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PixelTransferi), .-GL_PREFIX(PixelTransferi)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PixelStoref)
-       .type   GL_PREFIX(PixelStoref), @function
-GL_PREFIX(PixelStoref):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    1992(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    1992(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    1992(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    1992(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PixelStoref), .-GL_PREFIX(PixelStoref)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PixelStorei)
-       .type   GL_PREFIX(PixelStorei), @function
-GL_PREFIX(PixelStorei):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2000(%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    2000(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2000(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    2000(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PixelStorei), .-GL_PREFIX(PixelStorei)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PixelMapfv)
-       .type   GL_PREFIX(PixelMapfv), @function
-GL_PREFIX(PixelMapfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2008(%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    2008(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2008(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2008(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PixelMapfv), .-GL_PREFIX(PixelMapfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PixelMapuiv)
-       .type   GL_PREFIX(PixelMapuiv), @function
-GL_PREFIX(PixelMapuiv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2016(%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    2016(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2016(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2016(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PixelMapuiv), .-GL_PREFIX(PixelMapuiv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PixelMapusv)
-       .type   GL_PREFIX(PixelMapusv), @function
-GL_PREFIX(PixelMapusv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2024(%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    2024(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2024(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2024(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PixelMapusv), .-GL_PREFIX(PixelMapusv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ReadBuffer)
-       .type   GL_PREFIX(ReadBuffer), @function
-GL_PREFIX(ReadBuffer):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2032(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2032(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2032(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2032(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ReadBuffer), .-GL_PREFIX(ReadBuffer)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CopyPixels)
-       .type   GL_PREFIX(CopyPixels), @function
-GL_PREFIX(CopyPixels):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2040(%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    2040(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2040(%rax), %r11
-       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    2040(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CopyPixels), .-GL_PREFIX(CopyPixels)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ReadPixels)
-       .type   GL_PREFIX(ReadPixels), @function
-GL_PREFIX(ReadPixels):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2048(%rax), %r11
-       jmp     *%r11
-#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    2048(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2048(%rax), %r11
-       jmp     *%r11
-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    2048(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ReadPixels), .-GL_PREFIX(ReadPixels)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DrawPixels)
-       .type   GL_PREFIX(DrawPixels), @function
-GL_PREFIX(DrawPixels):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2056(%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    2056(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2056(%rax), %r11
-       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    2056(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DrawPixels), .-GL_PREFIX(DrawPixels)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetBooleanv)
-       .type   GL_PREFIX(GetBooleanv), @function
-GL_PREFIX(GetBooleanv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2064(%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    2064(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2064(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    2064(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetBooleanv), .-GL_PREFIX(GetBooleanv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetClipPlane)
-       .type   GL_PREFIX(GetClipPlane), @function
-GL_PREFIX(GetClipPlane):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2072(%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    2072(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2072(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    2072(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetClipPlane), .-GL_PREFIX(GetClipPlane)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetDoublev)
-       .type   GL_PREFIX(GetDoublev), @function
-GL_PREFIX(GetDoublev):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2080(%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    2080(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2080(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    2080(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetDoublev), .-GL_PREFIX(GetDoublev)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetError)
-       .type   GL_PREFIX(GetError), @function
-GL_PREFIX(GetError):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2088(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    2088(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2088(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    2088(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetError), .-GL_PREFIX(GetError)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetFloatv)
-       .type   GL_PREFIX(GetFloatv), @function
-GL_PREFIX(GetFloatv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2096(%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    2096(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2096(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    2096(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetFloatv), .-GL_PREFIX(GetFloatv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetIntegerv)
-       .type   GL_PREFIX(GetIntegerv), @function
-GL_PREFIX(GetIntegerv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2104(%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    2104(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2104(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    2104(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetIntegerv), .-GL_PREFIX(GetIntegerv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetLightfv)
-       .type   GL_PREFIX(GetLightfv), @function
-GL_PREFIX(GetLightfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2112(%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    2112(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2112(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2112(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetLightfv), .-GL_PREFIX(GetLightfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetLightiv)
-       .type   GL_PREFIX(GetLightiv), @function
-GL_PREFIX(GetLightiv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2120(%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    2120(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2120(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2120(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetLightiv), .-GL_PREFIX(GetLightiv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetMapdv)
-       .type   GL_PREFIX(GetMapdv), @function
-GL_PREFIX(GetMapdv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2128(%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    2128(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2128(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2128(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetMapdv), .-GL_PREFIX(GetMapdv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetMapfv)
-       .type   GL_PREFIX(GetMapfv), @function
-GL_PREFIX(GetMapfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2136(%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    2136(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2136(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2136(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetMapfv), .-GL_PREFIX(GetMapfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetMapiv)
-       .type   GL_PREFIX(GetMapiv), @function
-GL_PREFIX(GetMapiv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2144(%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    2144(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2144(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2144(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetMapiv), .-GL_PREFIX(GetMapiv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetMaterialfv)
-       .type   GL_PREFIX(GetMaterialfv), @function
-GL_PREFIX(GetMaterialfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2152(%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    2152(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2152(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2152(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetMaterialfv), .-GL_PREFIX(GetMaterialfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetMaterialiv)
-       .type   GL_PREFIX(GetMaterialiv), @function
-GL_PREFIX(GetMaterialiv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2160(%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    2160(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2160(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2160(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetMaterialiv), .-GL_PREFIX(GetMaterialiv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetPixelMapfv)
-       .type   GL_PREFIX(GetPixelMapfv), @function
-GL_PREFIX(GetPixelMapfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2168(%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    2168(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2168(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    2168(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetPixelMapfv), .-GL_PREFIX(GetPixelMapfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetPixelMapuiv)
-       .type   GL_PREFIX(GetPixelMapuiv), @function
-GL_PREFIX(GetPixelMapuiv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2176(%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    2176(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2176(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    2176(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetPixelMapuiv), .-GL_PREFIX(GetPixelMapuiv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetPixelMapusv)
-       .type   GL_PREFIX(GetPixelMapusv), @function
-GL_PREFIX(GetPixelMapusv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2184(%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    2184(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2184(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    2184(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetPixelMapusv), .-GL_PREFIX(GetPixelMapusv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetPolygonStipple)
-       .type   GL_PREFIX(GetPolygonStipple), @function
-GL_PREFIX(GetPolygonStipple):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2192(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2192(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2192(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2192(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetPolygonStipple), .-GL_PREFIX(GetPolygonStipple)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetString)
-       .type   GL_PREFIX(GetString), @function
-GL_PREFIX(GetString):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2200(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2200(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2200(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2200(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetString), .-GL_PREFIX(GetString)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetTexEnvfv)
-       .type   GL_PREFIX(GetTexEnvfv), @function
-GL_PREFIX(GetTexEnvfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2208(%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    2208(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2208(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2208(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetTexEnvfv), .-GL_PREFIX(GetTexEnvfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetTexEnviv)
-       .type   GL_PREFIX(GetTexEnviv), @function
-GL_PREFIX(GetTexEnviv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2216(%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    2216(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2216(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2216(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetTexEnviv), .-GL_PREFIX(GetTexEnviv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetTexGendv)
-       .type   GL_PREFIX(GetTexGendv), @function
-GL_PREFIX(GetTexGendv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2224(%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    2224(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2224(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2224(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetTexGendv), .-GL_PREFIX(GetTexGendv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetTexGenfv)
-       .type   GL_PREFIX(GetTexGenfv), @function
-GL_PREFIX(GetTexGenfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2232(%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    2232(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2232(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2232(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetTexGenfv), .-GL_PREFIX(GetTexGenfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetTexGeniv)
-       .type   GL_PREFIX(GetTexGeniv), @function
-GL_PREFIX(GetTexGeniv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2240(%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    2240(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2240(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2240(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetTexGeniv), .-GL_PREFIX(GetTexGeniv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetTexImage)
-       .type   GL_PREFIX(GetTexImage), @function
-GL_PREFIX(GetTexImage):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2248(%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    2248(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2248(%rax), %r11
-       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    2248(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetTexImage), .-GL_PREFIX(GetTexImage)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetTexParameterfv)
-       .type   GL_PREFIX(GetTexParameterfv), @function
-GL_PREFIX(GetTexParameterfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2256(%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    2256(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2256(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2256(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetTexParameterfv), .-GL_PREFIX(GetTexParameterfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetTexParameteriv)
-       .type   GL_PREFIX(GetTexParameteriv), @function
-GL_PREFIX(GetTexParameteriv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2264(%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    2264(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2264(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2264(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetTexParameteriv), .-GL_PREFIX(GetTexParameteriv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetTexLevelParameterfv)
-       .type   GL_PREFIX(GetTexLevelParameterfv), @function
-GL_PREFIX(GetTexLevelParameterfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2272(%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    2272(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2272(%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    2272(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetTexLevelParameterfv), .-GL_PREFIX(GetTexLevelParameterfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetTexLevelParameteriv)
-       .type   GL_PREFIX(GetTexLevelParameteriv), @function
-GL_PREFIX(GetTexLevelParameteriv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2280(%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    2280(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2280(%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    2280(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetTexLevelParameteriv), .-GL_PREFIX(GetTexLevelParameteriv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(IsEnabled)
-       .type   GL_PREFIX(IsEnabled), @function
-GL_PREFIX(IsEnabled):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2288(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2288(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2288(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2288(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(IsEnabled), .-GL_PREFIX(IsEnabled)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(IsList)
-       .type   GL_PREFIX(IsList), @function
-GL_PREFIX(IsList):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2296(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2296(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2296(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2296(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(IsList), .-GL_PREFIX(IsList)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DepthRange)
-       .type   GL_PREFIX(DepthRange), @function
-GL_PREFIX(DepthRange):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2304(%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    2304(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2304(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    2304(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DepthRange), .-GL_PREFIX(DepthRange)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Frustum)
-       .type   GL_PREFIX(Frustum), @function
-GL_PREFIX(Frustum):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2312(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $56, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       movq    %xmm4, 32(%rsp)
-       movq    %xmm5, 40(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    40(%rsp), %xmm5
-       movq    32(%rsp), %xmm4
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $56, %rsp
-       movq    2312(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2312(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $56, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       movq    %xmm4, 32(%rsp)
-       movq    %xmm5, 40(%rsp)
-       call    _glapi_get_dispatch
-       movq    40(%rsp), %xmm5
-       movq    32(%rsp), %xmm4
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $56, %rsp
-       movq    2312(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Frustum), .-GL_PREFIX(Frustum)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(LoadIdentity)
-       .type   GL_PREFIX(LoadIdentity), @function
-GL_PREFIX(LoadIdentity):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2320(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    2320(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2320(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    2320(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(LoadIdentity), .-GL_PREFIX(LoadIdentity)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(LoadMatrixf)
-       .type   GL_PREFIX(LoadMatrixf), @function
-GL_PREFIX(LoadMatrixf):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2328(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2328(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2328(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2328(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(LoadMatrixf), .-GL_PREFIX(LoadMatrixf)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(LoadMatrixd)
-       .type   GL_PREFIX(LoadMatrixd), @function
-GL_PREFIX(LoadMatrixd):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2336(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2336(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2336(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2336(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(LoadMatrixd), .-GL_PREFIX(LoadMatrixd)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MatrixMode)
-       .type   GL_PREFIX(MatrixMode), @function
-GL_PREFIX(MatrixMode):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2344(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2344(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2344(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2344(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MatrixMode), .-GL_PREFIX(MatrixMode)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultMatrixf)
-       .type   GL_PREFIX(MultMatrixf), @function
-GL_PREFIX(MultMatrixf):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2352(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2352(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2352(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2352(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultMatrixf), .-GL_PREFIX(MultMatrixf)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultMatrixd)
-       .type   GL_PREFIX(MultMatrixd), @function
-GL_PREFIX(MultMatrixd):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2360(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2360(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2360(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2360(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultMatrixd), .-GL_PREFIX(MultMatrixd)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Ortho)
-       .type   GL_PREFIX(Ortho), @function
-GL_PREFIX(Ortho):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2368(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $56, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       movq    %xmm4, 32(%rsp)
-       movq    %xmm5, 40(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    40(%rsp), %xmm5
-       movq    32(%rsp), %xmm4
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $56, %rsp
-       movq    2368(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2368(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $56, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       movq    %xmm4, 32(%rsp)
-       movq    %xmm5, 40(%rsp)
-       call    _glapi_get_dispatch
-       movq    40(%rsp), %xmm5
-       movq    32(%rsp), %xmm4
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $56, %rsp
-       movq    2368(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Ortho), .-GL_PREFIX(Ortho)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PopMatrix)
-       .type   GL_PREFIX(PopMatrix), @function
-GL_PREFIX(PopMatrix):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2376(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    2376(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2376(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    2376(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PopMatrix), .-GL_PREFIX(PopMatrix)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PushMatrix)
-       .type   GL_PREFIX(PushMatrix), @function
-GL_PREFIX(PushMatrix):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2384(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    2384(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2384(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    2384(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PushMatrix), .-GL_PREFIX(PushMatrix)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Rotated)
-       .type   GL_PREFIX(Rotated), @function
-GL_PREFIX(Rotated):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2392(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    2392(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2392(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    2392(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Rotated), .-GL_PREFIX(Rotated)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Rotatef)
-       .type   GL_PREFIX(Rotatef), @function
-GL_PREFIX(Rotatef):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2400(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    2400(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2400(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    2400(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Rotatef), .-GL_PREFIX(Rotatef)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Scaled)
-       .type   GL_PREFIX(Scaled), @function
-GL_PREFIX(Scaled):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2408(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    2408(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2408(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    2408(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Scaled), .-GL_PREFIX(Scaled)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Scalef)
-       .type   GL_PREFIX(Scalef), @function
-GL_PREFIX(Scalef):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2416(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    2416(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2416(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    2416(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Scalef), .-GL_PREFIX(Scalef)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Translated)
-       .type   GL_PREFIX(Translated), @function
-GL_PREFIX(Translated):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2424(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    2424(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2424(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    2424(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Translated), .-GL_PREFIX(Translated)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Translatef)
-       .type   GL_PREFIX(Translatef), @function
-GL_PREFIX(Translatef):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2432(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    2432(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2432(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    2432(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Translatef), .-GL_PREFIX(Translatef)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Viewport)
-       .type   GL_PREFIX(Viewport), @function
-GL_PREFIX(Viewport):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2440(%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    2440(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2440(%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    2440(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Viewport), .-GL_PREFIX(Viewport)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ArrayElement)
-       .type   GL_PREFIX(ArrayElement), @function
-GL_PREFIX(ArrayElement):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2448(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2448(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2448(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2448(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ArrayElement), .-GL_PREFIX(ArrayElement)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BindTexture)
-       .type   GL_PREFIX(BindTexture), @function
-GL_PREFIX(BindTexture):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2456(%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    2456(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2456(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    2456(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BindTexture), .-GL_PREFIX(BindTexture)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ColorPointer)
-       .type   GL_PREFIX(ColorPointer), @function
-GL_PREFIX(ColorPointer):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2464(%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    2464(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2464(%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    2464(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ColorPointer), .-GL_PREFIX(ColorPointer)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DisableClientState)
-       .type   GL_PREFIX(DisableClientState), @function
-GL_PREFIX(DisableClientState):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2472(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2472(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2472(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2472(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DisableClientState), .-GL_PREFIX(DisableClientState)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DrawArrays)
-       .type   GL_PREFIX(DrawArrays), @function
-GL_PREFIX(DrawArrays):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2480(%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    2480(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2480(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2480(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DrawArrays), .-GL_PREFIX(DrawArrays)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DrawElements)
-       .type   GL_PREFIX(DrawElements), @function
-GL_PREFIX(DrawElements):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2488(%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    2488(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2488(%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    2488(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DrawElements), .-GL_PREFIX(DrawElements)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EdgeFlagPointer)
-       .type   GL_PREFIX(EdgeFlagPointer), @function
-GL_PREFIX(EdgeFlagPointer):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2496(%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    2496(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2496(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    2496(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EdgeFlagPointer), .-GL_PREFIX(EdgeFlagPointer)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EnableClientState)
-       .type   GL_PREFIX(EnableClientState), @function
-GL_PREFIX(EnableClientState):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2504(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2504(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2504(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2504(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EnableClientState), .-GL_PREFIX(EnableClientState)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(IndexPointer)
-       .type   GL_PREFIX(IndexPointer), @function
-GL_PREFIX(IndexPointer):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2512(%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    2512(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2512(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2512(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(IndexPointer), .-GL_PREFIX(IndexPointer)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Indexub)
-       .type   GL_PREFIX(Indexub), @function
-GL_PREFIX(Indexub):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2520(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2520(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2520(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2520(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Indexub), .-GL_PREFIX(Indexub)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Indexubv)
-       .type   GL_PREFIX(Indexubv), @function
-GL_PREFIX(Indexubv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2528(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2528(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2528(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2528(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Indexubv), .-GL_PREFIX(Indexubv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(InterleavedArrays)
-       .type   GL_PREFIX(InterleavedArrays), @function
-GL_PREFIX(InterleavedArrays):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2536(%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    2536(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2536(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2536(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(InterleavedArrays), .-GL_PREFIX(InterleavedArrays)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(NormalPointer)
-       .type   GL_PREFIX(NormalPointer), @function
-GL_PREFIX(NormalPointer):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2544(%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    2544(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2544(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2544(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(NormalPointer), .-GL_PREFIX(NormalPointer)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PolygonOffset)
-       .type   GL_PREFIX(PolygonOffset), @function
-GL_PREFIX(PolygonOffset):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2552(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    2552(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2552(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    2552(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PolygonOffset), .-GL_PREFIX(PolygonOffset)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoordPointer)
-       .type   GL_PREFIX(TexCoordPointer), @function
-GL_PREFIX(TexCoordPointer):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2560(%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    2560(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2560(%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    2560(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoordPointer), .-GL_PREFIX(TexCoordPointer)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexPointer)
-       .type   GL_PREFIX(VertexPointer), @function
-GL_PREFIX(VertexPointer):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2568(%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    2568(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2568(%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    2568(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexPointer), .-GL_PREFIX(VertexPointer)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(AreTexturesResident)
-       .type   GL_PREFIX(AreTexturesResident), @function
-GL_PREFIX(AreTexturesResident):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2576(%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    2576(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2576(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2576(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(AreTexturesResident), .-GL_PREFIX(AreTexturesResident)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CopyTexImage1D)
-       .type   GL_PREFIX(CopyTexImage1D), @function
-GL_PREFIX(CopyTexImage1D):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2584(%rax), %r11
-       jmp     *%r11
-#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    2584(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2584(%rax), %r11
-       jmp     *%r11
-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    2584(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CopyTexImage1D), .-GL_PREFIX(CopyTexImage1D)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CopyTexImage2D)
-       .type   GL_PREFIX(CopyTexImage2D), @function
-GL_PREFIX(CopyTexImage2D):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2592(%rax), %r11
-       jmp     *%r11
-#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    2592(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2592(%rax), %r11
-       jmp     *%r11
-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    2592(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CopyTexImage2D), .-GL_PREFIX(CopyTexImage2D)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CopyTexSubImage1D)
-       .type   GL_PREFIX(CopyTexSubImage1D), @function
-GL_PREFIX(CopyTexSubImage1D):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2600(%rax), %r11
-       jmp     *%r11
-#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    2600(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2600(%rax), %r11
-       jmp     *%r11
-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    2600(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CopyTexSubImage1D), .-GL_PREFIX(CopyTexSubImage1D)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CopyTexSubImage2D)
-       .type   GL_PREFIX(CopyTexSubImage2D), @function
-GL_PREFIX(CopyTexSubImage2D):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2608(%rax), %r11
-       jmp     *%r11
-#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    2608(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2608(%rax), %r11
-       jmp     *%r11
-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    2608(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CopyTexSubImage2D), .-GL_PREFIX(CopyTexSubImage2D)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DeleteTextures)
-       .type   GL_PREFIX(DeleteTextures), @function
-GL_PREFIX(DeleteTextures):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2616(%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    2616(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2616(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    2616(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DeleteTextures), .-GL_PREFIX(DeleteTextures)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GenTextures)
-       .type   GL_PREFIX(GenTextures), @function
-GL_PREFIX(GenTextures):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2624(%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    2624(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2624(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    2624(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GenTextures), .-GL_PREFIX(GenTextures)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetPointerv)
-       .type   GL_PREFIX(GetPointerv), @function
-GL_PREFIX(GetPointerv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2632(%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    2632(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2632(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    2632(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetPointerv), .-GL_PREFIX(GetPointerv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(IsTexture)
-       .type   GL_PREFIX(IsTexture), @function
-GL_PREFIX(IsTexture):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2640(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2640(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2640(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2640(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(IsTexture), .-GL_PREFIX(IsTexture)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PrioritizeTextures)
-       .type   GL_PREFIX(PrioritizeTextures), @function
-GL_PREFIX(PrioritizeTextures):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2648(%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    2648(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2648(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2648(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PrioritizeTextures), .-GL_PREFIX(PrioritizeTextures)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexSubImage1D)
-       .type   GL_PREFIX(TexSubImage1D), @function
-GL_PREFIX(TexSubImage1D):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2656(%rax), %r11
-       jmp     *%r11
-#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    2656(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2656(%rax), %r11
-       jmp     *%r11
-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    2656(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexSubImage1D), .-GL_PREFIX(TexSubImage1D)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexSubImage2D)
-       .type   GL_PREFIX(TexSubImage2D), @function
-GL_PREFIX(TexSubImage2D):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2664(%rax), %r11
-       jmp     *%r11
-#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    2664(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2664(%rax), %r11
-       jmp     *%r11
-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    2664(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexSubImage2D), .-GL_PREFIX(TexSubImage2D)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PopClientAttrib)
-       .type   GL_PREFIX(PopClientAttrib), @function
-GL_PREFIX(PopClientAttrib):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2672(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    2672(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2672(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    2672(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PopClientAttrib), .-GL_PREFIX(PopClientAttrib)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PushClientAttrib)
-       .type   GL_PREFIX(PushClientAttrib), @function
-GL_PREFIX(PushClientAttrib):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2680(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2680(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2680(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2680(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PushClientAttrib), .-GL_PREFIX(PushClientAttrib)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BlendColor)
-       .type   GL_PREFIX(BlendColor), @function
-GL_PREFIX(BlendColor):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2688(%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    2688(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2688(%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    2688(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BlendColor), .-GL_PREFIX(BlendColor)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BlendEquation)
-       .type   GL_PREFIX(BlendEquation), @function
-GL_PREFIX(BlendEquation):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2696(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2696(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2696(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2696(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BlendEquation), .-GL_PREFIX(BlendEquation)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DrawRangeElements)
-       .type   GL_PREFIX(DrawRangeElements), @function
-GL_PREFIX(DrawRangeElements):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2704(%rax), %r11
-       jmp     *%r11
-#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    2704(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2704(%rax), %r11
-       jmp     *%r11
-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    2704(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DrawRangeElements), .-GL_PREFIX(DrawRangeElements)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ColorTable)
-       .type   GL_PREFIX(ColorTable), @function
-GL_PREFIX(ColorTable):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2712(%rax), %r11
-       jmp     *%r11
-#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    2712(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2712(%rax), %r11
-       jmp     *%r11
-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    2712(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ColorTable), .-GL_PREFIX(ColorTable)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ColorTableParameterfv)
-       .type   GL_PREFIX(ColorTableParameterfv), @function
-GL_PREFIX(ColorTableParameterfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2720(%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    2720(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2720(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2720(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ColorTableParameterfv), .-GL_PREFIX(ColorTableParameterfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ColorTableParameteriv)
-       .type   GL_PREFIX(ColorTableParameteriv), @function
-GL_PREFIX(ColorTableParameteriv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2728(%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    2728(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2728(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2728(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ColorTableParameteriv), .-GL_PREFIX(ColorTableParameteriv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CopyColorTable)
-       .type   GL_PREFIX(CopyColorTable), @function
-GL_PREFIX(CopyColorTable):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2736(%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    2736(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2736(%rax), %r11
-       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    2736(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CopyColorTable), .-GL_PREFIX(CopyColorTable)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetColorTable)
-       .type   GL_PREFIX(GetColorTable), @function
-GL_PREFIX(GetColorTable):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2744(%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    2744(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2744(%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    2744(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetColorTable), .-GL_PREFIX(GetColorTable)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetColorTableParameterfv)
-       .type   GL_PREFIX(GetColorTableParameterfv), @function
-GL_PREFIX(GetColorTableParameterfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2752(%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    2752(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2752(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2752(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetColorTableParameterfv), .-GL_PREFIX(GetColorTableParameterfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetColorTableParameteriv)
-       .type   GL_PREFIX(GetColorTableParameteriv), @function
-GL_PREFIX(GetColorTableParameteriv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2760(%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    2760(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2760(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2760(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetColorTableParameteriv), .-GL_PREFIX(GetColorTableParameteriv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ColorSubTable)
-       .type   GL_PREFIX(ColorSubTable), @function
-GL_PREFIX(ColorSubTable):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2768(%rax), %r11
-       jmp     *%r11
-#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    2768(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2768(%rax), %r11
-       jmp     *%r11
-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    2768(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ColorSubTable), .-GL_PREFIX(ColorSubTable)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CopyColorSubTable)
-       .type   GL_PREFIX(CopyColorSubTable), @function
-GL_PREFIX(CopyColorSubTable):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2776(%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    2776(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2776(%rax), %r11
-       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    2776(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CopyColorSubTable), .-GL_PREFIX(CopyColorSubTable)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ConvolutionFilter1D)
-       .type   GL_PREFIX(ConvolutionFilter1D), @function
-GL_PREFIX(ConvolutionFilter1D):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2784(%rax), %r11
-       jmp     *%r11
-#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    2784(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2784(%rax), %r11
-       jmp     *%r11
-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    2784(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ConvolutionFilter1D), .-GL_PREFIX(ConvolutionFilter1D)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ConvolutionFilter2D)
-       .type   GL_PREFIX(ConvolutionFilter2D), @function
-GL_PREFIX(ConvolutionFilter2D):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2792(%rax), %r11
-       jmp     *%r11
-#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    2792(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2792(%rax), %r11
-       jmp     *%r11
-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    2792(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ConvolutionFilter2D), .-GL_PREFIX(ConvolutionFilter2D)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ConvolutionParameterf)
-       .type   GL_PREFIX(ConvolutionParameterf), @function
-GL_PREFIX(ConvolutionParameterf):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2800(%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    2800(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2800(%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    2800(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ConvolutionParameterf), .-GL_PREFIX(ConvolutionParameterf)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ConvolutionParameterfv)
-       .type   GL_PREFIX(ConvolutionParameterfv), @function
-GL_PREFIX(ConvolutionParameterfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2808(%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    2808(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2808(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2808(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ConvolutionParameterfv), .-GL_PREFIX(ConvolutionParameterfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ConvolutionParameteri)
-       .type   GL_PREFIX(ConvolutionParameteri), @function
-GL_PREFIX(ConvolutionParameteri):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2816(%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    2816(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2816(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2816(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ConvolutionParameteri), .-GL_PREFIX(ConvolutionParameteri)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ConvolutionParameteriv)
-       .type   GL_PREFIX(ConvolutionParameteriv), @function
-GL_PREFIX(ConvolutionParameteriv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2824(%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    2824(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2824(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2824(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ConvolutionParameteriv), .-GL_PREFIX(ConvolutionParameteriv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CopyConvolutionFilter1D)
-       .type   GL_PREFIX(CopyConvolutionFilter1D), @function
-GL_PREFIX(CopyConvolutionFilter1D):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2832(%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    2832(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2832(%rax), %r11
-       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    2832(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CopyConvolutionFilter1D), .-GL_PREFIX(CopyConvolutionFilter1D)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CopyConvolutionFilter2D)
-       .type   GL_PREFIX(CopyConvolutionFilter2D), @function
-GL_PREFIX(CopyConvolutionFilter2D):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2840(%rax), %r11
-       jmp     *%r11
-#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    2840(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2840(%rax), %r11
-       jmp     *%r11
-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    2840(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CopyConvolutionFilter2D), .-GL_PREFIX(CopyConvolutionFilter2D)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetConvolutionFilter)
-       .type   GL_PREFIX(GetConvolutionFilter), @function
-GL_PREFIX(GetConvolutionFilter):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2848(%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    2848(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2848(%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    2848(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetConvolutionFilter), .-GL_PREFIX(GetConvolutionFilter)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetConvolutionParameterfv)
-       .type   GL_PREFIX(GetConvolutionParameterfv), @function
-GL_PREFIX(GetConvolutionParameterfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2856(%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    2856(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2856(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2856(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetConvolutionParameterfv), .-GL_PREFIX(GetConvolutionParameterfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetConvolutionParameteriv)
-       .type   GL_PREFIX(GetConvolutionParameteriv), @function
-GL_PREFIX(GetConvolutionParameteriv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2864(%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    2864(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2864(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2864(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetConvolutionParameteriv), .-GL_PREFIX(GetConvolutionParameteriv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetSeparableFilter)
-       .type   GL_PREFIX(GetSeparableFilter), @function
-GL_PREFIX(GetSeparableFilter):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2872(%rax), %r11
-       jmp     *%r11
-#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    2872(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2872(%rax), %r11
-       jmp     *%r11
-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    2872(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetSeparableFilter), .-GL_PREFIX(GetSeparableFilter)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SeparableFilter2D)
-       .type   GL_PREFIX(SeparableFilter2D), @function
-GL_PREFIX(SeparableFilter2D):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2880(%rax), %r11
-       jmp     *%r11
-#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    2880(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2880(%rax), %r11
-       jmp     *%r11
-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    2880(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(SeparableFilter2D), .-GL_PREFIX(SeparableFilter2D)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetHistogram)
-       .type   GL_PREFIX(GetHistogram), @function
-GL_PREFIX(GetHistogram):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2888(%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    2888(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2888(%rax), %r11
-       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    2888(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetHistogram), .-GL_PREFIX(GetHistogram)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetHistogramParameterfv)
-       .type   GL_PREFIX(GetHistogramParameterfv), @function
-GL_PREFIX(GetHistogramParameterfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2896(%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    2896(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2896(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2896(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetHistogramParameterfv), .-GL_PREFIX(GetHistogramParameterfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetHistogramParameteriv)
-       .type   GL_PREFIX(GetHistogramParameteriv), @function
-GL_PREFIX(GetHistogramParameteriv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2904(%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    2904(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2904(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2904(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetHistogramParameteriv), .-GL_PREFIX(GetHistogramParameteriv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetMinmax)
-       .type   GL_PREFIX(GetMinmax), @function
-GL_PREFIX(GetMinmax):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2912(%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    2912(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2912(%rax), %r11
-       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    2912(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetMinmax), .-GL_PREFIX(GetMinmax)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetMinmaxParameterfv)
-       .type   GL_PREFIX(GetMinmaxParameterfv), @function
-GL_PREFIX(GetMinmaxParameterfv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2920(%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    2920(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2920(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2920(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetMinmaxParameterfv), .-GL_PREFIX(GetMinmaxParameterfv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetMinmaxParameteriv)
-       .type   GL_PREFIX(GetMinmaxParameteriv), @function
-GL_PREFIX(GetMinmaxParameteriv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2928(%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    2928(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2928(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2928(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetMinmaxParameteriv), .-GL_PREFIX(GetMinmaxParameteriv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Histogram)
-       .type   GL_PREFIX(Histogram), @function
-GL_PREFIX(Histogram):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2936(%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    2936(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2936(%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    2936(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Histogram), .-GL_PREFIX(Histogram)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Minmax)
-       .type   GL_PREFIX(Minmax), @function
-GL_PREFIX(Minmax):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2944(%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    2944(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2944(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    2944(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Minmax), .-GL_PREFIX(Minmax)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ResetHistogram)
-       .type   GL_PREFIX(ResetHistogram), @function
-GL_PREFIX(ResetHistogram):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2952(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2952(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2952(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2952(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ResetHistogram), .-GL_PREFIX(ResetHistogram)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ResetMinmax)
-       .type   GL_PREFIX(ResetMinmax), @function
-GL_PREFIX(ResetMinmax):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2960(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2960(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2960(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2960(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ResetMinmax), .-GL_PREFIX(ResetMinmax)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexImage3D)
-       .type   GL_PREFIX(TexImage3D), @function
-GL_PREFIX(TexImage3D):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2968(%rax), %r11
-       jmp     *%r11
-#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    2968(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2968(%rax), %r11
-       jmp     *%r11
-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    2968(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexImage3D), .-GL_PREFIX(TexImage3D)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexSubImage3D)
-       .type   GL_PREFIX(TexSubImage3D), @function
-GL_PREFIX(TexSubImage3D):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2976(%rax), %r11
-       jmp     *%r11
-#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    2976(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2976(%rax), %r11
-       jmp     *%r11
-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    2976(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexSubImage3D), .-GL_PREFIX(TexSubImage3D)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CopyTexSubImage3D)
-       .type   GL_PREFIX(CopyTexSubImage3D), @function
-GL_PREFIX(CopyTexSubImage3D):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2984(%rax), %r11
-       jmp     *%r11
-#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    2984(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2984(%rax), %r11
-       jmp     *%r11
-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    2984(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CopyTexSubImage3D), .-GL_PREFIX(CopyTexSubImage3D)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ActiveTextureARB)
-       .type   GL_PREFIX(ActiveTextureARB), @function
-GL_PREFIX(ActiveTextureARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    2992(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    2992(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    2992(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    2992(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ActiveTextureARB), .-GL_PREFIX(ActiveTextureARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ClientActiveTextureARB)
-       .type   GL_PREFIX(ClientActiveTextureARB), @function
-GL_PREFIX(ClientActiveTextureARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3000(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    3000(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3000(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    3000(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ClientActiveTextureARB), .-GL_PREFIX(ClientActiveTextureARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord1dARB)
-       .type   GL_PREFIX(MultiTexCoord1dARB), @function
-GL_PREFIX(MultiTexCoord1dARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3008(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    3008(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3008(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    3008(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord1dARB), .-GL_PREFIX(MultiTexCoord1dARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord1dvARB)
-       .type   GL_PREFIX(MultiTexCoord1dvARB), @function
-GL_PREFIX(MultiTexCoord1dvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3016(%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    3016(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3016(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3016(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord1dvARB), .-GL_PREFIX(MultiTexCoord1dvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord1fARB)
-       .type   GL_PREFIX(MultiTexCoord1fARB), @function
-GL_PREFIX(MultiTexCoord1fARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3024(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    3024(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3024(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    3024(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord1fARB), .-GL_PREFIX(MultiTexCoord1fARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord1fvARB)
-       .type   GL_PREFIX(MultiTexCoord1fvARB), @function
-GL_PREFIX(MultiTexCoord1fvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3032(%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    3032(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3032(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3032(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord1fvARB), .-GL_PREFIX(MultiTexCoord1fvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord1iARB)
-       .type   GL_PREFIX(MultiTexCoord1iARB), @function
-GL_PREFIX(MultiTexCoord1iARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3040(%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    3040(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3040(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3040(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord1iARB), .-GL_PREFIX(MultiTexCoord1iARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord1ivARB)
-       .type   GL_PREFIX(MultiTexCoord1ivARB), @function
-GL_PREFIX(MultiTexCoord1ivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3048(%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    3048(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3048(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3048(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord1ivARB), .-GL_PREFIX(MultiTexCoord1ivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord1sARB)
-       .type   GL_PREFIX(MultiTexCoord1sARB), @function
-GL_PREFIX(MultiTexCoord1sARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3056(%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    3056(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3056(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3056(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord1sARB), .-GL_PREFIX(MultiTexCoord1sARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord1svARB)
-       .type   GL_PREFIX(MultiTexCoord1svARB), @function
-GL_PREFIX(MultiTexCoord1svARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3064(%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    3064(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3064(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3064(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord1svARB), .-GL_PREFIX(MultiTexCoord1svARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord2dARB)
-       .type   GL_PREFIX(MultiTexCoord2dARB), @function
-GL_PREFIX(MultiTexCoord2dARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3072(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    3072(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3072(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    3072(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord2dARB), .-GL_PREFIX(MultiTexCoord2dARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord2dvARB)
-       .type   GL_PREFIX(MultiTexCoord2dvARB), @function
-GL_PREFIX(MultiTexCoord2dvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3080(%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    3080(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3080(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3080(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord2dvARB), .-GL_PREFIX(MultiTexCoord2dvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord2fARB)
-       .type   GL_PREFIX(MultiTexCoord2fARB), @function
-GL_PREFIX(MultiTexCoord2fARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3088(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    3088(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3088(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    3088(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord2fARB), .-GL_PREFIX(MultiTexCoord2fARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord2fvARB)
-       .type   GL_PREFIX(MultiTexCoord2fvARB), @function
-GL_PREFIX(MultiTexCoord2fvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3096(%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    3096(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3096(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3096(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord2fvARB), .-GL_PREFIX(MultiTexCoord2fvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord2iARB)
-       .type   GL_PREFIX(MultiTexCoord2iARB), @function
-GL_PREFIX(MultiTexCoord2iARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3104(%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    3104(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3104(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3104(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord2iARB), .-GL_PREFIX(MultiTexCoord2iARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord2ivARB)
-       .type   GL_PREFIX(MultiTexCoord2ivARB), @function
-GL_PREFIX(MultiTexCoord2ivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3112(%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    3112(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3112(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3112(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord2ivARB), .-GL_PREFIX(MultiTexCoord2ivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord2sARB)
-       .type   GL_PREFIX(MultiTexCoord2sARB), @function
-GL_PREFIX(MultiTexCoord2sARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3120(%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    3120(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3120(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3120(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord2sARB), .-GL_PREFIX(MultiTexCoord2sARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord2svARB)
-       .type   GL_PREFIX(MultiTexCoord2svARB), @function
-GL_PREFIX(MultiTexCoord2svARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3128(%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    3128(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3128(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3128(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord2svARB), .-GL_PREFIX(MultiTexCoord2svARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord3dARB)
-       .type   GL_PREFIX(MultiTexCoord3dARB), @function
-GL_PREFIX(MultiTexCoord3dARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3136(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    3136(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3136(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    3136(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord3dARB), .-GL_PREFIX(MultiTexCoord3dARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord3dvARB)
-       .type   GL_PREFIX(MultiTexCoord3dvARB), @function
-GL_PREFIX(MultiTexCoord3dvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3144(%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    3144(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3144(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3144(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord3dvARB), .-GL_PREFIX(MultiTexCoord3dvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord3fARB)
-       .type   GL_PREFIX(MultiTexCoord3fARB), @function
-GL_PREFIX(MultiTexCoord3fARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3152(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    3152(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3152(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    3152(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord3fARB), .-GL_PREFIX(MultiTexCoord3fARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord3fvARB)
-       .type   GL_PREFIX(MultiTexCoord3fvARB), @function
-GL_PREFIX(MultiTexCoord3fvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3160(%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    3160(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3160(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3160(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord3fvARB), .-GL_PREFIX(MultiTexCoord3fvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord3iARB)
-       .type   GL_PREFIX(MultiTexCoord3iARB), @function
-GL_PREFIX(MultiTexCoord3iARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3168(%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    3168(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3168(%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    3168(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord3iARB), .-GL_PREFIX(MultiTexCoord3iARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord3ivARB)
-       .type   GL_PREFIX(MultiTexCoord3ivARB), @function
-GL_PREFIX(MultiTexCoord3ivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3176(%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    3176(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3176(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3176(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord3ivARB), .-GL_PREFIX(MultiTexCoord3ivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord3sARB)
-       .type   GL_PREFIX(MultiTexCoord3sARB), @function
-GL_PREFIX(MultiTexCoord3sARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3184(%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    3184(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3184(%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    3184(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord3sARB), .-GL_PREFIX(MultiTexCoord3sARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord3svARB)
-       .type   GL_PREFIX(MultiTexCoord3svARB), @function
-GL_PREFIX(MultiTexCoord3svARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3192(%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    3192(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3192(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3192(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord3svARB), .-GL_PREFIX(MultiTexCoord3svARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord4dARB)
-       .type   GL_PREFIX(MultiTexCoord4dARB), @function
-GL_PREFIX(MultiTexCoord4dARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3200(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       movq    %xmm3, 32(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    32(%rsp), %xmm3
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    3200(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3200(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       movq    %xmm3, 32(%rsp)
-       call    _glapi_get_dispatch
-       movq    32(%rsp), %xmm3
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    3200(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord4dARB), .-GL_PREFIX(MultiTexCoord4dARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord4dvARB)
-       .type   GL_PREFIX(MultiTexCoord4dvARB), @function
-GL_PREFIX(MultiTexCoord4dvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3208(%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    3208(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3208(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3208(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord4dvARB), .-GL_PREFIX(MultiTexCoord4dvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord4fARB)
-       .type   GL_PREFIX(MultiTexCoord4fARB), @function
-GL_PREFIX(MultiTexCoord4fARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3216(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       movq    %xmm3, 32(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    32(%rsp), %xmm3
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    3216(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3216(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       movq    %xmm3, 32(%rsp)
-       call    _glapi_get_dispatch
-       movq    32(%rsp), %xmm3
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    3216(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord4fARB), .-GL_PREFIX(MultiTexCoord4fARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord4fvARB)
-       .type   GL_PREFIX(MultiTexCoord4fvARB), @function
-GL_PREFIX(MultiTexCoord4fvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3224(%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    3224(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3224(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3224(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord4fvARB), .-GL_PREFIX(MultiTexCoord4fvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord4iARB)
-       .type   GL_PREFIX(MultiTexCoord4iARB), @function
-GL_PREFIX(MultiTexCoord4iARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3232(%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    3232(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3232(%rax), %r11
-       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    3232(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord4iARB), .-GL_PREFIX(MultiTexCoord4iARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord4ivARB)
-       .type   GL_PREFIX(MultiTexCoord4ivARB), @function
-GL_PREFIX(MultiTexCoord4ivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3240(%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    3240(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3240(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3240(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord4ivARB), .-GL_PREFIX(MultiTexCoord4ivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord4sARB)
-       .type   GL_PREFIX(MultiTexCoord4sARB), @function
-GL_PREFIX(MultiTexCoord4sARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3248(%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    3248(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3248(%rax), %r11
-       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    3248(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord4sARB), .-GL_PREFIX(MultiTexCoord4sARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiTexCoord4svARB)
-       .type   GL_PREFIX(MultiTexCoord4svARB), @function
-GL_PREFIX(MultiTexCoord4svARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3256(%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    3256(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3256(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3256(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiTexCoord4svARB), .-GL_PREFIX(MultiTexCoord4svARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(AttachShader)
-       .type   GL_PREFIX(AttachShader), @function
-GL_PREFIX(AttachShader):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3264(%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    3264(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3264(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3264(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(AttachShader), .-GL_PREFIX(AttachShader)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CreateProgram)
-       .type   GL_PREFIX(CreateProgram), @function
-GL_PREFIX(CreateProgram):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3272(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    3272(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3272(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    3272(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CreateProgram), .-GL_PREFIX(CreateProgram)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CreateShader)
-       .type   GL_PREFIX(CreateShader), @function
-GL_PREFIX(CreateShader):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3280(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    3280(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3280(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    3280(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CreateShader), .-GL_PREFIX(CreateShader)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DeleteProgram)
-       .type   GL_PREFIX(DeleteProgram), @function
-GL_PREFIX(DeleteProgram):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3288(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    3288(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3288(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    3288(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DeleteProgram), .-GL_PREFIX(DeleteProgram)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DeleteShader)
-       .type   GL_PREFIX(DeleteShader), @function
-GL_PREFIX(DeleteShader):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3296(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    3296(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3296(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    3296(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DeleteShader), .-GL_PREFIX(DeleteShader)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DetachShader)
-       .type   GL_PREFIX(DetachShader), @function
-GL_PREFIX(DetachShader):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3304(%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    3304(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3304(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3304(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DetachShader), .-GL_PREFIX(DetachShader)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetAttachedShaders)
-       .type   GL_PREFIX(GetAttachedShaders), @function
-GL_PREFIX(GetAttachedShaders):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3312(%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    3312(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3312(%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    3312(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetAttachedShaders), .-GL_PREFIX(GetAttachedShaders)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetProgramInfoLog)
-       .type   GL_PREFIX(GetProgramInfoLog), @function
-GL_PREFIX(GetProgramInfoLog):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3320(%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    3320(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3320(%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    3320(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetProgramInfoLog), .-GL_PREFIX(GetProgramInfoLog)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetProgramiv)
-       .type   GL_PREFIX(GetProgramiv), @function
-GL_PREFIX(GetProgramiv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3328(%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    3328(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3328(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3328(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetProgramiv), .-GL_PREFIX(GetProgramiv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetShaderInfoLog)
-       .type   GL_PREFIX(GetShaderInfoLog), @function
-GL_PREFIX(GetShaderInfoLog):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3336(%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    3336(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3336(%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    3336(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetShaderInfoLog), .-GL_PREFIX(GetShaderInfoLog)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetShaderiv)
-       .type   GL_PREFIX(GetShaderiv), @function
-GL_PREFIX(GetShaderiv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3344(%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    3344(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3344(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3344(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetShaderiv), .-GL_PREFIX(GetShaderiv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(IsProgram)
-       .type   GL_PREFIX(IsProgram), @function
-GL_PREFIX(IsProgram):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3352(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    3352(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3352(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    3352(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(IsProgram), .-GL_PREFIX(IsProgram)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(IsShader)
-       .type   GL_PREFIX(IsShader), @function
-GL_PREFIX(IsShader):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3360(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    3360(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3360(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    3360(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(IsShader), .-GL_PREFIX(IsShader)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(StencilFuncSeparate)
-       .type   GL_PREFIX(StencilFuncSeparate), @function
-GL_PREFIX(StencilFuncSeparate):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3368(%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    3368(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3368(%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    3368(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(StencilFuncSeparate), .-GL_PREFIX(StencilFuncSeparate)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(StencilMaskSeparate)
-       .type   GL_PREFIX(StencilMaskSeparate), @function
-GL_PREFIX(StencilMaskSeparate):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3376(%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    3376(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3376(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3376(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(StencilMaskSeparate), .-GL_PREFIX(StencilMaskSeparate)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(StencilOpSeparate)
-       .type   GL_PREFIX(StencilOpSeparate), @function
-GL_PREFIX(StencilOpSeparate):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3384(%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    3384(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3384(%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    3384(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(StencilOpSeparate), .-GL_PREFIX(StencilOpSeparate)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(UniformMatrix2x3fv)
-       .type   GL_PREFIX(UniformMatrix2x3fv), @function
-GL_PREFIX(UniformMatrix2x3fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3392(%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    3392(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3392(%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    3392(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(UniformMatrix2x3fv), .-GL_PREFIX(UniformMatrix2x3fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(UniformMatrix2x4fv)
-       .type   GL_PREFIX(UniformMatrix2x4fv), @function
-GL_PREFIX(UniformMatrix2x4fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3400(%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    3400(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3400(%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    3400(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(UniformMatrix2x4fv), .-GL_PREFIX(UniformMatrix2x4fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(UniformMatrix3x2fv)
-       .type   GL_PREFIX(UniformMatrix3x2fv), @function
-GL_PREFIX(UniformMatrix3x2fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3408(%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    3408(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3408(%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    3408(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(UniformMatrix3x2fv), .-GL_PREFIX(UniformMatrix3x2fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(UniformMatrix3x4fv)
-       .type   GL_PREFIX(UniformMatrix3x4fv), @function
-GL_PREFIX(UniformMatrix3x4fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3416(%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    3416(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3416(%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    3416(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(UniformMatrix3x4fv), .-GL_PREFIX(UniformMatrix3x4fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(UniformMatrix4x2fv)
-       .type   GL_PREFIX(UniformMatrix4x2fv), @function
-GL_PREFIX(UniformMatrix4x2fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3424(%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    3424(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3424(%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    3424(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(UniformMatrix4x2fv), .-GL_PREFIX(UniformMatrix4x2fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(UniformMatrix4x3fv)
-       .type   GL_PREFIX(UniformMatrix4x3fv), @function
-GL_PREFIX(UniformMatrix4x3fv):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3432(%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    3432(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3432(%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    3432(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(UniformMatrix4x3fv), .-GL_PREFIX(UniformMatrix4x3fv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DrawArraysInstanced)
-       .type   GL_PREFIX(DrawArraysInstanced), @function
-GL_PREFIX(DrawArraysInstanced):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3440(%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    3440(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3440(%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    3440(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DrawArraysInstanced), .-GL_PREFIX(DrawArraysInstanced)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DrawElementsInstanced)
-       .type   GL_PREFIX(DrawElementsInstanced), @function
-GL_PREFIX(DrawElementsInstanced):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3448(%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    3448(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3448(%rax), %r11
-       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    3448(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DrawElementsInstanced), .-GL_PREFIX(DrawElementsInstanced)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(LoadTransposeMatrixdARB)
-       .type   GL_PREFIX(LoadTransposeMatrixdARB), @function
-GL_PREFIX(LoadTransposeMatrixdARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3456(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    3456(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3456(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    3456(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(LoadTransposeMatrixdARB), .-GL_PREFIX(LoadTransposeMatrixdARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(LoadTransposeMatrixfARB)
-       .type   GL_PREFIX(LoadTransposeMatrixfARB), @function
-GL_PREFIX(LoadTransposeMatrixfARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3464(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    3464(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3464(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    3464(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(LoadTransposeMatrixfARB), .-GL_PREFIX(LoadTransposeMatrixfARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultTransposeMatrixdARB)
-       .type   GL_PREFIX(MultTransposeMatrixdARB), @function
-GL_PREFIX(MultTransposeMatrixdARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3472(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    3472(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3472(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    3472(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultTransposeMatrixdARB), .-GL_PREFIX(MultTransposeMatrixdARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultTransposeMatrixfARB)
-       .type   GL_PREFIX(MultTransposeMatrixfARB), @function
-GL_PREFIX(MultTransposeMatrixfARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3480(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    3480(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3480(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    3480(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultTransposeMatrixfARB), .-GL_PREFIX(MultTransposeMatrixfARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SampleCoverageARB)
-       .type   GL_PREFIX(SampleCoverageARB), @function
-GL_PREFIX(SampleCoverageARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3488(%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    3488(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3488(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3488(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(SampleCoverageARB), .-GL_PREFIX(SampleCoverageARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CompressedTexImage1DARB)
-       .type   GL_PREFIX(CompressedTexImage1DARB), @function
-GL_PREFIX(CompressedTexImage1DARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3496(%rax), %r11
-       jmp     *%r11
-#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    3496(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3496(%rax), %r11
-       jmp     *%r11
-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    3496(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CompressedTexImage1DARB), .-GL_PREFIX(CompressedTexImage1DARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CompressedTexImage2DARB)
-       .type   GL_PREFIX(CompressedTexImage2DARB), @function
-GL_PREFIX(CompressedTexImage2DARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3504(%rax), %r11
-       jmp     *%r11
-#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    3504(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3504(%rax), %r11
-       jmp     *%r11
-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    3504(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CompressedTexImage2DARB), .-GL_PREFIX(CompressedTexImage2DARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CompressedTexImage3DARB)
-       .type   GL_PREFIX(CompressedTexImage3DARB), @function
-GL_PREFIX(CompressedTexImage3DARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3512(%rax), %r11
-       jmp     *%r11
-#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    3512(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3512(%rax), %r11
-       jmp     *%r11
-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    3512(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CompressedTexImage3DARB), .-GL_PREFIX(CompressedTexImage3DARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CompressedTexSubImage1DARB)
-       .type   GL_PREFIX(CompressedTexSubImage1DARB), @function
-GL_PREFIX(CompressedTexSubImage1DARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3520(%rax), %r11
-       jmp     *%r11
-#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    3520(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3520(%rax), %r11
-       jmp     *%r11
-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    3520(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CompressedTexSubImage1DARB), .-GL_PREFIX(CompressedTexSubImage1DARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CompressedTexSubImage2DARB)
-       .type   GL_PREFIX(CompressedTexSubImage2DARB), @function
-GL_PREFIX(CompressedTexSubImage2DARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3528(%rax), %r11
-       jmp     *%r11
-#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    3528(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3528(%rax), %r11
-       jmp     *%r11
-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    3528(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CompressedTexSubImage2DARB), .-GL_PREFIX(CompressedTexSubImage2DARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CompressedTexSubImage3DARB)
-       .type   GL_PREFIX(CompressedTexSubImage3DARB), @function
-GL_PREFIX(CompressedTexSubImage3DARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3536(%rax), %r11
-       jmp     *%r11
-#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    3536(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3536(%rax), %r11
-       jmp     *%r11
-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    3536(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CompressedTexSubImage3DARB), .-GL_PREFIX(CompressedTexSubImage3DARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetCompressedTexImageARB)
-       .type   GL_PREFIX(GetCompressedTexImageARB), @function
-GL_PREFIX(GetCompressedTexImageARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3544(%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    3544(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3544(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3544(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetCompressedTexImageARB), .-GL_PREFIX(GetCompressedTexImageARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DisableVertexAttribArrayARB)
-       .type   GL_PREFIX(DisableVertexAttribArrayARB), @function
-GL_PREFIX(DisableVertexAttribArrayARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3552(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    3552(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3552(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    3552(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DisableVertexAttribArrayARB), .-GL_PREFIX(DisableVertexAttribArrayARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EnableVertexAttribArrayARB)
-       .type   GL_PREFIX(EnableVertexAttribArrayARB), @function
-GL_PREFIX(EnableVertexAttribArrayARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3560(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    3560(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3560(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    3560(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EnableVertexAttribArrayARB), .-GL_PREFIX(EnableVertexAttribArrayARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetProgramEnvParameterdvARB)
-       .type   GL_PREFIX(GetProgramEnvParameterdvARB), @function
-GL_PREFIX(GetProgramEnvParameterdvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3568(%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    3568(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3568(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3568(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetProgramEnvParameterdvARB), .-GL_PREFIX(GetProgramEnvParameterdvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetProgramEnvParameterfvARB)
-       .type   GL_PREFIX(GetProgramEnvParameterfvARB), @function
-GL_PREFIX(GetProgramEnvParameterfvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3576(%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    3576(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3576(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3576(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetProgramEnvParameterfvARB), .-GL_PREFIX(GetProgramEnvParameterfvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetProgramLocalParameterdvARB)
-       .type   GL_PREFIX(GetProgramLocalParameterdvARB), @function
-GL_PREFIX(GetProgramLocalParameterdvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3584(%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    3584(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3584(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3584(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetProgramLocalParameterdvARB), .-GL_PREFIX(GetProgramLocalParameterdvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetProgramLocalParameterfvARB)
-       .type   GL_PREFIX(GetProgramLocalParameterfvARB), @function
-GL_PREFIX(GetProgramLocalParameterfvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3592(%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    3592(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3592(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3592(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetProgramLocalParameterfvARB), .-GL_PREFIX(GetProgramLocalParameterfvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetProgramStringARB)
-       .type   GL_PREFIX(GetProgramStringARB), @function
-GL_PREFIX(GetProgramStringARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3600(%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    3600(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3600(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3600(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetProgramStringARB), .-GL_PREFIX(GetProgramStringARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetProgramivARB)
-       .type   GL_PREFIX(GetProgramivARB), @function
-GL_PREFIX(GetProgramivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3608(%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    3608(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3608(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3608(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetProgramivARB), .-GL_PREFIX(GetProgramivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetVertexAttribdvARB)
-       .type   GL_PREFIX(GetVertexAttribdvARB), @function
-GL_PREFIX(GetVertexAttribdvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3616(%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    3616(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3616(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3616(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetVertexAttribdvARB), .-GL_PREFIX(GetVertexAttribdvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetVertexAttribfvARB)
-       .type   GL_PREFIX(GetVertexAttribfvARB), @function
-GL_PREFIX(GetVertexAttribfvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3624(%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    3624(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3624(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3624(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetVertexAttribfvARB), .-GL_PREFIX(GetVertexAttribfvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetVertexAttribivARB)
-       .type   GL_PREFIX(GetVertexAttribivARB), @function
-GL_PREFIX(GetVertexAttribivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3632(%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    3632(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3632(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3632(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetVertexAttribivARB), .-GL_PREFIX(GetVertexAttribivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ProgramEnvParameter4dARB)
-       .type   GL_PREFIX(ProgramEnvParameter4dARB), @function
-GL_PREFIX(ProgramEnvParameter4dARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3640(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $56, %rsp
-       movq    %rdi, (%rsp)
-       movq    %rsi, 8(%rsp)
-       movq    %xmm0, 16(%rsp)
-       movq    %xmm1, 24(%rsp)
-       movq    %xmm2, 32(%rsp)
-       movq    %xmm3, 40(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    40(%rsp), %xmm3
-       movq    32(%rsp), %xmm2
-       movq    24(%rsp), %xmm1
-       movq    16(%rsp), %xmm0
-       movq    8(%rsp), %rsi
-       movq    (%rsp), %rdi
-       addq    $56, %rsp
-       movq    3640(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3640(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $56, %rsp
-       movq    %rdi, (%rsp)
-       movq    %rsi, 8(%rsp)
-       movq    %xmm0, 16(%rsp)
-       movq    %xmm1, 24(%rsp)
-       movq    %xmm2, 32(%rsp)
-       movq    %xmm3, 40(%rsp)
-       call    _glapi_get_dispatch
-       movq    40(%rsp), %xmm3
-       movq    32(%rsp), %xmm2
-       movq    24(%rsp), %xmm1
-       movq    16(%rsp), %xmm0
-       movq    8(%rsp), %rsi
-       movq    (%rsp), %rdi
-       addq    $56, %rsp
-       movq    3640(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ProgramEnvParameter4dARB), .-GL_PREFIX(ProgramEnvParameter4dARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ProgramEnvParameter4dvARB)
-       .type   GL_PREFIX(ProgramEnvParameter4dvARB), @function
-GL_PREFIX(ProgramEnvParameter4dvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3648(%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    3648(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3648(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3648(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ProgramEnvParameter4dvARB), .-GL_PREFIX(ProgramEnvParameter4dvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ProgramEnvParameter4fARB)
-       .type   GL_PREFIX(ProgramEnvParameter4fARB), @function
-GL_PREFIX(ProgramEnvParameter4fARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3656(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $56, %rsp
-       movq    %rdi, (%rsp)
-       movq    %rsi, 8(%rsp)
-       movq    %xmm0, 16(%rsp)
-       movq    %xmm1, 24(%rsp)
-       movq    %xmm2, 32(%rsp)
-       movq    %xmm3, 40(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    40(%rsp), %xmm3
-       movq    32(%rsp), %xmm2
-       movq    24(%rsp), %xmm1
-       movq    16(%rsp), %xmm0
-       movq    8(%rsp), %rsi
-       movq    (%rsp), %rdi
-       addq    $56, %rsp
-       movq    3656(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3656(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $56, %rsp
-       movq    %rdi, (%rsp)
-       movq    %rsi, 8(%rsp)
-       movq    %xmm0, 16(%rsp)
-       movq    %xmm1, 24(%rsp)
-       movq    %xmm2, 32(%rsp)
-       movq    %xmm3, 40(%rsp)
-       call    _glapi_get_dispatch
-       movq    40(%rsp), %xmm3
-       movq    32(%rsp), %xmm2
-       movq    24(%rsp), %xmm1
-       movq    16(%rsp), %xmm0
-       movq    8(%rsp), %rsi
-       movq    (%rsp), %rdi
-       addq    $56, %rsp
-       movq    3656(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ProgramEnvParameter4fARB), .-GL_PREFIX(ProgramEnvParameter4fARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ProgramEnvParameter4fvARB)
-       .type   GL_PREFIX(ProgramEnvParameter4fvARB), @function
-GL_PREFIX(ProgramEnvParameter4fvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3664(%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    3664(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3664(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3664(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ProgramEnvParameter4fvARB), .-GL_PREFIX(ProgramEnvParameter4fvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ProgramLocalParameter4dARB)
-       .type   GL_PREFIX(ProgramLocalParameter4dARB), @function
-GL_PREFIX(ProgramLocalParameter4dARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3672(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $56, %rsp
-       movq    %rdi, (%rsp)
-       movq    %rsi, 8(%rsp)
-       movq    %xmm0, 16(%rsp)
-       movq    %xmm1, 24(%rsp)
-       movq    %xmm2, 32(%rsp)
-       movq    %xmm3, 40(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    40(%rsp), %xmm3
-       movq    32(%rsp), %xmm2
-       movq    24(%rsp), %xmm1
-       movq    16(%rsp), %xmm0
-       movq    8(%rsp), %rsi
-       movq    (%rsp), %rdi
-       addq    $56, %rsp
-       movq    3672(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3672(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $56, %rsp
-       movq    %rdi, (%rsp)
-       movq    %rsi, 8(%rsp)
-       movq    %xmm0, 16(%rsp)
-       movq    %xmm1, 24(%rsp)
-       movq    %xmm2, 32(%rsp)
-       movq    %xmm3, 40(%rsp)
-       call    _glapi_get_dispatch
-       movq    40(%rsp), %xmm3
-       movq    32(%rsp), %xmm2
-       movq    24(%rsp), %xmm1
-       movq    16(%rsp), %xmm0
-       movq    8(%rsp), %rsi
-       movq    (%rsp), %rdi
-       addq    $56, %rsp
-       movq    3672(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ProgramLocalParameter4dARB), .-GL_PREFIX(ProgramLocalParameter4dARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ProgramLocalParameter4dvARB)
-       .type   GL_PREFIX(ProgramLocalParameter4dvARB), @function
-GL_PREFIX(ProgramLocalParameter4dvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3680(%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    3680(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3680(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3680(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ProgramLocalParameter4dvARB), .-GL_PREFIX(ProgramLocalParameter4dvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ProgramLocalParameter4fARB)
-       .type   GL_PREFIX(ProgramLocalParameter4fARB), @function
-GL_PREFIX(ProgramLocalParameter4fARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3688(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $56, %rsp
-       movq    %rdi, (%rsp)
-       movq    %rsi, 8(%rsp)
-       movq    %xmm0, 16(%rsp)
-       movq    %xmm1, 24(%rsp)
-       movq    %xmm2, 32(%rsp)
-       movq    %xmm3, 40(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    40(%rsp), %xmm3
-       movq    32(%rsp), %xmm2
-       movq    24(%rsp), %xmm1
-       movq    16(%rsp), %xmm0
-       movq    8(%rsp), %rsi
-       movq    (%rsp), %rdi
-       addq    $56, %rsp
-       movq    3688(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3688(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $56, %rsp
-       movq    %rdi, (%rsp)
-       movq    %rsi, 8(%rsp)
-       movq    %xmm0, 16(%rsp)
-       movq    %xmm1, 24(%rsp)
-       movq    %xmm2, 32(%rsp)
-       movq    %xmm3, 40(%rsp)
-       call    _glapi_get_dispatch
-       movq    40(%rsp), %xmm3
-       movq    32(%rsp), %xmm2
-       movq    24(%rsp), %xmm1
-       movq    16(%rsp), %xmm0
-       movq    8(%rsp), %rsi
-       movq    (%rsp), %rdi
-       addq    $56, %rsp
-       movq    3688(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ProgramLocalParameter4fARB), .-GL_PREFIX(ProgramLocalParameter4fARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ProgramLocalParameter4fvARB)
-       .type   GL_PREFIX(ProgramLocalParameter4fvARB), @function
-GL_PREFIX(ProgramLocalParameter4fvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3696(%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    3696(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3696(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3696(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ProgramLocalParameter4fvARB), .-GL_PREFIX(ProgramLocalParameter4fvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ProgramStringARB)
-       .type   GL_PREFIX(ProgramStringARB), @function
-GL_PREFIX(ProgramStringARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3704(%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    3704(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3704(%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    3704(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ProgramStringARB), .-GL_PREFIX(ProgramStringARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib1dARB)
-       .type   GL_PREFIX(VertexAttrib1dARB), @function
-GL_PREFIX(VertexAttrib1dARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3712(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    3712(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3712(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    3712(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib1dARB), .-GL_PREFIX(VertexAttrib1dARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib1dvARB)
-       .type   GL_PREFIX(VertexAttrib1dvARB), @function
-GL_PREFIX(VertexAttrib1dvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3720(%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    3720(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3720(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3720(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib1dvARB), .-GL_PREFIX(VertexAttrib1dvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib1fARB)
-       .type   GL_PREFIX(VertexAttrib1fARB), @function
-GL_PREFIX(VertexAttrib1fARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3728(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    3728(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3728(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    3728(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib1fARB), .-GL_PREFIX(VertexAttrib1fARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib1fvARB)
-       .type   GL_PREFIX(VertexAttrib1fvARB), @function
-GL_PREFIX(VertexAttrib1fvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3736(%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    3736(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3736(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3736(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib1fvARB), .-GL_PREFIX(VertexAttrib1fvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib1sARB)
-       .type   GL_PREFIX(VertexAttrib1sARB), @function
-GL_PREFIX(VertexAttrib1sARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3744(%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    3744(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3744(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3744(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib1sARB), .-GL_PREFIX(VertexAttrib1sARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib1svARB)
-       .type   GL_PREFIX(VertexAttrib1svARB), @function
-GL_PREFIX(VertexAttrib1svARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3752(%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    3752(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3752(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3752(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib1svARB), .-GL_PREFIX(VertexAttrib1svARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib2dARB)
-       .type   GL_PREFIX(VertexAttrib2dARB), @function
-GL_PREFIX(VertexAttrib2dARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3760(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    3760(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3760(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    3760(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib2dARB), .-GL_PREFIX(VertexAttrib2dARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib2dvARB)
-       .type   GL_PREFIX(VertexAttrib2dvARB), @function
-GL_PREFIX(VertexAttrib2dvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3768(%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    3768(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3768(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3768(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib2dvARB), .-GL_PREFIX(VertexAttrib2dvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib2fARB)
-       .type   GL_PREFIX(VertexAttrib2fARB), @function
-GL_PREFIX(VertexAttrib2fARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3776(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    3776(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3776(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    3776(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib2fARB), .-GL_PREFIX(VertexAttrib2fARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib2fvARB)
-       .type   GL_PREFIX(VertexAttrib2fvARB), @function
-GL_PREFIX(VertexAttrib2fvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3784(%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    3784(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3784(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3784(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib2fvARB), .-GL_PREFIX(VertexAttrib2fvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib2sARB)
-       .type   GL_PREFIX(VertexAttrib2sARB), @function
-GL_PREFIX(VertexAttrib2sARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3792(%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    3792(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3792(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    3792(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib2sARB), .-GL_PREFIX(VertexAttrib2sARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib2svARB)
-       .type   GL_PREFIX(VertexAttrib2svARB), @function
-GL_PREFIX(VertexAttrib2svARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3800(%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    3800(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3800(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3800(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib2svARB), .-GL_PREFIX(VertexAttrib2svARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib3dARB)
-       .type   GL_PREFIX(VertexAttrib3dARB), @function
-GL_PREFIX(VertexAttrib3dARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3808(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    3808(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3808(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    3808(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib3dARB), .-GL_PREFIX(VertexAttrib3dARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib3dvARB)
-       .type   GL_PREFIX(VertexAttrib3dvARB), @function
-GL_PREFIX(VertexAttrib3dvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3816(%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    3816(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3816(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3816(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib3dvARB), .-GL_PREFIX(VertexAttrib3dvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib3fARB)
-       .type   GL_PREFIX(VertexAttrib3fARB), @function
-GL_PREFIX(VertexAttrib3fARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3824(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    3824(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3824(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    3824(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib3fARB), .-GL_PREFIX(VertexAttrib3fARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib3fvARB)
-       .type   GL_PREFIX(VertexAttrib3fvARB), @function
-GL_PREFIX(VertexAttrib3fvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3832(%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    3832(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3832(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3832(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib3fvARB), .-GL_PREFIX(VertexAttrib3fvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib3sARB)
-       .type   GL_PREFIX(VertexAttrib3sARB), @function
-GL_PREFIX(VertexAttrib3sARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3840(%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    3840(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3840(%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    3840(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib3sARB), .-GL_PREFIX(VertexAttrib3sARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib3svARB)
-       .type   GL_PREFIX(VertexAttrib3svARB), @function
-GL_PREFIX(VertexAttrib3svARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3848(%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    3848(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3848(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3848(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib3svARB), .-GL_PREFIX(VertexAttrib3svARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4NbvARB)
-       .type   GL_PREFIX(VertexAttrib4NbvARB), @function
-GL_PREFIX(VertexAttrib4NbvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3856(%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    3856(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3856(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3856(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4NbvARB), .-GL_PREFIX(VertexAttrib4NbvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4NivARB)
-       .type   GL_PREFIX(VertexAttrib4NivARB), @function
-GL_PREFIX(VertexAttrib4NivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3864(%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    3864(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3864(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3864(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4NivARB), .-GL_PREFIX(VertexAttrib4NivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4NsvARB)
-       .type   GL_PREFIX(VertexAttrib4NsvARB), @function
-GL_PREFIX(VertexAttrib4NsvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3872(%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    3872(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3872(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3872(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4NsvARB), .-GL_PREFIX(VertexAttrib4NsvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4NubARB)
-       .type   GL_PREFIX(VertexAttrib4NubARB), @function
-GL_PREFIX(VertexAttrib4NubARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3880(%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    3880(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3880(%rax), %r11
-       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    3880(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4NubARB), .-GL_PREFIX(VertexAttrib4NubARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4NubvARB)
-       .type   GL_PREFIX(VertexAttrib4NubvARB), @function
-GL_PREFIX(VertexAttrib4NubvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3888(%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    3888(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3888(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3888(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4NubvARB), .-GL_PREFIX(VertexAttrib4NubvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4NuivARB)
-       .type   GL_PREFIX(VertexAttrib4NuivARB), @function
-GL_PREFIX(VertexAttrib4NuivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3896(%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    3896(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3896(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3896(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4NuivARB), .-GL_PREFIX(VertexAttrib4NuivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4NusvARB)
-       .type   GL_PREFIX(VertexAttrib4NusvARB), @function
-GL_PREFIX(VertexAttrib4NusvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3904(%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    3904(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3904(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3904(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4NusvARB), .-GL_PREFIX(VertexAttrib4NusvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4bvARB)
-       .type   GL_PREFIX(VertexAttrib4bvARB), @function
-GL_PREFIX(VertexAttrib4bvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3912(%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    3912(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3912(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3912(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4bvARB), .-GL_PREFIX(VertexAttrib4bvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4dARB)
-       .type   GL_PREFIX(VertexAttrib4dARB), @function
-GL_PREFIX(VertexAttrib4dARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3920(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       movq    %xmm3, 32(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    32(%rsp), %xmm3
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    3920(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3920(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       movq    %xmm3, 32(%rsp)
-       call    _glapi_get_dispatch
-       movq    32(%rsp), %xmm3
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    3920(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4dARB), .-GL_PREFIX(VertexAttrib4dARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4dvARB)
-       .type   GL_PREFIX(VertexAttrib4dvARB), @function
-GL_PREFIX(VertexAttrib4dvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3928(%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    3928(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3928(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3928(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4dvARB), .-GL_PREFIX(VertexAttrib4dvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4fARB)
-       .type   GL_PREFIX(VertexAttrib4fARB), @function
-GL_PREFIX(VertexAttrib4fARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3936(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       movq    %xmm3, 32(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    32(%rsp), %xmm3
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    3936(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3936(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       movq    %xmm3, 32(%rsp)
-       call    _glapi_get_dispatch
-       movq    32(%rsp), %xmm3
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    3936(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4fARB), .-GL_PREFIX(VertexAttrib4fARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4fvARB)
-       .type   GL_PREFIX(VertexAttrib4fvARB), @function
-GL_PREFIX(VertexAttrib4fvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3944(%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    3944(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3944(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3944(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4fvARB), .-GL_PREFIX(VertexAttrib4fvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4ivARB)
-       .type   GL_PREFIX(VertexAttrib4ivARB), @function
-GL_PREFIX(VertexAttrib4ivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3952(%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    3952(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3952(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3952(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4ivARB), .-GL_PREFIX(VertexAttrib4ivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4sARB)
-       .type   GL_PREFIX(VertexAttrib4sARB), @function
-GL_PREFIX(VertexAttrib4sARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3960(%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    3960(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3960(%rax), %r11
-       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    3960(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4sARB), .-GL_PREFIX(VertexAttrib4sARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4svARB)
-       .type   GL_PREFIX(VertexAttrib4svARB), @function
-GL_PREFIX(VertexAttrib4svARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3968(%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    3968(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3968(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3968(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4svARB), .-GL_PREFIX(VertexAttrib4svARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4ubvARB)
-       .type   GL_PREFIX(VertexAttrib4ubvARB), @function
-GL_PREFIX(VertexAttrib4ubvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3976(%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    3976(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3976(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3976(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4ubvARB), .-GL_PREFIX(VertexAttrib4ubvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4uivARB)
-       .type   GL_PREFIX(VertexAttrib4uivARB), @function
-GL_PREFIX(VertexAttrib4uivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3984(%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    3984(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3984(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3984(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4uivARB), .-GL_PREFIX(VertexAttrib4uivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4usvARB)
-       .type   GL_PREFIX(VertexAttrib4usvARB), @function
-GL_PREFIX(VertexAttrib4usvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    3992(%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    3992(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    3992(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    3992(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4usvARB), .-GL_PREFIX(VertexAttrib4usvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttribPointerARB)
-       .type   GL_PREFIX(VertexAttribPointerARB), @function
-GL_PREFIX(VertexAttribPointerARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4000(%rax), %r11
-       jmp     *%r11
-#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    4000(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4000(%rax), %r11
-       jmp     *%r11
-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    4000(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttribPointerARB), .-GL_PREFIX(VertexAttribPointerARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BindBufferARB)
-       .type   GL_PREFIX(BindBufferARB), @function
-GL_PREFIX(BindBufferARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4008(%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    4008(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4008(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4008(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BindBufferARB), .-GL_PREFIX(BindBufferARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BufferDataARB)
-       .type   GL_PREFIX(BufferDataARB), @function
-GL_PREFIX(BufferDataARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4016(%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    4016(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4016(%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    4016(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BufferDataARB), .-GL_PREFIX(BufferDataARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BufferSubDataARB)
-       .type   GL_PREFIX(BufferSubDataARB), @function
-GL_PREFIX(BufferSubDataARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4024(%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    4024(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4024(%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    4024(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BufferSubDataARB), .-GL_PREFIX(BufferSubDataARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DeleteBuffersARB)
-       .type   GL_PREFIX(DeleteBuffersARB), @function
-GL_PREFIX(DeleteBuffersARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4032(%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    4032(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4032(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4032(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DeleteBuffersARB), .-GL_PREFIX(DeleteBuffersARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GenBuffersARB)
-       .type   GL_PREFIX(GenBuffersARB), @function
-GL_PREFIX(GenBuffersARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4040(%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    4040(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4040(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4040(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GenBuffersARB), .-GL_PREFIX(GenBuffersARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetBufferParameterivARB)
-       .type   GL_PREFIX(GetBufferParameterivARB), @function
-GL_PREFIX(GetBufferParameterivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4048(%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    4048(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4048(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4048(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetBufferParameterivARB), .-GL_PREFIX(GetBufferParameterivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetBufferPointervARB)
-       .type   GL_PREFIX(GetBufferPointervARB), @function
-GL_PREFIX(GetBufferPointervARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4056(%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    4056(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4056(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4056(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetBufferPointervARB), .-GL_PREFIX(GetBufferPointervARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetBufferSubDataARB)
-       .type   GL_PREFIX(GetBufferSubDataARB), @function
-GL_PREFIX(GetBufferSubDataARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4064(%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    4064(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4064(%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    4064(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetBufferSubDataARB), .-GL_PREFIX(GetBufferSubDataARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(IsBufferARB)
-       .type   GL_PREFIX(IsBufferARB), @function
-GL_PREFIX(IsBufferARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4072(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4072(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4072(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4072(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(IsBufferARB), .-GL_PREFIX(IsBufferARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MapBufferARB)
-       .type   GL_PREFIX(MapBufferARB), @function
-GL_PREFIX(MapBufferARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4080(%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    4080(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4080(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4080(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MapBufferARB), .-GL_PREFIX(MapBufferARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(UnmapBufferARB)
-       .type   GL_PREFIX(UnmapBufferARB), @function
-GL_PREFIX(UnmapBufferARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4088(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4088(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4088(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4088(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(UnmapBufferARB), .-GL_PREFIX(UnmapBufferARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BeginQueryARB)
-       .type   GL_PREFIX(BeginQueryARB), @function
-GL_PREFIX(BeginQueryARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4096(%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    4096(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4096(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4096(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BeginQueryARB), .-GL_PREFIX(BeginQueryARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DeleteQueriesARB)
-       .type   GL_PREFIX(DeleteQueriesARB), @function
-GL_PREFIX(DeleteQueriesARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4104(%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    4104(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4104(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4104(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DeleteQueriesARB), .-GL_PREFIX(DeleteQueriesARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EndQueryARB)
-       .type   GL_PREFIX(EndQueryARB), @function
-GL_PREFIX(EndQueryARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4112(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4112(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4112(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4112(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EndQueryARB), .-GL_PREFIX(EndQueryARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GenQueriesARB)
-       .type   GL_PREFIX(GenQueriesARB), @function
-GL_PREFIX(GenQueriesARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4120(%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    4120(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4120(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4120(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GenQueriesARB), .-GL_PREFIX(GenQueriesARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetQueryObjectivARB)
-       .type   GL_PREFIX(GetQueryObjectivARB), @function
-GL_PREFIX(GetQueryObjectivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4128(%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    4128(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4128(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4128(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetQueryObjectivARB), .-GL_PREFIX(GetQueryObjectivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetQueryObjectuivARB)
-       .type   GL_PREFIX(GetQueryObjectuivARB), @function
-GL_PREFIX(GetQueryObjectuivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4136(%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    4136(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4136(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4136(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetQueryObjectuivARB), .-GL_PREFIX(GetQueryObjectuivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetQueryivARB)
-       .type   GL_PREFIX(GetQueryivARB), @function
-GL_PREFIX(GetQueryivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4144(%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    4144(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4144(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4144(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetQueryivARB), .-GL_PREFIX(GetQueryivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(IsQueryARB)
-       .type   GL_PREFIX(IsQueryARB), @function
-GL_PREFIX(IsQueryARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4152(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4152(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4152(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4152(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(IsQueryARB), .-GL_PREFIX(IsQueryARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(AttachObjectARB)
-       .type   GL_PREFIX(AttachObjectARB), @function
-GL_PREFIX(AttachObjectARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4160(%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    4160(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4160(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4160(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(AttachObjectARB), .-GL_PREFIX(AttachObjectARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CompileShaderARB)
-       .type   GL_PREFIX(CompileShaderARB), @function
-GL_PREFIX(CompileShaderARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4168(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4168(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4168(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4168(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CompileShaderARB), .-GL_PREFIX(CompileShaderARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CreateProgramObjectARB)
-       .type   GL_PREFIX(CreateProgramObjectARB), @function
-GL_PREFIX(CreateProgramObjectARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4176(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    4176(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4176(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    4176(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CreateProgramObjectARB), .-GL_PREFIX(CreateProgramObjectARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CreateShaderObjectARB)
-       .type   GL_PREFIX(CreateShaderObjectARB), @function
-GL_PREFIX(CreateShaderObjectARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4184(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4184(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4184(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4184(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CreateShaderObjectARB), .-GL_PREFIX(CreateShaderObjectARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DeleteObjectARB)
-       .type   GL_PREFIX(DeleteObjectARB), @function
-GL_PREFIX(DeleteObjectARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4192(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4192(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4192(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4192(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DeleteObjectARB), .-GL_PREFIX(DeleteObjectARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DetachObjectARB)
-       .type   GL_PREFIX(DetachObjectARB), @function
-GL_PREFIX(DetachObjectARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4200(%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    4200(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4200(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4200(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DetachObjectARB), .-GL_PREFIX(DetachObjectARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetActiveUniformARB)
-       .type   GL_PREFIX(GetActiveUniformARB), @function
-GL_PREFIX(GetActiveUniformARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4208(%rax), %r11
-       jmp     *%r11
-#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    4208(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4208(%rax), %r11
-       jmp     *%r11
-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    4208(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetActiveUniformARB), .-GL_PREFIX(GetActiveUniformARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetAttachedObjectsARB)
-       .type   GL_PREFIX(GetAttachedObjectsARB), @function
-GL_PREFIX(GetAttachedObjectsARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4216(%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    4216(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4216(%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    4216(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetAttachedObjectsARB), .-GL_PREFIX(GetAttachedObjectsARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetHandleARB)
-       .type   GL_PREFIX(GetHandleARB), @function
-GL_PREFIX(GetHandleARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4224(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4224(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4224(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4224(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetHandleARB), .-GL_PREFIX(GetHandleARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetInfoLogARB)
-       .type   GL_PREFIX(GetInfoLogARB), @function
-GL_PREFIX(GetInfoLogARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4232(%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    4232(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4232(%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    4232(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetInfoLogARB), .-GL_PREFIX(GetInfoLogARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetObjectParameterfvARB)
-       .type   GL_PREFIX(GetObjectParameterfvARB), @function
-GL_PREFIX(GetObjectParameterfvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4240(%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    4240(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4240(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4240(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetObjectParameterfvARB), .-GL_PREFIX(GetObjectParameterfvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetObjectParameterivARB)
-       .type   GL_PREFIX(GetObjectParameterivARB), @function
-GL_PREFIX(GetObjectParameterivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4248(%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    4248(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4248(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4248(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetObjectParameterivARB), .-GL_PREFIX(GetObjectParameterivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetShaderSourceARB)
-       .type   GL_PREFIX(GetShaderSourceARB), @function
-GL_PREFIX(GetShaderSourceARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4256(%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    4256(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4256(%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    4256(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetShaderSourceARB), .-GL_PREFIX(GetShaderSourceARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetUniformLocationARB)
-       .type   GL_PREFIX(GetUniformLocationARB), @function
-GL_PREFIX(GetUniformLocationARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4264(%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    4264(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4264(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4264(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetUniformLocationARB), .-GL_PREFIX(GetUniformLocationARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetUniformfvARB)
-       .type   GL_PREFIX(GetUniformfvARB), @function
-GL_PREFIX(GetUniformfvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4272(%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    4272(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4272(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4272(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetUniformfvARB), .-GL_PREFIX(GetUniformfvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetUniformivARB)
-       .type   GL_PREFIX(GetUniformivARB), @function
-GL_PREFIX(GetUniformivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4280(%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    4280(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4280(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4280(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetUniformivARB), .-GL_PREFIX(GetUniformivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(LinkProgramARB)
-       .type   GL_PREFIX(LinkProgramARB), @function
-GL_PREFIX(LinkProgramARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4288(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4288(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4288(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4288(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(LinkProgramARB), .-GL_PREFIX(LinkProgramARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ShaderSourceARB)
-       .type   GL_PREFIX(ShaderSourceARB), @function
-GL_PREFIX(ShaderSourceARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4296(%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    4296(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4296(%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    4296(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ShaderSourceARB), .-GL_PREFIX(ShaderSourceARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Uniform1fARB)
-       .type   GL_PREFIX(Uniform1fARB), @function
-GL_PREFIX(Uniform1fARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4304(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    4304(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4304(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    4304(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Uniform1fARB), .-GL_PREFIX(Uniform1fARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Uniform1fvARB)
-       .type   GL_PREFIX(Uniform1fvARB), @function
-GL_PREFIX(Uniform1fvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4312(%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    4312(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4312(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4312(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Uniform1fvARB), .-GL_PREFIX(Uniform1fvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Uniform1iARB)
-       .type   GL_PREFIX(Uniform1iARB), @function
-GL_PREFIX(Uniform1iARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4320(%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    4320(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4320(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4320(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Uniform1iARB), .-GL_PREFIX(Uniform1iARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Uniform1ivARB)
-       .type   GL_PREFIX(Uniform1ivARB), @function
-GL_PREFIX(Uniform1ivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4328(%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    4328(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4328(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4328(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Uniform1ivARB), .-GL_PREFIX(Uniform1ivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Uniform2fARB)
-       .type   GL_PREFIX(Uniform2fARB), @function
-GL_PREFIX(Uniform2fARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4336(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    4336(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4336(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    4336(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Uniform2fARB), .-GL_PREFIX(Uniform2fARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Uniform2fvARB)
-       .type   GL_PREFIX(Uniform2fvARB), @function
-GL_PREFIX(Uniform2fvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4344(%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    4344(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4344(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4344(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Uniform2fvARB), .-GL_PREFIX(Uniform2fvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Uniform2iARB)
-       .type   GL_PREFIX(Uniform2iARB), @function
-GL_PREFIX(Uniform2iARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4352(%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    4352(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4352(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4352(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Uniform2iARB), .-GL_PREFIX(Uniform2iARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Uniform2ivARB)
-       .type   GL_PREFIX(Uniform2ivARB), @function
-GL_PREFIX(Uniform2ivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4360(%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    4360(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4360(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4360(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Uniform2ivARB), .-GL_PREFIX(Uniform2ivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Uniform3fARB)
-       .type   GL_PREFIX(Uniform3fARB), @function
-GL_PREFIX(Uniform3fARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4368(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    4368(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4368(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    4368(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Uniform3fARB), .-GL_PREFIX(Uniform3fARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Uniform3fvARB)
-       .type   GL_PREFIX(Uniform3fvARB), @function
-GL_PREFIX(Uniform3fvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4376(%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    4376(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4376(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4376(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Uniform3fvARB), .-GL_PREFIX(Uniform3fvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Uniform3iARB)
-       .type   GL_PREFIX(Uniform3iARB), @function
-GL_PREFIX(Uniform3iARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4384(%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    4384(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4384(%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    4384(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Uniform3iARB), .-GL_PREFIX(Uniform3iARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Uniform3ivARB)
-       .type   GL_PREFIX(Uniform3ivARB), @function
-GL_PREFIX(Uniform3ivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4392(%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    4392(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4392(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4392(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Uniform3ivARB), .-GL_PREFIX(Uniform3ivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Uniform4fARB)
-       .type   GL_PREFIX(Uniform4fARB), @function
-GL_PREFIX(Uniform4fARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4400(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       movq    %xmm3, 32(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    32(%rsp), %xmm3
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    4400(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4400(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       movq    %xmm3, 32(%rsp)
-       call    _glapi_get_dispatch
-       movq    32(%rsp), %xmm3
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    4400(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Uniform4fARB), .-GL_PREFIX(Uniform4fARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Uniform4fvARB)
-       .type   GL_PREFIX(Uniform4fvARB), @function
-GL_PREFIX(Uniform4fvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4408(%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    4408(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4408(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4408(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Uniform4fvARB), .-GL_PREFIX(Uniform4fvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Uniform4iARB)
-       .type   GL_PREFIX(Uniform4iARB), @function
-GL_PREFIX(Uniform4iARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4416(%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    4416(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4416(%rax), %r11
-       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    4416(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Uniform4iARB), .-GL_PREFIX(Uniform4iARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(Uniform4ivARB)
-       .type   GL_PREFIX(Uniform4ivARB), @function
-GL_PREFIX(Uniform4ivARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4424(%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    4424(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4424(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4424(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(Uniform4ivARB), .-GL_PREFIX(Uniform4ivARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(UniformMatrix2fvARB)
-       .type   GL_PREFIX(UniformMatrix2fvARB), @function
-GL_PREFIX(UniformMatrix2fvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4432(%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    4432(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4432(%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    4432(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(UniformMatrix2fvARB), .-GL_PREFIX(UniformMatrix2fvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(UniformMatrix3fvARB)
-       .type   GL_PREFIX(UniformMatrix3fvARB), @function
-GL_PREFIX(UniformMatrix3fvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4440(%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    4440(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4440(%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    4440(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(UniformMatrix3fvARB), .-GL_PREFIX(UniformMatrix3fvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(UniformMatrix4fvARB)
-       .type   GL_PREFIX(UniformMatrix4fvARB), @function
-GL_PREFIX(UniformMatrix4fvARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4448(%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    4448(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4448(%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    4448(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(UniformMatrix4fvARB), .-GL_PREFIX(UniformMatrix4fvARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(UseProgramObjectARB)
-       .type   GL_PREFIX(UseProgramObjectARB), @function
-GL_PREFIX(UseProgramObjectARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4456(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4456(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4456(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4456(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(UseProgramObjectARB), .-GL_PREFIX(UseProgramObjectARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ValidateProgramARB)
-       .type   GL_PREFIX(ValidateProgramARB), @function
-GL_PREFIX(ValidateProgramARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4464(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4464(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4464(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4464(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ValidateProgramARB), .-GL_PREFIX(ValidateProgramARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BindAttribLocationARB)
-       .type   GL_PREFIX(BindAttribLocationARB), @function
-GL_PREFIX(BindAttribLocationARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4472(%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    4472(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4472(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4472(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BindAttribLocationARB), .-GL_PREFIX(BindAttribLocationARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetActiveAttribARB)
-       .type   GL_PREFIX(GetActiveAttribARB), @function
-GL_PREFIX(GetActiveAttribARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4480(%rax), %r11
-       jmp     *%r11
-#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    4480(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4480(%rax), %r11
-       jmp     *%r11
-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    4480(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetActiveAttribARB), .-GL_PREFIX(GetActiveAttribARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetAttribLocationARB)
-       .type   GL_PREFIX(GetAttribLocationARB), @function
-GL_PREFIX(GetAttribLocationARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4488(%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    4488(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4488(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4488(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetAttribLocationARB), .-GL_PREFIX(GetAttribLocationARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DrawBuffersARB)
-       .type   GL_PREFIX(DrawBuffersARB), @function
-GL_PREFIX(DrawBuffersARB):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4496(%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    4496(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4496(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4496(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DrawBuffersARB), .-GL_PREFIX(DrawBuffersARB)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RenderbufferStorageMultisample)
-       .type   GL_PREFIX(RenderbufferStorageMultisample), @function
-GL_PREFIX(RenderbufferStorageMultisample):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4504(%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    4504(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4504(%rax), %r11
-       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    4504(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RenderbufferStorageMultisample), .-GL_PREFIX(RenderbufferStorageMultisample)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(FlushMappedBufferRange)
-       .type   GL_PREFIX(FlushMappedBufferRange), @function
-GL_PREFIX(FlushMappedBufferRange):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4512(%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    4512(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4512(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4512(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(FlushMappedBufferRange), .-GL_PREFIX(FlushMappedBufferRange)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MapBufferRange)
-       .type   GL_PREFIX(MapBufferRange), @function
-GL_PREFIX(MapBufferRange):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4520(%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    4520(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4520(%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    4520(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MapBufferRange), .-GL_PREFIX(MapBufferRange)
-
-       .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    4528(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4528(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4528(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4528(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BindVertexArray), .-GL_PREFIX(BindVertexArray)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GenVertexArrays)
-       .type   GL_PREFIX(GenVertexArrays), @function
-GL_PREFIX(GenVertexArrays):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4536(%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    4536(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4536(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4536(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GenVertexArrays), .-GL_PREFIX(GenVertexArrays)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CopyBufferSubData)
-       .type   GL_PREFIX(CopyBufferSubData), @function
-GL_PREFIX(CopyBufferSubData):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4544(%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    4544(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4544(%rax), %r11
-       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    4544(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CopyBufferSubData), .-GL_PREFIX(CopyBufferSubData)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ClientWaitSync)
-       .type   GL_PREFIX(ClientWaitSync), @function
-GL_PREFIX(ClientWaitSync):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4552(%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    4552(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4552(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4552(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ClientWaitSync), .-GL_PREFIX(ClientWaitSync)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DeleteSync)
-       .type   GL_PREFIX(DeleteSync), @function
-GL_PREFIX(DeleteSync):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4560(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4560(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4560(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4560(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DeleteSync), .-GL_PREFIX(DeleteSync)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(FenceSync)
-       .type   GL_PREFIX(FenceSync), @function
-GL_PREFIX(FenceSync):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4568(%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    4568(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4568(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4568(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(FenceSync), .-GL_PREFIX(FenceSync)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetInteger64v)
-       .type   GL_PREFIX(GetInteger64v), @function
-GL_PREFIX(GetInteger64v):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4576(%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    4576(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       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(GetInteger64v), .-GL_PREFIX(GetInteger64v)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetSynciv)
-       .type   GL_PREFIX(GetSynciv), @function
-GL_PREFIX(GetSynciv):
-#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   %r8
-       call    _x86_64_get_dispatch@PLT
-       popq    %r8
-       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
-       pushq   %rdx
-       pushq   %rcx
-       pushq   %r8
-       call    _glapi_get_dispatch
-       popq    %r8
-       popq    %rcx
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4584(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetSynciv), .-GL_PREFIX(GetSynciv)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(IsSync)
-       .type   GL_PREFIX(IsSync), @function
-GL_PREFIX(IsSync):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4592(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4592(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4592(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4592(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(IsSync), .-GL_PREFIX(IsSync)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WaitSync)
-       .type   GL_PREFIX(WaitSync), @function
-GL_PREFIX(WaitSync):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4600(%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    4600(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4600(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4600(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WaitSync), .-GL_PREFIX(WaitSync)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DrawElementsBaseVertex)
-       .type   GL_PREFIX(DrawElementsBaseVertex), @function
-GL_PREFIX(DrawElementsBaseVertex):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4608(%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    4608(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4608(%rax), %r11
-       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    4608(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DrawElementsBaseVertex), .-GL_PREFIX(DrawElementsBaseVertex)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DrawRangeElementsBaseVertex)
-       .type   GL_PREFIX(DrawRangeElementsBaseVertex), @function
-GL_PREFIX(DrawRangeElementsBaseVertex):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4616(%rax), %r11
-       jmp     *%r11
-#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    4616(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4616(%rax), %r11
-       jmp     *%r11
-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    4616(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DrawRangeElementsBaseVertex), .-GL_PREFIX(DrawRangeElementsBaseVertex)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiDrawElementsBaseVertex)
-       .type   GL_PREFIX(MultiDrawElementsBaseVertex), @function
-GL_PREFIX(MultiDrawElementsBaseVertex):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4624(%rax), %r11
-       jmp     *%r11
-#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    4624(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4624(%rax), %r11
-       jmp     *%r11
-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    4624(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiDrawElementsBaseVertex), .-GL_PREFIX(MultiDrawElementsBaseVertex)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PolygonOffsetEXT)
-       .type   GL_PREFIX(PolygonOffsetEXT), @function
-GL_PREFIX(PolygonOffsetEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4632(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    4632(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4632(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    4632(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PolygonOffsetEXT), .-GL_PREFIX(PolygonOffsetEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_580)
-       .type   GL_PREFIX(_dispatch_stub_580), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_580))
-GL_PREFIX(_dispatch_stub_580):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4640(%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    4640(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4640(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4640(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_580), .-GL_PREFIX(_dispatch_stub_580)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_581)
-       .type   GL_PREFIX(_dispatch_stub_581), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_581))
-GL_PREFIX(_dispatch_stub_581):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4648(%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    4648(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4648(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4648(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_581), .-GL_PREFIX(_dispatch_stub_581)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_582)
-       .type   GL_PREFIX(_dispatch_stub_582), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_582))
-GL_PREFIX(_dispatch_stub_582):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4656(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    4656(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4656(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    4656(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_582), .-GL_PREFIX(_dispatch_stub_582)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_583)
-       .type   GL_PREFIX(_dispatch_stub_583), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_583))
-GL_PREFIX(_dispatch_stub_583):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4664(%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    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
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4664(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_583), .-GL_PREFIX(_dispatch_stub_583)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_584)
-       .type   GL_PREFIX(_dispatch_stub_584), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_584))
-GL_PREFIX(_dispatch_stub_584):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4672(%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    4672(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4672(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4672(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_584), .-GL_PREFIX(_dispatch_stub_584)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_585)
-       .type   GL_PREFIX(_dispatch_stub_585), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_585))
-GL_PREFIX(_dispatch_stub_585):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4680(%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    4680(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4680(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4680(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_585), .-GL_PREFIX(_dispatch_stub_585)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_586)
-       .type   GL_PREFIX(_dispatch_stub_586), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_586))
-GL_PREFIX(_dispatch_stub_586):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4688(%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    4688(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4688(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4688(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_586), .-GL_PREFIX(_dispatch_stub_586)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_587)
-       .type   GL_PREFIX(_dispatch_stub_587), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_587))
-GL_PREFIX(_dispatch_stub_587):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4696(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4696(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4696(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4696(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_587), .-GL_PREFIX(_dispatch_stub_587)
-
-       .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    4704(%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    4704(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4704(%rax), %r11
-       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    4704(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ColorPointerEXT), .-GL_PREFIX(ColorPointerEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EdgeFlagPointerEXT)
-       .type   GL_PREFIX(EdgeFlagPointerEXT), @function
-GL_PREFIX(EdgeFlagPointerEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4712(%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    4712(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4712(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4712(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EdgeFlagPointerEXT), .-GL_PREFIX(EdgeFlagPointerEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(IndexPointerEXT)
-       .type   GL_PREFIX(IndexPointerEXT), @function
-GL_PREFIX(IndexPointerEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4720(%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    4720(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4720(%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    4720(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(IndexPointerEXT), .-GL_PREFIX(IndexPointerEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(NormalPointerEXT)
-       .type   GL_PREFIX(NormalPointerEXT), @function
-GL_PREFIX(NormalPointerEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4728(%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    4728(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4728(%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    4728(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(NormalPointerEXT), .-GL_PREFIX(NormalPointerEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexCoordPointerEXT)
-       .type   GL_PREFIX(TexCoordPointerEXT), @function
-GL_PREFIX(TexCoordPointerEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4736(%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    4736(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4736(%rax), %r11
-       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    4736(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexCoordPointerEXT), .-GL_PREFIX(TexCoordPointerEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexPointerEXT)
-       .type   GL_PREFIX(VertexPointerEXT), @function
-GL_PREFIX(VertexPointerEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4744(%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    4744(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4744(%rax), %r11
-       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    4744(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexPointerEXT), .-GL_PREFIX(VertexPointerEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PointParameterfEXT)
-       .type   GL_PREFIX(PointParameterfEXT), @function
-GL_PREFIX(PointParameterfEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4752(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    4752(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4752(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    4752(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PointParameterfEXT), .-GL_PREFIX(PointParameterfEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PointParameterfvEXT)
-       .type   GL_PREFIX(PointParameterfvEXT), @function
-GL_PREFIX(PointParameterfvEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4760(%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    4760(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4760(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4760(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PointParameterfvEXT), .-GL_PREFIX(PointParameterfvEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(LockArraysEXT)
-       .type   GL_PREFIX(LockArraysEXT), @function
-GL_PREFIX(LockArraysEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4768(%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    4768(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4768(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4768(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(LockArraysEXT), .-GL_PREFIX(LockArraysEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(UnlockArraysEXT)
-       .type   GL_PREFIX(UnlockArraysEXT), @function
-GL_PREFIX(UnlockArraysEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4776(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    4776(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4776(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    4776(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(UnlockArraysEXT), .-GL_PREFIX(UnlockArraysEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_598)
-       .type   GL_PREFIX(_dispatch_stub_598), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_598))
-GL_PREFIX(_dispatch_stub_598):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4784(%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    4784(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4784(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4784(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_598), .-GL_PREFIX(_dispatch_stub_598)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_599)
-       .type   GL_PREFIX(_dispatch_stub_599), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_599))
-GL_PREFIX(_dispatch_stub_599):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4792(%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    4792(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4792(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    4792(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_599), .-GL_PREFIX(_dispatch_stub_599)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SecondaryColor3bEXT)
-       .type   GL_PREFIX(SecondaryColor3bEXT), @function
-GL_PREFIX(SecondaryColor3bEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4800(%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    4800(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4800(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4800(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(SecondaryColor3bEXT), .-GL_PREFIX(SecondaryColor3bEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SecondaryColor3bvEXT)
-       .type   GL_PREFIX(SecondaryColor3bvEXT), @function
-GL_PREFIX(SecondaryColor3bvEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4808(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       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
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4808(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(SecondaryColor3bvEXT), .-GL_PREFIX(SecondaryColor3bvEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SecondaryColor3dEXT)
-       .type   GL_PREFIX(SecondaryColor3dEXT), @function
-GL_PREFIX(SecondaryColor3dEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4816(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    4816(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4816(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    4816(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(SecondaryColor3dEXT), .-GL_PREFIX(SecondaryColor3dEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SecondaryColor3dvEXT)
-       .type   GL_PREFIX(SecondaryColor3dvEXT), @function
-GL_PREFIX(SecondaryColor3dvEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4824(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       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
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4824(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(SecondaryColor3dvEXT), .-GL_PREFIX(SecondaryColor3dvEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SecondaryColor3fEXT)
-       .type   GL_PREFIX(SecondaryColor3fEXT), @function
-GL_PREFIX(SecondaryColor3fEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4832(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    4832(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4832(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    4832(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(SecondaryColor3fEXT), .-GL_PREFIX(SecondaryColor3fEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SecondaryColor3fvEXT)
-       .type   GL_PREFIX(SecondaryColor3fvEXT), @function
-GL_PREFIX(SecondaryColor3fvEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4840(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       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
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4840(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(SecondaryColor3fvEXT), .-GL_PREFIX(SecondaryColor3fvEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SecondaryColor3iEXT)
-       .type   GL_PREFIX(SecondaryColor3iEXT), @function
-GL_PREFIX(SecondaryColor3iEXT):
-#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(SecondaryColor3iEXT), .-GL_PREFIX(SecondaryColor3iEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SecondaryColor3ivEXT)
-       .type   GL_PREFIX(SecondaryColor3ivEXT), @function
-GL_PREFIX(SecondaryColor3ivEXT):
-#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(SecondaryColor3ivEXT), .-GL_PREFIX(SecondaryColor3ivEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SecondaryColor3sEXT)
-       .type   GL_PREFIX(SecondaryColor3sEXT), @function
-GL_PREFIX(SecondaryColor3sEXT):
-#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(SecondaryColor3sEXT), .-GL_PREFIX(SecondaryColor3sEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SecondaryColor3svEXT)
-       .type   GL_PREFIX(SecondaryColor3svEXT), @function
-GL_PREFIX(SecondaryColor3svEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4872(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       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
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4872(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(SecondaryColor3svEXT), .-GL_PREFIX(SecondaryColor3svEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SecondaryColor3ubEXT)
-       .type   GL_PREFIX(SecondaryColor3ubEXT), @function
-GL_PREFIX(SecondaryColor3ubEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4880(%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    4880(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4880(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4880(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(SecondaryColor3ubEXT), .-GL_PREFIX(SecondaryColor3ubEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SecondaryColor3ubvEXT)
-       .type   GL_PREFIX(SecondaryColor3ubvEXT), @function
-GL_PREFIX(SecondaryColor3ubvEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4888(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       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
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4888(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(SecondaryColor3ubvEXT), .-GL_PREFIX(SecondaryColor3ubvEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SecondaryColor3uiEXT)
-       .type   GL_PREFIX(SecondaryColor3uiEXT), @function
-GL_PREFIX(SecondaryColor3uiEXT):
-#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(SecondaryColor3uiEXT), .-GL_PREFIX(SecondaryColor3uiEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SecondaryColor3uivEXT)
-       .type   GL_PREFIX(SecondaryColor3uivEXT), @function
-GL_PREFIX(SecondaryColor3uivEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4904(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       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
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4904(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(SecondaryColor3uivEXT), .-GL_PREFIX(SecondaryColor3uivEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SecondaryColor3usEXT)
-       .type   GL_PREFIX(SecondaryColor3usEXT), @function
-GL_PREFIX(SecondaryColor3usEXT):
-#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   %rdx
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdx
-       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   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4912(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(SecondaryColor3usEXT), .-GL_PREFIX(SecondaryColor3usEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SecondaryColor3usvEXT)
-       .type   GL_PREFIX(SecondaryColor3usvEXT), @function
-GL_PREFIX(SecondaryColor3usvEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4920(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4920(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4920(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4920(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(SecondaryColor3usvEXT), .-GL_PREFIX(SecondaryColor3usvEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SecondaryColorPointerEXT)
-       .type   GL_PREFIX(SecondaryColorPointerEXT), @function
-GL_PREFIX(SecondaryColorPointerEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4928(%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    4928(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4928(%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    4928(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(SecondaryColorPointerEXT), .-GL_PREFIX(SecondaryColorPointerEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiDrawArraysEXT)
-       .type   GL_PREFIX(MultiDrawArraysEXT), @function
-GL_PREFIX(MultiDrawArraysEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4936(%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    4936(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4936(%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    4936(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiDrawArraysEXT), .-GL_PREFIX(MultiDrawArraysEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(MultiDrawElementsEXT)
-       .type   GL_PREFIX(MultiDrawElementsEXT), @function
-GL_PREFIX(MultiDrawElementsEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4944(%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    4944(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4944(%rax), %r11
-       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    4944(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(MultiDrawElementsEXT), .-GL_PREFIX(MultiDrawElementsEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(FogCoordPointerEXT)
-       .type   GL_PREFIX(FogCoordPointerEXT), @function
-GL_PREFIX(FogCoordPointerEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4952(%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    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
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    4952(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(FogCoordPointerEXT), .-GL_PREFIX(FogCoordPointerEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(FogCoorddEXT)
-       .type   GL_PREFIX(FogCoorddEXT), @function
-GL_PREFIX(FogCoorddEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4960(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    4960(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4960(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _glapi_get_dispatch
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    4960(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(FogCoorddEXT), .-GL_PREFIX(FogCoorddEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(FogCoorddvEXT)
-       .type   GL_PREFIX(FogCoorddvEXT), @function
-GL_PREFIX(FogCoorddvEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4968(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4968(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4968(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4968(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(FogCoorddvEXT), .-GL_PREFIX(FogCoorddvEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(FogCoordfEXT)
-       .type   GL_PREFIX(FogCoordfEXT), @function
-GL_PREFIX(FogCoordfEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4976(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    4976(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4976(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $8, %rsp
-       movq    %xmm0, (%rsp)
-       call    _glapi_get_dispatch
-       movq    (%rsp), %xmm0
-       addq    $8, %rsp
-       movq    4976(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(FogCoordfEXT), .-GL_PREFIX(FogCoordfEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(FogCoordfvEXT)
-       .type   GL_PREFIX(FogCoordfvEXT), @function
-GL_PREFIX(FogCoordfvEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4984(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4984(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4984(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4984(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(FogCoordfvEXT), .-GL_PREFIX(FogCoordfvEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_624)
-       .type   GL_PREFIX(_dispatch_stub_624), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_624))
-GL_PREFIX(_dispatch_stub_624):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    4992(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    4992(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    4992(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    4992(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_624), .-GL_PREFIX(_dispatch_stub_624)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BlendFuncSeparateEXT)
-       .type   GL_PREFIX(BlendFuncSeparateEXT), @function
-GL_PREFIX(BlendFuncSeparateEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5000(%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    5000(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5000(%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    5000(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BlendFuncSeparateEXT), .-GL_PREFIX(BlendFuncSeparateEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(FlushVertexArrayRangeNV)
-       .type   GL_PREFIX(FlushVertexArrayRangeNV), @function
-GL_PREFIX(FlushVertexArrayRangeNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5008(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    5008(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5008(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    5008(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(FlushVertexArrayRangeNV), .-GL_PREFIX(FlushVertexArrayRangeNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexArrayRangeNV)
-       .type   GL_PREFIX(VertexArrayRangeNV), @function
-GL_PREFIX(VertexArrayRangeNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5016(%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    5016(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5016(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5016(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexArrayRangeNV), .-GL_PREFIX(VertexArrayRangeNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CombinerInputNV)
-       .type   GL_PREFIX(CombinerInputNV), @function
-GL_PREFIX(CombinerInputNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5024(%rax), %r11
-       jmp     *%r11
-#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    5024(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5024(%rax), %r11
-       jmp     *%r11
-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    5024(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CombinerInputNV), .-GL_PREFIX(CombinerInputNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CombinerOutputNV)
-       .type   GL_PREFIX(CombinerOutputNV), @function
-GL_PREFIX(CombinerOutputNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5032(%rax), %r11
-       jmp     *%r11
-#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    5032(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5032(%rax), %r11
-       jmp     *%r11
-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    5032(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CombinerOutputNV), .-GL_PREFIX(CombinerOutputNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CombinerParameterfNV)
-       .type   GL_PREFIX(CombinerParameterfNV), @function
-GL_PREFIX(CombinerParameterfNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5040(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    5040(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5040(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    5040(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CombinerParameterfNV), .-GL_PREFIX(CombinerParameterfNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CombinerParameterfvNV)
-       .type   GL_PREFIX(CombinerParameterfvNV), @function
-GL_PREFIX(CombinerParameterfvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5048(%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    5048(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5048(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5048(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CombinerParameterfvNV), .-GL_PREFIX(CombinerParameterfvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CombinerParameteriNV)
-       .type   GL_PREFIX(CombinerParameteriNV), @function
-GL_PREFIX(CombinerParameteriNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5056(%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    5056(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5056(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5056(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CombinerParameteriNV), .-GL_PREFIX(CombinerParameteriNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CombinerParameterivNV)
-       .type   GL_PREFIX(CombinerParameterivNV), @function
-GL_PREFIX(CombinerParameterivNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5064(%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    5064(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5064(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5064(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CombinerParameterivNV), .-GL_PREFIX(CombinerParameterivNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(FinalCombinerInputNV)
-       .type   GL_PREFIX(FinalCombinerInputNV), @function
-GL_PREFIX(FinalCombinerInputNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5072(%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    5072(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5072(%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    5072(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(FinalCombinerInputNV), .-GL_PREFIX(FinalCombinerInputNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetCombinerInputParameterfvNV)
-       .type   GL_PREFIX(GetCombinerInputParameterfvNV), @function
-GL_PREFIX(GetCombinerInputParameterfvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5080(%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    5080(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5080(%rax), %r11
-       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    5080(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetCombinerInputParameterfvNV), .-GL_PREFIX(GetCombinerInputParameterfvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetCombinerInputParameterivNV)
-       .type   GL_PREFIX(GetCombinerInputParameterivNV), @function
-GL_PREFIX(GetCombinerInputParameterivNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5088(%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    5088(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5088(%rax), %r11
-       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    5088(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetCombinerInputParameterivNV), .-GL_PREFIX(GetCombinerInputParameterivNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetCombinerOutputParameterfvNV)
-       .type   GL_PREFIX(GetCombinerOutputParameterfvNV), @function
-GL_PREFIX(GetCombinerOutputParameterfvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5096(%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    5096(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5096(%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    5096(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetCombinerOutputParameterfvNV), .-GL_PREFIX(GetCombinerOutputParameterfvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetCombinerOutputParameterivNV)
-       .type   GL_PREFIX(GetCombinerOutputParameterivNV), @function
-GL_PREFIX(GetCombinerOutputParameterivNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5104(%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    5104(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5104(%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    5104(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetCombinerOutputParameterivNV), .-GL_PREFIX(GetCombinerOutputParameterivNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetFinalCombinerInputParameterfvNV)
-       .type   GL_PREFIX(GetFinalCombinerInputParameterfvNV), @function
-GL_PREFIX(GetFinalCombinerInputParameterfvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5112(%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    5112(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5112(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5112(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetFinalCombinerInputParameterfvNV), .-GL_PREFIX(GetFinalCombinerInputParameterfvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetFinalCombinerInputParameterivNV)
-       .type   GL_PREFIX(GetFinalCombinerInputParameterivNV), @function
-GL_PREFIX(GetFinalCombinerInputParameterivNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5120(%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    5120(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5120(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5120(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetFinalCombinerInputParameterivNV), .-GL_PREFIX(GetFinalCombinerInputParameterivNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ResizeBuffersMESA)
-       .type   GL_PREFIX(ResizeBuffersMESA), @function
-GL_PREFIX(ResizeBuffersMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5128(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    5128(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5128(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    5128(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ResizeBuffersMESA), .-GL_PREFIX(ResizeBuffersMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos2dMESA)
-       .type   GL_PREFIX(WindowPos2dMESA), @function
-GL_PREFIX(WindowPos2dMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5136(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    5136(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5136(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    5136(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos2dMESA), .-GL_PREFIX(WindowPos2dMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos2dvMESA)
-       .type   GL_PREFIX(WindowPos2dvMESA), @function
-GL_PREFIX(WindowPos2dvMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5144(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5144(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5144(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5144(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos2dvMESA), .-GL_PREFIX(WindowPos2dvMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos2fMESA)
-       .type   GL_PREFIX(WindowPos2fMESA), @function
-GL_PREFIX(WindowPos2fMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5152(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    5152(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5152(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    5152(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos2fMESA), .-GL_PREFIX(WindowPos2fMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos2fvMESA)
-       .type   GL_PREFIX(WindowPos2fvMESA), @function
-GL_PREFIX(WindowPos2fvMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5160(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5160(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5160(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5160(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos2fvMESA), .-GL_PREFIX(WindowPos2fvMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos2iMESA)
-       .type   GL_PREFIX(WindowPos2iMESA), @function
-GL_PREFIX(WindowPos2iMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5168(%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    5168(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5168(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5168(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos2iMESA), .-GL_PREFIX(WindowPos2iMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos2ivMESA)
-       .type   GL_PREFIX(WindowPos2ivMESA), @function
-GL_PREFIX(WindowPos2ivMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5176(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5176(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5176(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5176(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos2ivMESA), .-GL_PREFIX(WindowPos2ivMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos2sMESA)
-       .type   GL_PREFIX(WindowPos2sMESA), @function
-GL_PREFIX(WindowPos2sMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5184(%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    5184(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5184(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5184(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos2sMESA), .-GL_PREFIX(WindowPos2sMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos2svMESA)
-       .type   GL_PREFIX(WindowPos2svMESA), @function
-GL_PREFIX(WindowPos2svMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5192(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5192(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5192(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5192(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos2svMESA), .-GL_PREFIX(WindowPos2svMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos3dMESA)
-       .type   GL_PREFIX(WindowPos3dMESA), @function
-GL_PREFIX(WindowPos3dMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5200(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    5200(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5200(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    5200(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos3dMESA), .-GL_PREFIX(WindowPos3dMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos3dvMESA)
-       .type   GL_PREFIX(WindowPos3dvMESA), @function
-GL_PREFIX(WindowPos3dvMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5208(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5208(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5208(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5208(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos3dvMESA), .-GL_PREFIX(WindowPos3dvMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos3fMESA)
-       .type   GL_PREFIX(WindowPos3fMESA), @function
-GL_PREFIX(WindowPos3fMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5216(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    5216(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5216(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $24, %rsp
-       movq    5216(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos3fMESA), .-GL_PREFIX(WindowPos3fMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos3fvMESA)
-       .type   GL_PREFIX(WindowPos3fvMESA), @function
-GL_PREFIX(WindowPos3fvMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5224(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5224(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5224(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5224(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos3fvMESA), .-GL_PREFIX(WindowPos3fvMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos3iMESA)
-       .type   GL_PREFIX(WindowPos3iMESA), @function
-GL_PREFIX(WindowPos3iMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5232(%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    5232(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5232(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5232(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos3iMESA), .-GL_PREFIX(WindowPos3iMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos3ivMESA)
-       .type   GL_PREFIX(WindowPos3ivMESA), @function
-GL_PREFIX(WindowPos3ivMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5240(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5240(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5240(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5240(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos3ivMESA), .-GL_PREFIX(WindowPos3ivMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos3sMESA)
-       .type   GL_PREFIX(WindowPos3sMESA), @function
-GL_PREFIX(WindowPos3sMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5248(%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    5248(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5248(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5248(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos3sMESA), .-GL_PREFIX(WindowPos3sMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos3svMESA)
-       .type   GL_PREFIX(WindowPos3svMESA), @function
-GL_PREFIX(WindowPos3svMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5256(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5256(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5256(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5256(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos3svMESA), .-GL_PREFIX(WindowPos3svMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos4dMESA)
-       .type   GL_PREFIX(WindowPos4dMESA), @function
-GL_PREFIX(WindowPos4dMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5264(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    5264(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5264(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    5264(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos4dMESA), .-GL_PREFIX(WindowPos4dMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos4dvMESA)
-       .type   GL_PREFIX(WindowPos4dvMESA), @function
-GL_PREFIX(WindowPos4dvMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5272(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5272(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5272(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5272(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos4dvMESA), .-GL_PREFIX(WindowPos4dvMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos4fMESA)
-       .type   GL_PREFIX(WindowPos4fMESA), @function
-GL_PREFIX(WindowPos4fMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5280(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    5280(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5280(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %xmm0, (%rsp)
-       movq    %xmm1, 8(%rsp)
-       movq    %xmm2, 16(%rsp)
-       movq    %xmm3, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm3
-       movq    16(%rsp), %xmm2
-       movq    8(%rsp), %xmm1
-       movq    (%rsp), %xmm0
-       addq    $40, %rsp
-       movq    5280(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos4fMESA), .-GL_PREFIX(WindowPos4fMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos4fvMESA)
-       .type   GL_PREFIX(WindowPos4fvMESA), @function
-GL_PREFIX(WindowPos4fvMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5288(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5288(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5288(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5288(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos4fvMESA), .-GL_PREFIX(WindowPos4fvMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos4iMESA)
-       .type   GL_PREFIX(WindowPos4iMESA), @function
-GL_PREFIX(WindowPos4iMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5296(%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    5296(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5296(%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    5296(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos4iMESA), .-GL_PREFIX(WindowPos4iMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos4ivMESA)
-       .type   GL_PREFIX(WindowPos4ivMESA), @function
-GL_PREFIX(WindowPos4ivMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5304(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5304(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5304(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5304(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos4ivMESA), .-GL_PREFIX(WindowPos4ivMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos4sMESA)
-       .type   GL_PREFIX(WindowPos4sMESA), @function
-GL_PREFIX(WindowPos4sMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5312(%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    5312(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5312(%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    5312(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos4sMESA), .-GL_PREFIX(WindowPos4sMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(WindowPos4svMESA)
-       .type   GL_PREFIX(WindowPos4svMESA), @function
-GL_PREFIX(WindowPos4svMESA):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5320(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5320(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5320(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5320(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(WindowPos4svMESA), .-GL_PREFIX(WindowPos4svMESA)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_666)
-       .type   GL_PREFIX(_dispatch_stub_666), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_666))
-GL_PREFIX(_dispatch_stub_666):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5328(%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    5328(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5328(%rax), %r11
-       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    5328(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_666), .-GL_PREFIX(_dispatch_stub_666)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_667)
-       .type   GL_PREFIX(_dispatch_stub_667), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_667))
-GL_PREFIX(_dispatch_stub_667):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5336(%rax), %r11
-       jmp     *%r11
-#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    5336(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5336(%rax), %r11
-       jmp     *%r11
-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    5336(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_667), .-GL_PREFIX(_dispatch_stub_667)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_668)
-       .type   GL_PREFIX(_dispatch_stub_668), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_668))
-GL_PREFIX(_dispatch_stub_668):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5344(%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    5344(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5344(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5344(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_668), .-GL_PREFIX(_dispatch_stub_668)
-
-       .p2align        4,,15
-       .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    5352(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5352(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5352(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5352(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_669), .-GL_PREFIX(_dispatch_stub_669)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_670)
-       .type   GL_PREFIX(_dispatch_stub_670), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_670))
-GL_PREFIX(_dispatch_stub_670):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5360(%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    5360(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5360(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5360(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_670), .-GL_PREFIX(_dispatch_stub_670)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_671)
-       .type   GL_PREFIX(_dispatch_stub_671), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_671))
-GL_PREFIX(_dispatch_stub_671):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5368(%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    5368(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5368(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5368(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_671), .-GL_PREFIX(_dispatch_stub_671)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_672)
-       .type   GL_PREFIX(_dispatch_stub_672), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_672))
-GL_PREFIX(_dispatch_stub_672):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5376(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5376(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5376(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5376(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_672), .-GL_PREFIX(_dispatch_stub_672)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_673)
-       .type   GL_PREFIX(_dispatch_stub_673), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_673))
-GL_PREFIX(_dispatch_stub_673):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5384(%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    5384(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5384(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5384(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_673), .-GL_PREFIX(_dispatch_stub_673)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_674)
-       .type   GL_PREFIX(_dispatch_stub_674), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_674))
-GL_PREFIX(_dispatch_stub_674):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5392(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5392(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5392(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5392(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_674), .-GL_PREFIX(_dispatch_stub_674)
-
-       .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    5400(%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    5400(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5400(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5400(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(AreProgramsResidentNV), .-GL_PREFIX(AreProgramsResidentNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BindProgramNV)
-       .type   GL_PREFIX(BindProgramNV), @function
-GL_PREFIX(BindProgramNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5408(%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    5408(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5408(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5408(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BindProgramNV), .-GL_PREFIX(BindProgramNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DeleteProgramsNV)
-       .type   GL_PREFIX(DeleteProgramsNV), @function
-GL_PREFIX(DeleteProgramsNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5416(%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    5416(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5416(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5416(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DeleteProgramsNV), .-GL_PREFIX(DeleteProgramsNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ExecuteProgramNV)
-       .type   GL_PREFIX(ExecuteProgramNV), @function
-GL_PREFIX(ExecuteProgramNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5424(%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    5424(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5424(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5424(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ExecuteProgramNV), .-GL_PREFIX(ExecuteProgramNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GenProgramsNV)
-       .type   GL_PREFIX(GenProgramsNV), @function
-GL_PREFIX(GenProgramsNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5432(%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    5432(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5432(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5432(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GenProgramsNV), .-GL_PREFIX(GenProgramsNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetProgramParameterdvNV)
-       .type   GL_PREFIX(GetProgramParameterdvNV), @function
-GL_PREFIX(GetProgramParameterdvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5440(%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    5440(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5440(%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    5440(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetProgramParameterdvNV), .-GL_PREFIX(GetProgramParameterdvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetProgramParameterfvNV)
-       .type   GL_PREFIX(GetProgramParameterfvNV), @function
-GL_PREFIX(GetProgramParameterfvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5448(%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    5448(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5448(%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    5448(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetProgramParameterfvNV), .-GL_PREFIX(GetProgramParameterfvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetProgramStringNV)
-       .type   GL_PREFIX(GetProgramStringNV), @function
-GL_PREFIX(GetProgramStringNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5456(%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    5456(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5456(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5456(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetProgramStringNV), .-GL_PREFIX(GetProgramStringNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetProgramivNV)
-       .type   GL_PREFIX(GetProgramivNV), @function
-GL_PREFIX(GetProgramivNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5464(%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    5464(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5464(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5464(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetProgramivNV), .-GL_PREFIX(GetProgramivNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetTrackMatrixivNV)
-       .type   GL_PREFIX(GetTrackMatrixivNV), @function
-GL_PREFIX(GetTrackMatrixivNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5472(%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    5472(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5472(%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    5472(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetTrackMatrixivNV), .-GL_PREFIX(GetTrackMatrixivNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetVertexAttribPointervNV)
-       .type   GL_PREFIX(GetVertexAttribPointervNV), @function
-GL_PREFIX(GetVertexAttribPointervNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5480(%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    5480(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5480(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5480(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetVertexAttribPointervNV), .-GL_PREFIX(GetVertexAttribPointervNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetVertexAttribdvNV)
-       .type   GL_PREFIX(GetVertexAttribdvNV), @function
-GL_PREFIX(GetVertexAttribdvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5488(%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    5488(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5488(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5488(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetVertexAttribdvNV), .-GL_PREFIX(GetVertexAttribdvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetVertexAttribfvNV)
-       .type   GL_PREFIX(GetVertexAttribfvNV), @function
-GL_PREFIX(GetVertexAttribfvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5496(%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    5496(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5496(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5496(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetVertexAttribfvNV), .-GL_PREFIX(GetVertexAttribfvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetVertexAttribivNV)
-       .type   GL_PREFIX(GetVertexAttribivNV), @function
-GL_PREFIX(GetVertexAttribivNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5504(%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    5504(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5504(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5504(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetVertexAttribivNV), .-GL_PREFIX(GetVertexAttribivNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(IsProgramNV)
-       .type   GL_PREFIX(IsProgramNV), @function
-GL_PREFIX(IsProgramNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5512(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5512(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5512(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5512(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(IsProgramNV), .-GL_PREFIX(IsProgramNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(LoadProgramNV)
-       .type   GL_PREFIX(LoadProgramNV), @function
-GL_PREFIX(LoadProgramNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5520(%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    5520(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5520(%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    5520(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(LoadProgramNV), .-GL_PREFIX(LoadProgramNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ProgramParameters4dvNV)
-       .type   GL_PREFIX(ProgramParameters4dvNV), @function
-GL_PREFIX(ProgramParameters4dvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5528(%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    5528(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5528(%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    5528(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ProgramParameters4dvNV), .-GL_PREFIX(ProgramParameters4dvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ProgramParameters4fvNV)
-       .type   GL_PREFIX(ProgramParameters4fvNV), @function
-GL_PREFIX(ProgramParameters4fvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5536(%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    5536(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5536(%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    5536(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ProgramParameters4fvNV), .-GL_PREFIX(ProgramParameters4fvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RequestResidentProgramsNV)
-       .type   GL_PREFIX(RequestResidentProgramsNV), @function
-GL_PREFIX(RequestResidentProgramsNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5544(%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    5544(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5544(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5544(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RequestResidentProgramsNV), .-GL_PREFIX(RequestResidentProgramsNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TrackMatrixNV)
-       .type   GL_PREFIX(TrackMatrixNV), @function
-GL_PREFIX(TrackMatrixNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5552(%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    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
-       pushq   %rsi
-       pushq   %rdx
-       pushq   %rcx
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rcx
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5552(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TrackMatrixNV), .-GL_PREFIX(TrackMatrixNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib1dNV)
-       .type   GL_PREFIX(VertexAttrib1dNV), @function
-GL_PREFIX(VertexAttrib1dNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5560(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    5560(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5560(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    5560(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib1dNV), .-GL_PREFIX(VertexAttrib1dNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib1dvNV)
-       .type   GL_PREFIX(VertexAttrib1dvNV), @function
-GL_PREFIX(VertexAttrib1dvNV):
-#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   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5568(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5568(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5568(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib1dvNV), .-GL_PREFIX(VertexAttrib1dvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib1fNV)
-       .type   GL_PREFIX(VertexAttrib1fNV), @function
-GL_PREFIX(VertexAttrib1fNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5576(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    5576(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5576(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       call    _glapi_get_dispatch
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    5576(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib1fNV), .-GL_PREFIX(VertexAttrib1fNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib1fvNV)
-       .type   GL_PREFIX(VertexAttrib1fvNV), @function
-GL_PREFIX(VertexAttrib1fvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5584(%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    5584(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5584(%rax), %r11
-       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
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib1fvNV), .-GL_PREFIX(VertexAttrib1fvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib1sNV)
-       .type   GL_PREFIX(VertexAttrib1sNV), @function
-GL_PREFIX(VertexAttrib1sNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5592(%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    5592(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5592(%rax), %r11
-       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
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib1sNV), .-GL_PREFIX(VertexAttrib1sNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib1svNV)
-       .type   GL_PREFIX(VertexAttrib1svNV), @function
-GL_PREFIX(VertexAttrib1svNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5600(%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    5600(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5600(%rax), %r11
-       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
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib1svNV), .-GL_PREFIX(VertexAttrib1svNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib2dNV)
-       .type   GL_PREFIX(VertexAttrib2dNV), @function
-GL_PREFIX(VertexAttrib2dNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5608(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    5608(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5608(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    5608(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib2dNV), .-GL_PREFIX(VertexAttrib2dNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib2dvNV)
-       .type   GL_PREFIX(VertexAttrib2dvNV), @function
-GL_PREFIX(VertexAttrib2dvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5616(%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    5616(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5616(%rax), %r11
-       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
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib2dvNV), .-GL_PREFIX(VertexAttrib2dvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib2fNV)
-       .type   GL_PREFIX(VertexAttrib2fNV), @function
-GL_PREFIX(VertexAttrib2fNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5624(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    5624(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5624(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $24, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       call    _glapi_get_dispatch
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $24, %rsp
-       movq    5624(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib2fNV), .-GL_PREFIX(VertexAttrib2fNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib2fvNV)
-       .type   GL_PREFIX(VertexAttrib2fvNV), @function
-GL_PREFIX(VertexAttrib2fvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5632(%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    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
-       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(VertexAttrib2fvNV), .-GL_PREFIX(VertexAttrib2fvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib2sNV)
-       .type   GL_PREFIX(VertexAttrib2sNV), @function
-GL_PREFIX(VertexAttrib2sNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5640(%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    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
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5640(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib2sNV), .-GL_PREFIX(VertexAttrib2sNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib2svNV)
-       .type   GL_PREFIX(VertexAttrib2svNV), @function
-GL_PREFIX(VertexAttrib2svNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5648(%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    5648(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5648(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5648(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib2svNV), .-GL_PREFIX(VertexAttrib2svNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib3dNV)
-       .type   GL_PREFIX(VertexAttrib3dNV), @function
-GL_PREFIX(VertexAttrib3dNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5656(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    5656(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5656(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    5656(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib3dNV), .-GL_PREFIX(VertexAttrib3dNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib3dvNV)
-       .type   GL_PREFIX(VertexAttrib3dvNV), @function
-GL_PREFIX(VertexAttrib3dvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5664(%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    5664(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5664(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5664(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib3dvNV), .-GL_PREFIX(VertexAttrib3dvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib3fNV)
-       .type   GL_PREFIX(VertexAttrib3fNV), @function
-GL_PREFIX(VertexAttrib3fNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5672(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    5672(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5672(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       call    _glapi_get_dispatch
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    5672(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib3fNV), .-GL_PREFIX(VertexAttrib3fNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib3fvNV)
-       .type   GL_PREFIX(VertexAttrib3fvNV), @function
-GL_PREFIX(VertexAttrib3fvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5680(%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    5680(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5680(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5680(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib3fvNV), .-GL_PREFIX(VertexAttrib3fvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib3sNV)
-       .type   GL_PREFIX(VertexAttrib3sNV), @function
-GL_PREFIX(VertexAttrib3sNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5688(%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    5688(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5688(%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    5688(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib3sNV), .-GL_PREFIX(VertexAttrib3sNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib3svNV)
-       .type   GL_PREFIX(VertexAttrib3svNV), @function
-GL_PREFIX(VertexAttrib3svNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5696(%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    5696(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5696(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5696(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib3svNV), .-GL_PREFIX(VertexAttrib3svNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4dNV)
-       .type   GL_PREFIX(VertexAttrib4dNV), @function
-GL_PREFIX(VertexAttrib4dNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5704(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       movq    %xmm3, 32(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    32(%rsp), %xmm3
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    5704(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5704(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       movq    %xmm3, 32(%rsp)
-       call    _glapi_get_dispatch
-       movq    32(%rsp), %xmm3
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    5704(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4dNV), .-GL_PREFIX(VertexAttrib4dNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4dvNV)
-       .type   GL_PREFIX(VertexAttrib4dvNV), @function
-GL_PREFIX(VertexAttrib4dvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5712(%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    5712(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5712(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5712(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4dvNV), .-GL_PREFIX(VertexAttrib4dvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4fNV)
-       .type   GL_PREFIX(VertexAttrib4fNV), @function
-GL_PREFIX(VertexAttrib4fNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5720(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       movq    %xmm3, 32(%rsp)
-       call    _x86_64_get_dispatch@PLT
-       movq    32(%rsp), %xmm3
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    5720(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5720(%rax), %r11
-       jmp     *%r11
-1:
-       subq    $40, %rsp
-       movq    %rdi, (%rsp)
-       movq    %xmm0, 8(%rsp)
-       movq    %xmm1, 16(%rsp)
-       movq    %xmm2, 24(%rsp)
-       movq    %xmm3, 32(%rsp)
-       call    _glapi_get_dispatch
-       movq    32(%rsp), %xmm3
-       movq    24(%rsp), %xmm2
-       movq    16(%rsp), %xmm1
-       movq    8(%rsp), %xmm0
-       movq    (%rsp), %rdi
-       addq    $40, %rsp
-       movq    5720(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4fNV), .-GL_PREFIX(VertexAttrib4fNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4fvNV)
-       .type   GL_PREFIX(VertexAttrib4fvNV), @function
-GL_PREFIX(VertexAttrib4fvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5728(%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    5728(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5728(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5728(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4fvNV), .-GL_PREFIX(VertexAttrib4fvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4sNV)
-       .type   GL_PREFIX(VertexAttrib4sNV), @function
-GL_PREFIX(VertexAttrib4sNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5736(%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    5736(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5736(%rax), %r11
-       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    5736(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4sNV), .-GL_PREFIX(VertexAttrib4sNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4svNV)
-       .type   GL_PREFIX(VertexAttrib4svNV), @function
-GL_PREFIX(VertexAttrib4svNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5744(%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    5744(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5744(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5744(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4svNV), .-GL_PREFIX(VertexAttrib4svNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4ubNV)
-       .type   GL_PREFIX(VertexAttrib4ubNV), @function
-GL_PREFIX(VertexAttrib4ubNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5752(%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    5752(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5752(%rax), %r11
-       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    5752(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4ubNV), .-GL_PREFIX(VertexAttrib4ubNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttrib4ubvNV)
-       .type   GL_PREFIX(VertexAttrib4ubvNV), @function
-GL_PREFIX(VertexAttrib4ubvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5760(%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    5760(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5760(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5760(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttrib4ubvNV), .-GL_PREFIX(VertexAttrib4ubvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttribPointerNV)
-       .type   GL_PREFIX(VertexAttribPointerNV), @function
-GL_PREFIX(VertexAttribPointerNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5768(%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    5768(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5768(%rax), %r11
-       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    5768(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttribPointerNV), .-GL_PREFIX(VertexAttribPointerNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttribs1dvNV)
-       .type   GL_PREFIX(VertexAttribs1dvNV), @function
-GL_PREFIX(VertexAttribs1dvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5776(%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    5776(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5776(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5776(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttribs1dvNV), .-GL_PREFIX(VertexAttribs1dvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttribs1fvNV)
-       .type   GL_PREFIX(VertexAttribs1fvNV), @function
-GL_PREFIX(VertexAttribs1fvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5784(%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    5784(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5784(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5784(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttribs1fvNV), .-GL_PREFIX(VertexAttribs1fvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttribs1svNV)
-       .type   GL_PREFIX(VertexAttribs1svNV), @function
-GL_PREFIX(VertexAttribs1svNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5792(%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    5792(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5792(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5792(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttribs1svNV), .-GL_PREFIX(VertexAttribs1svNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttribs2dvNV)
-       .type   GL_PREFIX(VertexAttribs2dvNV), @function
-GL_PREFIX(VertexAttribs2dvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5800(%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    5800(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5800(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5800(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttribs2dvNV), .-GL_PREFIX(VertexAttribs2dvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttribs2fvNV)
-       .type   GL_PREFIX(VertexAttribs2fvNV), @function
-GL_PREFIX(VertexAttribs2fvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5808(%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    5808(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5808(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5808(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttribs2fvNV), .-GL_PREFIX(VertexAttribs2fvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttribs2svNV)
-       .type   GL_PREFIX(VertexAttribs2svNV), @function
-GL_PREFIX(VertexAttribs2svNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5816(%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    5816(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5816(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5816(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttribs2svNV), .-GL_PREFIX(VertexAttribs2svNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttribs3dvNV)
-       .type   GL_PREFIX(VertexAttribs3dvNV), @function
-GL_PREFIX(VertexAttribs3dvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5824(%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    5824(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5824(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5824(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttribs3dvNV), .-GL_PREFIX(VertexAttribs3dvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttribs3fvNV)
-       .type   GL_PREFIX(VertexAttribs3fvNV), @function
-GL_PREFIX(VertexAttribs3fvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5832(%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    5832(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5832(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5832(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttribs3fvNV), .-GL_PREFIX(VertexAttribs3fvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttribs3svNV)
-       .type   GL_PREFIX(VertexAttribs3svNV), @function
-GL_PREFIX(VertexAttribs3svNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5840(%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    5840(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5840(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5840(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttribs3svNV), .-GL_PREFIX(VertexAttribs3svNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttribs4dvNV)
-       .type   GL_PREFIX(VertexAttribs4dvNV), @function
-GL_PREFIX(VertexAttribs4dvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5848(%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    5848(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5848(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5848(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttribs4dvNV), .-GL_PREFIX(VertexAttribs4dvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttribs4fvNV)
-       .type   GL_PREFIX(VertexAttribs4fvNV), @function
-GL_PREFIX(VertexAttribs4fvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5856(%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    5856(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5856(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5856(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttribs4fvNV), .-GL_PREFIX(VertexAttribs4fvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttribs4svNV)
-       .type   GL_PREFIX(VertexAttribs4svNV), @function
-GL_PREFIX(VertexAttribs4svNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5864(%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    5864(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5864(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5864(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttribs4svNV), .-GL_PREFIX(VertexAttribs4svNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(VertexAttribs4ubvNV)
-       .type   GL_PREFIX(VertexAttribs4ubvNV), @function
-GL_PREFIX(VertexAttribs4ubvNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5872(%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    5872(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5872(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    5872(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(VertexAttribs4ubvNV), .-GL_PREFIX(VertexAttribs4ubvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetTexBumpParameterfvATI)
-       .type   GL_PREFIX(GetTexBumpParameterfvATI), @function
-GL_PREFIX(GetTexBumpParameterfvATI):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5880(%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    5880(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5880(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5880(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetTexBumpParameterfvATI), .-GL_PREFIX(GetTexBumpParameterfvATI)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetTexBumpParameterivATI)
-       .type   GL_PREFIX(GetTexBumpParameterivATI), @function
-GL_PREFIX(GetTexBumpParameterivATI):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5888(%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    5888(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5888(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5888(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetTexBumpParameterivATI), .-GL_PREFIX(GetTexBumpParameterivATI)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexBumpParameterfvATI)
-       .type   GL_PREFIX(TexBumpParameterfvATI), @function
-GL_PREFIX(TexBumpParameterfvATI):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5896(%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    5896(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5896(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5896(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexBumpParameterfvATI), .-GL_PREFIX(TexBumpParameterfvATI)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TexBumpParameterivATI)
-       .type   GL_PREFIX(TexBumpParameterivATI), @function
-GL_PREFIX(TexBumpParameterivATI):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5904(%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    5904(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5904(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    5904(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TexBumpParameterivATI), .-GL_PREFIX(TexBumpParameterivATI)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(AlphaFragmentOp1ATI)
-       .type   GL_PREFIX(AlphaFragmentOp1ATI), @function
-GL_PREFIX(AlphaFragmentOp1ATI):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5912(%rax), %r11
-       jmp     *%r11
-#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    5912(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5912(%rax), %r11
-       jmp     *%r11
-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    5912(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(AlphaFragmentOp1ATI), .-GL_PREFIX(AlphaFragmentOp1ATI)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(AlphaFragmentOp2ATI)
-       .type   GL_PREFIX(AlphaFragmentOp2ATI), @function
-GL_PREFIX(AlphaFragmentOp2ATI):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5920(%rax), %r11
-       jmp     *%r11
-#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    5920(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5920(%rax), %r11
-       jmp     *%r11
-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    5920(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(AlphaFragmentOp2ATI), .-GL_PREFIX(AlphaFragmentOp2ATI)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(AlphaFragmentOp3ATI)
-       .type   GL_PREFIX(AlphaFragmentOp3ATI), @function
-GL_PREFIX(AlphaFragmentOp3ATI):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5928(%rax), %r11
-       jmp     *%r11
-#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    5928(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5928(%rax), %r11
-       jmp     *%r11
-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    5928(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(AlphaFragmentOp3ATI), .-GL_PREFIX(AlphaFragmentOp3ATI)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BeginFragmentShaderATI)
-       .type   GL_PREFIX(BeginFragmentShaderATI), @function
-GL_PREFIX(BeginFragmentShaderATI):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5936(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    5936(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5936(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    5936(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BeginFragmentShaderATI), .-GL_PREFIX(BeginFragmentShaderATI)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BindFragmentShaderATI)
-       .type   GL_PREFIX(BindFragmentShaderATI), @function
-GL_PREFIX(BindFragmentShaderATI):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5944(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5944(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5944(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5944(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BindFragmentShaderATI), .-GL_PREFIX(BindFragmentShaderATI)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ColorFragmentOp1ATI)
-       .type   GL_PREFIX(ColorFragmentOp1ATI), @function
-GL_PREFIX(ColorFragmentOp1ATI):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5952(%rax), %r11
-       jmp     *%r11
-#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    5952(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5952(%rax), %r11
-       jmp     *%r11
-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    5952(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ColorFragmentOp1ATI), .-GL_PREFIX(ColorFragmentOp1ATI)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ColorFragmentOp2ATI)
-       .type   GL_PREFIX(ColorFragmentOp2ATI), @function
-GL_PREFIX(ColorFragmentOp2ATI):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5960(%rax), %r11
-       jmp     *%r11
-#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    5960(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5960(%rax), %r11
-       jmp     *%r11
-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    5960(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ColorFragmentOp2ATI), .-GL_PREFIX(ColorFragmentOp2ATI)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ColorFragmentOp3ATI)
-       .type   GL_PREFIX(ColorFragmentOp3ATI), @function
-GL_PREFIX(ColorFragmentOp3ATI):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5968(%rax), %r11
-       jmp     *%r11
-#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    5968(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5968(%rax), %r11
-       jmp     *%r11
-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    5968(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ColorFragmentOp3ATI), .-GL_PREFIX(ColorFragmentOp3ATI)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DeleteFragmentShaderATI)
-       .type   GL_PREFIX(DeleteFragmentShaderATI), @function
-GL_PREFIX(DeleteFragmentShaderATI):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5976(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5976(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5976(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5976(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DeleteFragmentShaderATI), .-GL_PREFIX(DeleteFragmentShaderATI)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EndFragmentShaderATI)
-       .type   GL_PREFIX(EndFragmentShaderATI), @function
-GL_PREFIX(EndFragmentShaderATI):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5984(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       movq    5984(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5984(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    5984(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EndFragmentShaderATI), .-GL_PREFIX(EndFragmentShaderATI)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GenFragmentShadersATI)
-       .type   GL_PREFIX(GenFragmentShadersATI), @function
-GL_PREFIX(GenFragmentShadersATI):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    5992(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    5992(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    5992(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    5992(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GenFragmentShadersATI), .-GL_PREFIX(GenFragmentShadersATI)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PassTexCoordATI)
-       .type   GL_PREFIX(PassTexCoordATI), @function
-GL_PREFIX(PassTexCoordATI):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6000(%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    6000(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6000(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    6000(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PassTexCoordATI), .-GL_PREFIX(PassTexCoordATI)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SampleMapATI)
-       .type   GL_PREFIX(SampleMapATI), @function
-GL_PREFIX(SampleMapATI):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6008(%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    6008(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6008(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    6008(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(SampleMapATI), .-GL_PREFIX(SampleMapATI)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(SetFragmentShaderConstantATI)
-       .type   GL_PREFIX(SetFragmentShaderConstantATI), @function
-GL_PREFIX(SetFragmentShaderConstantATI):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6016(%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    6016(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6016(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    6016(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(SetFragmentShaderConstantATI), .-GL_PREFIX(SetFragmentShaderConstantATI)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PointParameteriNV)
-       .type   GL_PREFIX(PointParameteriNV), @function
-GL_PREFIX(PointParameteriNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6024(%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    6024(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6024(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    6024(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PointParameteriNV), .-GL_PREFIX(PointParameteriNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(PointParameterivNV)
-       .type   GL_PREFIX(PointParameterivNV), @function
-GL_PREFIX(PointParameterivNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6032(%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    6032(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6032(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    6032(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(PointParameterivNV), .-GL_PREFIX(PointParameterivNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_755)
-       .type   GL_PREFIX(_dispatch_stub_755), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_755))
-GL_PREFIX(_dispatch_stub_755):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6040(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    6040(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6040(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    6040(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_755), .-GL_PREFIX(_dispatch_stub_755)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_756)
-       .type   GL_PREFIX(_dispatch_stub_756), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_756))
-GL_PREFIX(_dispatch_stub_756):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6048(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    6048(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6048(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    6048(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_756), .-GL_PREFIX(_dispatch_stub_756)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_757)
-       .type   GL_PREFIX(_dispatch_stub_757), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_757))
-GL_PREFIX(_dispatch_stub_757):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6056(%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    6056(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6056(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    6056(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_757), .-GL_PREFIX(_dispatch_stub_757)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_758)
-       .type   GL_PREFIX(_dispatch_stub_758), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_758))
-GL_PREFIX(_dispatch_stub_758):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6064(%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    6064(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6064(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    6064(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_758), .-GL_PREFIX(_dispatch_stub_758)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_759)
-       .type   GL_PREFIX(_dispatch_stub_759), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_759))
-GL_PREFIX(_dispatch_stub_759):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6072(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    6072(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6072(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    6072(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_759), .-GL_PREFIX(_dispatch_stub_759)
-
-       .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    6080(%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    6080(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6080(%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    6080(%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    6088(%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    6088(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6088(%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    6088(%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    6096(%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    6096(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6096(%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    6096(%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    6104(%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    6104(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6104(%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    6104(%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    6112(%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    6112(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6112(%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    6112(%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    6120(%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    6120(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6120(%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    6120(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ProgramNamedParameter4fvNV), .-GL_PREFIX(ProgramNamedParameter4fvNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_766)
-       .type   GL_PREFIX(_dispatch_stub_766), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_766))
-GL_PREFIX(_dispatch_stub_766):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6128(%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    6128(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6128(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    6128(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_766), .-GL_PREFIX(_dispatch_stub_766)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_767)
-       .type   GL_PREFIX(_dispatch_stub_767), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_767))
-GL_PREFIX(_dispatch_stub_767):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6136(%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    6136(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6136(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    6136(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_767), .-GL_PREFIX(_dispatch_stub_767)
-
-       .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    6144(%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    6144(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6144(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    6144(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BindFramebufferEXT), .-GL_PREFIX(BindFramebufferEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BindRenderbufferEXT)
-       .type   GL_PREFIX(BindRenderbufferEXT), @function
-GL_PREFIX(BindRenderbufferEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6152(%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    6152(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6152(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    6152(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BindRenderbufferEXT), .-GL_PREFIX(BindRenderbufferEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(CheckFramebufferStatusEXT)
-       .type   GL_PREFIX(CheckFramebufferStatusEXT), @function
-GL_PREFIX(CheckFramebufferStatusEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6160(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    6160(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6160(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    6160(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(CheckFramebufferStatusEXT), .-GL_PREFIX(CheckFramebufferStatusEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DeleteFramebuffersEXT)
-       .type   GL_PREFIX(DeleteFramebuffersEXT), @function
-GL_PREFIX(DeleteFramebuffersEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6168(%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    6168(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6168(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    6168(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DeleteFramebuffersEXT), .-GL_PREFIX(DeleteFramebuffersEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DeleteRenderbuffersEXT)
-       .type   GL_PREFIX(DeleteRenderbuffersEXT), @function
-GL_PREFIX(DeleteRenderbuffersEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6176(%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    6176(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6176(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    6176(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DeleteRenderbuffersEXT), .-GL_PREFIX(DeleteRenderbuffersEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(FramebufferRenderbufferEXT)
-       .type   GL_PREFIX(FramebufferRenderbufferEXT), @function
-GL_PREFIX(FramebufferRenderbufferEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6184(%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    6184(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6184(%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    6184(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(FramebufferRenderbufferEXT), .-GL_PREFIX(FramebufferRenderbufferEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(FramebufferTexture1DEXT)
-       .type   GL_PREFIX(FramebufferTexture1DEXT), @function
-GL_PREFIX(FramebufferTexture1DEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6192(%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    6192(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6192(%rax), %r11
-       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    6192(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(FramebufferTexture1DEXT), .-GL_PREFIX(FramebufferTexture1DEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(FramebufferTexture2DEXT)
-       .type   GL_PREFIX(FramebufferTexture2DEXT), @function
-GL_PREFIX(FramebufferTexture2DEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6200(%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    6200(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6200(%rax), %r11
-       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    6200(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(FramebufferTexture2DEXT), .-GL_PREFIX(FramebufferTexture2DEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(FramebufferTexture3DEXT)
-       .type   GL_PREFIX(FramebufferTexture3DEXT), @function
-GL_PREFIX(FramebufferTexture3DEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6208(%rax), %r11
-       jmp     *%r11
-#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    6208(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6208(%rax), %r11
-       jmp     *%r11
-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    6208(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(FramebufferTexture3DEXT), .-GL_PREFIX(FramebufferTexture3DEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GenFramebuffersEXT)
-       .type   GL_PREFIX(GenFramebuffersEXT), @function
-GL_PREFIX(GenFramebuffersEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6216(%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    6216(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6216(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    6216(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GenFramebuffersEXT), .-GL_PREFIX(GenFramebuffersEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GenRenderbuffersEXT)
-       .type   GL_PREFIX(GenRenderbuffersEXT), @function
-GL_PREFIX(GenRenderbuffersEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6224(%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    6224(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6224(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    6224(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GenRenderbuffersEXT), .-GL_PREFIX(GenRenderbuffersEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GenerateMipmapEXT)
-       .type   GL_PREFIX(GenerateMipmapEXT), @function
-GL_PREFIX(GenerateMipmapEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6232(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    6232(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6232(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    6232(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GenerateMipmapEXT), .-GL_PREFIX(GenerateMipmapEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetFramebufferAttachmentParameterivEXT)
-       .type   GL_PREFIX(GetFramebufferAttachmentParameterivEXT), @function
-GL_PREFIX(GetFramebufferAttachmentParameterivEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6240(%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    6240(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6240(%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    6240(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetFramebufferAttachmentParameterivEXT), .-GL_PREFIX(GetFramebufferAttachmentParameterivEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetRenderbufferParameterivEXT)
-       .type   GL_PREFIX(GetRenderbufferParameterivEXT), @function
-GL_PREFIX(GetRenderbufferParameterivEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6248(%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    6248(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6248(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    6248(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetRenderbufferParameterivEXT), .-GL_PREFIX(GetRenderbufferParameterivEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(IsFramebufferEXT)
-       .type   GL_PREFIX(IsFramebufferEXT), @function
-GL_PREFIX(IsFramebufferEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6256(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdi
-       movq    6256(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6256(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    6256(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(IsFramebufferEXT), .-GL_PREFIX(IsFramebufferEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(IsRenderbufferEXT)
-       .type   GL_PREFIX(IsRenderbufferEXT), @function
-GL_PREFIX(IsRenderbufferEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6264(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rdi
-       call    _x86_64_get_dispatch@PLT
-       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
-       call    _glapi_get_dispatch
-       popq    %rdi
-       movq    6264(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(IsRenderbufferEXT), .-GL_PREFIX(IsRenderbufferEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(RenderbufferStorageEXT)
-       .type   GL_PREFIX(RenderbufferStorageEXT), @function
-GL_PREFIX(RenderbufferStorageEXT):
-#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   %rdx
-       pushq   %rcx
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       popq    %rcx
-       popq    %rdx
-       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   %rdx
-       pushq   %rcx
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rcx
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    6272(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(RenderbufferStorageEXT), .-GL_PREFIX(RenderbufferStorageEXT)
-
-       .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   %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    6280(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6280(%rax), %r11
-       jmp     *%r11
-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    6280(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_785), .-GL_PREFIX(_dispatch_stub_785)
-
-       .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
-       pushq   %rsi
-       pushq   %rdx
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdx
-       popq    %rsi
-       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
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       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
-       pushq   %rsi
-       pushq   %rdx
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdx
-       popq    %rsi
-       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
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       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(FramebufferTextureLayerEXT)
-       .type   GL_PREFIX(FramebufferTextureLayerEXT), @function
-GL_PREFIX(FramebufferTextureLayerEXT):
-#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   %rdx
-       pushq   %rcx
-       pushq   %r8
-       call    _x86_64_get_dispatch@PLT
-       popq    %r8
-       popq    %rcx
-       popq    %rdx
-       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   %rdx
-       pushq   %rcx
-       pushq   %r8
-       call    _glapi_get_dispatch
-       popq    %r8
-       popq    %rcx
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    6304(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(FramebufferTextureLayerEXT), .-GL_PREFIX(FramebufferTextureLayerEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ColorMaskIndexedEXT)
-       .type   GL_PREFIX(ColorMaskIndexedEXT), @function
-GL_PREFIX(ColorMaskIndexedEXT):
-#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   %rdx
-       pushq   %rcx
-       pushq   %r8
-       call    _x86_64_get_dispatch@PLT
-       popq    %r8
-       popq    %rcx
-       popq    %rdx
-       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   %rdx
-       pushq   %rcx
-       pushq   %r8
-       call    _glapi_get_dispatch
-       popq    %r8
-       popq    %rcx
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    6312(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ColorMaskIndexedEXT), .-GL_PREFIX(ColorMaskIndexedEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(DisableIndexedEXT)
-       .type   GL_PREFIX(DisableIndexedEXT), @function
-GL_PREFIX(DisableIndexedEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6320(%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    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
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    6320(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(DisableIndexedEXT), .-GL_PREFIX(DisableIndexedEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EnableIndexedEXT)
-       .type   GL_PREFIX(EnableIndexedEXT), @function
-GL_PREFIX(EnableIndexedEXT):
-#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   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       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   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    6328(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EnableIndexedEXT), .-GL_PREFIX(EnableIndexedEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetBooleanIndexedvEXT)
-       .type   GL_PREFIX(GetBooleanIndexedvEXT), @function
-GL_PREFIX(GetBooleanIndexedvEXT):
-#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
-       call    _x86_64_get_dispatch@PLT
-       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
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    6336(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetBooleanIndexedvEXT), .-GL_PREFIX(GetBooleanIndexedvEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetIntegerIndexedvEXT)
-       .type   GL_PREFIX(GetIntegerIndexedvEXT), @function
-GL_PREFIX(GetIntegerIndexedvEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6344(%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    6344(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6344(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    6344(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetIntegerIndexedvEXT), .-GL_PREFIX(GetIntegerIndexedvEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(IsEnabledIndexedEXT)
-       .type   GL_PREFIX(IsEnabledIndexedEXT), @function
-GL_PREFIX(IsEnabledIndexedEXT):
-#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   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       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   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    6352(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(IsEnabledIndexedEXT), .-GL_PREFIX(IsEnabledIndexedEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BeginConditionalRenderNV)
-       .type   GL_PREFIX(BeginConditionalRenderNV), @function
-GL_PREFIX(BeginConditionalRenderNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6360(%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    6360(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6360(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    6360(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BeginConditionalRenderNV), .-GL_PREFIX(BeginConditionalRenderNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EndConditionalRenderNV)
-       .type   GL_PREFIX(EndConditionalRenderNV), @function
-GL_PREFIX(EndConditionalRenderNV):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6368(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       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   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    6368(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EndConditionalRenderNV), .-GL_PREFIX(EndConditionalRenderNV)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BeginTransformFeedbackEXT)
-       .type   GL_PREFIX(BeginTransformFeedbackEXT), @function
-GL_PREFIX(BeginTransformFeedbackEXT):
-#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(BeginTransformFeedbackEXT), .-GL_PREFIX(BeginTransformFeedbackEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BindBufferBaseEXT)
-       .type   GL_PREFIX(BindBufferBaseEXT), @function
-GL_PREFIX(BindBufferBaseEXT):
-#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   %rdx
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdx
-       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   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    6384(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BindBufferBaseEXT), .-GL_PREFIX(BindBufferBaseEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BindBufferOffsetEXT)
-       .type   GL_PREFIX(BindBufferOffsetEXT), @function
-GL_PREFIX(BindBufferOffsetEXT):
-#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   %rdx
-       pushq   %rcx
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       popq    %rcx
-       popq    %rdx
-       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   %rdx
-       pushq   %rcx
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rcx
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    6392(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BindBufferOffsetEXT), .-GL_PREFIX(BindBufferOffsetEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(BindBufferRangeEXT)
-       .type   GL_PREFIX(BindBufferRangeEXT), @function
-GL_PREFIX(BindBufferRangeEXT):
-#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   %rdx
-       pushq   %rcx
-       pushq   %r8
-       call    _x86_64_get_dispatch@PLT
-       popq    %r8
-       popq    %rcx
-       popq    %rdx
-       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   %rdx
-       pushq   %rcx
-       pushq   %r8
-       call    _glapi_get_dispatch
-       popq    %r8
-       popq    %rcx
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    6400(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(BindBufferRangeEXT), .-GL_PREFIX(BindBufferRangeEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EndTransformFeedbackEXT)
-       .type   GL_PREFIX(EndTransformFeedbackEXT), @function
-GL_PREFIX(EndTransformFeedbackEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6408(%rax), %r11
-       jmp     *%r11
-#elif defined(PTHREADS)
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       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   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       movq    6408(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EndTransformFeedbackEXT), .-GL_PREFIX(EndTransformFeedbackEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(GetTransformFeedbackVaryingEXT)
-       .type   GL_PREFIX(GetTransformFeedbackVaryingEXT), @function
-GL_PREFIX(GetTransformFeedbackVaryingEXT):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6416(%rax), %r11
-       jmp     *%r11
-#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    6416(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6416(%rax), %r11
-       jmp     *%r11
-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    6416(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetTransformFeedbackVaryingEXT), .-GL_PREFIX(GetTransformFeedbackVaryingEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(TransformFeedbackVaryingsEXT)
-       .type   GL_PREFIX(TransformFeedbackVaryingsEXT), @function
-GL_PREFIX(TransformFeedbackVaryingsEXT):
-#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   %rdx
-       pushq   %rcx
-       pushq   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       popq    %rcx
-       popq    %rdx
-       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   %rdx
-       pushq   %rcx
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rcx
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    6424(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(TransformFeedbackVaryingsEXT), .-GL_PREFIX(TransformFeedbackVaryingsEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ProvokingVertexEXT)
-       .type   GL_PREFIX(ProvokingVertexEXT), @function
-GL_PREFIX(ProvokingVertexEXT):
-#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(ProvokingVertexEXT), .-GL_PREFIX(ProvokingVertexEXT)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_805)
-       .type   GL_PREFIX(_dispatch_stub_805), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_805))
-GL_PREFIX(_dispatch_stub_805):
-#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
-       call    _x86_64_get_dispatch@PLT
-       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
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    6440(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_805), .-GL_PREFIX(_dispatch_stub_805)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_806)
-       .type   GL_PREFIX(_dispatch_stub_806), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_806))
-GL_PREFIX(_dispatch_stub_806):
-#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
-       call    _x86_64_get_dispatch@PLT
-       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
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    6448(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_806), .-GL_PREFIX(_dispatch_stub_806)
-
-       .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    6456(%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    6456(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6456(%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    6456(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(GetObjectParameterivAPPLE), .-GL_PREFIX(GetObjectParameterivAPPLE)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ObjectPurgeableAPPLE)
-       .type   GL_PREFIX(ObjectPurgeableAPPLE), @function
-GL_PREFIX(ObjectPurgeableAPPLE):
-#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
-       call    _x86_64_get_dispatch@PLT
-       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
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    6464(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ObjectPurgeableAPPLE), .-GL_PREFIX(ObjectPurgeableAPPLE)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(ObjectUnpurgeableAPPLE)
-       .type   GL_PREFIX(ObjectUnpurgeableAPPLE), @function
-GL_PREFIX(ObjectUnpurgeableAPPLE):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6472(%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    6472(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6472(%rax), %r11
-       jmp     *%r11
-1:
-       pushq   %rdi
-       pushq   %rsi
-       pushq   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    6472(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(ObjectUnpurgeableAPPLE), .-GL_PREFIX(ObjectUnpurgeableAPPLE)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_810)
-       .type   GL_PREFIX(_dispatch_stub_810), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_810))
-GL_PREFIX(_dispatch_stub_810):
-#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(_dispatch_stub_810), .-GL_PREFIX(_dispatch_stub_810)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_811)
-       .type   GL_PREFIX(_dispatch_stub_811), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_811))
-GL_PREFIX(_dispatch_stub_811):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6488(%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    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
-       pushq   %rsi
-       pushq   %rdx
-       pushq   %rcx
-       pushq   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rcx
-       popq    %rdx
-       popq    %rsi
-       popq    %rdi
-       movq    6488(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_811), .-GL_PREFIX(_dispatch_stub_811)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(_dispatch_stub_812)
-       .type   GL_PREFIX(_dispatch_stub_812), @function
-       HIDDEN(GL_PREFIX(_dispatch_stub_812))
-GL_PREFIX(_dispatch_stub_812):
-#if defined(GLX_USE_TLS)
-       call    _x86_64_get_dispatch@PLT
-       movq    6496(%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    6496(%rax), %r11
-       jmp     *%r11
-#else
-       movq    _glapi_Dispatch(%rip), %rax
-       testq   %rax, %rax
-       je      1f
-       movq    6496(%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    6496(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(_dispatch_stub_812), .-GL_PREFIX(_dispatch_stub_812)
-
-       .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   %rdx
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdx
-       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   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       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   %rdx
-       call    _x86_64_get_dispatch@PLT
-       popq    %rdx
-       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   %rdx
-       call    _glapi_get_dispatch
-       popq    %rdx
-       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(EGLImageTargetRenderbufferStorageOES)
-       .type   GL_PREFIX(EGLImageTargetRenderbufferStorageOES), @function
-GL_PREFIX(EGLImageTargetRenderbufferStorageOES):
-#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(EGLImageTargetRenderbufferStorageOES), .-GL_PREFIX(EGLImageTargetRenderbufferStorageOES)
-
-       .p2align        4,,15
-       .globl  GL_PREFIX(EGLImageTargetTexture2DOES)
-       .type   GL_PREFIX(EGLImageTargetTexture2DOES), @function
-GL_PREFIX(EGLImageTargetTexture2DOES):
-#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   %rbp
-       call    _x86_64_get_dispatch@PLT
-       popq    %rbp
-       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   %rbp
-       call    _glapi_get_dispatch
-       popq    %rbp
-       popq    %rsi
-       popq    %rdi
-       movq    6528(%rax), %r11
-       jmp     *%r11
-#endif /* defined(GLX_USE_TLS) */
-       .size   GL_PREFIX(EGLImageTargetTexture2DOES), .-GL_PREFIX(EGLImageTargetTexture2DOES)
-
-       .globl GL_PREFIX(ArrayElementEXT) ; .set GL_PREFIX(ArrayElementEXT), GL_PREFIX(ArrayElement)
-       .globl GL_PREFIX(BindTextureEXT) ; .set GL_PREFIX(BindTextureEXT), GL_PREFIX(BindTexture)
-       .globl GL_PREFIX(DrawArraysEXT) ; .set GL_PREFIX(DrawArraysEXT), GL_PREFIX(DrawArrays)
-#ifndef GLX_INDIRECT_RENDERING
-       .globl GL_PREFIX(AreTexturesResidentEXT) ; .set GL_PREFIX(AreTexturesResidentEXT), GL_PREFIX(AreTexturesResident)
-#endif
-       .globl GL_PREFIX(CopyTexImage1DEXT) ; .set GL_PREFIX(CopyTexImage1DEXT), GL_PREFIX(CopyTexImage1D)
-       .globl GL_PREFIX(CopyTexImage2DEXT) ; .set GL_PREFIX(CopyTexImage2DEXT), GL_PREFIX(CopyTexImage2D)
-       .globl GL_PREFIX(CopyTexSubImage1DEXT) ; .set GL_PREFIX(CopyTexSubImage1DEXT), GL_PREFIX(CopyTexSubImage1D)
-       .globl GL_PREFIX(CopyTexSubImage2DEXT) ; .set GL_PREFIX(CopyTexSubImage2DEXT), GL_PREFIX(CopyTexSubImage2D)
-#ifndef GLX_INDIRECT_RENDERING
-       .globl GL_PREFIX(DeleteTexturesEXT) ; .set GL_PREFIX(DeleteTexturesEXT), GL_PREFIX(DeleteTextures)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       .globl GL_PREFIX(GenTexturesEXT) ; .set GL_PREFIX(GenTexturesEXT), GL_PREFIX(GenTextures)
-#endif
-       .globl GL_PREFIX(GetPointervEXT) ; .set GL_PREFIX(GetPointervEXT), GL_PREFIX(GetPointerv)
-#ifndef GLX_INDIRECT_RENDERING
-       .globl GL_PREFIX(IsTextureEXT) ; .set GL_PREFIX(IsTextureEXT), GL_PREFIX(IsTexture)
-#endif
-       .globl GL_PREFIX(PrioritizeTexturesEXT) ; .set GL_PREFIX(PrioritizeTexturesEXT), GL_PREFIX(PrioritizeTextures)
-       .globl GL_PREFIX(TexSubImage1DEXT) ; .set GL_PREFIX(TexSubImage1DEXT), GL_PREFIX(TexSubImage1D)
-       .globl GL_PREFIX(TexSubImage2DEXT) ; .set GL_PREFIX(TexSubImage2DEXT), GL_PREFIX(TexSubImage2D)
-       .globl GL_PREFIX(BlendColorEXT) ; .set GL_PREFIX(BlendColorEXT), GL_PREFIX(BlendColor)
-       .globl GL_PREFIX(BlendEquationEXT) ; .set GL_PREFIX(BlendEquationEXT), GL_PREFIX(BlendEquation)
-       .globl GL_PREFIX(DrawRangeElementsEXT) ; .set GL_PREFIX(DrawRangeElementsEXT), GL_PREFIX(DrawRangeElements)
-       .globl GL_PREFIX(ColorTableEXT) ; .set GL_PREFIX(ColorTableEXT), GL_PREFIX(ColorTable)
-#ifndef GLX_INDIRECT_RENDERING
-       .globl GL_PREFIX(GetColorTableEXT) ; .set GL_PREFIX(GetColorTableEXT), GL_PREFIX(GetColorTable)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       .globl GL_PREFIX(GetColorTableParameterfvEXT) ; .set GL_PREFIX(GetColorTableParameterfvEXT), GL_PREFIX(GetColorTableParameterfv)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       .globl GL_PREFIX(GetColorTableParameterivEXT) ; .set GL_PREFIX(GetColorTableParameterivEXT), GL_PREFIX(GetColorTableParameteriv)
-#endif
-       .globl GL_PREFIX(TexImage3DEXT) ; .set GL_PREFIX(TexImage3DEXT), GL_PREFIX(TexImage3D)
-       .globl GL_PREFIX(TexSubImage3DEXT) ; .set GL_PREFIX(TexSubImage3DEXT), GL_PREFIX(TexSubImage3D)
-       .globl GL_PREFIX(CopyTexSubImage3DEXT) ; .set GL_PREFIX(CopyTexSubImage3DEXT), GL_PREFIX(CopyTexSubImage3D)
-       .globl GL_PREFIX(ActiveTexture) ; .set GL_PREFIX(ActiveTexture), GL_PREFIX(ActiveTextureARB)
-       .globl GL_PREFIX(ClientActiveTexture) ; .set GL_PREFIX(ClientActiveTexture), GL_PREFIX(ClientActiveTextureARB)
-       .globl GL_PREFIX(MultiTexCoord1d) ; .set GL_PREFIX(MultiTexCoord1d), GL_PREFIX(MultiTexCoord1dARB)
-       .globl GL_PREFIX(MultiTexCoord1dv) ; .set GL_PREFIX(MultiTexCoord1dv), GL_PREFIX(MultiTexCoord1dvARB)
-       .globl GL_PREFIX(MultiTexCoord1f) ; .set GL_PREFIX(MultiTexCoord1f), GL_PREFIX(MultiTexCoord1fARB)
-       .globl GL_PREFIX(MultiTexCoord1fv) ; .set GL_PREFIX(MultiTexCoord1fv), GL_PREFIX(MultiTexCoord1fvARB)
-       .globl GL_PREFIX(MultiTexCoord1i) ; .set GL_PREFIX(MultiTexCoord1i), GL_PREFIX(MultiTexCoord1iARB)
-       .globl GL_PREFIX(MultiTexCoord1iv) ; .set GL_PREFIX(MultiTexCoord1iv), GL_PREFIX(MultiTexCoord1ivARB)
-       .globl GL_PREFIX(MultiTexCoord1s) ; .set GL_PREFIX(MultiTexCoord1s), GL_PREFIX(MultiTexCoord1sARB)
-       .globl GL_PREFIX(MultiTexCoord1sv) ; .set GL_PREFIX(MultiTexCoord1sv), GL_PREFIX(MultiTexCoord1svARB)
-       .globl GL_PREFIX(MultiTexCoord2d) ; .set GL_PREFIX(MultiTexCoord2d), GL_PREFIX(MultiTexCoord2dARB)
-       .globl GL_PREFIX(MultiTexCoord2dv) ; .set GL_PREFIX(MultiTexCoord2dv), GL_PREFIX(MultiTexCoord2dvARB)
-       .globl GL_PREFIX(MultiTexCoord2f) ; .set GL_PREFIX(MultiTexCoord2f), GL_PREFIX(MultiTexCoord2fARB)
-       .globl GL_PREFIX(MultiTexCoord2fv) ; .set GL_PREFIX(MultiTexCoord2fv), GL_PREFIX(MultiTexCoord2fvARB)
-       .globl GL_PREFIX(MultiTexCoord2i) ; .set GL_PREFIX(MultiTexCoord2i), GL_PREFIX(MultiTexCoord2iARB)
-       .globl GL_PREFIX(MultiTexCoord2iv) ; .set GL_PREFIX(MultiTexCoord2iv), GL_PREFIX(MultiTexCoord2ivARB)
-       .globl GL_PREFIX(MultiTexCoord2s) ; .set GL_PREFIX(MultiTexCoord2s), GL_PREFIX(MultiTexCoord2sARB)
-       .globl GL_PREFIX(MultiTexCoord2sv) ; .set GL_PREFIX(MultiTexCoord2sv), GL_PREFIX(MultiTexCoord2svARB)
-       .globl GL_PREFIX(MultiTexCoord3d) ; .set GL_PREFIX(MultiTexCoord3d), GL_PREFIX(MultiTexCoord3dARB)
-       .globl GL_PREFIX(MultiTexCoord3dv) ; .set GL_PREFIX(MultiTexCoord3dv), GL_PREFIX(MultiTexCoord3dvARB)
-       .globl GL_PREFIX(MultiTexCoord3f) ; .set GL_PREFIX(MultiTexCoord3f), GL_PREFIX(MultiTexCoord3fARB)
-       .globl GL_PREFIX(MultiTexCoord3fv) ; .set GL_PREFIX(MultiTexCoord3fv), GL_PREFIX(MultiTexCoord3fvARB)
-       .globl GL_PREFIX(MultiTexCoord3i) ; .set GL_PREFIX(MultiTexCoord3i), GL_PREFIX(MultiTexCoord3iARB)
-       .globl GL_PREFIX(MultiTexCoord3iv) ; .set GL_PREFIX(MultiTexCoord3iv), GL_PREFIX(MultiTexCoord3ivARB)
-       .globl GL_PREFIX(MultiTexCoord3s) ; .set GL_PREFIX(MultiTexCoord3s), GL_PREFIX(MultiTexCoord3sARB)
-       .globl GL_PREFIX(MultiTexCoord3sv) ; .set GL_PREFIX(MultiTexCoord3sv), GL_PREFIX(MultiTexCoord3svARB)
-       .globl GL_PREFIX(MultiTexCoord4d) ; .set GL_PREFIX(MultiTexCoord4d), GL_PREFIX(MultiTexCoord4dARB)
-       .globl GL_PREFIX(MultiTexCoord4dv) ; .set GL_PREFIX(MultiTexCoord4dv), GL_PREFIX(MultiTexCoord4dvARB)
-       .globl GL_PREFIX(MultiTexCoord4f) ; .set GL_PREFIX(MultiTexCoord4f), GL_PREFIX(MultiTexCoord4fARB)
-       .globl GL_PREFIX(MultiTexCoord4fv) ; .set GL_PREFIX(MultiTexCoord4fv), GL_PREFIX(MultiTexCoord4fvARB)
-       .globl GL_PREFIX(MultiTexCoord4i) ; .set GL_PREFIX(MultiTexCoord4i), GL_PREFIX(MultiTexCoord4iARB)
-       .globl GL_PREFIX(MultiTexCoord4iv) ; .set GL_PREFIX(MultiTexCoord4iv), GL_PREFIX(MultiTexCoord4ivARB)
-       .globl GL_PREFIX(MultiTexCoord4s) ; .set GL_PREFIX(MultiTexCoord4s), GL_PREFIX(MultiTexCoord4sARB)
-       .globl GL_PREFIX(MultiTexCoord4sv) ; .set GL_PREFIX(MultiTexCoord4sv), GL_PREFIX(MultiTexCoord4svARB)
-       .globl GL_PREFIX(DrawArraysInstancedARB) ; .set GL_PREFIX(DrawArraysInstancedARB), GL_PREFIX(DrawArraysInstanced)
-       .globl GL_PREFIX(DrawArraysInstancedEXT) ; .set GL_PREFIX(DrawArraysInstancedEXT), GL_PREFIX(DrawArraysInstanced)
-       .globl GL_PREFIX(DrawElementsInstancedARB) ; .set GL_PREFIX(DrawElementsInstancedARB), GL_PREFIX(DrawElementsInstanced)
-       .globl GL_PREFIX(DrawElementsInstancedEXT) ; .set GL_PREFIX(DrawElementsInstancedEXT), GL_PREFIX(DrawElementsInstanced)
-       .globl GL_PREFIX(LoadTransposeMatrixd) ; .set GL_PREFIX(LoadTransposeMatrixd), GL_PREFIX(LoadTransposeMatrixdARB)
-       .globl GL_PREFIX(LoadTransposeMatrixf) ; .set GL_PREFIX(LoadTransposeMatrixf), GL_PREFIX(LoadTransposeMatrixfARB)
-       .globl GL_PREFIX(MultTransposeMatrixd) ; .set GL_PREFIX(MultTransposeMatrixd), GL_PREFIX(MultTransposeMatrixdARB)
-       .globl GL_PREFIX(MultTransposeMatrixf) ; .set GL_PREFIX(MultTransposeMatrixf), GL_PREFIX(MultTransposeMatrixfARB)
-       .globl GL_PREFIX(SampleCoverage) ; .set GL_PREFIX(SampleCoverage), GL_PREFIX(SampleCoverageARB)
-       .globl GL_PREFIX(CompressedTexImage1D) ; .set GL_PREFIX(CompressedTexImage1D), GL_PREFIX(CompressedTexImage1DARB)
-       .globl GL_PREFIX(CompressedTexImage2D) ; .set GL_PREFIX(CompressedTexImage2D), GL_PREFIX(CompressedTexImage2DARB)
-       .globl GL_PREFIX(CompressedTexImage3D) ; .set GL_PREFIX(CompressedTexImage3D), GL_PREFIX(CompressedTexImage3DARB)
-       .globl GL_PREFIX(CompressedTexSubImage1D) ; .set GL_PREFIX(CompressedTexSubImage1D), GL_PREFIX(CompressedTexSubImage1DARB)
-       .globl GL_PREFIX(CompressedTexSubImage2D) ; .set GL_PREFIX(CompressedTexSubImage2D), GL_PREFIX(CompressedTexSubImage2DARB)
-       .globl GL_PREFIX(CompressedTexSubImage3D) ; .set GL_PREFIX(CompressedTexSubImage3D), GL_PREFIX(CompressedTexSubImage3DARB)
-       .globl GL_PREFIX(GetCompressedTexImage) ; .set GL_PREFIX(GetCompressedTexImage), GL_PREFIX(GetCompressedTexImageARB)
-       .globl GL_PREFIX(DisableVertexAttribArray) ; .set GL_PREFIX(DisableVertexAttribArray), GL_PREFIX(DisableVertexAttribArrayARB)
-       .globl GL_PREFIX(EnableVertexAttribArray) ; .set GL_PREFIX(EnableVertexAttribArray), GL_PREFIX(EnableVertexAttribArrayARB)
-       .globl GL_PREFIX(GetVertexAttribdv) ; .set GL_PREFIX(GetVertexAttribdv), GL_PREFIX(GetVertexAttribdvARB)
-       .globl GL_PREFIX(GetVertexAttribfv) ; .set GL_PREFIX(GetVertexAttribfv), GL_PREFIX(GetVertexAttribfvARB)
-       .globl GL_PREFIX(GetVertexAttribiv) ; .set GL_PREFIX(GetVertexAttribiv), GL_PREFIX(GetVertexAttribivARB)
-       .globl GL_PREFIX(ProgramParameter4dNV) ; .set GL_PREFIX(ProgramParameter4dNV), GL_PREFIX(ProgramEnvParameter4dARB)
-       .globl GL_PREFIX(ProgramParameter4dvNV) ; .set GL_PREFIX(ProgramParameter4dvNV), GL_PREFIX(ProgramEnvParameter4dvARB)
-       .globl GL_PREFIX(ProgramParameter4fNV) ; .set GL_PREFIX(ProgramParameter4fNV), GL_PREFIX(ProgramEnvParameter4fARB)
-       .globl GL_PREFIX(ProgramParameter4fvNV) ; .set GL_PREFIX(ProgramParameter4fvNV), GL_PREFIX(ProgramEnvParameter4fvARB)
-       .globl GL_PREFIX(VertexAttrib1d) ; .set GL_PREFIX(VertexAttrib1d), GL_PREFIX(VertexAttrib1dARB)
-       .globl GL_PREFIX(VertexAttrib1dv) ; .set GL_PREFIX(VertexAttrib1dv), GL_PREFIX(VertexAttrib1dvARB)
-       .globl GL_PREFIX(VertexAttrib1f) ; .set GL_PREFIX(VertexAttrib1f), GL_PREFIX(VertexAttrib1fARB)
-       .globl GL_PREFIX(VertexAttrib1fv) ; .set GL_PREFIX(VertexAttrib1fv), GL_PREFIX(VertexAttrib1fvARB)
-       .globl GL_PREFIX(VertexAttrib1s) ; .set GL_PREFIX(VertexAttrib1s), GL_PREFIX(VertexAttrib1sARB)
-       .globl GL_PREFIX(VertexAttrib1sv) ; .set GL_PREFIX(VertexAttrib1sv), GL_PREFIX(VertexAttrib1svARB)
-       .globl GL_PREFIX(VertexAttrib2d) ; .set GL_PREFIX(VertexAttrib2d), GL_PREFIX(VertexAttrib2dARB)
-       .globl GL_PREFIX(VertexAttrib2dv) ; .set GL_PREFIX(VertexAttrib2dv), GL_PREFIX(VertexAttrib2dvARB)
-       .globl GL_PREFIX(VertexAttrib2f) ; .set GL_PREFIX(VertexAttrib2f), GL_PREFIX(VertexAttrib2fARB)
-       .globl GL_PREFIX(VertexAttrib2fv) ; .set GL_PREFIX(VertexAttrib2fv), GL_PREFIX(VertexAttrib2fvARB)
-       .globl GL_PREFIX(VertexAttrib2s) ; .set GL_PREFIX(VertexAttrib2s), GL_PREFIX(VertexAttrib2sARB)
-       .globl GL_PREFIX(VertexAttrib2sv) ; .set GL_PREFIX(VertexAttrib2sv), GL_PREFIX(VertexAttrib2svARB)
-       .globl GL_PREFIX(VertexAttrib3d) ; .set GL_PREFIX(VertexAttrib3d), GL_PREFIX(VertexAttrib3dARB)
-       .globl GL_PREFIX(VertexAttrib3dv) ; .set GL_PREFIX(VertexAttrib3dv), GL_PREFIX(VertexAttrib3dvARB)
-       .globl GL_PREFIX(VertexAttrib3f) ; .set GL_PREFIX(VertexAttrib3f), GL_PREFIX(VertexAttrib3fARB)
-       .globl GL_PREFIX(VertexAttrib3fv) ; .set GL_PREFIX(VertexAttrib3fv), GL_PREFIX(VertexAttrib3fvARB)
-       .globl GL_PREFIX(VertexAttrib3s) ; .set GL_PREFIX(VertexAttrib3s), GL_PREFIX(VertexAttrib3sARB)
-       .globl GL_PREFIX(VertexAttrib3sv) ; .set GL_PREFIX(VertexAttrib3sv), GL_PREFIX(VertexAttrib3svARB)
-       .globl GL_PREFIX(VertexAttrib4Nbv) ; .set GL_PREFIX(VertexAttrib4Nbv), GL_PREFIX(VertexAttrib4NbvARB)
-       .globl GL_PREFIX(VertexAttrib4Niv) ; .set GL_PREFIX(VertexAttrib4Niv), GL_PREFIX(VertexAttrib4NivARB)
-       .globl GL_PREFIX(VertexAttrib4Nsv) ; .set GL_PREFIX(VertexAttrib4Nsv), GL_PREFIX(VertexAttrib4NsvARB)
-       .globl GL_PREFIX(VertexAttrib4Nub) ; .set GL_PREFIX(VertexAttrib4Nub), GL_PREFIX(VertexAttrib4NubARB)
-       .globl GL_PREFIX(VertexAttrib4Nubv) ; .set GL_PREFIX(VertexAttrib4Nubv), GL_PREFIX(VertexAttrib4NubvARB)
-       .globl GL_PREFIX(VertexAttrib4Nuiv) ; .set GL_PREFIX(VertexAttrib4Nuiv), GL_PREFIX(VertexAttrib4NuivARB)
-       .globl GL_PREFIX(VertexAttrib4Nusv) ; .set GL_PREFIX(VertexAttrib4Nusv), GL_PREFIX(VertexAttrib4NusvARB)
-       .globl GL_PREFIX(VertexAttrib4bv) ; .set GL_PREFIX(VertexAttrib4bv), GL_PREFIX(VertexAttrib4bvARB)
-       .globl GL_PREFIX(VertexAttrib4d) ; .set GL_PREFIX(VertexAttrib4d), GL_PREFIX(VertexAttrib4dARB)
-       .globl GL_PREFIX(VertexAttrib4dv) ; .set GL_PREFIX(VertexAttrib4dv), GL_PREFIX(VertexAttrib4dvARB)
-       .globl GL_PREFIX(VertexAttrib4f) ; .set GL_PREFIX(VertexAttrib4f), GL_PREFIX(VertexAttrib4fARB)
-       .globl GL_PREFIX(VertexAttrib4fv) ; .set GL_PREFIX(VertexAttrib4fv), GL_PREFIX(VertexAttrib4fvARB)
-       .globl GL_PREFIX(VertexAttrib4iv) ; .set GL_PREFIX(VertexAttrib4iv), GL_PREFIX(VertexAttrib4ivARB)
-       .globl GL_PREFIX(VertexAttrib4s) ; .set GL_PREFIX(VertexAttrib4s), GL_PREFIX(VertexAttrib4sARB)
-       .globl GL_PREFIX(VertexAttrib4sv) ; .set GL_PREFIX(VertexAttrib4sv), GL_PREFIX(VertexAttrib4svARB)
-       .globl GL_PREFIX(VertexAttrib4ubv) ; .set GL_PREFIX(VertexAttrib4ubv), GL_PREFIX(VertexAttrib4ubvARB)
-       .globl GL_PREFIX(VertexAttrib4uiv) ; .set GL_PREFIX(VertexAttrib4uiv), GL_PREFIX(VertexAttrib4uivARB)
-       .globl GL_PREFIX(VertexAttrib4usv) ; .set GL_PREFIX(VertexAttrib4usv), GL_PREFIX(VertexAttrib4usvARB)
-       .globl GL_PREFIX(VertexAttribPointer) ; .set GL_PREFIX(VertexAttribPointer), GL_PREFIX(VertexAttribPointerARB)
-       .globl GL_PREFIX(BindBuffer) ; .set GL_PREFIX(BindBuffer), GL_PREFIX(BindBufferARB)
-       .globl GL_PREFIX(BufferData) ; .set GL_PREFIX(BufferData), GL_PREFIX(BufferDataARB)
-       .globl GL_PREFIX(BufferSubData) ; .set GL_PREFIX(BufferSubData), GL_PREFIX(BufferSubDataARB)
-       .globl GL_PREFIX(DeleteBuffers) ; .set GL_PREFIX(DeleteBuffers), GL_PREFIX(DeleteBuffersARB)
-       .globl GL_PREFIX(GenBuffers) ; .set GL_PREFIX(GenBuffers), GL_PREFIX(GenBuffersARB)
-       .globl GL_PREFIX(GetBufferParameteriv) ; .set GL_PREFIX(GetBufferParameteriv), GL_PREFIX(GetBufferParameterivARB)
-       .globl GL_PREFIX(GetBufferPointerv) ; .set GL_PREFIX(GetBufferPointerv), GL_PREFIX(GetBufferPointervARB)
-       .globl GL_PREFIX(GetBufferSubData) ; .set GL_PREFIX(GetBufferSubData), GL_PREFIX(GetBufferSubDataARB)
-       .globl GL_PREFIX(IsBuffer) ; .set GL_PREFIX(IsBuffer), GL_PREFIX(IsBufferARB)
-       .globl GL_PREFIX(MapBuffer) ; .set GL_PREFIX(MapBuffer), GL_PREFIX(MapBufferARB)
-       .globl GL_PREFIX(UnmapBuffer) ; .set GL_PREFIX(UnmapBuffer), GL_PREFIX(UnmapBufferARB)
-       .globl GL_PREFIX(BeginQuery) ; .set GL_PREFIX(BeginQuery), GL_PREFIX(BeginQueryARB)
-       .globl GL_PREFIX(DeleteQueries) ; .set GL_PREFIX(DeleteQueries), GL_PREFIX(DeleteQueriesARB)
-       .globl GL_PREFIX(EndQuery) ; .set GL_PREFIX(EndQuery), GL_PREFIX(EndQueryARB)
-       .globl GL_PREFIX(GenQueries) ; .set GL_PREFIX(GenQueries), GL_PREFIX(GenQueriesARB)
-       .globl GL_PREFIX(GetQueryObjectiv) ; .set GL_PREFIX(GetQueryObjectiv), GL_PREFIX(GetQueryObjectivARB)
-       .globl GL_PREFIX(GetQueryObjectuiv) ; .set GL_PREFIX(GetQueryObjectuiv), GL_PREFIX(GetQueryObjectuivARB)
-       .globl GL_PREFIX(GetQueryiv) ; .set GL_PREFIX(GetQueryiv), GL_PREFIX(GetQueryivARB)
-       .globl GL_PREFIX(IsQuery) ; .set GL_PREFIX(IsQuery), GL_PREFIX(IsQueryARB)
-       .globl GL_PREFIX(CompileShader) ; .set GL_PREFIX(CompileShader), GL_PREFIX(CompileShaderARB)
-       .globl GL_PREFIX(GetActiveUniform) ; .set GL_PREFIX(GetActiveUniform), GL_PREFIX(GetActiveUniformARB)
-       .globl GL_PREFIX(GetShaderSource) ; .set GL_PREFIX(GetShaderSource), GL_PREFIX(GetShaderSourceARB)
-       .globl GL_PREFIX(GetUniformLocation) ; .set GL_PREFIX(GetUniformLocation), GL_PREFIX(GetUniformLocationARB)
-       .globl GL_PREFIX(GetUniformfv) ; .set GL_PREFIX(GetUniformfv), GL_PREFIX(GetUniformfvARB)
-       .globl GL_PREFIX(GetUniformiv) ; .set GL_PREFIX(GetUniformiv), GL_PREFIX(GetUniformivARB)
-       .globl GL_PREFIX(LinkProgram) ; .set GL_PREFIX(LinkProgram), GL_PREFIX(LinkProgramARB)
-       .globl GL_PREFIX(ShaderSource) ; .set GL_PREFIX(ShaderSource), GL_PREFIX(ShaderSourceARB)
-       .globl GL_PREFIX(Uniform1f) ; .set GL_PREFIX(Uniform1f), GL_PREFIX(Uniform1fARB)
-       .globl GL_PREFIX(Uniform1fv) ; .set GL_PREFIX(Uniform1fv), GL_PREFIX(Uniform1fvARB)
-       .globl GL_PREFIX(Uniform1i) ; .set GL_PREFIX(Uniform1i), GL_PREFIX(Uniform1iARB)
-       .globl GL_PREFIX(Uniform1iv) ; .set GL_PREFIX(Uniform1iv), GL_PREFIX(Uniform1ivARB)
-       .globl GL_PREFIX(Uniform2f) ; .set GL_PREFIX(Uniform2f), GL_PREFIX(Uniform2fARB)
-       .globl GL_PREFIX(Uniform2fv) ; .set GL_PREFIX(Uniform2fv), GL_PREFIX(Uniform2fvARB)
-       .globl GL_PREFIX(Uniform2i) ; .set GL_PREFIX(Uniform2i), GL_PREFIX(Uniform2iARB)
-       .globl GL_PREFIX(Uniform2iv) ; .set GL_PREFIX(Uniform2iv), GL_PREFIX(Uniform2ivARB)
-       .globl GL_PREFIX(Uniform3f) ; .set GL_PREFIX(Uniform3f), GL_PREFIX(Uniform3fARB)
-       .globl GL_PREFIX(Uniform3fv) ; .set GL_PREFIX(Uniform3fv), GL_PREFIX(Uniform3fvARB)
-       .globl GL_PREFIX(Uniform3i) ; .set GL_PREFIX(Uniform3i), GL_PREFIX(Uniform3iARB)
-       .globl GL_PREFIX(Uniform3iv) ; .set GL_PREFIX(Uniform3iv), GL_PREFIX(Uniform3ivARB)
-       .globl GL_PREFIX(Uniform4f) ; .set GL_PREFIX(Uniform4f), GL_PREFIX(Uniform4fARB)
-       .globl GL_PREFIX(Uniform4fv) ; .set GL_PREFIX(Uniform4fv), GL_PREFIX(Uniform4fvARB)
-       .globl GL_PREFIX(Uniform4i) ; .set GL_PREFIX(Uniform4i), GL_PREFIX(Uniform4iARB)
-       .globl GL_PREFIX(Uniform4iv) ; .set GL_PREFIX(Uniform4iv), GL_PREFIX(Uniform4ivARB)
-       .globl GL_PREFIX(UniformMatrix2fv) ; .set GL_PREFIX(UniformMatrix2fv), GL_PREFIX(UniformMatrix2fvARB)
-       .globl GL_PREFIX(UniformMatrix3fv) ; .set GL_PREFIX(UniformMatrix3fv), GL_PREFIX(UniformMatrix3fvARB)
-       .globl GL_PREFIX(UniformMatrix4fv) ; .set GL_PREFIX(UniformMatrix4fv), GL_PREFIX(UniformMatrix4fvARB)
-       .globl GL_PREFIX(UseProgram) ; .set GL_PREFIX(UseProgram), GL_PREFIX(UseProgramObjectARB)
-       .globl GL_PREFIX(ValidateProgram) ; .set GL_PREFIX(ValidateProgram), GL_PREFIX(ValidateProgramARB)
-       .globl GL_PREFIX(BindAttribLocation) ; .set GL_PREFIX(BindAttribLocation), GL_PREFIX(BindAttribLocationARB)
-       .globl GL_PREFIX(GetActiveAttrib) ; .set GL_PREFIX(GetActiveAttrib), GL_PREFIX(GetActiveAttribARB)
-       .globl GL_PREFIX(GetAttribLocation) ; .set GL_PREFIX(GetAttribLocation), GL_PREFIX(GetAttribLocationARB)
-       .globl GL_PREFIX(DrawBuffers) ; .set GL_PREFIX(DrawBuffers), GL_PREFIX(DrawBuffersARB)
-       .globl GL_PREFIX(DrawBuffersATI) ; .set GL_PREFIX(DrawBuffersATI), GL_PREFIX(DrawBuffersARB)
-       .globl GL_PREFIX(RenderbufferStorageMultisampleEXT) ; .set GL_PREFIX(RenderbufferStorageMultisampleEXT), GL_PREFIX(RenderbufferStorageMultisample)
-       .globl GL_PREFIX(PointParameterf) ; .set GL_PREFIX(PointParameterf), GL_PREFIX(PointParameterfEXT)
-       .globl GL_PREFIX(PointParameterfARB) ; .set GL_PREFIX(PointParameterfARB), GL_PREFIX(PointParameterfEXT)
-       .globl GL_PREFIX(PointParameterfv) ; .set GL_PREFIX(PointParameterfv), GL_PREFIX(PointParameterfvEXT)
-       .globl GL_PREFIX(PointParameterfvARB) ; .set GL_PREFIX(PointParameterfvARB), GL_PREFIX(PointParameterfvEXT)
-       .globl GL_PREFIX(SecondaryColor3b) ; .set GL_PREFIX(SecondaryColor3b), GL_PREFIX(SecondaryColor3bEXT)
-       .globl GL_PREFIX(SecondaryColor3bv) ; .set GL_PREFIX(SecondaryColor3bv), GL_PREFIX(SecondaryColor3bvEXT)
-       .globl GL_PREFIX(SecondaryColor3d) ; .set GL_PREFIX(SecondaryColor3d), GL_PREFIX(SecondaryColor3dEXT)
-       .globl GL_PREFIX(SecondaryColor3dv) ; .set GL_PREFIX(SecondaryColor3dv), GL_PREFIX(SecondaryColor3dvEXT)
-       .globl GL_PREFIX(SecondaryColor3f) ; .set GL_PREFIX(SecondaryColor3f), GL_PREFIX(SecondaryColor3fEXT)
-       .globl GL_PREFIX(SecondaryColor3fv) ; .set GL_PREFIX(SecondaryColor3fv), GL_PREFIX(SecondaryColor3fvEXT)
-       .globl GL_PREFIX(SecondaryColor3i) ; .set GL_PREFIX(SecondaryColor3i), GL_PREFIX(SecondaryColor3iEXT)
-       .globl GL_PREFIX(SecondaryColor3iv) ; .set GL_PREFIX(SecondaryColor3iv), GL_PREFIX(SecondaryColor3ivEXT)
-       .globl GL_PREFIX(SecondaryColor3s) ; .set GL_PREFIX(SecondaryColor3s), GL_PREFIX(SecondaryColor3sEXT)
-       .globl GL_PREFIX(SecondaryColor3sv) ; .set GL_PREFIX(SecondaryColor3sv), GL_PREFIX(SecondaryColor3svEXT)
-       .globl GL_PREFIX(SecondaryColor3ub) ; .set GL_PREFIX(SecondaryColor3ub), GL_PREFIX(SecondaryColor3ubEXT)
-       .globl GL_PREFIX(SecondaryColor3ubv) ; .set GL_PREFIX(SecondaryColor3ubv), GL_PREFIX(SecondaryColor3ubvEXT)
-       .globl GL_PREFIX(SecondaryColor3ui) ; .set GL_PREFIX(SecondaryColor3ui), GL_PREFIX(SecondaryColor3uiEXT)
-       .globl GL_PREFIX(SecondaryColor3uiv) ; .set GL_PREFIX(SecondaryColor3uiv), GL_PREFIX(SecondaryColor3uivEXT)
-       .globl GL_PREFIX(SecondaryColor3us) ; .set GL_PREFIX(SecondaryColor3us), GL_PREFIX(SecondaryColor3usEXT)
-       .globl GL_PREFIX(SecondaryColor3usv) ; .set GL_PREFIX(SecondaryColor3usv), GL_PREFIX(SecondaryColor3usvEXT)
-       .globl GL_PREFIX(SecondaryColorPointer) ; .set GL_PREFIX(SecondaryColorPointer), GL_PREFIX(SecondaryColorPointerEXT)
-       .globl GL_PREFIX(MultiDrawArrays) ; .set GL_PREFIX(MultiDrawArrays), GL_PREFIX(MultiDrawArraysEXT)
-       .globl GL_PREFIX(MultiDrawElements) ; .set GL_PREFIX(MultiDrawElements), GL_PREFIX(MultiDrawElementsEXT)
-       .globl GL_PREFIX(FogCoordPointer) ; .set GL_PREFIX(FogCoordPointer), GL_PREFIX(FogCoordPointerEXT)
-       .globl GL_PREFIX(FogCoordd) ; .set GL_PREFIX(FogCoordd), GL_PREFIX(FogCoorddEXT)
-       .globl GL_PREFIX(FogCoorddv) ; .set GL_PREFIX(FogCoorddv), GL_PREFIX(FogCoorddvEXT)
-       .globl GL_PREFIX(FogCoordf) ; .set GL_PREFIX(FogCoordf), GL_PREFIX(FogCoordfEXT)
-       .globl GL_PREFIX(FogCoordfv) ; .set GL_PREFIX(FogCoordfv), GL_PREFIX(FogCoordfvEXT)
-       .globl GL_PREFIX(BlendFuncSeparate) ; .set GL_PREFIX(BlendFuncSeparate), GL_PREFIX(BlendFuncSeparateEXT)
-       .globl GL_PREFIX(WindowPos2d) ; .set GL_PREFIX(WindowPos2d), GL_PREFIX(WindowPos2dMESA)
-       .globl GL_PREFIX(WindowPos2dARB) ; .set GL_PREFIX(WindowPos2dARB), GL_PREFIX(WindowPos2dMESA)
-       .globl GL_PREFIX(WindowPos2dv) ; .set GL_PREFIX(WindowPos2dv), GL_PREFIX(WindowPos2dvMESA)
-       .globl GL_PREFIX(WindowPos2dvARB) ; .set GL_PREFIX(WindowPos2dvARB), GL_PREFIX(WindowPos2dvMESA)
-       .globl GL_PREFIX(WindowPos2f) ; .set GL_PREFIX(WindowPos2f), GL_PREFIX(WindowPos2fMESA)
-       .globl GL_PREFIX(WindowPos2fARB) ; .set GL_PREFIX(WindowPos2fARB), GL_PREFIX(WindowPos2fMESA)
-       .globl GL_PREFIX(WindowPos2fv) ; .set GL_PREFIX(WindowPos2fv), GL_PREFIX(WindowPos2fvMESA)
-       .globl GL_PREFIX(WindowPos2fvARB) ; .set GL_PREFIX(WindowPos2fvARB), GL_PREFIX(WindowPos2fvMESA)
-       .globl GL_PREFIX(WindowPos2i) ; .set GL_PREFIX(WindowPos2i), GL_PREFIX(WindowPos2iMESA)
-       .globl GL_PREFIX(WindowPos2iARB) ; .set GL_PREFIX(WindowPos2iARB), GL_PREFIX(WindowPos2iMESA)
-       .globl GL_PREFIX(WindowPos2iv) ; .set GL_PREFIX(WindowPos2iv), GL_PREFIX(WindowPos2ivMESA)
-       .globl GL_PREFIX(WindowPos2ivARB) ; .set GL_PREFIX(WindowPos2ivARB), GL_PREFIX(WindowPos2ivMESA)
-       .globl GL_PREFIX(WindowPos2s) ; .set GL_PREFIX(WindowPos2s), GL_PREFIX(WindowPos2sMESA)
-       .globl GL_PREFIX(WindowPos2sARB) ; .set GL_PREFIX(WindowPos2sARB), GL_PREFIX(WindowPos2sMESA)
-       .globl GL_PREFIX(WindowPos2sv) ; .set GL_PREFIX(WindowPos2sv), GL_PREFIX(WindowPos2svMESA)
-       .globl GL_PREFIX(WindowPos2svARB) ; .set GL_PREFIX(WindowPos2svARB), GL_PREFIX(WindowPos2svMESA)
-       .globl GL_PREFIX(WindowPos3d) ; .set GL_PREFIX(WindowPos3d), GL_PREFIX(WindowPos3dMESA)
-       .globl GL_PREFIX(WindowPos3dARB) ; .set GL_PREFIX(WindowPos3dARB), GL_PREFIX(WindowPos3dMESA)
-       .globl GL_PREFIX(WindowPos3dv) ; .set GL_PREFIX(WindowPos3dv), GL_PREFIX(WindowPos3dvMESA)
-       .globl GL_PREFIX(WindowPos3dvARB) ; .set GL_PREFIX(WindowPos3dvARB), GL_PREFIX(WindowPos3dvMESA)
-       .globl GL_PREFIX(WindowPos3f) ; .set GL_PREFIX(WindowPos3f), GL_PREFIX(WindowPos3fMESA)
-       .globl GL_PREFIX(WindowPos3fARB) ; .set GL_PREFIX(WindowPos3fARB), GL_PREFIX(WindowPos3fMESA)
-       .globl GL_PREFIX(WindowPos3fv) ; .set GL_PREFIX(WindowPos3fv), GL_PREFIX(WindowPos3fvMESA)
-       .globl GL_PREFIX(WindowPos3fvARB) ; .set GL_PREFIX(WindowPos3fvARB), GL_PREFIX(WindowPos3fvMESA)
-       .globl GL_PREFIX(WindowPos3i) ; .set GL_PREFIX(WindowPos3i), GL_PREFIX(WindowPos3iMESA)
-       .globl GL_PREFIX(WindowPos3iARB) ; .set GL_PREFIX(WindowPos3iARB), GL_PREFIX(WindowPos3iMESA)
-       .globl GL_PREFIX(WindowPos3iv) ; .set GL_PREFIX(WindowPos3iv), GL_PREFIX(WindowPos3ivMESA)
-       .globl GL_PREFIX(WindowPos3ivARB) ; .set GL_PREFIX(WindowPos3ivARB), GL_PREFIX(WindowPos3ivMESA)
-       .globl GL_PREFIX(WindowPos3s) ; .set GL_PREFIX(WindowPos3s), GL_PREFIX(WindowPos3sMESA)
-       .globl GL_PREFIX(WindowPos3sARB) ; .set GL_PREFIX(WindowPos3sARB), GL_PREFIX(WindowPos3sMESA)
-       .globl GL_PREFIX(WindowPos3sv) ; .set GL_PREFIX(WindowPos3sv), GL_PREFIX(WindowPos3svMESA)
-       .globl GL_PREFIX(WindowPos3svARB) ; .set GL_PREFIX(WindowPos3svARB), GL_PREFIX(WindowPos3svMESA)
-       .globl GL_PREFIX(BindProgramARB) ; .set GL_PREFIX(BindProgramARB), GL_PREFIX(BindProgramNV)
-       .globl GL_PREFIX(DeleteProgramsARB) ; .set GL_PREFIX(DeleteProgramsARB), GL_PREFIX(DeleteProgramsNV)
-       .globl GL_PREFIX(GenProgramsARB) ; .set GL_PREFIX(GenProgramsARB), GL_PREFIX(GenProgramsNV)
-       .globl GL_PREFIX(GetVertexAttribPointerv) ; .set GL_PREFIX(GetVertexAttribPointerv), GL_PREFIX(GetVertexAttribPointervNV)
-       .globl GL_PREFIX(GetVertexAttribPointervARB) ; .set GL_PREFIX(GetVertexAttribPointervARB), GL_PREFIX(GetVertexAttribPointervNV)
-       .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_757)
-       .globl GL_PREFIX(IsVertexArray) ; .set GL_PREFIX(IsVertexArray), GL_PREFIX(_dispatch_stub_759)
-       .globl GL_PREFIX(BlendEquationSeparate) ; .set GL_PREFIX(BlendEquationSeparate), GL_PREFIX(_dispatch_stub_767)
-       .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)
-       .globl GL_PREFIX(DeleteFramebuffers) ; .set GL_PREFIX(DeleteFramebuffers), GL_PREFIX(DeleteFramebuffersEXT)
-       .globl GL_PREFIX(DeleteRenderbuffers) ; .set GL_PREFIX(DeleteRenderbuffers), GL_PREFIX(DeleteRenderbuffersEXT)
-       .globl GL_PREFIX(FramebufferRenderbuffer) ; .set GL_PREFIX(FramebufferRenderbuffer), GL_PREFIX(FramebufferRenderbufferEXT)
-       .globl GL_PREFIX(FramebufferTexture1D) ; .set GL_PREFIX(FramebufferTexture1D), GL_PREFIX(FramebufferTexture1DEXT)
-       .globl GL_PREFIX(FramebufferTexture2D) ; .set GL_PREFIX(FramebufferTexture2D), GL_PREFIX(FramebufferTexture2DEXT)
-       .globl GL_PREFIX(FramebufferTexture3D) ; .set GL_PREFIX(FramebufferTexture3D), GL_PREFIX(FramebufferTexture3DEXT)
-       .globl GL_PREFIX(GenFramebuffers) ; .set GL_PREFIX(GenFramebuffers), GL_PREFIX(GenFramebuffersEXT)
-       .globl GL_PREFIX(GenRenderbuffers) ; .set GL_PREFIX(GenRenderbuffers), GL_PREFIX(GenRenderbuffersEXT)
-       .globl GL_PREFIX(GenerateMipmap) ; .set GL_PREFIX(GenerateMipmap), GL_PREFIX(GenerateMipmapEXT)
-       .globl GL_PREFIX(GetFramebufferAttachmentParameteriv) ; .set GL_PREFIX(GetFramebufferAttachmentParameteriv), GL_PREFIX(GetFramebufferAttachmentParameterivEXT)
-       .globl GL_PREFIX(GetRenderbufferParameteriv) ; .set GL_PREFIX(GetRenderbufferParameteriv), GL_PREFIX(GetRenderbufferParameterivEXT)
-       .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_785)
-       .globl GL_PREFIX(FramebufferTextureLayer) ; .set GL_PREFIX(FramebufferTextureLayer), GL_PREFIX(FramebufferTextureLayerEXT)
-       .globl GL_PREFIX(BeginTransformFeedback) ; .set GL_PREFIX(BeginTransformFeedback), GL_PREFIX(BeginTransformFeedbackEXT)
-       .globl GL_PREFIX(BindBufferBase) ; .set GL_PREFIX(BindBufferBase), GL_PREFIX(BindBufferBaseEXT)
-       .globl GL_PREFIX(BindBufferRange) ; .set GL_PREFIX(BindBufferRange), GL_PREFIX(BindBufferRangeEXT)
-       .globl GL_PREFIX(EndTransformFeedback) ; .set GL_PREFIX(EndTransformFeedback), GL_PREFIX(EndTransformFeedbackEXT)
-       .globl GL_PREFIX(GetTransformFeedbackVarying) ; .set GL_PREFIX(GetTransformFeedbackVarying), GL_PREFIX(GetTransformFeedbackVaryingEXT)
-       .globl GL_PREFIX(TransformFeedbackVaryings) ; .set GL_PREFIX(TransformFeedbackVaryings), GL_PREFIX(TransformFeedbackVaryingsEXT)
-       .globl GL_PREFIX(ProvokingVertex) ; .set GL_PREFIX(ProvokingVertex), GL_PREFIX(ProvokingVertexEXT)
-
-#if defined(GLX_USE_TLS) && defined(__linux__)
-       .section ".note.ABI-tag", "a"
-       .p2align 2
-       .long   1f - 0f   /* name length */
-       .long   3f - 2f   /* data length */
-       .long   1         /* note length */
-0:     .asciz "GNU"      /* vendor name */
-1:     .p2align 2
-2:     .long   0         /* note data: the ABI tag */
-       .long   2,4,20    /* Minimum kernel version w/TLS */
-3:     .p2align 2        /* pad out section */
-#endif /* GLX_USE_TLS */
-
-#if defined (__ELF__) && defined (__linux__)
-       .section .note.GNU-stack,"",%progbits
-#endif
diff --git a/src/mesa/glapi/glapi_x86.S b/src/mesa/glapi/glapi_x86.S
deleted file mode 100644 (file)
index 317f595..0000000
+++ /dev/null
@@ -1,1316 +0,0 @@
-/* DO NOT EDIT - This file generated automatically by gl_x86_asm.py (from Mesa) script */
-
-/*
- * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
- * (C) Copyright IBM Corporation 2004, 2005
- * 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
- * BRIAN PAUL, IBM,
- * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
- * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#include "x86/assyntax.h"
-#include "glapi/glapioffsets.h"
-
-#if defined(STDCALL_API)
-# if defined(USE_MGL_NAMESPACE)
-#  define GL_PREFIX(n,n2) GLNAME(CONCAT(mgl,n2))
-# else
-#  define GL_PREFIX(n,n2) GLNAME(CONCAT(gl,n2))
-# endif
-#else
-# if defined(USE_MGL_NAMESPACE)
-#  define GL_PREFIX(n,n2) GLNAME(CONCAT(mgl,n))
-#  define _glapi_Dispatch _mglapi_Dispatch
-# else
-#  define GL_PREFIX(n,n2) GLNAME(CONCAT(gl,n))
-# endif
-#endif
-
-#define GL_OFFSET(x) CODEPTR(REGOFF(4 * x, EAX))
-
-#if defined(GNU_ASSEMBLER) && !defined(__DJGPP__) && !defined(__MINGW32__) && !defined(__APPLE__)
-#define GLOBL_FN(x) GLOBL x ; .type x, function
-#else
-#define GLOBL_FN(x) GLOBL x
-#endif
-
-#if defined(PTHREADS) || defined(WIN32_THREADS) || defined(BEOS_THREADS)
-#  define THREADS
-#endif
-
-#ifdef GLX_USE_TLS
-
-#ifdef GLX_X86_READONLY_TEXT
-# define CTX_INSNS MOV_L(GS:(EAX), EAX)
-#else
-# define CTX_INSNS NOP /* Pad for init_glapi_relocs() */
-#endif
-
-#  define GL_STUB(fn,off,fn_alt)                       \
-ALIGNTEXT16;                                           \
-GLOBL_FN(GL_PREFIX(fn, fn_alt));                       \
-GL_PREFIX(fn, fn_alt):                                 \
-       CALL(_x86_get_dispatch) ;                       \
-       CTX_INSNS ;                                     \
-       JMP(GL_OFFSET(off))
-
-#elif defined(PTHREADS)
-#  define GL_STUB(fn,off,fn_alt)                       \
-ALIGNTEXT16;                                           \
-GLOBL_FN(GL_PREFIX(fn, fn_alt));                       \
-GL_PREFIX(fn, fn_alt):                                 \
-       MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX) ;  \
-       TEST_L(EAX, EAX) ;                              \
-       JE(1f) ;                                        \
-       JMP(GL_OFFSET(off)) ;                           \
-1:     CALL(_x86_get_dispatch) ;                       \
-       JMP(GL_OFFSET(off))
-#elif defined(THREADS)
-#  define GL_STUB(fn,off,fn_alt)                       \
-ALIGNTEXT16;                                           \
-GLOBL_FN(GL_PREFIX(fn, fn_alt));                       \
-GL_PREFIX(fn, fn_alt):                                 \
-       MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX) ;  \
-       TEST_L(EAX, EAX) ;                              \
-       JE(1f) ;                                        \
-       JMP(GL_OFFSET(off)) ;                           \
-1:     CALL(_glapi_get_dispatch) ;                     \
-       JMP(GL_OFFSET(off))
-#else /* Non-threaded version. */
-#  define GL_STUB(fn,off,fn_alt)                       \
-ALIGNTEXT16;                                           \
-GLOBL_FN(GL_PREFIX(fn, fn_alt));                       \
-GL_PREFIX(fn, fn_alt):                                 \
-       MOV_L(CONTENT(GLNAME(_glapi_Dispatch)), EAX) ;  \
-       JMP(GL_OFFSET(off))
-#endif
-
-#ifdef HAVE_ALIAS
-#  define GL_STUB_ALIAS(fn,off,fn_alt,alias,alias_alt) \
-       .globl  GL_PREFIX(fn, fn_alt) ;                 \
-       .set    GL_PREFIX(fn, fn_alt), GL_PREFIX(alias, alias_alt)
-#else
-#  define GL_STUB_ALIAS(fn,off,fn_alt,alias,alias_alt) \
-    GL_STUB(fn, off, fn_alt)
-#endif
-
-SEG_TEXT
-
-#ifdef GLX_USE_TLS
-
-       GLOBL   GLNAME(_x86_get_dispatch)
-       HIDDEN(GLNAME(_x86_get_dispatch))
-ALIGNTEXT16
-GLNAME(_x86_get_dispatch):
-       call    1f
-1:     popl    %eax
-       addl    $_GLOBAL_OFFSET_TABLE_+[.-1b], %eax
-       movl    _glapi_tls_Dispatch@GOTNTPOFF(%eax), %eax
-       ret
-
-#elif defined(PTHREADS)
-EXTERN GLNAME(_glapi_Dispatch)
-EXTERN GLNAME(_gl_DispatchTSD)
-EXTERN GLNAME(pthread_getspecific)
-
-ALIGNTEXT16
-GLNAME(_x86_get_dispatch):
-       SUB_L(CONST(24), ESP)
-       PUSH_L(GLNAME(_gl_DispatchTSD))
-       CALL(GLNAME(pthread_getspecific))
-       ADD_L(CONST(28), ESP)
-       RET
-#elif defined(THREADS)
-EXTERN GLNAME(_glapi_get_dispatch)
-#endif
-
-#if defined( GLX_USE_TLS ) && !defined( GLX_X86_READONLY_TEXT )
-               .section        wtext, "awx", @progbits
-#endif /* defined( GLX_USE_TLS ) */
-
-               ALIGNTEXT16
-               GLOBL GLNAME(gl_dispatch_functions_start)
-               HIDDEN(GLNAME(gl_dispatch_functions_start))
-GLNAME(gl_dispatch_functions_start):
-
-       GL_STUB(NewList, _gloffset_NewList, NewList@8)
-       GL_STUB(EndList, _gloffset_EndList, EndList@0)
-       GL_STUB(CallList, _gloffset_CallList, CallList@4)
-       GL_STUB(CallLists, _gloffset_CallLists, CallLists@12)
-       GL_STUB(DeleteLists, _gloffset_DeleteLists, DeleteLists@8)
-       GL_STUB(GenLists, _gloffset_GenLists, GenLists@4)
-       GL_STUB(ListBase, _gloffset_ListBase, ListBase@4)
-       GL_STUB(Begin, _gloffset_Begin, Begin@4)
-       GL_STUB(Bitmap, _gloffset_Bitmap, Bitmap@28)
-       GL_STUB(Color3b, _gloffset_Color3b, Color3b@12)
-       GL_STUB(Color3bv, _gloffset_Color3bv, Color3bv@4)
-       GL_STUB(Color3d, _gloffset_Color3d, Color3d@24)
-       GL_STUB(Color3dv, _gloffset_Color3dv, Color3dv@4)
-       GL_STUB(Color3f, _gloffset_Color3f, Color3f@12)
-       GL_STUB(Color3fv, _gloffset_Color3fv, Color3fv@4)
-       GL_STUB(Color3i, _gloffset_Color3i, Color3i@12)
-       GL_STUB(Color3iv, _gloffset_Color3iv, Color3iv@4)
-       GL_STUB(Color3s, _gloffset_Color3s, Color3s@12)
-       GL_STUB(Color3sv, _gloffset_Color3sv, Color3sv@4)
-       GL_STUB(Color3ub, _gloffset_Color3ub, Color3ub@12)
-       GL_STUB(Color3ubv, _gloffset_Color3ubv, Color3ubv@4)
-       GL_STUB(Color3ui, _gloffset_Color3ui, Color3ui@12)
-       GL_STUB(Color3uiv, _gloffset_Color3uiv, Color3uiv@4)
-       GL_STUB(Color3us, _gloffset_Color3us, Color3us@12)
-       GL_STUB(Color3usv, _gloffset_Color3usv, Color3usv@4)
-       GL_STUB(Color4b, _gloffset_Color4b, Color4b@16)
-       GL_STUB(Color4bv, _gloffset_Color4bv, Color4bv@4)
-       GL_STUB(Color4d, _gloffset_Color4d, Color4d@32)
-       GL_STUB(Color4dv, _gloffset_Color4dv, Color4dv@4)
-       GL_STUB(Color4f, _gloffset_Color4f, Color4f@16)
-       GL_STUB(Color4fv, _gloffset_Color4fv, Color4fv@4)
-       GL_STUB(Color4i, _gloffset_Color4i, Color4i@16)
-       GL_STUB(Color4iv, _gloffset_Color4iv, Color4iv@4)
-       GL_STUB(Color4s, _gloffset_Color4s, Color4s@16)
-       GL_STUB(Color4sv, _gloffset_Color4sv, Color4sv@4)
-       GL_STUB(Color4ub, _gloffset_Color4ub, Color4ub@16)
-       GL_STUB(Color4ubv, _gloffset_Color4ubv, Color4ubv@4)
-       GL_STUB(Color4ui, _gloffset_Color4ui, Color4ui@16)
-       GL_STUB(Color4uiv, _gloffset_Color4uiv, Color4uiv@4)
-       GL_STUB(Color4us, _gloffset_Color4us, Color4us@16)
-       GL_STUB(Color4usv, _gloffset_Color4usv, Color4usv@4)
-       GL_STUB(EdgeFlag, _gloffset_EdgeFlag, EdgeFlag@4)
-       GL_STUB(EdgeFlagv, _gloffset_EdgeFlagv, EdgeFlagv@4)
-       GL_STUB(End, _gloffset_End, End@0)
-       GL_STUB(Indexd, _gloffset_Indexd, Indexd@8)
-       GL_STUB(Indexdv, _gloffset_Indexdv, Indexdv@4)
-       GL_STUB(Indexf, _gloffset_Indexf, Indexf@4)
-       GL_STUB(Indexfv, _gloffset_Indexfv, Indexfv@4)
-       GL_STUB(Indexi, _gloffset_Indexi, Indexi@4)
-       GL_STUB(Indexiv, _gloffset_Indexiv, Indexiv@4)
-       GL_STUB(Indexs, _gloffset_Indexs, Indexs@4)
-       GL_STUB(Indexsv, _gloffset_Indexsv, Indexsv@4)
-       GL_STUB(Normal3b, _gloffset_Normal3b, Normal3b@12)
-       GL_STUB(Normal3bv, _gloffset_Normal3bv, Normal3bv@4)
-       GL_STUB(Normal3d, _gloffset_Normal3d, Normal3d@24)
-       GL_STUB(Normal3dv, _gloffset_Normal3dv, Normal3dv@4)
-       GL_STUB(Normal3f, _gloffset_Normal3f, Normal3f@12)
-       GL_STUB(Normal3fv, _gloffset_Normal3fv, Normal3fv@4)
-       GL_STUB(Normal3i, _gloffset_Normal3i, Normal3i@12)
-       GL_STUB(Normal3iv, _gloffset_Normal3iv, Normal3iv@4)
-       GL_STUB(Normal3s, _gloffset_Normal3s, Normal3s@12)
-       GL_STUB(Normal3sv, _gloffset_Normal3sv, Normal3sv@4)
-       GL_STUB(RasterPos2d, _gloffset_RasterPos2d, RasterPos2d@16)
-       GL_STUB(RasterPos2dv, _gloffset_RasterPos2dv, RasterPos2dv@4)
-       GL_STUB(RasterPos2f, _gloffset_RasterPos2f, RasterPos2f@8)
-       GL_STUB(RasterPos2fv, _gloffset_RasterPos2fv, RasterPos2fv@4)
-       GL_STUB(RasterPos2i, _gloffset_RasterPos2i, RasterPos2i@8)
-       GL_STUB(RasterPos2iv, _gloffset_RasterPos2iv, RasterPos2iv@4)
-       GL_STUB(RasterPos2s, _gloffset_RasterPos2s, RasterPos2s@8)
-       GL_STUB(RasterPos2sv, _gloffset_RasterPos2sv, RasterPos2sv@4)
-       GL_STUB(RasterPos3d, _gloffset_RasterPos3d, RasterPos3d@24)
-       GL_STUB(RasterPos3dv, _gloffset_RasterPos3dv, RasterPos3dv@4)
-       GL_STUB(RasterPos3f, _gloffset_RasterPos3f, RasterPos3f@12)
-       GL_STUB(RasterPos3fv, _gloffset_RasterPos3fv, RasterPos3fv@4)
-       GL_STUB(RasterPos3i, _gloffset_RasterPos3i, RasterPos3i@12)
-       GL_STUB(RasterPos3iv, _gloffset_RasterPos3iv, RasterPos3iv@4)
-       GL_STUB(RasterPos3s, _gloffset_RasterPos3s, RasterPos3s@12)
-       GL_STUB(RasterPos3sv, _gloffset_RasterPos3sv, RasterPos3sv@4)
-       GL_STUB(RasterPos4d, _gloffset_RasterPos4d, RasterPos4d@32)
-       GL_STUB(RasterPos4dv, _gloffset_RasterPos4dv, RasterPos4dv@4)
-       GL_STUB(RasterPos4f, _gloffset_RasterPos4f, RasterPos4f@16)
-       GL_STUB(RasterPos4fv, _gloffset_RasterPos4fv, RasterPos4fv@4)
-       GL_STUB(RasterPos4i, _gloffset_RasterPos4i, RasterPos4i@16)
-       GL_STUB(RasterPos4iv, _gloffset_RasterPos4iv, RasterPos4iv@4)
-       GL_STUB(RasterPos4s, _gloffset_RasterPos4s, RasterPos4s@16)
-       GL_STUB(RasterPos4sv, _gloffset_RasterPos4sv, RasterPos4sv@4)
-       GL_STUB(Rectd, _gloffset_Rectd, Rectd@32)
-       GL_STUB(Rectdv, _gloffset_Rectdv, Rectdv@8)
-       GL_STUB(Rectf, _gloffset_Rectf, Rectf@16)
-       GL_STUB(Rectfv, _gloffset_Rectfv, Rectfv@8)
-       GL_STUB(Recti, _gloffset_Recti, Recti@16)
-       GL_STUB(Rectiv, _gloffset_Rectiv, Rectiv@8)
-       GL_STUB(Rects, _gloffset_Rects, Rects@16)
-       GL_STUB(Rectsv, _gloffset_Rectsv, Rectsv@8)
-       GL_STUB(TexCoord1d, _gloffset_TexCoord1d, TexCoord1d@8)
-       GL_STUB(TexCoord1dv, _gloffset_TexCoord1dv, TexCoord1dv@4)
-       GL_STUB(TexCoord1f, _gloffset_TexCoord1f, TexCoord1f@4)
-       GL_STUB(TexCoord1fv, _gloffset_TexCoord1fv, TexCoord1fv@4)
-       GL_STUB(TexCoord1i, _gloffset_TexCoord1i, TexCoord1i@4)
-       GL_STUB(TexCoord1iv, _gloffset_TexCoord1iv, TexCoord1iv@4)
-       GL_STUB(TexCoord1s, _gloffset_TexCoord1s, TexCoord1s@4)
-       GL_STUB(TexCoord1sv, _gloffset_TexCoord1sv, TexCoord1sv@4)
-       GL_STUB(TexCoord2d, _gloffset_TexCoord2d, TexCoord2d@16)
-       GL_STUB(TexCoord2dv, _gloffset_TexCoord2dv, TexCoord2dv@4)
-       GL_STUB(TexCoord2f, _gloffset_TexCoord2f, TexCoord2f@8)
-       GL_STUB(TexCoord2fv, _gloffset_TexCoord2fv, TexCoord2fv@4)
-       GL_STUB(TexCoord2i, _gloffset_TexCoord2i, TexCoord2i@8)
-       GL_STUB(TexCoord2iv, _gloffset_TexCoord2iv, TexCoord2iv@4)
-       GL_STUB(TexCoord2s, _gloffset_TexCoord2s, TexCoord2s@8)
-       GL_STUB(TexCoord2sv, _gloffset_TexCoord2sv, TexCoord2sv@4)
-       GL_STUB(TexCoord3d, _gloffset_TexCoord3d, TexCoord3d@24)
-       GL_STUB(TexCoord3dv, _gloffset_TexCoord3dv, TexCoord3dv@4)
-       GL_STUB(TexCoord3f, _gloffset_TexCoord3f, TexCoord3f@12)
-       GL_STUB(TexCoord3fv, _gloffset_TexCoord3fv, TexCoord3fv@4)
-       GL_STUB(TexCoord3i, _gloffset_TexCoord3i, TexCoord3i@12)
-       GL_STUB(TexCoord3iv, _gloffset_TexCoord3iv, TexCoord3iv@4)
-       GL_STUB(TexCoord3s, _gloffset_TexCoord3s, TexCoord3s@12)
-       GL_STUB(TexCoord3sv, _gloffset_TexCoord3sv, TexCoord3sv@4)
-       GL_STUB(TexCoord4d, _gloffset_TexCoord4d, TexCoord4d@32)
-       GL_STUB(TexCoord4dv, _gloffset_TexCoord4dv, TexCoord4dv@4)
-       GL_STUB(TexCoord4f, _gloffset_TexCoord4f, TexCoord4f@16)
-       GL_STUB(TexCoord4fv, _gloffset_TexCoord4fv, TexCoord4fv@4)
-       GL_STUB(TexCoord4i, _gloffset_TexCoord4i, TexCoord4i@16)
-       GL_STUB(TexCoord4iv, _gloffset_TexCoord4iv, TexCoord4iv@4)
-       GL_STUB(TexCoord4s, _gloffset_TexCoord4s, TexCoord4s@16)
-       GL_STUB(TexCoord4sv, _gloffset_TexCoord4sv, TexCoord4sv@4)
-       GL_STUB(Vertex2d, _gloffset_Vertex2d, Vertex2d@16)
-       GL_STUB(Vertex2dv, _gloffset_Vertex2dv, Vertex2dv@4)
-       GL_STUB(Vertex2f, _gloffset_Vertex2f, Vertex2f@8)
-       GL_STUB(Vertex2fv, _gloffset_Vertex2fv, Vertex2fv@4)
-       GL_STUB(Vertex2i, _gloffset_Vertex2i, Vertex2i@8)
-       GL_STUB(Vertex2iv, _gloffset_Vertex2iv, Vertex2iv@4)
-       GL_STUB(Vertex2s, _gloffset_Vertex2s, Vertex2s@8)
-       GL_STUB(Vertex2sv, _gloffset_Vertex2sv, Vertex2sv@4)
-       GL_STUB(Vertex3d, _gloffset_Vertex3d, Vertex3d@24)
-       GL_STUB(Vertex3dv, _gloffset_Vertex3dv, Vertex3dv@4)
-       GL_STUB(Vertex3f, _gloffset_Vertex3f, Vertex3f@12)
-       GL_STUB(Vertex3fv, _gloffset_Vertex3fv, Vertex3fv@4)
-       GL_STUB(Vertex3i, _gloffset_Vertex3i, Vertex3i@12)
-       GL_STUB(Vertex3iv, _gloffset_Vertex3iv, Vertex3iv@4)
-       GL_STUB(Vertex3s, _gloffset_Vertex3s, Vertex3s@12)
-       GL_STUB(Vertex3sv, _gloffset_Vertex3sv, Vertex3sv@4)
-       GL_STUB(Vertex4d, _gloffset_Vertex4d, Vertex4d@32)
-       GL_STUB(Vertex4dv, _gloffset_Vertex4dv, Vertex4dv@4)
-       GL_STUB(Vertex4f, _gloffset_Vertex4f, Vertex4f@16)
-       GL_STUB(Vertex4fv, _gloffset_Vertex4fv, Vertex4fv@4)
-       GL_STUB(Vertex4i, _gloffset_Vertex4i, Vertex4i@16)
-       GL_STUB(Vertex4iv, _gloffset_Vertex4iv, Vertex4iv@4)
-       GL_STUB(Vertex4s, _gloffset_Vertex4s, Vertex4s@16)
-       GL_STUB(Vertex4sv, _gloffset_Vertex4sv, Vertex4sv@4)
-       GL_STUB(ClipPlane, _gloffset_ClipPlane, ClipPlane@8)
-       GL_STUB(ColorMaterial, _gloffset_ColorMaterial, ColorMaterial@8)
-       GL_STUB(CullFace, _gloffset_CullFace, CullFace@4)
-       GL_STUB(Fogf, _gloffset_Fogf, Fogf@8)
-       GL_STUB(Fogfv, _gloffset_Fogfv, Fogfv@8)
-       GL_STUB(Fogi, _gloffset_Fogi, Fogi@8)
-       GL_STUB(Fogiv, _gloffset_Fogiv, Fogiv@8)
-       GL_STUB(FrontFace, _gloffset_FrontFace, FrontFace@4)
-       GL_STUB(Hint, _gloffset_Hint, Hint@8)
-       GL_STUB(Lightf, _gloffset_Lightf, Lightf@12)
-       GL_STUB(Lightfv, _gloffset_Lightfv, Lightfv@12)
-       GL_STUB(Lighti, _gloffset_Lighti, Lighti@12)
-       GL_STUB(Lightiv, _gloffset_Lightiv, Lightiv@12)
-       GL_STUB(LightModelf, _gloffset_LightModelf, LightModelf@8)
-       GL_STUB(LightModelfv, _gloffset_LightModelfv, LightModelfv@8)
-       GL_STUB(LightModeli, _gloffset_LightModeli, LightModeli@8)
-       GL_STUB(LightModeliv, _gloffset_LightModeliv, LightModeliv@8)
-       GL_STUB(LineStipple, _gloffset_LineStipple, LineStipple@8)
-       GL_STUB(LineWidth, _gloffset_LineWidth, LineWidth@4)
-       GL_STUB(Materialf, _gloffset_Materialf, Materialf@12)
-       GL_STUB(Materialfv, _gloffset_Materialfv, Materialfv@12)
-       GL_STUB(Materiali, _gloffset_Materiali, Materiali@12)
-       GL_STUB(Materialiv, _gloffset_Materialiv, Materialiv@12)
-       GL_STUB(PointSize, _gloffset_PointSize, PointSize@4)
-       GL_STUB(PolygonMode, _gloffset_PolygonMode, PolygonMode@8)
-       GL_STUB(PolygonStipple, _gloffset_PolygonStipple, PolygonStipple@4)
-       GL_STUB(Scissor, _gloffset_Scissor, Scissor@16)
-       GL_STUB(ShadeModel, _gloffset_ShadeModel, ShadeModel@4)
-       GL_STUB(TexParameterf, _gloffset_TexParameterf, TexParameterf@12)
-       GL_STUB(TexParameterfv, _gloffset_TexParameterfv, TexParameterfv@12)
-       GL_STUB(TexParameteri, _gloffset_TexParameteri, TexParameteri@12)
-       GL_STUB(TexParameteriv, _gloffset_TexParameteriv, TexParameteriv@12)
-       GL_STUB(TexImage1D, _gloffset_TexImage1D, TexImage1D@32)
-       GL_STUB(TexImage2D, _gloffset_TexImage2D, TexImage2D@36)
-       GL_STUB(TexEnvf, _gloffset_TexEnvf, TexEnvf@12)
-       GL_STUB(TexEnvfv, _gloffset_TexEnvfv, TexEnvfv@12)
-       GL_STUB(TexEnvi, _gloffset_TexEnvi, TexEnvi@12)
-       GL_STUB(TexEnviv, _gloffset_TexEnviv, TexEnviv@12)
-       GL_STUB(TexGend, _gloffset_TexGend, TexGend@16)
-       GL_STUB(TexGendv, _gloffset_TexGendv, TexGendv@12)
-       GL_STUB(TexGenf, _gloffset_TexGenf, TexGenf@12)
-       GL_STUB(TexGenfv, _gloffset_TexGenfv, TexGenfv@12)
-       GL_STUB(TexGeni, _gloffset_TexGeni, TexGeni@12)
-       GL_STUB(TexGeniv, _gloffset_TexGeniv, TexGeniv@12)
-       GL_STUB(FeedbackBuffer, _gloffset_FeedbackBuffer, FeedbackBuffer@12)
-       GL_STUB(SelectBuffer, _gloffset_SelectBuffer, SelectBuffer@8)
-       GL_STUB(RenderMode, _gloffset_RenderMode, RenderMode@4)
-       GL_STUB(InitNames, _gloffset_InitNames, InitNames@0)
-       GL_STUB(LoadName, _gloffset_LoadName, LoadName@4)
-       GL_STUB(PassThrough, _gloffset_PassThrough, PassThrough@4)
-       GL_STUB(PopName, _gloffset_PopName, PopName@0)
-       GL_STUB(PushName, _gloffset_PushName, PushName@4)
-       GL_STUB(DrawBuffer, _gloffset_DrawBuffer, DrawBuffer@4)
-       GL_STUB(Clear, _gloffset_Clear, Clear@4)
-       GL_STUB(ClearAccum, _gloffset_ClearAccum, ClearAccum@16)
-       GL_STUB(ClearIndex, _gloffset_ClearIndex, ClearIndex@4)
-       GL_STUB(ClearColor, _gloffset_ClearColor, ClearColor@16)
-       GL_STUB(ClearStencil, _gloffset_ClearStencil, ClearStencil@4)
-       GL_STUB(ClearDepth, _gloffset_ClearDepth, ClearDepth@8)
-       GL_STUB(StencilMask, _gloffset_StencilMask, StencilMask@4)
-       GL_STUB(ColorMask, _gloffset_ColorMask, ColorMask@16)
-       GL_STUB(DepthMask, _gloffset_DepthMask, DepthMask@4)
-       GL_STUB(IndexMask, _gloffset_IndexMask, IndexMask@4)
-       GL_STUB(Accum, _gloffset_Accum, Accum@8)
-       GL_STUB(Disable, _gloffset_Disable, Disable@4)
-       GL_STUB(Enable, _gloffset_Enable, Enable@4)
-       GL_STUB(Finish, _gloffset_Finish, Finish@0)
-       GL_STUB(Flush, _gloffset_Flush, Flush@0)
-       GL_STUB(PopAttrib, _gloffset_PopAttrib, PopAttrib@0)
-       GL_STUB(PushAttrib, _gloffset_PushAttrib, PushAttrib@4)
-       GL_STUB(Map1d, _gloffset_Map1d, Map1d@32)
-       GL_STUB(Map1f, _gloffset_Map1f, Map1f@24)
-       GL_STUB(Map2d, _gloffset_Map2d, Map2d@56)
-       GL_STUB(Map2f, _gloffset_Map2f, Map2f@40)
-       GL_STUB(MapGrid1d, _gloffset_MapGrid1d, MapGrid1d@20)
-       GL_STUB(MapGrid1f, _gloffset_MapGrid1f, MapGrid1f@12)
-       GL_STUB(MapGrid2d, _gloffset_MapGrid2d, MapGrid2d@40)
-       GL_STUB(MapGrid2f, _gloffset_MapGrid2f, MapGrid2f@24)
-       GL_STUB(EvalCoord1d, _gloffset_EvalCoord1d, EvalCoord1d@8)
-       GL_STUB(EvalCoord1dv, _gloffset_EvalCoord1dv, EvalCoord1dv@4)
-       GL_STUB(EvalCoord1f, _gloffset_EvalCoord1f, EvalCoord1f@4)
-       GL_STUB(EvalCoord1fv, _gloffset_EvalCoord1fv, EvalCoord1fv@4)
-       GL_STUB(EvalCoord2d, _gloffset_EvalCoord2d, EvalCoord2d@16)
-       GL_STUB(EvalCoord2dv, _gloffset_EvalCoord2dv, EvalCoord2dv@4)
-       GL_STUB(EvalCoord2f, _gloffset_EvalCoord2f, EvalCoord2f@8)
-       GL_STUB(EvalCoord2fv, _gloffset_EvalCoord2fv, EvalCoord2fv@4)
-       GL_STUB(EvalMesh1, _gloffset_EvalMesh1, EvalMesh1@12)
-       GL_STUB(EvalPoint1, _gloffset_EvalPoint1, EvalPoint1@4)
-       GL_STUB(EvalMesh2, _gloffset_EvalMesh2, EvalMesh2@20)
-       GL_STUB(EvalPoint2, _gloffset_EvalPoint2, EvalPoint2@8)
-       GL_STUB(AlphaFunc, _gloffset_AlphaFunc, AlphaFunc@8)
-       GL_STUB(BlendFunc, _gloffset_BlendFunc, BlendFunc@8)
-       GL_STUB(LogicOp, _gloffset_LogicOp, LogicOp@4)
-       GL_STUB(StencilFunc, _gloffset_StencilFunc, StencilFunc@12)
-       GL_STUB(StencilOp, _gloffset_StencilOp, StencilOp@12)
-       GL_STUB(DepthFunc, _gloffset_DepthFunc, DepthFunc@4)
-       GL_STUB(PixelZoom, _gloffset_PixelZoom, PixelZoom@8)
-       GL_STUB(PixelTransferf, _gloffset_PixelTransferf, PixelTransferf@8)
-       GL_STUB(PixelTransferi, _gloffset_PixelTransferi, PixelTransferi@8)
-       GL_STUB(PixelStoref, _gloffset_PixelStoref, PixelStoref@8)
-       GL_STUB(PixelStorei, _gloffset_PixelStorei, PixelStorei@8)
-       GL_STUB(PixelMapfv, _gloffset_PixelMapfv, PixelMapfv@12)
-       GL_STUB(PixelMapuiv, _gloffset_PixelMapuiv, PixelMapuiv@12)
-       GL_STUB(PixelMapusv, _gloffset_PixelMapusv, PixelMapusv@12)
-       GL_STUB(ReadBuffer, _gloffset_ReadBuffer, ReadBuffer@4)
-       GL_STUB(CopyPixels, _gloffset_CopyPixels, CopyPixels@20)
-       GL_STUB(ReadPixels, _gloffset_ReadPixels, ReadPixels@28)
-       GL_STUB(DrawPixels, _gloffset_DrawPixels, DrawPixels@20)
-       GL_STUB(GetBooleanv, _gloffset_GetBooleanv, GetBooleanv@8)
-       GL_STUB(GetClipPlane, _gloffset_GetClipPlane, GetClipPlane@8)
-       GL_STUB(GetDoublev, _gloffset_GetDoublev, GetDoublev@8)
-       GL_STUB(GetError, _gloffset_GetError, GetError@0)
-       GL_STUB(GetFloatv, _gloffset_GetFloatv, GetFloatv@8)
-       GL_STUB(GetIntegerv, _gloffset_GetIntegerv, GetIntegerv@8)
-       GL_STUB(GetLightfv, _gloffset_GetLightfv, GetLightfv@12)
-       GL_STUB(GetLightiv, _gloffset_GetLightiv, GetLightiv@12)
-       GL_STUB(GetMapdv, _gloffset_GetMapdv, GetMapdv@12)
-       GL_STUB(GetMapfv, _gloffset_GetMapfv, GetMapfv@12)
-       GL_STUB(GetMapiv, _gloffset_GetMapiv, GetMapiv@12)
-       GL_STUB(GetMaterialfv, _gloffset_GetMaterialfv, GetMaterialfv@12)
-       GL_STUB(GetMaterialiv, _gloffset_GetMaterialiv, GetMaterialiv@12)
-       GL_STUB(GetPixelMapfv, _gloffset_GetPixelMapfv, GetPixelMapfv@8)
-       GL_STUB(GetPixelMapuiv, _gloffset_GetPixelMapuiv, GetPixelMapuiv@8)
-       GL_STUB(GetPixelMapusv, _gloffset_GetPixelMapusv, GetPixelMapusv@8)
-       GL_STUB(GetPolygonStipple, _gloffset_GetPolygonStipple, GetPolygonStipple@4)
-       GL_STUB(GetString, _gloffset_GetString, GetString@4)
-       GL_STUB(GetTexEnvfv, _gloffset_GetTexEnvfv, GetTexEnvfv@12)
-       GL_STUB(GetTexEnviv, _gloffset_GetTexEnviv, GetTexEnviv@12)
-       GL_STUB(GetTexGendv, _gloffset_GetTexGendv, GetTexGendv@12)
-       GL_STUB(GetTexGenfv, _gloffset_GetTexGenfv, GetTexGenfv@12)
-       GL_STUB(GetTexGeniv, _gloffset_GetTexGeniv, GetTexGeniv@12)
-       GL_STUB(GetTexImage, _gloffset_GetTexImage, GetTexImage@20)
-       GL_STUB(GetTexParameterfv, _gloffset_GetTexParameterfv, GetTexParameterfv@12)
-       GL_STUB(GetTexParameteriv, _gloffset_GetTexParameteriv, GetTexParameteriv@12)
-       GL_STUB(GetTexLevelParameterfv, _gloffset_GetTexLevelParameterfv, GetTexLevelParameterfv@16)
-       GL_STUB(GetTexLevelParameteriv, _gloffset_GetTexLevelParameteriv, GetTexLevelParameteriv@16)
-       GL_STUB(IsEnabled, _gloffset_IsEnabled, IsEnabled@4)
-       GL_STUB(IsList, _gloffset_IsList, IsList@4)
-       GL_STUB(DepthRange, _gloffset_DepthRange, DepthRange@16)
-       GL_STUB(Frustum, _gloffset_Frustum, Frustum@48)
-       GL_STUB(LoadIdentity, _gloffset_LoadIdentity, LoadIdentity@0)
-       GL_STUB(LoadMatrixf, _gloffset_LoadMatrixf, LoadMatrixf@4)
-       GL_STUB(LoadMatrixd, _gloffset_LoadMatrixd, LoadMatrixd@4)
-       GL_STUB(MatrixMode, _gloffset_MatrixMode, MatrixMode@4)
-       GL_STUB(MultMatrixf, _gloffset_MultMatrixf, MultMatrixf@4)
-       GL_STUB(MultMatrixd, _gloffset_MultMatrixd, MultMatrixd@4)
-       GL_STUB(Ortho, _gloffset_Ortho, Ortho@48)
-       GL_STUB(PopMatrix, _gloffset_PopMatrix, PopMatrix@0)
-       GL_STUB(PushMatrix, _gloffset_PushMatrix, PushMatrix@0)
-       GL_STUB(Rotated, _gloffset_Rotated, Rotated@32)
-       GL_STUB(Rotatef, _gloffset_Rotatef, Rotatef@16)
-       GL_STUB(Scaled, _gloffset_Scaled, Scaled@24)
-       GL_STUB(Scalef, _gloffset_Scalef, Scalef@12)
-       GL_STUB(Translated, _gloffset_Translated, Translated@24)
-       GL_STUB(Translatef, _gloffset_Translatef, Translatef@12)
-       GL_STUB(Viewport, _gloffset_Viewport, Viewport@16)
-       GL_STUB(ArrayElement, _gloffset_ArrayElement, ArrayElement@4)
-       GL_STUB(BindTexture, _gloffset_BindTexture, BindTexture@8)
-       GL_STUB(ColorPointer, _gloffset_ColorPointer, ColorPointer@16)
-       GL_STUB(DisableClientState, _gloffset_DisableClientState, DisableClientState@4)
-       GL_STUB(DrawArrays, _gloffset_DrawArrays, DrawArrays@12)
-       GL_STUB(DrawElements, _gloffset_DrawElements, DrawElements@16)
-       GL_STUB(EdgeFlagPointer, _gloffset_EdgeFlagPointer, EdgeFlagPointer@8)
-       GL_STUB(EnableClientState, _gloffset_EnableClientState, EnableClientState@4)
-       GL_STUB(IndexPointer, _gloffset_IndexPointer, IndexPointer@12)
-       GL_STUB(Indexub, _gloffset_Indexub, Indexub@4)
-       GL_STUB(Indexubv, _gloffset_Indexubv, Indexubv@4)
-       GL_STUB(InterleavedArrays, _gloffset_InterleavedArrays, InterleavedArrays@12)
-       GL_STUB(NormalPointer, _gloffset_NormalPointer, NormalPointer@12)
-       GL_STUB(PolygonOffset, _gloffset_PolygonOffset, PolygonOffset@8)
-       GL_STUB(TexCoordPointer, _gloffset_TexCoordPointer, TexCoordPointer@16)
-       GL_STUB(VertexPointer, _gloffset_VertexPointer, VertexPointer@16)
-       GL_STUB(AreTexturesResident, _gloffset_AreTexturesResident, AreTexturesResident@12)
-       GL_STUB(CopyTexImage1D, _gloffset_CopyTexImage1D, CopyTexImage1D@28)
-       GL_STUB(CopyTexImage2D, _gloffset_CopyTexImage2D, CopyTexImage2D@32)
-       GL_STUB(CopyTexSubImage1D, _gloffset_CopyTexSubImage1D, CopyTexSubImage1D@24)
-       GL_STUB(CopyTexSubImage2D, _gloffset_CopyTexSubImage2D, CopyTexSubImage2D@32)
-       GL_STUB(DeleteTextures, _gloffset_DeleteTextures, DeleteTextures@8)
-       GL_STUB(GenTextures, _gloffset_GenTextures, GenTextures@8)
-       GL_STUB(GetPointerv, _gloffset_GetPointerv, GetPointerv@8)
-       GL_STUB(IsTexture, _gloffset_IsTexture, IsTexture@4)
-       GL_STUB(PrioritizeTextures, _gloffset_PrioritizeTextures, PrioritizeTextures@12)
-       GL_STUB(TexSubImage1D, _gloffset_TexSubImage1D, TexSubImage1D@28)
-       GL_STUB(TexSubImage2D, _gloffset_TexSubImage2D, TexSubImage2D@36)
-       GL_STUB(PopClientAttrib, _gloffset_PopClientAttrib, PopClientAttrib@0)
-       GL_STUB(PushClientAttrib, _gloffset_PushClientAttrib, PushClientAttrib@4)
-       GL_STUB(BlendColor, _gloffset_BlendColor, BlendColor@16)
-       GL_STUB(BlendEquation, _gloffset_BlendEquation, BlendEquation@4)
-       GL_STUB(DrawRangeElements, _gloffset_DrawRangeElements, DrawRangeElements@24)
-       GL_STUB(ColorTable, _gloffset_ColorTable, ColorTable@24)
-       GL_STUB(ColorTableParameterfv, _gloffset_ColorTableParameterfv, ColorTableParameterfv@12)
-       GL_STUB(ColorTableParameteriv, _gloffset_ColorTableParameteriv, ColorTableParameteriv@12)
-       GL_STUB(CopyColorTable, _gloffset_CopyColorTable, CopyColorTable@20)
-       GL_STUB(GetColorTable, _gloffset_GetColorTable, GetColorTable@16)
-       GL_STUB(GetColorTableParameterfv, _gloffset_GetColorTableParameterfv, GetColorTableParameterfv@12)
-       GL_STUB(GetColorTableParameteriv, _gloffset_GetColorTableParameteriv, GetColorTableParameteriv@12)
-       GL_STUB(ColorSubTable, _gloffset_ColorSubTable, ColorSubTable@24)
-       GL_STUB(CopyColorSubTable, _gloffset_CopyColorSubTable, CopyColorSubTable@20)
-       GL_STUB(ConvolutionFilter1D, _gloffset_ConvolutionFilter1D, ConvolutionFilter1D@24)
-       GL_STUB(ConvolutionFilter2D, _gloffset_ConvolutionFilter2D, ConvolutionFilter2D@28)
-       GL_STUB(ConvolutionParameterf, _gloffset_ConvolutionParameterf, ConvolutionParameterf@12)
-       GL_STUB(ConvolutionParameterfv, _gloffset_ConvolutionParameterfv, ConvolutionParameterfv@12)
-       GL_STUB(ConvolutionParameteri, _gloffset_ConvolutionParameteri, ConvolutionParameteri@12)
-       GL_STUB(ConvolutionParameteriv, _gloffset_ConvolutionParameteriv, ConvolutionParameteriv@12)
-       GL_STUB(CopyConvolutionFilter1D, _gloffset_CopyConvolutionFilter1D, CopyConvolutionFilter1D@20)
-       GL_STUB(CopyConvolutionFilter2D, _gloffset_CopyConvolutionFilter2D, CopyConvolutionFilter2D@24)
-       GL_STUB(GetConvolutionFilter, _gloffset_GetConvolutionFilter, GetConvolutionFilter@16)
-       GL_STUB(GetConvolutionParameterfv, _gloffset_GetConvolutionParameterfv, GetConvolutionParameterfv@12)
-       GL_STUB(GetConvolutionParameteriv, _gloffset_GetConvolutionParameteriv, GetConvolutionParameteriv@12)
-       GL_STUB(GetSeparableFilter, _gloffset_GetSeparableFilter, GetSeparableFilter@24)
-       GL_STUB(SeparableFilter2D, _gloffset_SeparableFilter2D, SeparableFilter2D@32)
-       GL_STUB(GetHistogram, _gloffset_GetHistogram, GetHistogram@20)
-       GL_STUB(GetHistogramParameterfv, _gloffset_GetHistogramParameterfv, GetHistogramParameterfv@12)
-       GL_STUB(GetHistogramParameteriv, _gloffset_GetHistogramParameteriv, GetHistogramParameteriv@12)
-       GL_STUB(GetMinmax, _gloffset_GetMinmax, GetMinmax@20)
-       GL_STUB(GetMinmaxParameterfv, _gloffset_GetMinmaxParameterfv, GetMinmaxParameterfv@12)
-       GL_STUB(GetMinmaxParameteriv, _gloffset_GetMinmaxParameteriv, GetMinmaxParameteriv@12)
-       GL_STUB(Histogram, _gloffset_Histogram, Histogram@16)
-       GL_STUB(Minmax, _gloffset_Minmax, Minmax@12)
-       GL_STUB(ResetHistogram, _gloffset_ResetHistogram, ResetHistogram@4)
-       GL_STUB(ResetMinmax, _gloffset_ResetMinmax, ResetMinmax@4)
-       GL_STUB(TexImage3D, _gloffset_TexImage3D, TexImage3D@40)
-       GL_STUB(TexSubImage3D, _gloffset_TexSubImage3D, TexSubImage3D@44)
-       GL_STUB(CopyTexSubImage3D, _gloffset_CopyTexSubImage3D, CopyTexSubImage3D@36)
-       GL_STUB(ActiveTextureARB, _gloffset_ActiveTextureARB, ActiveTextureARB@4)
-       GL_STUB(ClientActiveTextureARB, _gloffset_ClientActiveTextureARB, ClientActiveTextureARB@4)
-       GL_STUB(MultiTexCoord1dARB, _gloffset_MultiTexCoord1dARB, MultiTexCoord1dARB@12)
-       GL_STUB(MultiTexCoord1dvARB, _gloffset_MultiTexCoord1dvARB, MultiTexCoord1dvARB@8)
-       GL_STUB(MultiTexCoord1fARB, _gloffset_MultiTexCoord1fARB, MultiTexCoord1fARB@8)
-       GL_STUB(MultiTexCoord1fvARB, _gloffset_MultiTexCoord1fvARB, MultiTexCoord1fvARB@8)
-       GL_STUB(MultiTexCoord1iARB, _gloffset_MultiTexCoord1iARB, MultiTexCoord1iARB@8)
-       GL_STUB(MultiTexCoord1ivARB, _gloffset_MultiTexCoord1ivARB, MultiTexCoord1ivARB@8)
-       GL_STUB(MultiTexCoord1sARB, _gloffset_MultiTexCoord1sARB, MultiTexCoord1sARB@8)
-       GL_STUB(MultiTexCoord1svARB, _gloffset_MultiTexCoord1svARB, MultiTexCoord1svARB@8)
-       GL_STUB(MultiTexCoord2dARB, _gloffset_MultiTexCoord2dARB, MultiTexCoord2dARB@20)
-       GL_STUB(MultiTexCoord2dvARB, _gloffset_MultiTexCoord2dvARB, MultiTexCoord2dvARB@8)
-       GL_STUB(MultiTexCoord2fARB, _gloffset_MultiTexCoord2fARB, MultiTexCoord2fARB@12)
-       GL_STUB(MultiTexCoord2fvARB, _gloffset_MultiTexCoord2fvARB, MultiTexCoord2fvARB@8)
-       GL_STUB(MultiTexCoord2iARB, _gloffset_MultiTexCoord2iARB, MultiTexCoord2iARB@12)
-       GL_STUB(MultiTexCoord2ivARB, _gloffset_MultiTexCoord2ivARB, MultiTexCoord2ivARB@8)
-       GL_STUB(MultiTexCoord2sARB, _gloffset_MultiTexCoord2sARB, MultiTexCoord2sARB@12)
-       GL_STUB(MultiTexCoord2svARB, _gloffset_MultiTexCoord2svARB, MultiTexCoord2svARB@8)
-       GL_STUB(MultiTexCoord3dARB, _gloffset_MultiTexCoord3dARB, MultiTexCoord3dARB@28)
-       GL_STUB(MultiTexCoord3dvARB, _gloffset_MultiTexCoord3dvARB, MultiTexCoord3dvARB@8)
-       GL_STUB(MultiTexCoord3fARB, _gloffset_MultiTexCoord3fARB, MultiTexCoord3fARB@16)
-       GL_STUB(MultiTexCoord3fvARB, _gloffset_MultiTexCoord3fvARB, MultiTexCoord3fvARB@8)
-       GL_STUB(MultiTexCoord3iARB, _gloffset_MultiTexCoord3iARB, MultiTexCoord3iARB@16)
-       GL_STUB(MultiTexCoord3ivARB, _gloffset_MultiTexCoord3ivARB, MultiTexCoord3ivARB@8)
-       GL_STUB(MultiTexCoord3sARB, _gloffset_MultiTexCoord3sARB, MultiTexCoord3sARB@16)
-       GL_STUB(MultiTexCoord3svARB, _gloffset_MultiTexCoord3svARB, MultiTexCoord3svARB@8)
-       GL_STUB(MultiTexCoord4dARB, _gloffset_MultiTexCoord4dARB, MultiTexCoord4dARB@36)
-       GL_STUB(MultiTexCoord4dvARB, _gloffset_MultiTexCoord4dvARB, MultiTexCoord4dvARB@8)
-       GL_STUB(MultiTexCoord4fARB, _gloffset_MultiTexCoord4fARB, MultiTexCoord4fARB@20)
-       GL_STUB(MultiTexCoord4fvARB, _gloffset_MultiTexCoord4fvARB, MultiTexCoord4fvARB@8)
-       GL_STUB(MultiTexCoord4iARB, _gloffset_MultiTexCoord4iARB, MultiTexCoord4iARB@20)
-       GL_STUB(MultiTexCoord4ivARB, _gloffset_MultiTexCoord4ivARB, MultiTexCoord4ivARB@8)
-       GL_STUB(MultiTexCoord4sARB, _gloffset_MultiTexCoord4sARB, MultiTexCoord4sARB@20)
-       GL_STUB(MultiTexCoord4svARB, _gloffset_MultiTexCoord4svARB, MultiTexCoord4svARB@8)
-       GL_STUB(AttachShader, _gloffset_AttachShader, AttachShader@8)
-       GL_STUB(CreateProgram, _gloffset_CreateProgram, CreateProgram@0)
-       GL_STUB(CreateShader, _gloffset_CreateShader, CreateShader@4)
-       GL_STUB(DeleteProgram, _gloffset_DeleteProgram, DeleteProgram@4)
-       GL_STUB(DeleteShader, _gloffset_DeleteShader, DeleteShader@4)
-       GL_STUB(DetachShader, _gloffset_DetachShader, DetachShader@8)
-       GL_STUB(GetAttachedShaders, _gloffset_GetAttachedShaders, GetAttachedShaders@16)
-       GL_STUB(GetProgramInfoLog, _gloffset_GetProgramInfoLog, GetProgramInfoLog@16)
-       GL_STUB(GetProgramiv, _gloffset_GetProgramiv, GetProgramiv@12)
-       GL_STUB(GetShaderInfoLog, _gloffset_GetShaderInfoLog, GetShaderInfoLog@16)
-       GL_STUB(GetShaderiv, _gloffset_GetShaderiv, GetShaderiv@12)
-       GL_STUB(IsProgram, _gloffset_IsProgram, IsProgram@4)
-       GL_STUB(IsShader, _gloffset_IsShader, IsShader@4)
-       GL_STUB(StencilFuncSeparate, _gloffset_StencilFuncSeparate, StencilFuncSeparate@16)
-       GL_STUB(StencilMaskSeparate, _gloffset_StencilMaskSeparate, StencilMaskSeparate@8)
-       GL_STUB(StencilOpSeparate, _gloffset_StencilOpSeparate, StencilOpSeparate@16)
-       GL_STUB(UniformMatrix2x3fv, _gloffset_UniformMatrix2x3fv, UniformMatrix2x3fv@16)
-       GL_STUB(UniformMatrix2x4fv, _gloffset_UniformMatrix2x4fv, UniformMatrix2x4fv@16)
-       GL_STUB(UniformMatrix3x2fv, _gloffset_UniformMatrix3x2fv, UniformMatrix3x2fv@16)
-       GL_STUB(UniformMatrix3x4fv, _gloffset_UniformMatrix3x4fv, UniformMatrix3x4fv@16)
-       GL_STUB(UniformMatrix4x2fv, _gloffset_UniformMatrix4x2fv, UniformMatrix4x2fv@16)
-       GL_STUB(UniformMatrix4x3fv, _gloffset_UniformMatrix4x3fv, UniformMatrix4x3fv@16)
-       GL_STUB(DrawArraysInstanced, _gloffset_DrawArraysInstanced, DrawArraysInstanced@16)
-       GL_STUB(DrawElementsInstanced, _gloffset_DrawElementsInstanced, DrawElementsInstanced@20)
-       GL_STUB(LoadTransposeMatrixdARB, _gloffset_LoadTransposeMatrixdARB, LoadTransposeMatrixdARB@4)
-       GL_STUB(LoadTransposeMatrixfARB, _gloffset_LoadTransposeMatrixfARB, LoadTransposeMatrixfARB@4)
-       GL_STUB(MultTransposeMatrixdARB, _gloffset_MultTransposeMatrixdARB, MultTransposeMatrixdARB@4)
-       GL_STUB(MultTransposeMatrixfARB, _gloffset_MultTransposeMatrixfARB, MultTransposeMatrixfARB@4)
-       GL_STUB(SampleCoverageARB, _gloffset_SampleCoverageARB, SampleCoverageARB@8)
-       GL_STUB(CompressedTexImage1DARB, _gloffset_CompressedTexImage1DARB, CompressedTexImage1DARB@28)
-       GL_STUB(CompressedTexImage2DARB, _gloffset_CompressedTexImage2DARB, CompressedTexImage2DARB@32)
-       GL_STUB(CompressedTexImage3DARB, _gloffset_CompressedTexImage3DARB, CompressedTexImage3DARB@36)
-       GL_STUB(CompressedTexSubImage1DARB, _gloffset_CompressedTexSubImage1DARB, CompressedTexSubImage1DARB@28)
-       GL_STUB(CompressedTexSubImage2DARB, _gloffset_CompressedTexSubImage2DARB, CompressedTexSubImage2DARB@36)
-       GL_STUB(CompressedTexSubImage3DARB, _gloffset_CompressedTexSubImage3DARB, CompressedTexSubImage3DARB@44)
-       GL_STUB(GetCompressedTexImageARB, _gloffset_GetCompressedTexImageARB, GetCompressedTexImageARB@12)
-       GL_STUB(DisableVertexAttribArrayARB, _gloffset_DisableVertexAttribArrayARB, DisableVertexAttribArrayARB@4)
-       GL_STUB(EnableVertexAttribArrayARB, _gloffset_EnableVertexAttribArrayARB, EnableVertexAttribArrayARB@4)
-       GL_STUB(GetProgramEnvParameterdvARB, _gloffset_GetProgramEnvParameterdvARB, GetProgramEnvParameterdvARB@12)
-       GL_STUB(GetProgramEnvParameterfvARB, _gloffset_GetProgramEnvParameterfvARB, GetProgramEnvParameterfvARB@12)
-       GL_STUB(GetProgramLocalParameterdvARB, _gloffset_GetProgramLocalParameterdvARB, GetProgramLocalParameterdvARB@12)
-       GL_STUB(GetProgramLocalParameterfvARB, _gloffset_GetProgramLocalParameterfvARB, GetProgramLocalParameterfvARB@12)
-       GL_STUB(GetProgramStringARB, _gloffset_GetProgramStringARB, GetProgramStringARB@12)
-       GL_STUB(GetProgramivARB, _gloffset_GetProgramivARB, GetProgramivARB@12)
-       GL_STUB(GetVertexAttribdvARB, _gloffset_GetVertexAttribdvARB, GetVertexAttribdvARB@12)
-       GL_STUB(GetVertexAttribfvARB, _gloffset_GetVertexAttribfvARB, GetVertexAttribfvARB@12)
-       GL_STUB(GetVertexAttribivARB, _gloffset_GetVertexAttribivARB, GetVertexAttribivARB@12)
-       GL_STUB(ProgramEnvParameter4dARB, _gloffset_ProgramEnvParameter4dARB, ProgramEnvParameter4dARB@40)
-       GL_STUB(ProgramEnvParameter4dvARB, _gloffset_ProgramEnvParameter4dvARB, ProgramEnvParameter4dvARB@12)
-       GL_STUB(ProgramEnvParameter4fARB, _gloffset_ProgramEnvParameter4fARB, ProgramEnvParameter4fARB@24)
-       GL_STUB(ProgramEnvParameter4fvARB, _gloffset_ProgramEnvParameter4fvARB, ProgramEnvParameter4fvARB@12)
-       GL_STUB(ProgramLocalParameter4dARB, _gloffset_ProgramLocalParameter4dARB, ProgramLocalParameter4dARB@40)
-       GL_STUB(ProgramLocalParameter4dvARB, _gloffset_ProgramLocalParameter4dvARB, ProgramLocalParameter4dvARB@12)
-       GL_STUB(ProgramLocalParameter4fARB, _gloffset_ProgramLocalParameter4fARB, ProgramLocalParameter4fARB@24)
-       GL_STUB(ProgramLocalParameter4fvARB, _gloffset_ProgramLocalParameter4fvARB, ProgramLocalParameter4fvARB@12)
-       GL_STUB(ProgramStringARB, _gloffset_ProgramStringARB, ProgramStringARB@16)
-       GL_STUB(VertexAttrib1dARB, _gloffset_VertexAttrib1dARB, VertexAttrib1dARB@12)
-       GL_STUB(VertexAttrib1dvARB, _gloffset_VertexAttrib1dvARB, VertexAttrib1dvARB@8)
-       GL_STUB(VertexAttrib1fARB, _gloffset_VertexAttrib1fARB, VertexAttrib1fARB@8)
-       GL_STUB(VertexAttrib1fvARB, _gloffset_VertexAttrib1fvARB, VertexAttrib1fvARB@8)
-       GL_STUB(VertexAttrib1sARB, _gloffset_VertexAttrib1sARB, VertexAttrib1sARB@8)
-       GL_STUB(VertexAttrib1svARB, _gloffset_VertexAttrib1svARB, VertexAttrib1svARB@8)
-       GL_STUB(VertexAttrib2dARB, _gloffset_VertexAttrib2dARB, VertexAttrib2dARB@20)
-       GL_STUB(VertexAttrib2dvARB, _gloffset_VertexAttrib2dvARB, VertexAttrib2dvARB@8)
-       GL_STUB(VertexAttrib2fARB, _gloffset_VertexAttrib2fARB, VertexAttrib2fARB@12)
-       GL_STUB(VertexAttrib2fvARB, _gloffset_VertexAttrib2fvARB, VertexAttrib2fvARB@8)
-       GL_STUB(VertexAttrib2sARB, _gloffset_VertexAttrib2sARB, VertexAttrib2sARB@12)
-       GL_STUB(VertexAttrib2svARB, _gloffset_VertexAttrib2svARB, VertexAttrib2svARB@8)
-       GL_STUB(VertexAttrib3dARB, _gloffset_VertexAttrib3dARB, VertexAttrib3dARB@28)
-       GL_STUB(VertexAttrib3dvARB, _gloffset_VertexAttrib3dvARB, VertexAttrib3dvARB@8)
-       GL_STUB(VertexAttrib3fARB, _gloffset_VertexAttrib3fARB, VertexAttrib3fARB@16)
-       GL_STUB(VertexAttrib3fvARB, _gloffset_VertexAttrib3fvARB, VertexAttrib3fvARB@8)
-       GL_STUB(VertexAttrib3sARB, _gloffset_VertexAttrib3sARB, VertexAttrib3sARB@16)
-       GL_STUB(VertexAttrib3svARB, _gloffset_VertexAttrib3svARB, VertexAttrib3svARB@8)
-       GL_STUB(VertexAttrib4NbvARB, _gloffset_VertexAttrib4NbvARB, VertexAttrib4NbvARB@8)
-       GL_STUB(VertexAttrib4NivARB, _gloffset_VertexAttrib4NivARB, VertexAttrib4NivARB@8)
-       GL_STUB(VertexAttrib4NsvARB, _gloffset_VertexAttrib4NsvARB, VertexAttrib4NsvARB@8)
-       GL_STUB(VertexAttrib4NubARB, _gloffset_VertexAttrib4NubARB, VertexAttrib4NubARB@20)
-       GL_STUB(VertexAttrib4NubvARB, _gloffset_VertexAttrib4NubvARB, VertexAttrib4NubvARB@8)
-       GL_STUB(VertexAttrib4NuivARB, _gloffset_VertexAttrib4NuivARB, VertexAttrib4NuivARB@8)
-       GL_STUB(VertexAttrib4NusvARB, _gloffset_VertexAttrib4NusvARB, VertexAttrib4NusvARB@8)
-       GL_STUB(VertexAttrib4bvARB, _gloffset_VertexAttrib4bvARB, VertexAttrib4bvARB@8)
-       GL_STUB(VertexAttrib4dARB, _gloffset_VertexAttrib4dARB, VertexAttrib4dARB@36)
-       GL_STUB(VertexAttrib4dvARB, _gloffset_VertexAttrib4dvARB, VertexAttrib4dvARB@8)
-       GL_STUB(VertexAttrib4fARB, _gloffset_VertexAttrib4fARB, VertexAttrib4fARB@20)
-       GL_STUB(VertexAttrib4fvARB, _gloffset_VertexAttrib4fvARB, VertexAttrib4fvARB@8)
-       GL_STUB(VertexAttrib4ivARB, _gloffset_VertexAttrib4ivARB, VertexAttrib4ivARB@8)
-       GL_STUB(VertexAttrib4sARB, _gloffset_VertexAttrib4sARB, VertexAttrib4sARB@20)
-       GL_STUB(VertexAttrib4svARB, _gloffset_VertexAttrib4svARB, VertexAttrib4svARB@8)
-       GL_STUB(VertexAttrib4ubvARB, _gloffset_VertexAttrib4ubvARB, VertexAttrib4ubvARB@8)
-       GL_STUB(VertexAttrib4uivARB, _gloffset_VertexAttrib4uivARB, VertexAttrib4uivARB@8)
-       GL_STUB(VertexAttrib4usvARB, _gloffset_VertexAttrib4usvARB, VertexAttrib4usvARB@8)
-       GL_STUB(VertexAttribPointerARB, _gloffset_VertexAttribPointerARB, VertexAttribPointerARB@24)
-       GL_STUB(BindBufferARB, _gloffset_BindBufferARB, BindBufferARB@8)
-       GL_STUB(BufferDataARB, _gloffset_BufferDataARB, BufferDataARB@16)
-       GL_STUB(BufferSubDataARB, _gloffset_BufferSubDataARB, BufferSubDataARB@16)
-       GL_STUB(DeleteBuffersARB, _gloffset_DeleteBuffersARB, DeleteBuffersARB@8)
-       GL_STUB(GenBuffersARB, _gloffset_GenBuffersARB, GenBuffersARB@8)
-       GL_STUB(GetBufferParameterivARB, _gloffset_GetBufferParameterivARB, GetBufferParameterivARB@12)
-       GL_STUB(GetBufferPointervARB, _gloffset_GetBufferPointervARB, GetBufferPointervARB@12)
-       GL_STUB(GetBufferSubDataARB, _gloffset_GetBufferSubDataARB, GetBufferSubDataARB@16)
-       GL_STUB(IsBufferARB, _gloffset_IsBufferARB, IsBufferARB@4)
-       GL_STUB(MapBufferARB, _gloffset_MapBufferARB, MapBufferARB@8)
-       GL_STUB(UnmapBufferARB, _gloffset_UnmapBufferARB, UnmapBufferARB@4)
-       GL_STUB(BeginQueryARB, _gloffset_BeginQueryARB, BeginQueryARB@8)
-       GL_STUB(DeleteQueriesARB, _gloffset_DeleteQueriesARB, DeleteQueriesARB@8)
-       GL_STUB(EndQueryARB, _gloffset_EndQueryARB, EndQueryARB@4)
-       GL_STUB(GenQueriesARB, _gloffset_GenQueriesARB, GenQueriesARB@8)
-       GL_STUB(GetQueryObjectivARB, _gloffset_GetQueryObjectivARB, GetQueryObjectivARB@12)
-       GL_STUB(GetQueryObjectuivARB, _gloffset_GetQueryObjectuivARB, GetQueryObjectuivARB@12)
-       GL_STUB(GetQueryivARB, _gloffset_GetQueryivARB, GetQueryivARB@12)
-       GL_STUB(IsQueryARB, _gloffset_IsQueryARB, IsQueryARB@4)
-       GL_STUB(AttachObjectARB, _gloffset_AttachObjectARB, AttachObjectARB@8)
-       GL_STUB(CompileShaderARB, _gloffset_CompileShaderARB, CompileShaderARB@4)
-       GL_STUB(CreateProgramObjectARB, _gloffset_CreateProgramObjectARB, CreateProgramObjectARB@0)
-       GL_STUB(CreateShaderObjectARB, _gloffset_CreateShaderObjectARB, CreateShaderObjectARB@4)
-       GL_STUB(DeleteObjectARB, _gloffset_DeleteObjectARB, DeleteObjectARB@4)
-       GL_STUB(DetachObjectARB, _gloffset_DetachObjectARB, DetachObjectARB@8)
-       GL_STUB(GetActiveUniformARB, _gloffset_GetActiveUniformARB, GetActiveUniformARB@28)
-       GL_STUB(GetAttachedObjectsARB, _gloffset_GetAttachedObjectsARB, GetAttachedObjectsARB@16)
-       GL_STUB(GetHandleARB, _gloffset_GetHandleARB, GetHandleARB@4)
-       GL_STUB(GetInfoLogARB, _gloffset_GetInfoLogARB, GetInfoLogARB@16)
-       GL_STUB(GetObjectParameterfvARB, _gloffset_GetObjectParameterfvARB, GetObjectParameterfvARB@12)
-       GL_STUB(GetObjectParameterivARB, _gloffset_GetObjectParameterivARB, GetObjectParameterivARB@12)
-       GL_STUB(GetShaderSourceARB, _gloffset_GetShaderSourceARB, GetShaderSourceARB@16)
-       GL_STUB(GetUniformLocationARB, _gloffset_GetUniformLocationARB, GetUniformLocationARB@8)
-       GL_STUB(GetUniformfvARB, _gloffset_GetUniformfvARB, GetUniformfvARB@12)
-       GL_STUB(GetUniformivARB, _gloffset_GetUniformivARB, GetUniformivARB@12)
-       GL_STUB(LinkProgramARB, _gloffset_LinkProgramARB, LinkProgramARB@4)
-       GL_STUB(ShaderSourceARB, _gloffset_ShaderSourceARB, ShaderSourceARB@16)
-       GL_STUB(Uniform1fARB, _gloffset_Uniform1fARB, Uniform1fARB@8)
-       GL_STUB(Uniform1fvARB, _gloffset_Uniform1fvARB, Uniform1fvARB@12)
-       GL_STUB(Uniform1iARB, _gloffset_Uniform1iARB, Uniform1iARB@8)
-       GL_STUB(Uniform1ivARB, _gloffset_Uniform1ivARB, Uniform1ivARB@12)
-       GL_STUB(Uniform2fARB, _gloffset_Uniform2fARB, Uniform2fARB@12)
-       GL_STUB(Uniform2fvARB, _gloffset_Uniform2fvARB, Uniform2fvARB@12)
-       GL_STUB(Uniform2iARB, _gloffset_Uniform2iARB, Uniform2iARB@12)
-       GL_STUB(Uniform2ivARB, _gloffset_Uniform2ivARB, Uniform2ivARB@12)
-       GL_STUB(Uniform3fARB, _gloffset_Uniform3fARB, Uniform3fARB@16)
-       GL_STUB(Uniform3fvARB, _gloffset_Uniform3fvARB, Uniform3fvARB@12)
-       GL_STUB(Uniform3iARB, _gloffset_Uniform3iARB, Uniform3iARB@16)
-       GL_STUB(Uniform3ivARB, _gloffset_Uniform3ivARB, Uniform3ivARB@12)
-       GL_STUB(Uniform4fARB, _gloffset_Uniform4fARB, Uniform4fARB@20)
-       GL_STUB(Uniform4fvARB, _gloffset_Uniform4fvARB, Uniform4fvARB@12)
-       GL_STUB(Uniform4iARB, _gloffset_Uniform4iARB, Uniform4iARB@20)
-       GL_STUB(Uniform4ivARB, _gloffset_Uniform4ivARB, Uniform4ivARB@12)
-       GL_STUB(UniformMatrix2fvARB, _gloffset_UniformMatrix2fvARB, UniformMatrix2fvARB@16)
-       GL_STUB(UniformMatrix3fvARB, _gloffset_UniformMatrix3fvARB, UniformMatrix3fvARB@16)
-       GL_STUB(UniformMatrix4fvARB, _gloffset_UniformMatrix4fvARB, UniformMatrix4fvARB@16)
-       GL_STUB(UseProgramObjectARB, _gloffset_UseProgramObjectARB, UseProgramObjectARB@4)
-       GL_STUB(ValidateProgramARB, _gloffset_ValidateProgramARB, ValidateProgramARB@4)
-       GL_STUB(BindAttribLocationARB, _gloffset_BindAttribLocationARB, BindAttribLocationARB@12)
-       GL_STUB(GetActiveAttribARB, _gloffset_GetActiveAttribARB, GetActiveAttribARB@28)
-       GL_STUB(GetAttribLocationARB, _gloffset_GetAttribLocationARB, GetAttribLocationARB@8)
-       GL_STUB(DrawBuffersARB, _gloffset_DrawBuffersARB, DrawBuffersARB@8)
-       GL_STUB(RenderbufferStorageMultisample, _gloffset_RenderbufferStorageMultisample, RenderbufferStorageMultisample@20)
-       GL_STUB(FlushMappedBufferRange, _gloffset_FlushMappedBufferRange, FlushMappedBufferRange@12)
-       GL_STUB(MapBufferRange, _gloffset_MapBufferRange, MapBufferRange@16)
-       GL_STUB(BindVertexArray, _gloffset_BindVertexArray, BindVertexArray@4)
-       GL_STUB(GenVertexArrays, _gloffset_GenVertexArrays, GenVertexArrays@8)
-       GL_STUB(CopyBufferSubData, _gloffset_CopyBufferSubData, CopyBufferSubData@20)
-       GL_STUB(ClientWaitSync, _gloffset_ClientWaitSync, ClientWaitSync@12)
-       GL_STUB(DeleteSync, _gloffset_DeleteSync, DeleteSync@4)
-       GL_STUB(FenceSync, _gloffset_FenceSync, FenceSync@8)
-       GL_STUB(GetInteger64v, _gloffset_GetInteger64v, GetInteger64v@8)
-       GL_STUB(GetSynciv, _gloffset_GetSynciv, GetSynciv@20)
-       GL_STUB(IsSync, _gloffset_IsSync, IsSync@4)
-       GL_STUB(WaitSync, _gloffset_WaitSync, WaitSync@12)
-       GL_STUB(DrawElementsBaseVertex, _gloffset_DrawElementsBaseVertex, DrawElementsBaseVertex@20)
-       GL_STUB(DrawRangeElementsBaseVertex, _gloffset_DrawRangeElementsBaseVertex, DrawRangeElementsBaseVertex@28)
-       GL_STUB(MultiDrawElementsBaseVertex, _gloffset_MultiDrawElementsBaseVertex, MultiDrawElementsBaseVertex@24)
-       GL_STUB(PolygonOffsetEXT, _gloffset_PolygonOffsetEXT, PolygonOffsetEXT@8)
-       GL_STUB(_dispatch_stub_580, _gloffset_GetPixelTexGenParameterfvSGIS, _dispatch_stub_580@8)
-       HIDDEN(GL_PREFIX(_dispatch_stub_580, _dispatch_stub_580@8))
-       GL_STUB(_dispatch_stub_581, _gloffset_GetPixelTexGenParameterivSGIS, _dispatch_stub_581@8)
-       HIDDEN(GL_PREFIX(_dispatch_stub_581, _dispatch_stub_581@8))
-       GL_STUB(_dispatch_stub_582, _gloffset_PixelTexGenParameterfSGIS, _dispatch_stub_582@8)
-       HIDDEN(GL_PREFIX(_dispatch_stub_582, _dispatch_stub_582@8))
-       GL_STUB(_dispatch_stub_583, _gloffset_PixelTexGenParameterfvSGIS, _dispatch_stub_583@8)
-       HIDDEN(GL_PREFIX(_dispatch_stub_583, _dispatch_stub_583@8))
-       GL_STUB(_dispatch_stub_584, _gloffset_PixelTexGenParameteriSGIS, _dispatch_stub_584@8)
-       HIDDEN(GL_PREFIX(_dispatch_stub_584, _dispatch_stub_584@8))
-       GL_STUB(_dispatch_stub_585, _gloffset_PixelTexGenParameterivSGIS, _dispatch_stub_585@8)
-       HIDDEN(GL_PREFIX(_dispatch_stub_585, _dispatch_stub_585@8))
-       GL_STUB(_dispatch_stub_586, _gloffset_SampleMaskSGIS, _dispatch_stub_586@8)
-       HIDDEN(GL_PREFIX(_dispatch_stub_586, _dispatch_stub_586@8))
-       GL_STUB(_dispatch_stub_587, _gloffset_SamplePatternSGIS, _dispatch_stub_587@4)
-       HIDDEN(GL_PREFIX(_dispatch_stub_587, _dispatch_stub_587@4))
-       GL_STUB(ColorPointerEXT, _gloffset_ColorPointerEXT, ColorPointerEXT@20)
-       GL_STUB(EdgeFlagPointerEXT, _gloffset_EdgeFlagPointerEXT, EdgeFlagPointerEXT@12)
-       GL_STUB(IndexPointerEXT, _gloffset_IndexPointerEXT, IndexPointerEXT@16)
-       GL_STUB(NormalPointerEXT, _gloffset_NormalPointerEXT, NormalPointerEXT@16)
-       GL_STUB(TexCoordPointerEXT, _gloffset_TexCoordPointerEXT, TexCoordPointerEXT@20)
-       GL_STUB(VertexPointerEXT, _gloffset_VertexPointerEXT, VertexPointerEXT@20)
-       GL_STUB(PointParameterfEXT, _gloffset_PointParameterfEXT, PointParameterfEXT@8)
-       GL_STUB(PointParameterfvEXT, _gloffset_PointParameterfvEXT, PointParameterfvEXT@8)
-       GL_STUB(LockArraysEXT, _gloffset_LockArraysEXT, LockArraysEXT@8)
-       GL_STUB(UnlockArraysEXT, _gloffset_UnlockArraysEXT, UnlockArraysEXT@0)
-       GL_STUB(_dispatch_stub_598, _gloffset_CullParameterdvEXT, _dispatch_stub_598@8)
-       HIDDEN(GL_PREFIX(_dispatch_stub_598, _dispatch_stub_598@8))
-       GL_STUB(_dispatch_stub_599, _gloffset_CullParameterfvEXT, _dispatch_stub_599@8)
-       HIDDEN(GL_PREFIX(_dispatch_stub_599, _dispatch_stub_599@8))
-       GL_STUB(SecondaryColor3bEXT, _gloffset_SecondaryColor3bEXT, SecondaryColor3bEXT@12)
-       GL_STUB(SecondaryColor3bvEXT, _gloffset_SecondaryColor3bvEXT, SecondaryColor3bvEXT@4)
-       GL_STUB(SecondaryColor3dEXT, _gloffset_SecondaryColor3dEXT, SecondaryColor3dEXT@24)
-       GL_STUB(SecondaryColor3dvEXT, _gloffset_SecondaryColor3dvEXT, SecondaryColor3dvEXT@4)
-       GL_STUB(SecondaryColor3fEXT, _gloffset_SecondaryColor3fEXT, SecondaryColor3fEXT@12)
-       GL_STUB(SecondaryColor3fvEXT, _gloffset_SecondaryColor3fvEXT, SecondaryColor3fvEXT@4)
-       GL_STUB(SecondaryColor3iEXT, _gloffset_SecondaryColor3iEXT, SecondaryColor3iEXT@12)
-       GL_STUB(SecondaryColor3ivEXT, _gloffset_SecondaryColor3ivEXT, SecondaryColor3ivEXT@4)
-       GL_STUB(SecondaryColor3sEXT, _gloffset_SecondaryColor3sEXT, SecondaryColor3sEXT@12)
-       GL_STUB(SecondaryColor3svEXT, _gloffset_SecondaryColor3svEXT, SecondaryColor3svEXT@4)
-       GL_STUB(SecondaryColor3ubEXT, _gloffset_SecondaryColor3ubEXT, SecondaryColor3ubEXT@12)
-       GL_STUB(SecondaryColor3ubvEXT, _gloffset_SecondaryColor3ubvEXT, SecondaryColor3ubvEXT@4)
-       GL_STUB(SecondaryColor3uiEXT, _gloffset_SecondaryColor3uiEXT, SecondaryColor3uiEXT@12)
-       GL_STUB(SecondaryColor3uivEXT, _gloffset_SecondaryColor3uivEXT, SecondaryColor3uivEXT@4)
-       GL_STUB(SecondaryColor3usEXT, _gloffset_SecondaryColor3usEXT, SecondaryColor3usEXT@12)
-       GL_STUB(SecondaryColor3usvEXT, _gloffset_SecondaryColor3usvEXT, SecondaryColor3usvEXT@4)
-       GL_STUB(SecondaryColorPointerEXT, _gloffset_SecondaryColorPointerEXT, SecondaryColorPointerEXT@16)
-       GL_STUB(MultiDrawArraysEXT, _gloffset_MultiDrawArraysEXT, MultiDrawArraysEXT@16)
-       GL_STUB(MultiDrawElementsEXT, _gloffset_MultiDrawElementsEXT, MultiDrawElementsEXT@20)
-       GL_STUB(FogCoordPointerEXT, _gloffset_FogCoordPointerEXT, FogCoordPointerEXT@12)
-       GL_STUB(FogCoorddEXT, _gloffset_FogCoorddEXT, FogCoorddEXT@8)
-       GL_STUB(FogCoorddvEXT, _gloffset_FogCoorddvEXT, FogCoorddvEXT@4)
-       GL_STUB(FogCoordfEXT, _gloffset_FogCoordfEXT, FogCoordfEXT@4)
-       GL_STUB(FogCoordfvEXT, _gloffset_FogCoordfvEXT, FogCoordfvEXT@4)
-       GL_STUB(_dispatch_stub_624, _gloffset_PixelTexGenSGIX, _dispatch_stub_624@4)
-       HIDDEN(GL_PREFIX(_dispatch_stub_624, _dispatch_stub_624@4))
-       GL_STUB(BlendFuncSeparateEXT, _gloffset_BlendFuncSeparateEXT, BlendFuncSeparateEXT@16)
-       GL_STUB(FlushVertexArrayRangeNV, _gloffset_FlushVertexArrayRangeNV, FlushVertexArrayRangeNV@0)
-       GL_STUB(VertexArrayRangeNV, _gloffset_VertexArrayRangeNV, VertexArrayRangeNV@8)
-       GL_STUB(CombinerInputNV, _gloffset_CombinerInputNV, CombinerInputNV@24)
-       GL_STUB(CombinerOutputNV, _gloffset_CombinerOutputNV, CombinerOutputNV@40)
-       GL_STUB(CombinerParameterfNV, _gloffset_CombinerParameterfNV, CombinerParameterfNV@8)
-       GL_STUB(CombinerParameterfvNV, _gloffset_CombinerParameterfvNV, CombinerParameterfvNV@8)
-       GL_STUB(CombinerParameteriNV, _gloffset_CombinerParameteriNV, CombinerParameteriNV@8)
-       GL_STUB(CombinerParameterivNV, _gloffset_CombinerParameterivNV, CombinerParameterivNV@8)
-       GL_STUB(FinalCombinerInputNV, _gloffset_FinalCombinerInputNV, FinalCombinerInputNV@16)
-       GL_STUB(GetCombinerInputParameterfvNV, _gloffset_GetCombinerInputParameterfvNV, GetCombinerInputParameterfvNV@20)
-       GL_STUB(GetCombinerInputParameterivNV, _gloffset_GetCombinerInputParameterivNV, GetCombinerInputParameterivNV@20)
-       GL_STUB(GetCombinerOutputParameterfvNV, _gloffset_GetCombinerOutputParameterfvNV, GetCombinerOutputParameterfvNV@16)
-       GL_STUB(GetCombinerOutputParameterivNV, _gloffset_GetCombinerOutputParameterivNV, GetCombinerOutputParameterivNV@16)
-       GL_STUB(GetFinalCombinerInputParameterfvNV, _gloffset_GetFinalCombinerInputParameterfvNV, GetFinalCombinerInputParameterfvNV@12)
-       GL_STUB(GetFinalCombinerInputParameterivNV, _gloffset_GetFinalCombinerInputParameterivNV, GetFinalCombinerInputParameterivNV@12)
-       GL_STUB(ResizeBuffersMESA, _gloffset_ResizeBuffersMESA, ResizeBuffersMESA@0)
-       GL_STUB(WindowPos2dMESA, _gloffset_WindowPos2dMESA, WindowPos2dMESA@16)
-       GL_STUB(WindowPos2dvMESA, _gloffset_WindowPos2dvMESA, WindowPos2dvMESA@4)
-       GL_STUB(WindowPos2fMESA, _gloffset_WindowPos2fMESA, WindowPos2fMESA@8)
-       GL_STUB(WindowPos2fvMESA, _gloffset_WindowPos2fvMESA, WindowPos2fvMESA@4)
-       GL_STUB(WindowPos2iMESA, _gloffset_WindowPos2iMESA, WindowPos2iMESA@8)
-       GL_STUB(WindowPos2ivMESA, _gloffset_WindowPos2ivMESA, WindowPos2ivMESA@4)
-       GL_STUB(WindowPos2sMESA, _gloffset_WindowPos2sMESA, WindowPos2sMESA@8)
-       GL_STUB(WindowPos2svMESA, _gloffset_WindowPos2svMESA, WindowPos2svMESA@4)
-       GL_STUB(WindowPos3dMESA, _gloffset_WindowPos3dMESA, WindowPos3dMESA@24)
-       GL_STUB(WindowPos3dvMESA, _gloffset_WindowPos3dvMESA, WindowPos3dvMESA@4)
-       GL_STUB(WindowPos3fMESA, _gloffset_WindowPos3fMESA, WindowPos3fMESA@12)
-       GL_STUB(WindowPos3fvMESA, _gloffset_WindowPos3fvMESA, WindowPos3fvMESA@4)
-       GL_STUB(WindowPos3iMESA, _gloffset_WindowPos3iMESA, WindowPos3iMESA@12)
-       GL_STUB(WindowPos3ivMESA, _gloffset_WindowPos3ivMESA, WindowPos3ivMESA@4)
-       GL_STUB(WindowPos3sMESA, _gloffset_WindowPos3sMESA, WindowPos3sMESA@12)
-       GL_STUB(WindowPos3svMESA, _gloffset_WindowPos3svMESA, WindowPos3svMESA@4)
-       GL_STUB(WindowPos4dMESA, _gloffset_WindowPos4dMESA, WindowPos4dMESA@32)
-       GL_STUB(WindowPos4dvMESA, _gloffset_WindowPos4dvMESA, WindowPos4dvMESA@4)
-       GL_STUB(WindowPos4fMESA, _gloffset_WindowPos4fMESA, WindowPos4fMESA@16)
-       GL_STUB(WindowPos4fvMESA, _gloffset_WindowPos4fvMESA, WindowPos4fvMESA@4)
-       GL_STUB(WindowPos4iMESA, _gloffset_WindowPos4iMESA, WindowPos4iMESA@16)
-       GL_STUB(WindowPos4ivMESA, _gloffset_WindowPos4ivMESA, WindowPos4ivMESA@4)
-       GL_STUB(WindowPos4sMESA, _gloffset_WindowPos4sMESA, WindowPos4sMESA@16)
-       GL_STUB(WindowPos4svMESA, _gloffset_WindowPos4svMESA, WindowPos4svMESA@4)
-       GL_STUB(_dispatch_stub_666, _gloffset_MultiModeDrawArraysIBM, _dispatch_stub_666@20)
-       HIDDEN(GL_PREFIX(_dispatch_stub_666, _dispatch_stub_666@20))
-       GL_STUB(_dispatch_stub_667, _gloffset_MultiModeDrawElementsIBM, _dispatch_stub_667@24)
-       HIDDEN(GL_PREFIX(_dispatch_stub_667, _dispatch_stub_667@24))
-       GL_STUB(_dispatch_stub_668, _gloffset_DeleteFencesNV, _dispatch_stub_668@8)
-       HIDDEN(GL_PREFIX(_dispatch_stub_668, _dispatch_stub_668@8))
-       GL_STUB(_dispatch_stub_669, _gloffset_FinishFenceNV, _dispatch_stub_669@4)
-       HIDDEN(GL_PREFIX(_dispatch_stub_669, _dispatch_stub_669@4))
-       GL_STUB(_dispatch_stub_670, _gloffset_GenFencesNV, _dispatch_stub_670@8)
-       HIDDEN(GL_PREFIX(_dispatch_stub_670, _dispatch_stub_670@8))
-       GL_STUB(_dispatch_stub_671, _gloffset_GetFenceivNV, _dispatch_stub_671@12)
-       HIDDEN(GL_PREFIX(_dispatch_stub_671, _dispatch_stub_671@12))
-       GL_STUB(_dispatch_stub_672, _gloffset_IsFenceNV, _dispatch_stub_672@4)
-       HIDDEN(GL_PREFIX(_dispatch_stub_672, _dispatch_stub_672@4))
-       GL_STUB(_dispatch_stub_673, _gloffset_SetFenceNV, _dispatch_stub_673@8)
-       HIDDEN(GL_PREFIX(_dispatch_stub_673, _dispatch_stub_673@8))
-       GL_STUB(_dispatch_stub_674, _gloffset_TestFenceNV, _dispatch_stub_674@4)
-       HIDDEN(GL_PREFIX(_dispatch_stub_674, _dispatch_stub_674@4))
-       GL_STUB(AreProgramsResidentNV, _gloffset_AreProgramsResidentNV, AreProgramsResidentNV@12)
-       GL_STUB(BindProgramNV, _gloffset_BindProgramNV, BindProgramNV@8)
-       GL_STUB(DeleteProgramsNV, _gloffset_DeleteProgramsNV, DeleteProgramsNV@8)
-       GL_STUB(ExecuteProgramNV, _gloffset_ExecuteProgramNV, ExecuteProgramNV@12)
-       GL_STUB(GenProgramsNV, _gloffset_GenProgramsNV, GenProgramsNV@8)
-       GL_STUB(GetProgramParameterdvNV, _gloffset_GetProgramParameterdvNV, GetProgramParameterdvNV@16)
-       GL_STUB(GetProgramParameterfvNV, _gloffset_GetProgramParameterfvNV, GetProgramParameterfvNV@16)
-       GL_STUB(GetProgramStringNV, _gloffset_GetProgramStringNV, GetProgramStringNV@12)
-       GL_STUB(GetProgramivNV, _gloffset_GetProgramivNV, GetProgramivNV@12)
-       GL_STUB(GetTrackMatrixivNV, _gloffset_GetTrackMatrixivNV, GetTrackMatrixivNV@16)
-       GL_STUB(GetVertexAttribPointervNV, _gloffset_GetVertexAttribPointervNV, GetVertexAttribPointervNV@12)
-       GL_STUB(GetVertexAttribdvNV, _gloffset_GetVertexAttribdvNV, GetVertexAttribdvNV@12)
-       GL_STUB(GetVertexAttribfvNV, _gloffset_GetVertexAttribfvNV, GetVertexAttribfvNV@12)
-       GL_STUB(GetVertexAttribivNV, _gloffset_GetVertexAttribivNV, GetVertexAttribivNV@12)
-       GL_STUB(IsProgramNV, _gloffset_IsProgramNV, IsProgramNV@4)
-       GL_STUB(LoadProgramNV, _gloffset_LoadProgramNV, LoadProgramNV@16)
-       GL_STUB(ProgramParameters4dvNV, _gloffset_ProgramParameters4dvNV, ProgramParameters4dvNV@16)
-       GL_STUB(ProgramParameters4fvNV, _gloffset_ProgramParameters4fvNV, ProgramParameters4fvNV@16)
-       GL_STUB(RequestResidentProgramsNV, _gloffset_RequestResidentProgramsNV, RequestResidentProgramsNV@8)
-       GL_STUB(TrackMatrixNV, _gloffset_TrackMatrixNV, TrackMatrixNV@16)
-       GL_STUB(VertexAttrib1dNV, _gloffset_VertexAttrib1dNV, VertexAttrib1dNV@12)
-       GL_STUB(VertexAttrib1dvNV, _gloffset_VertexAttrib1dvNV, VertexAttrib1dvNV@8)
-       GL_STUB(VertexAttrib1fNV, _gloffset_VertexAttrib1fNV, VertexAttrib1fNV@8)
-       GL_STUB(VertexAttrib1fvNV, _gloffset_VertexAttrib1fvNV, VertexAttrib1fvNV@8)
-       GL_STUB(VertexAttrib1sNV, _gloffset_VertexAttrib1sNV, VertexAttrib1sNV@8)
-       GL_STUB(VertexAttrib1svNV, _gloffset_VertexAttrib1svNV, VertexAttrib1svNV@8)
-       GL_STUB(VertexAttrib2dNV, _gloffset_VertexAttrib2dNV, VertexAttrib2dNV@20)
-       GL_STUB(VertexAttrib2dvNV, _gloffset_VertexAttrib2dvNV, VertexAttrib2dvNV@8)
-       GL_STUB(VertexAttrib2fNV, _gloffset_VertexAttrib2fNV, VertexAttrib2fNV@12)
-       GL_STUB(VertexAttrib2fvNV, _gloffset_VertexAttrib2fvNV, VertexAttrib2fvNV@8)
-       GL_STUB(VertexAttrib2sNV, _gloffset_VertexAttrib2sNV, VertexAttrib2sNV@12)
-       GL_STUB(VertexAttrib2svNV, _gloffset_VertexAttrib2svNV, VertexAttrib2svNV@8)
-       GL_STUB(VertexAttrib3dNV, _gloffset_VertexAttrib3dNV, VertexAttrib3dNV@28)
-       GL_STUB(VertexAttrib3dvNV, _gloffset_VertexAttrib3dvNV, VertexAttrib3dvNV@8)
-       GL_STUB(VertexAttrib3fNV, _gloffset_VertexAttrib3fNV, VertexAttrib3fNV@16)
-       GL_STUB(VertexAttrib3fvNV, _gloffset_VertexAttrib3fvNV, VertexAttrib3fvNV@8)
-       GL_STUB(VertexAttrib3sNV, _gloffset_VertexAttrib3sNV, VertexAttrib3sNV@16)
-       GL_STUB(VertexAttrib3svNV, _gloffset_VertexAttrib3svNV, VertexAttrib3svNV@8)
-       GL_STUB(VertexAttrib4dNV, _gloffset_VertexAttrib4dNV, VertexAttrib4dNV@36)
-       GL_STUB(VertexAttrib4dvNV, _gloffset_VertexAttrib4dvNV, VertexAttrib4dvNV@8)
-       GL_STUB(VertexAttrib4fNV, _gloffset_VertexAttrib4fNV, VertexAttrib4fNV@20)
-       GL_STUB(VertexAttrib4fvNV, _gloffset_VertexAttrib4fvNV, VertexAttrib4fvNV@8)
-       GL_STUB(VertexAttrib4sNV, _gloffset_VertexAttrib4sNV, VertexAttrib4sNV@20)
-       GL_STUB(VertexAttrib4svNV, _gloffset_VertexAttrib4svNV, VertexAttrib4svNV@8)
-       GL_STUB(VertexAttrib4ubNV, _gloffset_VertexAttrib4ubNV, VertexAttrib4ubNV@20)
-       GL_STUB(VertexAttrib4ubvNV, _gloffset_VertexAttrib4ubvNV, VertexAttrib4ubvNV@8)
-       GL_STUB(VertexAttribPointerNV, _gloffset_VertexAttribPointerNV, VertexAttribPointerNV@20)
-       GL_STUB(VertexAttribs1dvNV, _gloffset_VertexAttribs1dvNV, VertexAttribs1dvNV@12)
-       GL_STUB(VertexAttribs1fvNV, _gloffset_VertexAttribs1fvNV, VertexAttribs1fvNV@12)
-       GL_STUB(VertexAttribs1svNV, _gloffset_VertexAttribs1svNV, VertexAttribs1svNV@12)
-       GL_STUB(VertexAttribs2dvNV, _gloffset_VertexAttribs2dvNV, VertexAttribs2dvNV@12)
-       GL_STUB(VertexAttribs2fvNV, _gloffset_VertexAttribs2fvNV, VertexAttribs2fvNV@12)
-       GL_STUB(VertexAttribs2svNV, _gloffset_VertexAttribs2svNV, VertexAttribs2svNV@12)
-       GL_STUB(VertexAttribs3dvNV, _gloffset_VertexAttribs3dvNV, VertexAttribs3dvNV@12)
-       GL_STUB(VertexAttribs3fvNV, _gloffset_VertexAttribs3fvNV, VertexAttribs3fvNV@12)
-       GL_STUB(VertexAttribs3svNV, _gloffset_VertexAttribs3svNV, VertexAttribs3svNV@12)
-       GL_STUB(VertexAttribs4dvNV, _gloffset_VertexAttribs4dvNV, VertexAttribs4dvNV@12)
-       GL_STUB(VertexAttribs4fvNV, _gloffset_VertexAttribs4fvNV, VertexAttribs4fvNV@12)
-       GL_STUB(VertexAttribs4svNV, _gloffset_VertexAttribs4svNV, VertexAttribs4svNV@12)
-       GL_STUB(VertexAttribs4ubvNV, _gloffset_VertexAttribs4ubvNV, VertexAttribs4ubvNV@12)
-       GL_STUB(GetTexBumpParameterfvATI, _gloffset_GetTexBumpParameterfvATI, GetTexBumpParameterfvATI@8)
-       GL_STUB(GetTexBumpParameterivATI, _gloffset_GetTexBumpParameterivATI, GetTexBumpParameterivATI@8)
-       GL_STUB(TexBumpParameterfvATI, _gloffset_TexBumpParameterfvATI, TexBumpParameterfvATI@8)
-       GL_STUB(TexBumpParameterivATI, _gloffset_TexBumpParameterivATI, TexBumpParameterivATI@8)
-       GL_STUB(AlphaFragmentOp1ATI, _gloffset_AlphaFragmentOp1ATI, AlphaFragmentOp1ATI@24)
-       GL_STUB(AlphaFragmentOp2ATI, _gloffset_AlphaFragmentOp2ATI, AlphaFragmentOp2ATI@36)
-       GL_STUB(AlphaFragmentOp3ATI, _gloffset_AlphaFragmentOp3ATI, AlphaFragmentOp3ATI@48)
-       GL_STUB(BeginFragmentShaderATI, _gloffset_BeginFragmentShaderATI, BeginFragmentShaderATI@0)
-       GL_STUB(BindFragmentShaderATI, _gloffset_BindFragmentShaderATI, BindFragmentShaderATI@4)
-       GL_STUB(ColorFragmentOp1ATI, _gloffset_ColorFragmentOp1ATI, ColorFragmentOp1ATI@28)
-       GL_STUB(ColorFragmentOp2ATI, _gloffset_ColorFragmentOp2ATI, ColorFragmentOp2ATI@40)
-       GL_STUB(ColorFragmentOp3ATI, _gloffset_ColorFragmentOp3ATI, ColorFragmentOp3ATI@52)
-       GL_STUB(DeleteFragmentShaderATI, _gloffset_DeleteFragmentShaderATI, DeleteFragmentShaderATI@4)
-       GL_STUB(EndFragmentShaderATI, _gloffset_EndFragmentShaderATI, EndFragmentShaderATI@0)
-       GL_STUB(GenFragmentShadersATI, _gloffset_GenFragmentShadersATI, GenFragmentShadersATI@4)
-       GL_STUB(PassTexCoordATI, _gloffset_PassTexCoordATI, PassTexCoordATI@12)
-       GL_STUB(SampleMapATI, _gloffset_SampleMapATI, SampleMapATI@12)
-       GL_STUB(SetFragmentShaderConstantATI, _gloffset_SetFragmentShaderConstantATI, SetFragmentShaderConstantATI@8)
-       GL_STUB(PointParameteriNV, _gloffset_PointParameteriNV, PointParameteriNV@8)
-       GL_STUB(PointParameterivNV, _gloffset_PointParameterivNV, PointParameterivNV@8)
-       GL_STUB(_dispatch_stub_755, _gloffset_ActiveStencilFaceEXT, _dispatch_stub_755@4)
-       HIDDEN(GL_PREFIX(_dispatch_stub_755, _dispatch_stub_755@4))
-       GL_STUB(_dispatch_stub_756, _gloffset_BindVertexArrayAPPLE, _dispatch_stub_756@4)
-       HIDDEN(GL_PREFIX(_dispatch_stub_756, _dispatch_stub_756@4))
-       GL_STUB(_dispatch_stub_757, _gloffset_DeleteVertexArraysAPPLE, _dispatch_stub_757@8)
-       HIDDEN(GL_PREFIX(_dispatch_stub_757, _dispatch_stub_757@8))
-       GL_STUB(_dispatch_stub_758, _gloffset_GenVertexArraysAPPLE, _dispatch_stub_758@8)
-       HIDDEN(GL_PREFIX(_dispatch_stub_758, _dispatch_stub_758@8))
-       GL_STUB(_dispatch_stub_759, _gloffset_IsVertexArrayAPPLE, _dispatch_stub_759@4)
-       HIDDEN(GL_PREFIX(_dispatch_stub_759, _dispatch_stub_759@4))
-       GL_STUB(GetProgramNamedParameterdvNV, _gloffset_GetProgramNamedParameterdvNV, GetProgramNamedParameterdvNV@16)
-       GL_STUB(GetProgramNamedParameterfvNV, _gloffset_GetProgramNamedParameterfvNV, GetProgramNamedParameterfvNV@16)
-       GL_STUB(ProgramNamedParameter4dNV, _gloffset_ProgramNamedParameter4dNV, ProgramNamedParameter4dNV@44)
-       GL_STUB(ProgramNamedParameter4dvNV, _gloffset_ProgramNamedParameter4dvNV, ProgramNamedParameter4dvNV@16)
-       GL_STUB(ProgramNamedParameter4fNV, _gloffset_ProgramNamedParameter4fNV, ProgramNamedParameter4fNV@28)
-       GL_STUB(ProgramNamedParameter4fvNV, _gloffset_ProgramNamedParameter4fvNV, ProgramNamedParameter4fvNV@16)
-       GL_STUB(_dispatch_stub_766, _gloffset_DepthBoundsEXT, _dispatch_stub_766@16)
-       HIDDEN(GL_PREFIX(_dispatch_stub_766, _dispatch_stub_766@16))
-       GL_STUB(_dispatch_stub_767, _gloffset_BlendEquationSeparateEXT, _dispatch_stub_767@8)
-       HIDDEN(GL_PREFIX(_dispatch_stub_767, _dispatch_stub_767@8))
-       GL_STUB(BindFramebufferEXT, _gloffset_BindFramebufferEXT, BindFramebufferEXT@8)
-       GL_STUB(BindRenderbufferEXT, _gloffset_BindRenderbufferEXT, BindRenderbufferEXT@8)
-       GL_STUB(CheckFramebufferStatusEXT, _gloffset_CheckFramebufferStatusEXT, CheckFramebufferStatusEXT@4)
-       GL_STUB(DeleteFramebuffersEXT, _gloffset_DeleteFramebuffersEXT, DeleteFramebuffersEXT@8)
-       GL_STUB(DeleteRenderbuffersEXT, _gloffset_DeleteRenderbuffersEXT, DeleteRenderbuffersEXT@8)
-       GL_STUB(FramebufferRenderbufferEXT, _gloffset_FramebufferRenderbufferEXT, FramebufferRenderbufferEXT@16)
-       GL_STUB(FramebufferTexture1DEXT, _gloffset_FramebufferTexture1DEXT, FramebufferTexture1DEXT@20)
-       GL_STUB(FramebufferTexture2DEXT, _gloffset_FramebufferTexture2DEXT, FramebufferTexture2DEXT@20)
-       GL_STUB(FramebufferTexture3DEXT, _gloffset_FramebufferTexture3DEXT, FramebufferTexture3DEXT@24)
-       GL_STUB(GenFramebuffersEXT, _gloffset_GenFramebuffersEXT, GenFramebuffersEXT@8)
-       GL_STUB(GenRenderbuffersEXT, _gloffset_GenRenderbuffersEXT, GenRenderbuffersEXT@8)
-       GL_STUB(GenerateMipmapEXT, _gloffset_GenerateMipmapEXT, GenerateMipmapEXT@4)
-       GL_STUB(GetFramebufferAttachmentParameterivEXT, _gloffset_GetFramebufferAttachmentParameterivEXT, GetFramebufferAttachmentParameterivEXT@16)
-       GL_STUB(GetRenderbufferParameterivEXT, _gloffset_GetRenderbufferParameterivEXT, GetRenderbufferParameterivEXT@12)
-       GL_STUB(IsFramebufferEXT, _gloffset_IsFramebufferEXT, IsFramebufferEXT@4)
-       GL_STUB(IsRenderbufferEXT, _gloffset_IsRenderbufferEXT, IsRenderbufferEXT@4)
-       GL_STUB(RenderbufferStorageEXT, _gloffset_RenderbufferStorageEXT, RenderbufferStorageEXT@16)
-       GL_STUB(_dispatch_stub_785, _gloffset_BlitFramebufferEXT, _dispatch_stub_785@40)
-       HIDDEN(GL_PREFIX(_dispatch_stub_785, _dispatch_stub_785@40))
-       GL_STUB(_dispatch_stub_786, _gloffset_BufferParameteriAPPLE, _dispatch_stub_786@12)
-       HIDDEN(GL_PREFIX(_dispatch_stub_786, _dispatch_stub_786@12))
-       GL_STUB(_dispatch_stub_787, _gloffset_FlushMappedBufferRangeAPPLE, _dispatch_stub_787@12)
-       HIDDEN(GL_PREFIX(_dispatch_stub_787, _dispatch_stub_787@12))
-       GL_STUB(FramebufferTextureLayerEXT, _gloffset_FramebufferTextureLayerEXT, FramebufferTextureLayerEXT@20)
-       GL_STUB(ColorMaskIndexedEXT, _gloffset_ColorMaskIndexedEXT, ColorMaskIndexedEXT@20)
-       GL_STUB(DisableIndexedEXT, _gloffset_DisableIndexedEXT, DisableIndexedEXT@8)
-       GL_STUB(EnableIndexedEXT, _gloffset_EnableIndexedEXT, EnableIndexedEXT@8)
-       GL_STUB(GetBooleanIndexedvEXT, _gloffset_GetBooleanIndexedvEXT, GetBooleanIndexedvEXT@12)
-       GL_STUB(GetIntegerIndexedvEXT, _gloffset_GetIntegerIndexedvEXT, GetIntegerIndexedvEXT@12)
-       GL_STUB(IsEnabledIndexedEXT, _gloffset_IsEnabledIndexedEXT, IsEnabledIndexedEXT@8)
-       GL_STUB(BeginConditionalRenderNV, _gloffset_BeginConditionalRenderNV, BeginConditionalRenderNV@8)
-       GL_STUB(EndConditionalRenderNV, _gloffset_EndConditionalRenderNV, EndConditionalRenderNV@0)
-       GL_STUB(BeginTransformFeedbackEXT, _gloffset_BeginTransformFeedbackEXT, BeginTransformFeedbackEXT@4)
-       GL_STUB(BindBufferBaseEXT, _gloffset_BindBufferBaseEXT, BindBufferBaseEXT@12)
-       GL_STUB(BindBufferOffsetEXT, _gloffset_BindBufferOffsetEXT, BindBufferOffsetEXT@16)
-       GL_STUB(BindBufferRangeEXT, _gloffset_BindBufferRangeEXT, BindBufferRangeEXT@20)
-       GL_STUB(EndTransformFeedbackEXT, _gloffset_EndTransformFeedbackEXT, EndTransformFeedbackEXT@0)
-       GL_STUB(GetTransformFeedbackVaryingEXT, _gloffset_GetTransformFeedbackVaryingEXT, GetTransformFeedbackVaryingEXT@28)
-       GL_STUB(TransformFeedbackVaryingsEXT, _gloffset_TransformFeedbackVaryingsEXT, TransformFeedbackVaryingsEXT@16)
-       GL_STUB(ProvokingVertexEXT, _gloffset_ProvokingVertexEXT, ProvokingVertexEXT@4)
-       GL_STUB(_dispatch_stub_805, _gloffset_GetTexParameterPointervAPPLE, _dispatch_stub_805@12)
-       HIDDEN(GL_PREFIX(_dispatch_stub_805, _dispatch_stub_805@12))
-       GL_STUB(_dispatch_stub_806, _gloffset_TextureRangeAPPLE, _dispatch_stub_806@12)
-       HIDDEN(GL_PREFIX(_dispatch_stub_806, _dispatch_stub_806@12))
-       GL_STUB(GetObjectParameterivAPPLE, _gloffset_GetObjectParameterivAPPLE, GetObjectParameterivAPPLE@16)
-       GL_STUB(ObjectPurgeableAPPLE, _gloffset_ObjectPurgeableAPPLE, ObjectPurgeableAPPLE@12)
-       GL_STUB(ObjectUnpurgeableAPPLE, _gloffset_ObjectUnpurgeableAPPLE, ObjectUnpurgeableAPPLE@12)
-       GL_STUB(_dispatch_stub_810, _gloffset_StencilFuncSeparateATI, _dispatch_stub_810@16)
-       HIDDEN(GL_PREFIX(_dispatch_stub_810, _dispatch_stub_810@16))
-       GL_STUB(_dispatch_stub_811, _gloffset_ProgramEnvParameters4fvEXT, _dispatch_stub_811@16)
-       HIDDEN(GL_PREFIX(_dispatch_stub_811, _dispatch_stub_811@16))
-       GL_STUB(_dispatch_stub_812, _gloffset_ProgramLocalParameters4fvEXT, _dispatch_stub_812@16)
-       HIDDEN(GL_PREFIX(_dispatch_stub_812, _dispatch_stub_812@16))
-       GL_STUB(_dispatch_stub_813, _gloffset_GetQueryObjecti64vEXT, _dispatch_stub_813@12)
-       HIDDEN(GL_PREFIX(_dispatch_stub_813, _dispatch_stub_813@12))
-       GL_STUB(_dispatch_stub_814, _gloffset_GetQueryObjectui64vEXT, _dispatch_stub_814@12)
-       HIDDEN(GL_PREFIX(_dispatch_stub_814, _dispatch_stub_814@12))
-       GL_STUB(EGLImageTargetRenderbufferStorageOES, _gloffset_EGLImageTargetRenderbufferStorageOES, EGLImageTargetRenderbufferStorageOES@8)
-       GL_STUB(EGLImageTargetTexture2DOES, _gloffset_EGLImageTargetTexture2DOES, EGLImageTargetTexture2DOES@8)
-       GL_STUB_ALIAS(ArrayElementEXT, _gloffset_ArrayElement, ArrayElementEXT@4, ArrayElement, ArrayElement@4)
-       GL_STUB_ALIAS(BindTextureEXT, _gloffset_BindTexture, BindTextureEXT@8, BindTexture, BindTexture@8)
-       GL_STUB_ALIAS(DrawArraysEXT, _gloffset_DrawArrays, DrawArraysEXT@12, DrawArrays, DrawArrays@12)
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(AreTexturesResidentEXT, _gloffset_AreTexturesResident, AreTexturesResidentEXT@12, AreTexturesResident, AreTexturesResident@12)
-#endif
-       GL_STUB_ALIAS(CopyTexImage1DEXT, _gloffset_CopyTexImage1D, CopyTexImage1DEXT@28, CopyTexImage1D, CopyTexImage1D@28)
-       GL_STUB_ALIAS(CopyTexImage2DEXT, _gloffset_CopyTexImage2D, CopyTexImage2DEXT@32, CopyTexImage2D, CopyTexImage2D@32)
-       GL_STUB_ALIAS(CopyTexSubImage1DEXT, _gloffset_CopyTexSubImage1D, CopyTexSubImage1DEXT@24, CopyTexSubImage1D, CopyTexSubImage1D@24)
-       GL_STUB_ALIAS(CopyTexSubImage2DEXT, _gloffset_CopyTexSubImage2D, CopyTexSubImage2DEXT@32, CopyTexSubImage2D, CopyTexSubImage2D@32)
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(DeleteTexturesEXT, _gloffset_DeleteTextures, DeleteTexturesEXT@8, DeleteTextures, DeleteTextures@8)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(GenTexturesEXT, _gloffset_GenTextures, GenTexturesEXT@8, GenTextures, GenTextures@8)
-#endif
-       GL_STUB_ALIAS(GetPointervEXT, _gloffset_GetPointerv, GetPointervEXT@8, GetPointerv, GetPointerv@8)
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(IsTextureEXT, _gloffset_IsTexture, IsTextureEXT@4, IsTexture, IsTexture@4)
-#endif
-       GL_STUB_ALIAS(PrioritizeTexturesEXT, _gloffset_PrioritizeTextures, PrioritizeTexturesEXT@12, PrioritizeTextures, PrioritizeTextures@12)
-       GL_STUB_ALIAS(TexSubImage1DEXT, _gloffset_TexSubImage1D, TexSubImage1DEXT@28, TexSubImage1D, TexSubImage1D@28)
-       GL_STUB_ALIAS(TexSubImage2DEXT, _gloffset_TexSubImage2D, TexSubImage2DEXT@36, TexSubImage2D, TexSubImage2D@36)
-       GL_STUB_ALIAS(BlendColorEXT, _gloffset_BlendColor, BlendColorEXT@16, BlendColor, BlendColor@16)
-       GL_STUB_ALIAS(BlendEquationEXT, _gloffset_BlendEquation, BlendEquationEXT@4, BlendEquation, BlendEquation@4)
-       GL_STUB_ALIAS(DrawRangeElementsEXT, _gloffset_DrawRangeElements, DrawRangeElementsEXT@24, DrawRangeElements, DrawRangeElements@24)
-       GL_STUB_ALIAS(ColorTableEXT, _gloffset_ColorTable, ColorTableEXT@24, ColorTable, ColorTable@24)
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(GetColorTableEXT, _gloffset_GetColorTable, GetColorTableEXT@16, GetColorTable, GetColorTable@16)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(GetColorTableParameterfvEXT, _gloffset_GetColorTableParameterfv, GetColorTableParameterfvEXT@12, GetColorTableParameterfv, GetColorTableParameterfv@12)
-#endif
-#ifndef GLX_INDIRECT_RENDERING
-       GL_STUB_ALIAS(GetColorTableParameterivEXT, _gloffset_GetColorTableParameteriv, GetColorTableParameterivEXT@12, GetColorTableParameteriv, GetColorTableParameteriv@12)
-#endif
-       GL_STUB_ALIAS(TexImage3DEXT, _gloffset_TexImage3D, TexImage3DEXT@40, TexImage3D, TexImage3D@40)
-       GL_STUB_ALIAS(TexSubImage3DEXT, _gloffset_TexSubImage3D, TexSubImage3DEXT@44, TexSubImage3D, TexSubImage3D@44)
-       GL_STUB_ALIAS(CopyTexSubImage3DEXT, _gloffset_CopyTexSubImage3D, CopyTexSubImage3DEXT@36, CopyTexSubImage3D, CopyTexSubImage3D@36)
-       GL_STUB_ALIAS(ActiveTexture, _gloffset_ActiveTextureARB, ActiveTexture@4, ActiveTextureARB, ActiveTextureARB@4)
-       GL_STUB_ALIAS(ClientActiveTexture, _gloffset_ClientActiveTextureARB, ClientActiveTexture@4, ClientActiveTextureARB, ClientActiveTextureARB@4)
-       GL_STUB_ALIAS(MultiTexCoord1d, _gloffset_MultiTexCoord1dARB, MultiTexCoord1d@12, MultiTexCoord1dARB, MultiTexCoord1dARB@12)
-       GL_STUB_ALIAS(MultiTexCoord1dv, _gloffset_MultiTexCoord1dvARB, MultiTexCoord1dv@8, MultiTexCoord1dvARB, MultiTexCoord1dvARB@8)
-       GL_STUB_ALIAS(MultiTexCoord1f, _gloffset_MultiTexCoord1fARB, MultiTexCoord1f@8, MultiTexCoord1fARB, MultiTexCoord1fARB@8)
-       GL_STUB_ALIAS(MultiTexCoord1fv, _gloffset_MultiTexCoord1fvARB, MultiTexCoord1fv@8, MultiTexCoord1fvARB, MultiTexCoord1fvARB@8)
-       GL_STUB_ALIAS(MultiTexCoord1i, _gloffset_MultiTexCoord1iARB, MultiTexCoord1i@8, MultiTexCoord1iARB, MultiTexCoord1iARB@8)
-       GL_STUB_ALIAS(MultiTexCoord1iv, _gloffset_MultiTexCoord1ivARB, MultiTexCoord1iv@8, MultiTexCoord1ivARB, MultiTexCoord1ivARB@8)
-       GL_STUB_ALIAS(MultiTexCoord1s, _gloffset_MultiTexCoord1sARB, MultiTexCoord1s@8, MultiTexCoord1sARB, MultiTexCoord1sARB@8)
-       GL_STUB_ALIAS(MultiTexCoord1sv, _gloffset_MultiTexCoord1svARB, MultiTexCoord1sv@8, MultiTexCoord1svARB, MultiTexCoord1svARB@8)
-       GL_STUB_ALIAS(MultiTexCoord2d, _gloffset_MultiTexCoord2dARB, MultiTexCoord2d@20, MultiTexCoord2dARB, MultiTexCoord2dARB@20)
-       GL_STUB_ALIAS(MultiTexCoord2dv, _gloffset_MultiTexCoord2dvARB, MultiTexCoord2dv@8, MultiTexCoord2dvARB, MultiTexCoord2dvARB@8)
-       GL_STUB_ALIAS(MultiTexCoord2f, _gloffset_MultiTexCoord2fARB, MultiTexCoord2f@12, MultiTexCoord2fARB, MultiTexCoord2fARB@12)
-       GL_STUB_ALIAS(MultiTexCoord2fv, _gloffset_MultiTexCoord2fvARB, MultiTexCoord2fv@8, MultiTexCoord2fvARB, MultiTexCoord2fvARB@8)
-       GL_STUB_ALIAS(MultiTexCoord2i, _gloffset_MultiTexCoord2iARB, MultiTexCoord2i@12, MultiTexCoord2iARB, MultiTexCoord2iARB@12)
-       GL_STUB_ALIAS(MultiTexCoord2iv, _gloffset_MultiTexCoord2ivARB, MultiTexCoord2iv@8, MultiTexCoord2ivARB, MultiTexCoord2ivARB@8)
-       GL_STUB_ALIAS(MultiTexCoord2s, _gloffset_MultiTexCoord2sARB, MultiTexCoord2s@12, MultiTexCoord2sARB, MultiTexCoord2sARB@12)
-       GL_STUB_ALIAS(MultiTexCoord2sv, _gloffset_MultiTexCoord2svARB, MultiTexCoord2sv@8, MultiTexCoord2svARB, MultiTexCoord2svARB@8)
-       GL_STUB_ALIAS(MultiTexCoord3d, _gloffset_MultiTexCoord3dARB, MultiTexCoord3d@28, MultiTexCoord3dARB, MultiTexCoord3dARB@28)
-       GL_STUB_ALIAS(MultiTexCoord3dv, _gloffset_MultiTexCoord3dvARB, MultiTexCoord3dv@8, MultiTexCoord3dvARB, MultiTexCoord3dvARB@8)
-       GL_STUB_ALIAS(MultiTexCoord3f, _gloffset_MultiTexCoord3fARB, MultiTexCoord3f@16, MultiTexCoord3fARB, MultiTexCoord3fARB@16)
-       GL_STUB_ALIAS(MultiTexCoord3fv, _gloffset_MultiTexCoord3fvARB, MultiTexCoord3fv@8, MultiTexCoord3fvARB, MultiTexCoord3fvARB@8)
-       GL_STUB_ALIAS(MultiTexCoord3i, _gloffset_MultiTexCoord3iARB, MultiTexCoord3i@16, MultiTexCoord3iARB, MultiTexCoord3iARB@16)
-       GL_STUB_ALIAS(MultiTexCoord3iv, _gloffset_MultiTexCoord3ivARB, MultiTexCoord3iv@8, MultiTexCoord3ivARB, MultiTexCoord3ivARB@8)
-       GL_STUB_ALIAS(MultiTexCoord3s, _gloffset_MultiTexCoord3sARB, MultiTexCoord3s@16, MultiTexCoord3sARB, MultiTexCoord3sARB@16)
-       GL_STUB_ALIAS(MultiTexCoord3sv, _gloffset_MultiTexCoord3svARB, MultiTexCoord3sv@8, MultiTexCoord3svARB, MultiTexCoord3svARB@8)
-       GL_STUB_ALIAS(MultiTexCoord4d, _gloffset_MultiTexCoord4dARB, MultiTexCoord4d@36, MultiTexCoord4dARB, MultiTexCoord4dARB@36)
-       GL_STUB_ALIAS(MultiTexCoord4dv, _gloffset_MultiTexCoord4dvARB, MultiTexCoord4dv@8, MultiTexCoord4dvARB, MultiTexCoord4dvARB@8)
-       GL_STUB_ALIAS(MultiTexCoord4f, _gloffset_MultiTexCoord4fARB, MultiTexCoord4f@20, MultiTexCoord4fARB, MultiTexCoord4fARB@20)
-       GL_STUB_ALIAS(MultiTexCoord4fv, _gloffset_MultiTexCoord4fvARB, MultiTexCoord4fv@8, MultiTexCoord4fvARB, MultiTexCoord4fvARB@8)
-       GL_STUB_ALIAS(MultiTexCoord4i, _gloffset_MultiTexCoord4iARB, MultiTexCoord4i@20, MultiTexCoord4iARB, MultiTexCoord4iARB@20)
-       GL_STUB_ALIAS(MultiTexCoord4iv, _gloffset_MultiTexCoord4ivARB, MultiTexCoord4iv@8, MultiTexCoord4ivARB, MultiTexCoord4ivARB@8)
-       GL_STUB_ALIAS(MultiTexCoord4s, _gloffset_MultiTexCoord4sARB, MultiTexCoord4s@20, MultiTexCoord4sARB, MultiTexCoord4sARB@20)
-       GL_STUB_ALIAS(MultiTexCoord4sv, _gloffset_MultiTexCoord4svARB, MultiTexCoord4sv@8, MultiTexCoord4svARB, MultiTexCoord4svARB@8)
-       GL_STUB_ALIAS(DrawArraysInstancedARB, _gloffset_DrawArraysInstanced, DrawArraysInstancedARB@16, DrawArraysInstanced, DrawArraysInstanced@16)
-       GL_STUB_ALIAS(DrawArraysInstancedEXT, _gloffset_DrawArraysInstanced, DrawArraysInstancedEXT@16, DrawArraysInstanced, DrawArraysInstanced@16)
-       GL_STUB_ALIAS(DrawElementsInstancedARB, _gloffset_DrawElementsInstanced, DrawElementsInstancedARB@20, DrawElementsInstanced, DrawElementsInstanced@20)
-       GL_STUB_ALIAS(DrawElementsInstancedEXT, _gloffset_DrawElementsInstanced, DrawElementsInstancedEXT@20, DrawElementsInstanced, DrawElementsInstanced@20)
-       GL_STUB_ALIAS(LoadTransposeMatrixd, _gloffset_LoadTransposeMatrixdARB, LoadTransposeMatrixd@4, LoadTransposeMatrixdARB, LoadTransposeMatrixdARB@4)
-       GL_STUB_ALIAS(LoadTransposeMatrixf, _gloffset_LoadTransposeMatrixfARB, LoadTransposeMatrixf@4, LoadTransposeMatrixfARB, LoadTransposeMatrixfARB@4)
-       GL_STUB_ALIAS(MultTransposeMatrixd, _gloffset_MultTransposeMatrixdARB, MultTransposeMatrixd@4, MultTransposeMatrixdARB, MultTransposeMatrixdARB@4)
-       GL_STUB_ALIAS(MultTransposeMatrixf, _gloffset_MultTransposeMatrixfARB, MultTransposeMatrixf@4, MultTransposeMatrixfARB, MultTransposeMatrixfARB@4)
-       GL_STUB_ALIAS(SampleCoverage, _gloffset_SampleCoverageARB, SampleCoverage@8, SampleCoverageARB, SampleCoverageARB@8)
-       GL_STUB_ALIAS(CompressedTexImage1D, _gloffset_CompressedTexImage1DARB, CompressedTexImage1D@28, CompressedTexImage1DARB, CompressedTexImage1DARB@28)
-       GL_STUB_ALIAS(CompressedTexImage2D, _gloffset_CompressedTexImage2DARB, CompressedTexImage2D@32, CompressedTexImage2DARB, CompressedTexImage2DARB@32)
-       GL_STUB_ALIAS(CompressedTexImage3D, _gloffset_CompressedTexImage3DARB, CompressedTexImage3D@36, CompressedTexImage3DARB, CompressedTexImage3DARB@36)
-       GL_STUB_ALIAS(CompressedTexSubImage1D, _gloffset_CompressedTexSubImage1DARB, CompressedTexSubImage1D@28, CompressedTexSubImage1DARB, CompressedTexSubImage1DARB@28)
-       GL_STUB_ALIAS(CompressedTexSubImage2D, _gloffset_CompressedTexSubImage2DARB, CompressedTexSubImage2D@36, CompressedTexSubImage2DARB, CompressedTexSubImage2DARB@36)
-       GL_STUB_ALIAS(CompressedTexSubImage3D, _gloffset_CompressedTexSubImage3DARB, CompressedTexSubImage3D@44, CompressedTexSubImage3DARB, CompressedTexSubImage3DARB@44)
-       GL_STUB_ALIAS(GetCompressedTexImage, _gloffset_GetCompressedTexImageARB, GetCompressedTexImage@12, GetCompressedTexImageARB, GetCompressedTexImageARB@12)
-       GL_STUB_ALIAS(DisableVertexAttribArray, _gloffset_DisableVertexAttribArrayARB, DisableVertexAttribArray@4, DisableVertexAttribArrayARB, DisableVertexAttribArrayARB@4)
-       GL_STUB_ALIAS(EnableVertexAttribArray, _gloffset_EnableVertexAttribArrayARB, EnableVertexAttribArray@4, EnableVertexAttribArrayARB, EnableVertexAttribArrayARB@4)
-       GL_STUB_ALIAS(GetVertexAttribdv, _gloffset_GetVertexAttribdvARB, GetVertexAttribdv@12, GetVertexAttribdvARB, GetVertexAttribdvARB@12)
-       GL_STUB_ALIAS(GetVertexAttribfv, _gloffset_GetVertexAttribfvARB, GetVertexAttribfv@12, GetVertexAttribfvARB, GetVertexAttribfvARB@12)
-       GL_STUB_ALIAS(GetVertexAttribiv, _gloffset_GetVertexAttribivARB, GetVertexAttribiv@12, GetVertexAttribivARB, GetVertexAttribivARB@12)
-       GL_STUB_ALIAS(ProgramParameter4dNV, _gloffset_ProgramEnvParameter4dARB, ProgramParameter4dNV@40, ProgramEnvParameter4dARB, ProgramEnvParameter4dARB@40)
-       GL_STUB_ALIAS(ProgramParameter4dvNV, _gloffset_ProgramEnvParameter4dvARB, ProgramParameter4dvNV@12, ProgramEnvParameter4dvARB, ProgramEnvParameter4dvARB@12)
-       GL_STUB_ALIAS(ProgramParameter4fNV, _gloffset_ProgramEnvParameter4fARB, ProgramParameter4fNV@24, ProgramEnvParameter4fARB, ProgramEnvParameter4fARB@24)
-       GL_STUB_ALIAS(ProgramParameter4fvNV, _gloffset_ProgramEnvParameter4fvARB, ProgramParameter4fvNV@12, ProgramEnvParameter4fvARB, ProgramEnvParameter4fvARB@12)
-       GL_STUB_ALIAS(VertexAttrib1d, _gloffset_VertexAttrib1dARB, VertexAttrib1d@12, VertexAttrib1dARB, VertexAttrib1dARB@12)
-       GL_STUB_ALIAS(VertexAttrib1dv, _gloffset_VertexAttrib1dvARB, VertexAttrib1dv@8, VertexAttrib1dvARB, VertexAttrib1dvARB@8)
-       GL_STUB_ALIAS(VertexAttrib1f, _gloffset_VertexAttrib1fARB, VertexAttrib1f@8, VertexAttrib1fARB, VertexAttrib1fARB@8)
-       GL_STUB_ALIAS(VertexAttrib1fv, _gloffset_VertexAttrib1fvARB, VertexAttrib1fv@8, VertexAttrib1fvARB, VertexAttrib1fvARB@8)
-       GL_STUB_ALIAS(VertexAttrib1s, _gloffset_VertexAttrib1sARB, VertexAttrib1s@8, VertexAttrib1sARB, VertexAttrib1sARB@8)
-       GL_STUB_ALIAS(VertexAttrib1sv, _gloffset_VertexAttrib1svARB, VertexAttrib1sv@8, VertexAttrib1svARB, VertexAttrib1svARB@8)
-       GL_STUB_ALIAS(VertexAttrib2d, _gloffset_VertexAttrib2dARB, VertexAttrib2d@20, VertexAttrib2dARB, VertexAttrib2dARB@20)
-       GL_STUB_ALIAS(VertexAttrib2dv, _gloffset_VertexAttrib2dvARB, VertexAttrib2dv@8, VertexAttrib2dvARB, VertexAttrib2dvARB@8)
-       GL_STUB_ALIAS(VertexAttrib2f, _gloffset_VertexAttrib2fARB, VertexAttrib2f@12, VertexAttrib2fARB, VertexAttrib2fARB@12)
-       GL_STUB_ALIAS(VertexAttrib2fv, _gloffset_VertexAttrib2fvARB, VertexAttrib2fv@8, VertexAttrib2fvARB, VertexAttrib2fvARB@8)
-       GL_STUB_ALIAS(VertexAttrib2s, _gloffset_VertexAttrib2sARB, VertexAttrib2s@12, VertexAttrib2sARB, VertexAttrib2sARB@12)
-       GL_STUB_ALIAS(VertexAttrib2sv, _gloffset_VertexAttrib2svARB, VertexAttrib2sv@8, VertexAttrib2svARB, VertexAttrib2svARB@8)
-       GL_STUB_ALIAS(VertexAttrib3d, _gloffset_VertexAttrib3dARB, VertexAttrib3d@28, VertexAttrib3dARB, VertexAttrib3dARB@28)
-       GL_STUB_ALIAS(VertexAttrib3dv, _gloffset_VertexAttrib3dvARB, VertexAttrib3dv@8, VertexAttrib3dvARB, VertexAttrib3dvARB@8)
-       GL_STUB_ALIAS(VertexAttrib3f, _gloffset_VertexAttrib3fARB, VertexAttrib3f@16, VertexAttrib3fARB, VertexAttrib3fARB@16)
-       GL_STUB_ALIAS(VertexAttrib3fv, _gloffset_VertexAttrib3fvARB, VertexAttrib3fv@8, VertexAttrib3fvARB, VertexAttrib3fvARB@8)
-       GL_STUB_ALIAS(VertexAttrib3s, _gloffset_VertexAttrib3sARB, VertexAttrib3s@16, VertexAttrib3sARB, VertexAttrib3sARB@16)
-       GL_STUB_ALIAS(VertexAttrib3sv, _gloffset_VertexAttrib3svARB, VertexAttrib3sv@8, VertexAttrib3svARB, VertexAttrib3svARB@8)
-       GL_STUB_ALIAS(VertexAttrib4Nbv, _gloffset_VertexAttrib4NbvARB, VertexAttrib4Nbv@8, VertexAttrib4NbvARB, VertexAttrib4NbvARB@8)
-       GL_STUB_ALIAS(VertexAttrib4Niv, _gloffset_VertexAttrib4NivARB, VertexAttrib4Niv@8, VertexAttrib4NivARB, VertexAttrib4NivARB@8)
-       GL_STUB_ALIAS(VertexAttrib4Nsv, _gloffset_VertexAttrib4NsvARB, VertexAttrib4Nsv@8, VertexAttrib4NsvARB, VertexAttrib4NsvARB@8)
-       GL_STUB_ALIAS(VertexAttrib4Nub, _gloffset_VertexAttrib4NubARB, VertexAttrib4Nub@20, VertexAttrib4NubARB, VertexAttrib4NubARB@20)
-       GL_STUB_ALIAS(VertexAttrib4Nubv, _gloffset_VertexAttrib4NubvARB, VertexAttrib4Nubv@8, VertexAttrib4NubvARB, VertexAttrib4NubvARB@8)
-       GL_STUB_ALIAS(VertexAttrib4Nuiv, _gloffset_VertexAttrib4NuivARB, VertexAttrib4Nuiv@8, VertexAttrib4NuivARB, VertexAttrib4NuivARB@8)
-       GL_STUB_ALIAS(VertexAttrib4Nusv, _gloffset_VertexAttrib4NusvARB, VertexAttrib4Nusv@8, VertexAttrib4NusvARB, VertexAttrib4NusvARB@8)
-       GL_STUB_ALIAS(VertexAttrib4bv, _gloffset_VertexAttrib4bvARB, VertexAttrib4bv@8, VertexAttrib4bvARB, VertexAttrib4bvARB@8)
-       GL_STUB_ALIAS(VertexAttrib4d, _gloffset_VertexAttrib4dARB, VertexAttrib4d@36, VertexAttrib4dARB, VertexAttrib4dARB@36)
-       GL_STUB_ALIAS(VertexAttrib4dv, _gloffset_VertexAttrib4dvARB, VertexAttrib4dv@8, VertexAttrib4dvARB, VertexAttrib4dvARB@8)
-       GL_STUB_ALIAS(VertexAttrib4f, _gloffset_VertexAttrib4fARB, VertexAttrib4f@20, VertexAttrib4fARB, VertexAttrib4fARB@20)
-       GL_STUB_ALIAS(VertexAttrib4fv, _gloffset_VertexAttrib4fvARB, VertexAttrib4fv@8, VertexAttrib4fvARB, VertexAttrib4fvARB@8)
-       GL_STUB_ALIAS(VertexAttrib4iv, _gloffset_VertexAttrib4ivARB, VertexAttrib4iv@8, VertexAttrib4ivARB, VertexAttrib4ivARB@8)
-       GL_STUB_ALIAS(VertexAttrib4s, _gloffset_VertexAttrib4sARB, VertexAttrib4s@20, VertexAttrib4sARB, VertexAttrib4sARB@20)
-       GL_STUB_ALIAS(VertexAttrib4sv, _gloffset_VertexAttrib4svARB, VertexAttrib4sv@8, VertexAttrib4svARB, VertexAttrib4svARB@8)
-       GL_STUB_ALIAS(VertexAttrib4ubv, _gloffset_VertexAttrib4ubvARB, VertexAttrib4ubv@8, VertexAttrib4ubvARB, VertexAttrib4ubvARB@8)
-       GL_STUB_ALIAS(VertexAttrib4uiv, _gloffset_VertexAttrib4uivARB, VertexAttrib4uiv@8, VertexAttrib4uivARB, VertexAttrib4uivARB@8)
-       GL_STUB_ALIAS(VertexAttrib4usv, _gloffset_VertexAttrib4usvARB, VertexAttrib4usv@8, VertexAttrib4usvARB, VertexAttrib4usvARB@8)
-       GL_STUB_ALIAS(VertexAttribPointer, _gloffset_VertexAttribPointerARB, VertexAttribPointer@24, VertexAttribPointerARB, VertexAttribPointerARB@24)
-       GL_STUB_ALIAS(BindBuffer, _gloffset_BindBufferARB, BindBuffer@8, BindBufferARB, BindBufferARB@8)
-       GL_STUB_ALIAS(BufferData, _gloffset_BufferDataARB, BufferData@16, BufferDataARB, BufferDataARB@16)
-       GL_STUB_ALIAS(BufferSubData, _gloffset_BufferSubDataARB, BufferSubData@16, BufferSubDataARB, BufferSubDataARB@16)
-       GL_STUB_ALIAS(DeleteBuffers, _gloffset_DeleteBuffersARB, DeleteBuffers@8, DeleteBuffersARB, DeleteBuffersARB@8)
-       GL_STUB_ALIAS(GenBuffers, _gloffset_GenBuffersARB, GenBuffers@8, GenBuffersARB, GenBuffersARB@8)
-       GL_STUB_ALIAS(GetBufferParameteriv, _gloffset_GetBufferParameterivARB, GetBufferParameteriv@12, GetBufferParameterivARB, GetBufferParameterivARB@12)
-       GL_STUB_ALIAS(GetBufferPointerv, _gloffset_GetBufferPointervARB, GetBufferPointerv@12, GetBufferPointervARB, GetBufferPointervARB@12)
-       GL_STUB_ALIAS(GetBufferSubData, _gloffset_GetBufferSubDataARB, GetBufferSubData@16, GetBufferSubDataARB, GetBufferSubDataARB@16)
-       GL_STUB_ALIAS(IsBuffer, _gloffset_IsBufferARB, IsBuffer@4, IsBufferARB, IsBufferARB@4)
-       GL_STUB_ALIAS(MapBuffer, _gloffset_MapBufferARB, MapBuffer@8, MapBufferARB, MapBufferARB@8)
-       GL_STUB_ALIAS(UnmapBuffer, _gloffset_UnmapBufferARB, UnmapBuffer@4, UnmapBufferARB, UnmapBufferARB@4)
-       GL_STUB_ALIAS(BeginQuery, _gloffset_BeginQueryARB, BeginQuery@8, BeginQueryARB, BeginQueryARB@8)
-       GL_STUB_ALIAS(DeleteQueries, _gloffset_DeleteQueriesARB, DeleteQueries@8, DeleteQueriesARB, DeleteQueriesARB@8)
-       GL_STUB_ALIAS(EndQuery, _gloffset_EndQueryARB, EndQuery@4, EndQueryARB, EndQueryARB@4)
-       GL_STUB_ALIAS(GenQueries, _gloffset_GenQueriesARB, GenQueries@8, GenQueriesARB, GenQueriesARB@8)
-       GL_STUB_ALIAS(GetQueryObjectiv, _gloffset_GetQueryObjectivARB, GetQueryObjectiv@12, GetQueryObjectivARB, GetQueryObjectivARB@12)
-       GL_STUB_ALIAS(GetQueryObjectuiv, _gloffset_GetQueryObjectuivARB, GetQueryObjectuiv@12, GetQueryObjectuivARB, GetQueryObjectuivARB@12)
-       GL_STUB_ALIAS(GetQueryiv, _gloffset_GetQueryivARB, GetQueryiv@12, GetQueryivARB, GetQueryivARB@12)
-       GL_STUB_ALIAS(IsQuery, _gloffset_IsQueryARB, IsQuery@4, IsQueryARB, IsQueryARB@4)
-       GL_STUB_ALIAS(CompileShader, _gloffset_CompileShaderARB, CompileShader@4, CompileShaderARB, CompileShaderARB@4)
-       GL_STUB_ALIAS(GetActiveUniform, _gloffset_GetActiveUniformARB, GetActiveUniform@28, GetActiveUniformARB, GetActiveUniformARB@28)
-       GL_STUB_ALIAS(GetShaderSource, _gloffset_GetShaderSourceARB, GetShaderSource@16, GetShaderSourceARB, GetShaderSourceARB@16)
-       GL_STUB_ALIAS(GetUniformLocation, _gloffset_GetUniformLocationARB, GetUniformLocation@8, GetUniformLocationARB, GetUniformLocationARB@8)
-       GL_STUB_ALIAS(GetUniformfv, _gloffset_GetUniformfvARB, GetUniformfv@12, GetUniformfvARB, GetUniformfvARB@12)
-       GL_STUB_ALIAS(GetUniformiv, _gloffset_GetUniformivARB, GetUniformiv@12, GetUniformivARB, GetUniformivARB@12)
-       GL_STUB_ALIAS(LinkProgram, _gloffset_LinkProgramARB, LinkProgram@4, LinkProgramARB, LinkProgramARB@4)
-       GL_STUB_ALIAS(ShaderSource, _gloffset_ShaderSourceARB, ShaderSource@16, ShaderSourceARB, ShaderSourceARB@16)
-       GL_STUB_ALIAS(Uniform1f, _gloffset_Uniform1fARB, Uniform1f@8, Uniform1fARB, Uniform1fARB@8)
-       GL_STUB_ALIAS(Uniform1fv, _gloffset_Uniform1fvARB, Uniform1fv@12, Uniform1fvARB, Uniform1fvARB@12)
-       GL_STUB_ALIAS(Uniform1i, _gloffset_Uniform1iARB, Uniform1i@8, Uniform1iARB, Uniform1iARB@8)
-       GL_STUB_ALIAS(Uniform1iv, _gloffset_Uniform1ivARB, Uniform1iv@12, Uniform1ivARB, Uniform1ivARB@12)
-       GL_STUB_ALIAS(Uniform2f, _gloffset_Uniform2fARB, Uniform2f@12, Uniform2fARB, Uniform2fARB@12)
-       GL_STUB_ALIAS(Uniform2fv, _gloffset_Uniform2fvARB, Uniform2fv@12, Uniform2fvARB, Uniform2fvARB@12)
-       GL_STUB_ALIAS(Uniform2i, _gloffset_Uniform2iARB, Uniform2i@12, Uniform2iARB, Uniform2iARB@12)
-       GL_STUB_ALIAS(Uniform2iv, _gloffset_Uniform2ivARB, Uniform2iv@12, Uniform2ivARB, Uniform2ivARB@12)
-       GL_STUB_ALIAS(Uniform3f, _gloffset_Uniform3fARB, Uniform3f@16, Uniform3fARB, Uniform3fARB@16)
-       GL_STUB_ALIAS(Uniform3fv, _gloffset_Uniform3fvARB, Uniform3fv@12, Uniform3fvARB, Uniform3fvARB@12)
-       GL_STUB_ALIAS(Uniform3i, _gloffset_Uniform3iARB, Uniform3i@16, Uniform3iARB, Uniform3iARB@16)
-       GL_STUB_ALIAS(Uniform3iv, _gloffset_Uniform3ivARB, Uniform3iv@12, Uniform3ivARB, Uniform3ivARB@12)
-       GL_STUB_ALIAS(Uniform4f, _gloffset_Uniform4fARB, Uniform4f@20, Uniform4fARB, Uniform4fARB@20)
-       GL_STUB_ALIAS(Uniform4fv, _gloffset_Uniform4fvARB, Uniform4fv@12, Uniform4fvARB, Uniform4fvARB@12)
-       GL_STUB_ALIAS(Uniform4i, _gloffset_Uniform4iARB, Uniform4i@20, Uniform4iARB, Uniform4iARB@20)
-       GL_STUB_ALIAS(Uniform4iv, _gloffset_Uniform4ivARB, Uniform4iv@12, Uniform4ivARB, Uniform4ivARB@12)
-       GL_STUB_ALIAS(UniformMatrix2fv, _gloffset_UniformMatrix2fvARB, UniformMatrix2fv@16, UniformMatrix2fvARB, UniformMatrix2fvARB@16)
-       GL_STUB_ALIAS(UniformMatrix3fv, _gloffset_UniformMatrix3fvARB, UniformMatrix3fv@16, UniformMatrix3fvARB, UniformMatrix3fvARB@16)
-       GL_STUB_ALIAS(UniformMatrix4fv, _gloffset_UniformMatrix4fvARB, UniformMatrix4fv@16, UniformMatrix4fvARB, UniformMatrix4fvARB@16)
-       GL_STUB_ALIAS(UseProgram, _gloffset_UseProgramObjectARB, UseProgram@4, UseProgramObjectARB, UseProgramObjectARB@4)
-       GL_STUB_ALIAS(ValidateProgram, _gloffset_ValidateProgramARB, ValidateProgram@4, ValidateProgramARB, ValidateProgramARB@4)
-       GL_STUB_ALIAS(BindAttribLocation, _gloffset_BindAttribLocationARB, BindAttribLocation@12, BindAttribLocationARB, BindAttribLocationARB@12)
-       GL_STUB_ALIAS(GetActiveAttrib, _gloffset_GetActiveAttribARB, GetActiveAttrib@28, GetActiveAttribARB, GetActiveAttribARB@28)
-       GL_STUB_ALIAS(GetAttribLocation, _gloffset_GetAttribLocationARB, GetAttribLocation@8, GetAttribLocationARB, GetAttribLocationARB@8)
-       GL_STUB_ALIAS(DrawBuffers, _gloffset_DrawBuffersARB, DrawBuffers@8, DrawBuffersARB, DrawBuffersARB@8)
-       GL_STUB_ALIAS(DrawBuffersATI, _gloffset_DrawBuffersARB, DrawBuffersATI@8, DrawBuffersARB, DrawBuffersARB@8)
-       GL_STUB_ALIAS(RenderbufferStorageMultisampleEXT, _gloffset_RenderbufferStorageMultisample, RenderbufferStorageMultisampleEXT@20, RenderbufferStorageMultisample, RenderbufferStorageMultisample@20)
-       GL_STUB_ALIAS(PointParameterf, _gloffset_PointParameterfEXT, PointParameterf@8, PointParameterfEXT, PointParameterfEXT@8)
-       GL_STUB_ALIAS(PointParameterfARB, _gloffset_PointParameterfEXT, PointParameterfARB@8, PointParameterfEXT, PointParameterfEXT@8)
-       GL_STUB_ALIAS(PointParameterfv, _gloffset_PointParameterfvEXT, PointParameterfv@8, PointParameterfvEXT, PointParameterfvEXT@8)
-       GL_STUB_ALIAS(PointParameterfvARB, _gloffset_PointParameterfvEXT, PointParameterfvARB@8, PointParameterfvEXT, PointParameterfvEXT@8)
-       GL_STUB_ALIAS(SecondaryColor3b, _gloffset_SecondaryColor3bEXT, SecondaryColor3b@12, SecondaryColor3bEXT, SecondaryColor3bEXT@12)
-       GL_STUB_ALIAS(SecondaryColor3bv, _gloffset_SecondaryColor3bvEXT, SecondaryColor3bv@4, SecondaryColor3bvEXT, SecondaryColor3bvEXT@4)
-       GL_STUB_ALIAS(SecondaryColor3d, _gloffset_SecondaryColor3dEXT, SecondaryColor3d@24, SecondaryColor3dEXT, SecondaryColor3dEXT@24)
-       GL_STUB_ALIAS(SecondaryColor3dv, _gloffset_SecondaryColor3dvEXT, SecondaryColor3dv@4, SecondaryColor3dvEXT, SecondaryColor3dvEXT@4)
-       GL_STUB_ALIAS(SecondaryColor3f, _gloffset_SecondaryColor3fEXT, SecondaryColor3f@12, SecondaryColor3fEXT, SecondaryColor3fEXT@12)
-       GL_STUB_ALIAS(SecondaryColor3fv, _gloffset_SecondaryColor3fvEXT, SecondaryColor3fv@4, SecondaryColor3fvEXT, SecondaryColor3fvEXT@4)
-       GL_STUB_ALIAS(SecondaryColor3i, _gloffset_SecondaryColor3iEXT, SecondaryColor3i@12, SecondaryColor3iEXT, SecondaryColor3iEXT@12)
-       GL_STUB_ALIAS(SecondaryColor3iv, _gloffset_SecondaryColor3ivEXT, SecondaryColor3iv@4, SecondaryColor3ivEXT, SecondaryColor3ivEXT@4)
-       GL_STUB_ALIAS(SecondaryColor3s, _gloffset_SecondaryColor3sEXT, SecondaryColor3s@12, SecondaryColor3sEXT, SecondaryColor3sEXT@12)
-       GL_STUB_ALIAS(SecondaryColor3sv, _gloffset_SecondaryColor3svEXT, SecondaryColor3sv@4, SecondaryColor3svEXT, SecondaryColor3svEXT@4)
-       GL_STUB_ALIAS(SecondaryColor3ub, _gloffset_SecondaryColor3ubEXT, SecondaryColor3ub@12, SecondaryColor3ubEXT, SecondaryColor3ubEXT@12)
-       GL_STUB_ALIAS(SecondaryColor3ubv, _gloffset_SecondaryColor3ubvEXT, SecondaryColor3ubv@4, SecondaryColor3ubvEXT, SecondaryColor3ubvEXT@4)
-       GL_STUB_ALIAS(SecondaryColor3ui, _gloffset_SecondaryColor3uiEXT, SecondaryColor3ui@12, SecondaryColor3uiEXT, SecondaryColor3uiEXT@12)
-       GL_STUB_ALIAS(SecondaryColor3uiv, _gloffset_SecondaryColor3uivEXT, SecondaryColor3uiv@4, SecondaryColor3uivEXT, SecondaryColor3uivEXT@4)
-       GL_STUB_ALIAS(SecondaryColor3us, _gloffset_SecondaryColor3usEXT, SecondaryColor3us@12, SecondaryColor3usEXT, SecondaryColor3usEXT@12)
-       GL_STUB_ALIAS(SecondaryColor3usv, _gloffset_SecondaryColor3usvEXT, SecondaryColor3usv@4, SecondaryColor3usvEXT, SecondaryColor3usvEXT@4)
-       GL_STUB_ALIAS(SecondaryColorPointer, _gloffset_SecondaryColorPointerEXT, SecondaryColorPointer@16, SecondaryColorPointerEXT, SecondaryColorPointerEXT@16)
-       GL_STUB_ALIAS(MultiDrawArrays, _gloffset_MultiDrawArraysEXT, MultiDrawArrays@16, MultiDrawArraysEXT, MultiDrawArraysEXT@16)
-       GL_STUB_ALIAS(MultiDrawElements, _gloffset_MultiDrawElementsEXT, MultiDrawElements@20, MultiDrawElementsEXT, MultiDrawElementsEXT@20)
-       GL_STUB_ALIAS(FogCoordPointer, _gloffset_FogCoordPointerEXT, FogCoordPointer@12, FogCoordPointerEXT, FogCoordPointerEXT@12)
-       GL_STUB_ALIAS(FogCoordd, _gloffset_FogCoorddEXT, FogCoordd@8, FogCoorddEXT, FogCoorddEXT@8)
-       GL_STUB_ALIAS(FogCoorddv, _gloffset_FogCoorddvEXT, FogCoorddv@4, FogCoorddvEXT, FogCoorddvEXT@4)
-       GL_STUB_ALIAS(FogCoordf, _gloffset_FogCoordfEXT, FogCoordf@4, FogCoordfEXT, FogCoordfEXT@4)
-       GL_STUB_ALIAS(FogCoordfv, _gloffset_FogCoordfvEXT, FogCoordfv@4, FogCoordfvEXT, FogCoordfvEXT@4)
-       GL_STUB_ALIAS(BlendFuncSeparate, _gloffset_BlendFuncSeparateEXT, BlendFuncSeparate@16, BlendFuncSeparateEXT, BlendFuncSeparateEXT@16)
-       GL_STUB_ALIAS(WindowPos2d, _gloffset_WindowPos2dMESA, WindowPos2d@16, WindowPos2dMESA, WindowPos2dMESA@16)
-       GL_STUB_ALIAS(WindowPos2dARB, _gloffset_WindowPos2dMESA, WindowPos2dARB@16, WindowPos2dMESA, WindowPos2dMESA@16)
-       GL_STUB_ALIAS(WindowPos2dv, _gloffset_WindowPos2dvMESA, WindowPos2dv@4, WindowPos2dvMESA, WindowPos2dvMESA@4)
-       GL_STUB_ALIAS(WindowPos2dvARB, _gloffset_WindowPos2dvMESA, WindowPos2dvARB@4, WindowPos2dvMESA, WindowPos2dvMESA@4)
-       GL_STUB_ALIAS(WindowPos2f, _gloffset_WindowPos2fMESA, WindowPos2f@8, WindowPos2fMESA, WindowPos2fMESA@8)
-       GL_STUB_ALIAS(WindowPos2fARB, _gloffset_WindowPos2fMESA, WindowPos2fARB@8, WindowPos2fMESA, WindowPos2fMESA@8)
-       GL_STUB_ALIAS(WindowPos2fv, _gloffset_WindowPos2fvMESA, WindowPos2fv@4, WindowPos2fvMESA, WindowPos2fvMESA@4)
-       GL_STUB_ALIAS(WindowPos2fvARB, _gloffset_WindowPos2fvMESA, WindowPos2fvARB@4, WindowPos2fvMESA, WindowPos2fvMESA@4)
-       GL_STUB_ALIAS(WindowPos2i, _gloffset_WindowPos2iMESA, WindowPos2i@8, WindowPos2iMESA, WindowPos2iMESA@8)
-       GL_STUB_ALIAS(WindowPos2iARB, _gloffset_WindowPos2iMESA, WindowPos2iARB@8, WindowPos2iMESA, WindowPos2iMESA@8)
-       GL_STUB_ALIAS(WindowPos2iv, _gloffset_WindowPos2ivMESA, WindowPos2iv@4, WindowPos2ivMESA, WindowPos2ivMESA@4)
-       GL_STUB_ALIAS(WindowPos2ivARB, _gloffset_WindowPos2ivMESA, WindowPos2ivARB@4, WindowPos2ivMESA, WindowPos2ivMESA@4)
-       GL_STUB_ALIAS(WindowPos2s, _gloffset_WindowPos2sMESA, WindowPos2s@8, WindowPos2sMESA, WindowPos2sMESA@8)
-       GL_STUB_ALIAS(WindowPos2sARB, _gloffset_WindowPos2sMESA, WindowPos2sARB@8, WindowPos2sMESA, WindowPos2sMESA@8)
-       GL_STUB_ALIAS(WindowPos2sv, _gloffset_WindowPos2svMESA, WindowPos2sv@4, WindowPos2svMESA, WindowPos2svMESA@4)
-       GL_STUB_ALIAS(WindowPos2svARB, _gloffset_WindowPos2svMESA, WindowPos2svARB@4, WindowPos2svMESA, WindowPos2svMESA@4)
-       GL_STUB_ALIAS(WindowPos3d, _gloffset_WindowPos3dMESA, WindowPos3d@24, WindowPos3dMESA, WindowPos3dMESA@24)
-       GL_STUB_ALIAS(WindowPos3dARB, _gloffset_WindowPos3dMESA, WindowPos3dARB@24, WindowPos3dMESA, WindowPos3dMESA@24)
-       GL_STUB_ALIAS(WindowPos3dv, _gloffset_WindowPos3dvMESA, WindowPos3dv@4, WindowPos3dvMESA, WindowPos3dvMESA@4)
-       GL_STUB_ALIAS(WindowPos3dvARB, _gloffset_WindowPos3dvMESA, WindowPos3dvARB@4, WindowPos3dvMESA, WindowPos3dvMESA@4)
-       GL_STUB_ALIAS(WindowPos3f, _gloffset_WindowPos3fMESA, WindowPos3f@12, WindowPos3fMESA, WindowPos3fMESA@12)
-       GL_STUB_ALIAS(WindowPos3fARB, _gloffset_WindowPos3fMESA, WindowPos3fARB@12, WindowPos3fMESA, WindowPos3fMESA@12)
-       GL_STUB_ALIAS(WindowPos3fv, _gloffset_WindowPos3fvMESA, WindowPos3fv@4, WindowPos3fvMESA, WindowPos3fvMESA@4)
-       GL_STUB_ALIAS(WindowPos3fvARB, _gloffset_WindowPos3fvMESA, WindowPos3fvARB@4, WindowPos3fvMESA, WindowPos3fvMESA@4)
-       GL_STUB_ALIAS(WindowPos3i, _gloffset_WindowPos3iMESA, WindowPos3i@12, WindowPos3iMESA, WindowPos3iMESA@12)
-       GL_STUB_ALIAS(WindowPos3iARB, _gloffset_WindowPos3iMESA, WindowPos3iARB@12, WindowPos3iMESA, WindowPos3iMESA@12)
-       GL_STUB_ALIAS(WindowPos3iv, _gloffset_WindowPos3ivMESA, WindowPos3iv@4, WindowPos3ivMESA, WindowPos3ivMESA@4)
-       GL_STUB_ALIAS(WindowPos3ivARB, _gloffset_WindowPos3ivMESA, WindowPos3ivARB@4, WindowPos3ivMESA, WindowPos3ivMESA@4)
-       GL_STUB_ALIAS(WindowPos3s, _gloffset_WindowPos3sMESA, WindowPos3s@12, WindowPos3sMESA, WindowPos3sMESA@12)
-       GL_STUB_ALIAS(WindowPos3sARB, _gloffset_WindowPos3sMESA, WindowPos3sARB@12, WindowPos3sMESA, WindowPos3sMESA@12)
-       GL_STUB_ALIAS(WindowPos3sv, _gloffset_WindowPos3svMESA, WindowPos3sv@4, WindowPos3svMESA, WindowPos3svMESA@4)
-       GL_STUB_ALIAS(WindowPos3svARB, _gloffset_WindowPos3svMESA, WindowPos3svARB@4, WindowPos3svMESA, WindowPos3svMESA@4)
-       GL_STUB_ALIAS(BindProgramARB, _gloffset_BindProgramNV, BindProgramARB@8, BindProgramNV, BindProgramNV@8)
-       GL_STUB_ALIAS(DeleteProgramsARB, _gloffset_DeleteProgramsNV, DeleteProgramsARB@8, DeleteProgramsNV, DeleteProgramsNV@8)
-       GL_STUB_ALIAS(GenProgramsARB, _gloffset_GenProgramsNV, GenProgramsARB@8, GenProgramsNV, GenProgramsNV@8)
-       GL_STUB_ALIAS(GetVertexAttribPointerv, _gloffset_GetVertexAttribPointervNV, GetVertexAttribPointerv@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12)
-       GL_STUB_ALIAS(GetVertexAttribPointervARB, _gloffset_GetVertexAttribPointervNV, GetVertexAttribPointervARB@12, GetVertexAttribPointervNV, GetVertexAttribPointervNV@12)
-       GL_STUB_ALIAS(IsProgramARB, _gloffset_IsProgramNV, IsProgramARB@4, IsProgramNV, IsProgramNV@4)
-       GL_STUB_ALIAS(PointParameteri, _gloffset_PointParameteriNV, PointParameteri@8, PointParameteriNV, PointParameteriNV@8)
-       GL_STUB_ALIAS(PointParameteriv, _gloffset_PointParameterivNV, PointParameteriv@8, PointParameterivNV, PointParameterivNV@8)
-       GL_STUB_ALIAS(DeleteVertexArrays, _gloffset_DeleteVertexArraysAPPLE, DeleteVertexArrays@8, _dispatch_stub_757, _dispatch_stub_757@8)
-       GL_STUB_ALIAS(IsVertexArray, _gloffset_IsVertexArrayAPPLE, IsVertexArray@4, _dispatch_stub_759, _dispatch_stub_759@4)
-       GL_STUB_ALIAS(BlendEquationSeparate, _gloffset_BlendEquationSeparateEXT, BlendEquationSeparate@8, _dispatch_stub_767, _dispatch_stub_767@8)
-       GL_STUB_ALIAS(BindFramebuffer, _gloffset_BindFramebufferEXT, BindFramebuffer@8, BindFramebufferEXT, BindFramebufferEXT@8)
-       GL_STUB_ALIAS(BindRenderbuffer, _gloffset_BindRenderbufferEXT, BindRenderbuffer@8, BindRenderbufferEXT, BindRenderbufferEXT@8)
-       GL_STUB_ALIAS(CheckFramebufferStatus, _gloffset_CheckFramebufferStatusEXT, CheckFramebufferStatus@4, CheckFramebufferStatusEXT, CheckFramebufferStatusEXT@4)
-       GL_STUB_ALIAS(DeleteFramebuffers, _gloffset_DeleteFramebuffersEXT, DeleteFramebuffers@8, DeleteFramebuffersEXT, DeleteFramebuffersEXT@8)
-       GL_STUB_ALIAS(DeleteRenderbuffers, _gloffset_DeleteRenderbuffersEXT, DeleteRenderbuffers@8, DeleteRenderbuffersEXT, DeleteRenderbuffersEXT@8)
-       GL_STUB_ALIAS(FramebufferRenderbuffer, _gloffset_FramebufferRenderbufferEXT, FramebufferRenderbuffer@16, FramebufferRenderbufferEXT, FramebufferRenderbufferEXT@16)
-       GL_STUB_ALIAS(FramebufferTexture1D, _gloffset_FramebufferTexture1DEXT, FramebufferTexture1D@20, FramebufferTexture1DEXT, FramebufferTexture1DEXT@20)
-       GL_STUB_ALIAS(FramebufferTexture2D, _gloffset_FramebufferTexture2DEXT, FramebufferTexture2D@20, FramebufferTexture2DEXT, FramebufferTexture2DEXT@20)
-       GL_STUB_ALIAS(FramebufferTexture3D, _gloffset_FramebufferTexture3DEXT, FramebufferTexture3D@24, FramebufferTexture3DEXT, FramebufferTexture3DEXT@24)
-       GL_STUB_ALIAS(GenFramebuffers, _gloffset_GenFramebuffersEXT, GenFramebuffers@8, GenFramebuffersEXT, GenFramebuffersEXT@8)
-       GL_STUB_ALIAS(GenRenderbuffers, _gloffset_GenRenderbuffersEXT, GenRenderbuffers@8, GenRenderbuffersEXT, GenRenderbuffersEXT@8)
-       GL_STUB_ALIAS(GenerateMipmap, _gloffset_GenerateMipmapEXT, GenerateMipmap@4, GenerateMipmapEXT, GenerateMipmapEXT@4)
-       GL_STUB_ALIAS(GetFramebufferAttachmentParameteriv, _gloffset_GetFramebufferAttachmentParameterivEXT, GetFramebufferAttachmentParameteriv@16, GetFramebufferAttachmentParameterivEXT, GetFramebufferAttachmentParameterivEXT@16)
-       GL_STUB_ALIAS(GetRenderbufferParameteriv, _gloffset_GetRenderbufferParameterivEXT, GetRenderbufferParameteriv@12, GetRenderbufferParameterivEXT, GetRenderbufferParameterivEXT@12)
-       GL_STUB_ALIAS(IsFramebuffer, _gloffset_IsFramebufferEXT, IsFramebuffer@4, IsFramebufferEXT, IsFramebufferEXT@4)
-       GL_STUB_ALIAS(IsRenderbuffer, _gloffset_IsRenderbufferEXT, IsRenderbuffer@4, IsRenderbufferEXT, IsRenderbufferEXT@4)
-       GL_STUB_ALIAS(RenderbufferStorage, _gloffset_RenderbufferStorageEXT, RenderbufferStorage@16, RenderbufferStorageEXT, RenderbufferStorageEXT@16)
-       GL_STUB_ALIAS(BlitFramebuffer, _gloffset_BlitFramebufferEXT, BlitFramebuffer@40, _dispatch_stub_785, _dispatch_stub_785@40)
-       GL_STUB_ALIAS(FramebufferTextureLayer, _gloffset_FramebufferTextureLayerEXT, FramebufferTextureLayer@20, FramebufferTextureLayerEXT, FramebufferTextureLayerEXT@20)
-       GL_STUB_ALIAS(BeginTransformFeedback, _gloffset_BeginTransformFeedbackEXT, BeginTransformFeedback@4, BeginTransformFeedbackEXT, BeginTransformFeedbackEXT@4)
-       GL_STUB_ALIAS(BindBufferBase, _gloffset_BindBufferBaseEXT, BindBufferBase@12, BindBufferBaseEXT, BindBufferBaseEXT@12)
-       GL_STUB_ALIAS(BindBufferRange, _gloffset_BindBufferRangeEXT, BindBufferRange@20, BindBufferRangeEXT, BindBufferRangeEXT@20)
-       GL_STUB_ALIAS(EndTransformFeedback, _gloffset_EndTransformFeedbackEXT, EndTransformFeedback@0, EndTransformFeedbackEXT, EndTransformFeedbackEXT@0)
-       GL_STUB_ALIAS(GetTransformFeedbackVarying, _gloffset_GetTransformFeedbackVaryingEXT, GetTransformFeedbackVarying@28, GetTransformFeedbackVaryingEXT, GetTransformFeedbackVaryingEXT@28)
-       GL_STUB_ALIAS(TransformFeedbackVaryings, _gloffset_TransformFeedbackVaryingsEXT, TransformFeedbackVaryings@16, TransformFeedbackVaryingsEXT, TransformFeedbackVaryingsEXT@16)
-       GL_STUB_ALIAS(ProvokingVertex, _gloffset_ProvokingVertexEXT, ProvokingVertex@4, ProvokingVertexEXT, ProvokingVertexEXT@4)
-
-               GLOBL   GLNAME(gl_dispatch_functions_end)
-               HIDDEN(GLNAME(gl_dispatch_functions_end))
-               ALIGNTEXT16
-GLNAME(gl_dispatch_functions_end):
-
-#if defined(GLX_USE_TLS) && defined(__linux__)
-       .section ".note.ABI-tag", "a"
-       .p2align 2
-       .long   1f - 0f   /* name length */
-       .long   3f - 2f   /* data length */
-       .long   1         /* note length */
-0:     .asciz "GNU"      /* vendor name */
-1:     .p2align 2
-2:     .long   0         /* note data: the ABI tag */
-       .long   2,4,20    /* Minimum kernel version w/TLS */
-3:     .p2align 2        /* pad out section */
-#endif /* GLX_USE_TLS */
-
-#if defined (__ELF__) && defined (__linux__)
-       .section .note.GNU-stack,"",%progbits
-#endif
diff --git a/src/mesa/glapi/glapidispatch.h b/src/mesa/glapi/glapidispatch.h
deleted file mode 100644 (file)
index f66876f..0000000
+++ /dev/null
@@ -1,4161 +0,0 @@
-/* DO NOT EDIT - This file generated automatically by gl_table.py (from Mesa) script */
-
-/*
- * (C) Copyright IBM Corporation 2005
- * 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
- * IBM,
- * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
- * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#if !defined( _GLAPI_DISPATCH_H_ )
-#  define _GLAPI_DISPATCH_H_
-
-
-/* this file should not be included directly in mesa */
-
-/**
- * \file glapidispatch.h
- * Macros for handling GL dispatch tables.
- *
- * For each known GL function, there are 3 macros in this file.  The first
- * macro is named CALL_FuncName and is used to call that GL function using
- * the specified dispatch table.  The other 2 macros, called GET_FuncName
- * can SET_FuncName, are used to get and set the dispatch pointer for the
- * named function in the specified dispatch table.
- */
-
-#define CALL_by_offset(disp, cast, offset, parameters) \
-    (*(cast (GET_by_offset(disp, offset)))) parameters
-#define GET_by_offset(disp, offset) \
-    (offset >= 0) ? (((_glapi_proc *)(disp))[offset]) : NULL
-#define SET_by_offset(disp, offset, fn) \
-    do { \
-        if ( (offset) < 0 ) { \
-            /* fprintf( stderr, "[%s:%u] SET_by_offset(%p, %d, %s)!\n", */ \
-            /*         __func__, __LINE__, disp, offset, # fn); */ \
-            /* abort(); */ \
-        } \
-        else { \
-            ( (_glapi_proc *) (disp) )[offset] = (_glapi_proc) fn; \
-        } \
-    } while(0)
-
-#define CALL_NewList(disp, parameters) (*((disp)->NewList)) parameters
-#define GET_NewList(disp) ((disp)->NewList)
-#define SET_NewList(disp, fn) ((disp)->NewList = fn)
-#define CALL_EndList(disp, parameters) (*((disp)->EndList)) parameters
-#define GET_EndList(disp) ((disp)->EndList)
-#define SET_EndList(disp, fn) ((disp)->EndList = fn)
-#define CALL_CallList(disp, parameters) (*((disp)->CallList)) parameters
-#define GET_CallList(disp) ((disp)->CallList)
-#define SET_CallList(disp, fn) ((disp)->CallList = fn)
-#define CALL_CallLists(disp, parameters) (*((disp)->CallLists)) parameters
-#define GET_CallLists(disp) ((disp)->CallLists)
-#define SET_CallLists(disp, fn) ((disp)->CallLists = fn)
-#define CALL_DeleteLists(disp, parameters) (*((disp)->DeleteLists)) parameters
-#define GET_DeleteLists(disp) ((disp)->DeleteLists)
-#define SET_DeleteLists(disp, fn) ((disp)->DeleteLists = fn)
-#define CALL_GenLists(disp, parameters) (*((disp)->GenLists)) parameters
-#define GET_GenLists(disp) ((disp)->GenLists)
-#define SET_GenLists(disp, fn) ((disp)->GenLists = fn)
-#define CALL_ListBase(disp, parameters) (*((disp)->ListBase)) parameters
-#define GET_ListBase(disp) ((disp)->ListBase)
-#define SET_ListBase(disp, fn) ((disp)->ListBase = fn)
-#define CALL_Begin(disp, parameters) (*((disp)->Begin)) parameters
-#define GET_Begin(disp) ((disp)->Begin)
-#define SET_Begin(disp, fn) ((disp)->Begin = fn)
-#define CALL_Bitmap(disp, parameters) (*((disp)->Bitmap)) parameters
-#define GET_Bitmap(disp) ((disp)->Bitmap)
-#define SET_Bitmap(disp, fn) ((disp)->Bitmap = fn)
-#define CALL_Color3b(disp, parameters) (*((disp)->Color3b)) parameters
-#define GET_Color3b(disp) ((disp)->Color3b)
-#define SET_Color3b(disp, fn) ((disp)->Color3b = fn)
-#define CALL_Color3bv(disp, parameters) (*((disp)->Color3bv)) parameters
-#define GET_Color3bv(disp) ((disp)->Color3bv)
-#define SET_Color3bv(disp, fn) ((disp)->Color3bv = fn)
-#define CALL_Color3d(disp, parameters) (*((disp)->Color3d)) parameters
-#define GET_Color3d(disp) ((disp)->Color3d)
-#define SET_Color3d(disp, fn) ((disp)->Color3d = fn)
-#define CALL_Color3dv(disp, parameters) (*((disp)->Color3dv)) parameters
-#define GET_Color3dv(disp) ((disp)->Color3dv)
-#define SET_Color3dv(disp, fn) ((disp)->Color3dv = fn)
-#define CALL_Color3f(disp, parameters) (*((disp)->Color3f)) parameters
-#define GET_Color3f(disp) ((disp)->Color3f)
-#define SET_Color3f(disp, fn) ((disp)->Color3f = fn)
-#define CALL_Color3fv(disp, parameters) (*((disp)->Color3fv)) parameters
-#define GET_Color3fv(disp) ((disp)->Color3fv)
-#define SET_Color3fv(disp, fn) ((disp)->Color3fv = fn)
-#define CALL_Color3i(disp, parameters) (*((disp)->Color3i)) parameters
-#define GET_Color3i(disp) ((disp)->Color3i)
-#define SET_Color3i(disp, fn) ((disp)->Color3i = fn)
-#define CALL_Color3iv(disp, parameters) (*((disp)->Color3iv)) parameters
-#define GET_Color3iv(disp) ((disp)->Color3iv)
-#define SET_Color3iv(disp, fn) ((disp)->Color3iv = fn)
-#define CALL_Color3s(disp, parameters) (*((disp)->Color3s)) parameters
-#define GET_Color3s(disp) ((disp)->Color3s)
-#define SET_Color3s(disp, fn) ((disp)->Color3s = fn)
-#define CALL_Color3sv(disp, parameters) (*((disp)->Color3sv)) parameters
-#define GET_Color3sv(disp) ((disp)->Color3sv)
-#define SET_Color3sv(disp, fn) ((disp)->Color3sv = fn)
-#define CALL_Color3ub(disp, parameters) (*((disp)->Color3ub)) parameters
-#define GET_Color3ub(disp) ((disp)->Color3ub)
-#define SET_Color3ub(disp, fn) ((disp)->Color3ub = fn)
-#define CALL_Color3ubv(disp, parameters) (*((disp)->Color3ubv)) parameters
-#define GET_Color3ubv(disp) ((disp)->Color3ubv)
-#define SET_Color3ubv(disp, fn) ((disp)->Color3ubv = fn)
-#define CALL_Color3ui(disp, parameters) (*((disp)->Color3ui)) parameters
-#define GET_Color3ui(disp) ((disp)->Color3ui)
-#define SET_Color3ui(disp, fn) ((disp)->Color3ui = fn)
-#define CALL_Color3uiv(disp, parameters) (*((disp)->Color3uiv)) parameters
-#define GET_Color3uiv(disp) ((disp)->Color3uiv)
-#define SET_Color3uiv(disp, fn) ((disp)->Color3uiv = fn)
-#define CALL_Color3us(disp, parameters) (*((disp)->Color3us)) parameters
-#define GET_Color3us(disp) ((disp)->Color3us)
-#define SET_Color3us(disp, fn) ((disp)->Color3us = fn)
-#define CALL_Color3usv(disp, parameters) (*((disp)->Color3usv)) parameters
-#define GET_Color3usv(disp) ((disp)->Color3usv)
-#define SET_Color3usv(disp, fn) ((disp)->Color3usv = fn)
-#define CALL_Color4b(disp, parameters) (*((disp)->Color4b)) parameters
-#define GET_Color4b(disp) ((disp)->Color4b)
-#define SET_Color4b(disp, fn) ((disp)->Color4b = fn)
-#define CALL_Color4bv(disp, parameters) (*((disp)->Color4bv)) parameters
-#define GET_Color4bv(disp) ((disp)->Color4bv)
-#define SET_Color4bv(disp, fn) ((disp)->Color4bv = fn)
-#define CALL_Color4d(disp, parameters) (*((disp)->Color4d)) parameters
-#define GET_Color4d(disp) ((disp)->Color4d)
-#define SET_Color4d(disp, fn) ((disp)->Color4d = fn)
-#define CALL_Color4dv(disp, parameters) (*((disp)->Color4dv)) parameters
-#define GET_Color4dv(disp) ((disp)->Color4dv)
-#define SET_Color4dv(disp, fn) ((disp)->Color4dv = fn)
-#define CALL_Color4f(disp, parameters) (*((disp)->Color4f)) parameters
-#define GET_Color4f(disp) ((disp)->Color4f)
-#define SET_Color4f(disp, fn) ((disp)->Color4f = fn)
-#define CALL_Color4fv(disp, parameters) (*((disp)->Color4fv)) parameters
-#define GET_Color4fv(disp) ((disp)->Color4fv)
-#define SET_Color4fv(disp, fn) ((disp)->Color4fv = fn)
-#define CALL_Color4i(disp, parameters) (*((disp)->Color4i)) parameters
-#define GET_Color4i(disp) ((disp)->Color4i)
-#define SET_Color4i(disp, fn) ((disp)->Color4i = fn)
-#define CALL_Color4iv(disp, parameters) (*((disp)->Color4iv)) parameters
-#define GET_Color4iv(disp) ((disp)->Color4iv)
-#define SET_Color4iv(disp, fn) ((disp)->Color4iv = fn)
-#define CALL_Color4s(disp, parameters) (*((disp)->Color4s)) parameters
-#define GET_Color4s(disp) ((disp)->Color4s)
-#define SET_Color4s(disp, fn) ((disp)->Color4s = fn)
-#define CALL_Color4sv(disp, parameters) (*((disp)->Color4sv)) parameters
-#define GET_Color4sv(disp) ((disp)->Color4sv)
-#define SET_Color4sv(disp, fn) ((disp)->Color4sv = fn)
-#define CALL_Color4ub(disp, parameters) (*((disp)->Color4ub)) parameters
-#define GET_Color4ub(disp) ((disp)->Color4ub)
-#define SET_Color4ub(disp, fn) ((disp)->Color4ub = fn)
-#define CALL_Color4ubv(disp, parameters) (*((disp)->Color4ubv)) parameters
-#define GET_Color4ubv(disp) ((disp)->Color4ubv)
-#define SET_Color4ubv(disp, fn) ((disp)->Color4ubv = fn)
-#define CALL_Color4ui(disp, parameters) (*((disp)->Color4ui)) parameters
-#define GET_Color4ui(disp) ((disp)->Color4ui)
-#define SET_Color4ui(disp, fn) ((disp)->Color4ui = fn)
-#define CALL_Color4uiv(disp, parameters) (*((disp)->Color4uiv)) parameters
-#define GET_Color4uiv(disp) ((disp)->Color4uiv)
-#define SET_Color4uiv(disp, fn) ((disp)->Color4uiv = fn)
-#define CALL_Color4us(disp, parameters) (*((disp)->Color4us)) parameters
-#define GET_Color4us(disp) ((disp)->Color4us)
-#define SET_Color4us(disp, fn) ((disp)->Color4us = fn)
-#define CALL_Color4usv(disp, parameters) (*((disp)->Color4usv)) parameters
-#define GET_Color4usv(disp) ((disp)->Color4usv)
-#define SET_Color4usv(disp, fn) ((disp)->Color4usv = fn)
-#define CALL_EdgeFlag(disp, parameters) (*((disp)->EdgeFlag)) parameters
-#define GET_EdgeFlag(disp) ((disp)->EdgeFlag)
-#define SET_EdgeFlag(disp, fn) ((disp)->EdgeFlag = fn)
-#define CALL_EdgeFlagv(disp, parameters) (*((disp)->EdgeFlagv)) parameters
-#define GET_EdgeFlagv(disp) ((disp)->EdgeFlagv)
-#define SET_EdgeFlagv(disp, fn) ((disp)->EdgeFlagv = fn)
-#define CALL_End(disp, parameters) (*((disp)->End)) parameters
-#define GET_End(disp) ((disp)->End)
-#define SET_End(disp, fn) ((disp)->End = fn)
-#define CALL_Indexd(disp, parameters) (*((disp)->Indexd)) parameters
-#define GET_Indexd(disp) ((disp)->Indexd)
-#define SET_Indexd(disp, fn) ((disp)->Indexd = fn)
-#define CALL_Indexdv(disp, parameters) (*((disp)->Indexdv)) parameters
-#define GET_Indexdv(disp) ((disp)->Indexdv)
-#define SET_Indexdv(disp, fn) ((disp)->Indexdv = fn)
-#define CALL_Indexf(disp, parameters) (*((disp)->Indexf)) parameters
-#define GET_Indexf(disp) ((disp)->Indexf)
-#define SET_Indexf(disp, fn) ((disp)->Indexf = fn)
-#define CALL_Indexfv(disp, parameters) (*((disp)->Indexfv)) parameters
-#define GET_Indexfv(disp) ((disp)->Indexfv)
-#define SET_Indexfv(disp, fn) ((disp)->Indexfv = fn)
-#define CALL_Indexi(disp, parameters) (*((disp)->Indexi)) parameters
-#define GET_Indexi(disp) ((disp)->Indexi)
-#define SET_Indexi(disp, fn) ((disp)->Indexi = fn)
-#define CALL_Indexiv(disp, parameters) (*((disp)->Indexiv)) parameters
-#define GET_Indexiv(disp) ((disp)->Indexiv)
-#define SET_Indexiv(disp, fn) ((disp)->Indexiv = fn)
-#define CALL_Indexs(disp, parameters) (*((disp)->Indexs)) parameters
-#define GET_Indexs(disp) ((disp)->Indexs)
-#define SET_Indexs(disp, fn) ((disp)->Indexs = fn)
-#define CALL_Indexsv(disp, parameters) (*((disp)->Indexsv)) parameters
-#define GET_Indexsv(disp) ((disp)->Indexsv)
-#define SET_Indexsv(disp, fn) ((disp)->Indexsv = fn)
-#define CALL_Normal3b(disp, parameters) (*((disp)->Normal3b)) parameters
-#define GET_Normal3b(disp) ((disp)->Normal3b)
-#define SET_Normal3b(disp, fn) ((disp)->Normal3b = fn)
-#define CALL_Normal3bv(disp, parameters) (*((disp)->Normal3bv)) parameters
-#define GET_Normal3bv(disp) ((disp)->Normal3bv)
-#define SET_Normal3bv(disp, fn) ((disp)->Normal3bv = fn)
-#define CALL_Normal3d(disp, parameters) (*((disp)->Normal3d)) parameters
-#define GET_Normal3d(disp) ((disp)->Normal3d)
-#define SET_Normal3d(disp, fn) ((disp)->Normal3d = fn)
-#define CALL_Normal3dv(disp, parameters) (*((disp)->Normal3dv)) parameters
-#define GET_Normal3dv(disp) ((disp)->Normal3dv)
-#define SET_Normal3dv(disp, fn) ((disp)->Normal3dv = fn)
-#define CALL_Normal3f(disp, parameters) (*((disp)->Normal3f)) parameters
-#define GET_Normal3f(disp) ((disp)->Normal3f)
-#define SET_Normal3f(disp, fn) ((disp)->Normal3f = fn)
-#define CALL_Normal3fv(disp, parameters) (*((disp)->Normal3fv)) parameters
-#define GET_Normal3fv(disp) ((disp)->Normal3fv)
-#define SET_Normal3fv(disp, fn) ((disp)->Normal3fv = fn)
-#define CALL_Normal3i(disp, parameters) (*((disp)->Normal3i)) parameters
-#define GET_Normal3i(disp) ((disp)->Normal3i)
-#define SET_Normal3i(disp, fn) ((disp)->Normal3i = fn)
-#define CALL_Normal3iv(disp, parameters) (*((disp)->Normal3iv)) parameters
-#define GET_Normal3iv(disp) ((disp)->Normal3iv)
-#define SET_Normal3iv(disp, fn) ((disp)->Normal3iv = fn)
-#define CALL_Normal3s(disp, parameters) (*((disp)->Normal3s)) parameters
-#define GET_Normal3s(disp) ((disp)->Normal3s)
-#define SET_Normal3s(disp, fn) ((disp)->Normal3s = fn)
-#define CALL_Normal3sv(disp, parameters) (*((disp)->Normal3sv)) parameters
-#define GET_Normal3sv(disp) ((disp)->Normal3sv)
-#define SET_Normal3sv(disp, fn) ((disp)->Normal3sv = fn)
-#define CALL_RasterPos2d(disp, parameters) (*((disp)->RasterPos2d)) parameters
-#define GET_RasterPos2d(disp) ((disp)->RasterPos2d)
-#define SET_RasterPos2d(disp, fn) ((disp)->RasterPos2d = fn)
-#define CALL_RasterPos2dv(disp, parameters) (*((disp)->RasterPos2dv)) parameters
-#define GET_RasterPos2dv(disp) ((disp)->RasterPos2dv)
-#define SET_RasterPos2dv(disp, fn) ((disp)->RasterPos2dv = fn)
-#define CALL_RasterPos2f(disp, parameters) (*((disp)->RasterPos2f)) parameters
-#define GET_RasterPos2f(disp) ((disp)->RasterPos2f)
-#define SET_RasterPos2f(disp, fn) ((disp)->RasterPos2f = fn)
-#define CALL_RasterPos2fv(disp, parameters) (*((disp)->RasterPos2fv)) parameters
-#define GET_RasterPos2fv(disp) ((disp)->RasterPos2fv)
-#define SET_RasterPos2fv(disp, fn) ((disp)->RasterPos2fv = fn)
-#define CALL_RasterPos2i(disp, parameters) (*((disp)->RasterPos2i)) parameters
-#define GET_RasterPos2i(disp) ((disp)->RasterPos2i)
-#define SET_RasterPos2i(disp, fn) ((disp)->RasterPos2i = fn)
-#define CALL_RasterPos2iv(disp, parameters) (*((disp)->RasterPos2iv)) parameters
-#define GET_RasterPos2iv(disp) ((disp)->RasterPos2iv)
-#define SET_RasterPos2iv(disp, fn) ((disp)->RasterPos2iv = fn)
-#define CALL_RasterPos2s(disp, parameters) (*((disp)->RasterPos2s)) parameters
-#define GET_RasterPos2s(disp) ((disp)->RasterPos2s)
-#define SET_RasterPos2s(disp, fn) ((disp)->RasterPos2s = fn)
-#define CALL_RasterPos2sv(disp, parameters) (*((disp)->RasterPos2sv)) parameters
-#define GET_RasterPos2sv(disp) ((disp)->RasterPos2sv)
-#define SET_RasterPos2sv(disp, fn) ((disp)->RasterPos2sv = fn)
-#define CALL_RasterPos3d(disp, parameters) (*((disp)->RasterPos3d)) parameters
-#define GET_RasterPos3d(disp) ((disp)->RasterPos3d)
-#define SET_RasterPos3d(disp, fn) ((disp)->RasterPos3d = fn)
-#define CALL_RasterPos3dv(disp, parameters) (*((disp)->RasterPos3dv)) parameters
-#define GET_RasterPos3dv(disp) ((disp)->RasterPos3dv)
-#define SET_RasterPos3dv(disp, fn) ((disp)->RasterPos3dv = fn)
-#define CALL_RasterPos3f(disp, parameters) (*((disp)->RasterPos3f)) parameters
-#define GET_RasterPos3f(disp) ((disp)->RasterPos3f)
-#define SET_RasterPos3f(disp, fn) ((disp)->RasterPos3f = fn)
-#define CALL_RasterPos3fv(disp, parameters) (*((disp)->RasterPos3fv)) parameters
-#define GET_RasterPos3fv(disp) ((disp)->RasterPos3fv)
-#define SET_RasterPos3fv(disp, fn) ((disp)->RasterPos3fv = fn)
-#define CALL_RasterPos3i(disp, parameters) (*((disp)->RasterPos3i)) parameters
-#define GET_RasterPos3i(disp) ((disp)->RasterPos3i)
-#define SET_RasterPos3i(disp, fn) ((disp)->RasterPos3i = fn)
-#define CALL_RasterPos3iv(disp, parameters) (*((disp)->RasterPos3iv)) parameters
-#define GET_RasterPos3iv(disp) ((disp)->RasterPos3iv)
-#define SET_RasterPos3iv(disp, fn) ((disp)->RasterPos3iv = fn)
-#define CALL_RasterPos3s(disp, parameters) (*((disp)->RasterPos3s)) parameters
-#define GET_RasterPos3s(disp) ((disp)->RasterPos3s)
-#define SET_RasterPos3s(disp, fn) ((disp)->RasterPos3s = fn)
-#define CALL_RasterPos3sv(disp, parameters) (*((disp)->RasterPos3sv)) parameters
-#define GET_RasterPos3sv(disp) ((disp)->RasterPos3sv)
-#define SET_RasterPos3sv(disp, fn) ((disp)->RasterPos3sv = fn)
-#define CALL_RasterPos4d(disp, parameters) (*((disp)->RasterPos4d)) parameters
-#define GET_RasterPos4d(disp) ((disp)->RasterPos4d)
-#define SET_RasterPos4d(disp, fn) ((disp)->RasterPos4d = fn)
-#define CALL_RasterPos4dv(disp, parameters) (*((disp)->RasterPos4dv)) parameters
-#define GET_RasterPos4dv(disp) ((disp)->RasterPos4dv)
-#define SET_RasterPos4dv(disp, fn) ((disp)->RasterPos4dv = fn)
-#define CALL_RasterPos4f(disp, parameters) (*((disp)->RasterPos4f)) parameters
-#define GET_RasterPos4f(disp) ((disp)->RasterPos4f)
-#define SET_RasterPos4f(disp, fn) ((disp)->RasterPos4f = fn)
-#define CALL_RasterPos4fv(disp, parameters) (*((disp)->RasterPos4fv)) parameters
-#define GET_RasterPos4fv(disp) ((disp)->RasterPos4fv)
-#define SET_RasterPos4fv(disp, fn) ((disp)->RasterPos4fv = fn)
-#define CALL_RasterPos4i(disp, parameters) (*((disp)->RasterPos4i)) parameters
-#define GET_RasterPos4i(disp) ((disp)->RasterPos4i)
-#define SET_RasterPos4i(disp, fn) ((disp)->RasterPos4i = fn)
-#define CALL_RasterPos4iv(disp, parameters) (*((disp)->RasterPos4iv)) parameters
-#define GET_RasterPos4iv(disp) ((disp)->RasterPos4iv)
-#define SET_RasterPos4iv(disp, fn) ((disp)->RasterPos4iv = fn)
-#define CALL_RasterPos4s(disp, parameters) (*((disp)->RasterPos4s)) parameters
-#define GET_RasterPos4s(disp) ((disp)->RasterPos4s)
-#define SET_RasterPos4s(disp, fn) ((disp)->RasterPos4s = fn)
-#define CALL_RasterPos4sv(disp, parameters) (*((disp)->RasterPos4sv)) parameters
-#define GET_RasterPos4sv(disp) ((disp)->RasterPos4sv)
-#define SET_RasterPos4sv(disp, fn) ((disp)->RasterPos4sv = fn)
-#define CALL_Rectd(disp, parameters) (*((disp)->Rectd)) parameters
-#define GET_Rectd(disp) ((disp)->Rectd)
-#define SET_Rectd(disp, fn) ((disp)->Rectd = fn)
-#define CALL_Rectdv(disp, parameters) (*((disp)->Rectdv)) parameters
-#define GET_Rectdv(disp) ((disp)->Rectdv)
-#define SET_Rectdv(disp, fn) ((disp)->Rectdv = fn)
-#define CALL_Rectf(disp, parameters) (*((disp)->Rectf)) parameters
-#define GET_Rectf(disp) ((disp)->Rectf)
-#define SET_Rectf(disp, fn) ((disp)->Rectf = fn)
-#define CALL_Rectfv(disp, parameters) (*((disp)->Rectfv)) parameters
-#define GET_Rectfv(disp) ((disp)->Rectfv)
-#define SET_Rectfv(disp, fn) ((disp)->Rectfv = fn)
-#define CALL_Recti(disp, parameters) (*((disp)->Recti)) parameters
-#define GET_Recti(disp) ((disp)->Recti)
-#define SET_Recti(disp, fn) ((disp)->Recti = fn)
-#define CALL_Rectiv(disp, parameters) (*((disp)->Rectiv)) parameters
-#define GET_Rectiv(disp) ((disp)->Rectiv)
-#define SET_Rectiv(disp, fn) ((disp)->Rectiv = fn)
-#define CALL_Rects(disp, parameters) (*((disp)->Rects)) parameters
-#define GET_Rects(disp) ((disp)->Rects)
-#define SET_Rects(disp, fn) ((disp)->Rects = fn)
-#define CALL_Rectsv(disp, parameters) (*((disp)->Rectsv)) parameters
-#define GET_Rectsv(disp) ((disp)->Rectsv)
-#define SET_Rectsv(disp, fn) ((disp)->Rectsv = fn)
-#define CALL_TexCoord1d(disp, parameters) (*((disp)->TexCoord1d)) parameters
-#define GET_TexCoord1d(disp) ((disp)->TexCoord1d)
-#define SET_TexCoord1d(disp, fn) ((disp)->TexCoord1d = fn)
-#define CALL_TexCoord1dv(disp, parameters) (*((disp)->TexCoord1dv)) parameters
-#define GET_TexCoord1dv(disp) ((disp)->TexCoord1dv)
-#define SET_TexCoord1dv(disp, fn) ((disp)->TexCoord1dv = fn)
-#define CALL_TexCoord1f(disp, parameters) (*((disp)->TexCoord1f)) parameters
-#define GET_TexCoord1f(disp) ((disp)->TexCoord1f)
-#define SET_TexCoord1f(disp, fn) ((disp)->TexCoord1f = fn)
-#define CALL_TexCoord1fv(disp, parameters) (*((disp)->TexCoord1fv)) parameters
-#define GET_TexCoord1fv(disp) ((disp)->TexCoord1fv)
-#define SET_TexCoord1fv(disp, fn) ((disp)->TexCoord1fv = fn)
-#define CALL_TexCoord1i(disp, parameters) (*((disp)->TexCoord1i)) parameters
-#define GET_TexCoord1i(disp) ((disp)->TexCoord1i)
-#define SET_TexCoord1i(disp, fn) ((disp)->TexCoord1i = fn)
-#define CALL_TexCoord1iv(disp, parameters) (*((disp)->TexCoord1iv)) parameters
-#define GET_TexCoord1iv(disp) ((disp)->TexCoord1iv)
-#define SET_TexCoord1iv(disp, fn) ((disp)->TexCoord1iv = fn)
-#define CALL_TexCoord1s(disp, parameters) (*((disp)->TexCoord1s)) parameters
-#define GET_TexCoord1s(disp) ((disp)->TexCoord1s)
-#define SET_TexCoord1s(disp, fn) ((disp)->TexCoord1s = fn)
-#define CALL_TexCoord1sv(disp, parameters) (*((disp)->TexCoord1sv)) parameters
-#define GET_TexCoord1sv(disp) ((disp)->TexCoord1sv)
-#define SET_TexCoord1sv(disp, fn) ((disp)->TexCoord1sv = fn)
-#define CALL_TexCoord2d(disp, parameters) (*((disp)->TexCoord2d)) parameters
-#define GET_TexCoord2d(disp) ((disp)->TexCoord2d)
-#define SET_TexCoord2d(disp, fn) ((disp)->TexCoord2d = fn)
-#define CALL_TexCoord2dv(disp, parameters) (*((disp)->TexCoord2dv)) parameters
-#define GET_TexCoord2dv(disp) ((disp)->TexCoord2dv)
-#define SET_TexCoord2dv(disp, fn) ((disp)->TexCoord2dv = fn)
-#define CALL_TexCoord2f(disp, parameters) (*((disp)->TexCoord2f)) parameters
-#define GET_TexCoord2f(disp) ((disp)->TexCoord2f)
-#define SET_TexCoord2f(disp, fn) ((disp)->TexCoord2f = fn)
-#define CALL_TexCoord2fv(disp, parameters) (*((disp)->TexCoord2fv)) parameters
-#define GET_TexCoord2fv(disp) ((disp)->TexCoord2fv)
-#define SET_TexCoord2fv(disp, fn) ((disp)->TexCoord2fv = fn)
-#define CALL_TexCoord2i(disp, parameters) (*((disp)->TexCoord2i)) parameters
-#define GET_TexCoord2i(disp) ((disp)->TexCoord2i)
-#define SET_TexCoord2i(disp, fn) ((disp)->TexCoord2i = fn)
-#define CALL_TexCoord2iv(disp, parameters) (*((disp)->TexCoord2iv)) parameters
-#define GET_TexCoord2iv(disp) ((disp)->TexCoord2iv)
-#define SET_TexCoord2iv(disp, fn) ((disp)->TexCoord2iv = fn)
-#define CALL_TexCoord2s(disp, parameters) (*((disp)->TexCoord2s)) parameters
-#define GET_TexCoord2s(disp) ((disp)->TexCoord2s)
-#define SET_TexCoord2s(disp, fn) ((disp)->TexCoord2s = fn)
-#define CALL_TexCoord2sv(disp, parameters) (*((disp)->TexCoord2sv)) parameters
-#define GET_TexCoord2sv(disp) ((disp)->TexCoord2sv)
-#define SET_TexCoord2sv(disp, fn) ((disp)->TexCoord2sv = fn)
-#define CALL_TexCoord3d(disp, parameters) (*((disp)->TexCoord3d)) parameters
-#define GET_TexCoord3d(disp) ((disp)->TexCoord3d)
-#define SET_TexCoord3d(disp, fn) ((disp)->TexCoord3d = fn)
-#define CALL_TexCoord3dv(disp, parameters) (*((disp)->TexCoord3dv)) parameters
-#define GET_TexCoord3dv(disp) ((disp)->TexCoord3dv)
-#define SET_TexCoord3dv(disp, fn) ((disp)->TexCoord3dv = fn)
-#define CALL_TexCoord3f(disp, parameters) (*((disp)->TexCoord3f)) parameters
-#define GET_TexCoord3f(disp) ((disp)->TexCoord3f)
-#define SET_TexCoord3f(disp, fn) ((disp)->TexCoord3f = fn)
-#define CALL_TexCoord3fv(disp, parameters) (*((disp)->TexCoord3fv)) parameters
-#define GET_TexCoord3fv(disp) ((disp)->TexCoord3fv)
-#define SET_TexCoord3fv(disp, fn) ((disp)->TexCoord3fv = fn)
-#define CALL_TexCoord3i(disp, parameters) (*((disp)->TexCoord3i)) parameters
-#define GET_TexCoord3i(disp) ((disp)->TexCoord3i)
-#define SET_TexCoord3i(disp, fn) ((disp)->TexCoord3i = fn)
-#define CALL_TexCoord3iv(disp, parameters) (*((disp)->TexCoord3iv)) parameters
-#define GET_TexCoord3iv(disp) ((disp)->TexCoord3iv)
-#define SET_TexCoord3iv(disp, fn) ((disp)->TexCoord3iv = fn)
-#define CALL_TexCoord3s(disp, parameters) (*((disp)->TexCoord3s)) parameters
-#define GET_TexCoord3s(disp) ((disp)->TexCoord3s)
-#define SET_TexCoord3s(disp, fn) ((disp)->TexCoord3s = fn)
-#define CALL_TexCoord3sv(disp, parameters) (*((disp)->TexCoord3sv)) parameters
-#define GET_TexCoord3sv(disp) ((disp)->TexCoord3sv)
-#define SET_TexCoord3sv(disp, fn) ((disp)->TexCoord3sv = fn)
-#define CALL_TexCoord4d(disp, parameters) (*((disp)->TexCoord4d)) parameters
-#define GET_TexCoord4d(disp) ((disp)->TexCoord4d)
-#define SET_TexCoord4d(disp, fn) ((disp)->TexCoord4d = fn)
-#define CALL_TexCoord4dv(disp, parameters) (*((disp)->TexCoord4dv)) parameters
-#define GET_TexCoord4dv(disp) ((disp)->TexCoord4dv)
-#define SET_TexCoord4dv(disp, fn) ((disp)->TexCoord4dv = fn)
-#define CALL_TexCoord4f(disp, parameters) (*((disp)->TexCoord4f)) parameters
-#define GET_TexCoord4f(disp) ((disp)->TexCoord4f)
-#define SET_TexCoord4f(disp, fn) ((disp)->TexCoord4f = fn)
-#define CALL_TexCoord4fv(disp, parameters) (*((disp)->TexCoord4fv)) parameters
-#define GET_TexCoord4fv(disp) ((disp)->TexCoord4fv)
-#define SET_TexCoord4fv(disp, fn) ((disp)->TexCoord4fv = fn)
-#define CALL_TexCoord4i(disp, parameters) (*((disp)->TexCoord4i)) parameters
-#define GET_TexCoord4i(disp) ((disp)->TexCoord4i)
-#define SET_TexCoord4i(disp, fn) ((disp)->TexCoord4i = fn)
-#define CALL_TexCoord4iv(disp, parameters) (*((disp)->TexCoord4iv)) parameters
-#define GET_TexCoord4iv(disp) ((disp)->TexCoord4iv)
-#define SET_TexCoord4iv(disp, fn) ((disp)->TexCoord4iv = fn)
-#define CALL_TexCoord4s(disp, parameters) (*((disp)->TexCoord4s)) parameters
-#define GET_TexCoord4s(disp) ((disp)->TexCoord4s)
-#define SET_TexCoord4s(disp, fn) ((disp)->TexCoord4s = fn)
-#define CALL_TexCoord4sv(disp, parameters) (*((disp)->TexCoord4sv)) parameters
-#define GET_TexCoord4sv(disp) ((disp)->TexCoord4sv)
-#define SET_TexCoord4sv(disp, fn) ((disp)->TexCoord4sv = fn)
-#define CALL_Vertex2d(disp, parameters) (*((disp)->Vertex2d)) parameters
-#define GET_Vertex2d(disp) ((disp)->Vertex2d)
-#define SET_Vertex2d(disp, fn) ((disp)->Vertex2d = fn)
-#define CALL_Vertex2dv(disp, parameters) (*((disp)->Vertex2dv)) parameters
-#define GET_Vertex2dv(disp) ((disp)->Vertex2dv)
-#define SET_Vertex2dv(disp, fn) ((disp)->Vertex2dv = fn)
-#define CALL_Vertex2f(disp, parameters) (*((disp)->Vertex2f)) parameters
-#define GET_Vertex2f(disp) ((disp)->Vertex2f)
-#define SET_Vertex2f(disp, fn) ((disp)->Vertex2f = fn)
-#define CALL_Vertex2fv(disp, parameters) (*((disp)->Vertex2fv)) parameters
-#define GET_Vertex2fv(disp) ((disp)->Vertex2fv)
-#define SET_Vertex2fv(disp, fn) ((disp)->Vertex2fv = fn)
-#define CALL_Vertex2i(disp, parameters) (*((disp)->Vertex2i)) parameters
-#define GET_Vertex2i(disp) ((disp)->Vertex2i)
-#define SET_Vertex2i(disp, fn) ((disp)->Vertex2i = fn)
-#define CALL_Vertex2iv(disp, parameters) (*((disp)->Vertex2iv)) parameters
-#define GET_Vertex2iv(disp) ((disp)->Vertex2iv)
-#define SET_Vertex2iv(disp, fn) ((disp)->Vertex2iv = fn)
-#define CALL_Vertex2s(disp, parameters) (*((disp)->Vertex2s)) parameters
-#define GET_Vertex2s(disp) ((disp)->Vertex2s)
-#define SET_Vertex2s(disp, fn) ((disp)->Vertex2s = fn)
-#define CALL_Vertex2sv(disp, parameters) (*((disp)->Vertex2sv)) parameters
-#define GET_Vertex2sv(disp) ((disp)->Vertex2sv)
-#define SET_Vertex2sv(disp, fn) ((disp)->Vertex2sv = fn)
-#define CALL_Vertex3d(disp, parameters) (*((disp)->Vertex3d)) parameters
-#define GET_Vertex3d(disp) ((disp)->Vertex3d)
-#define SET_Vertex3d(disp, fn) ((disp)->Vertex3d = fn)
-#define CALL_Vertex3dv(disp, parameters) (*((disp)->Vertex3dv)) parameters
-#define GET_Vertex3dv(disp) ((disp)->Vertex3dv)
-#define SET_Vertex3dv(disp, fn) ((disp)->Vertex3dv = fn)
-#define CALL_Vertex3f(disp, parameters) (*((disp)->Vertex3f)) parameters
-#define GET_Vertex3f(disp) ((disp)->Vertex3f)
-#define SET_Vertex3f(disp, fn) ((disp)->Vertex3f = fn)
-#define CALL_Vertex3fv(disp, parameters) (*((disp)->Vertex3fv)) parameters
-#define GET_Vertex3fv(disp) ((disp)->Vertex3fv)
-#define SET_Vertex3fv(disp, fn) ((disp)->Vertex3fv = fn)
-#define CALL_Vertex3i(disp, parameters) (*((disp)->Vertex3i)) parameters
-#define GET_Vertex3i(disp) ((disp)->Vertex3i)
-#define SET_Vertex3i(disp, fn) ((disp)->Vertex3i = fn)
-#define CALL_Vertex3iv(disp, parameters) (*((disp)->Vertex3iv)) parameters
-#define GET_Vertex3iv(disp) ((disp)->Vertex3iv)
-#define SET_Vertex3iv(disp, fn) ((disp)->Vertex3iv = fn)
-#define CALL_Vertex3s(disp, parameters) (*((disp)->Vertex3s)) parameters
-#define GET_Vertex3s(disp) ((disp)->Vertex3s)
-#define SET_Vertex3s(disp, fn) ((disp)->Vertex3s = fn)
-#define CALL_Vertex3sv(disp, parameters) (*((disp)->Vertex3sv)) parameters
-#define GET_Vertex3sv(disp) ((disp)->Vertex3sv)
-#define SET_Vertex3sv(disp, fn) ((disp)->Vertex3sv = fn)
-#define CALL_Vertex4d(disp, parameters) (*((disp)->Vertex4d)) parameters
-#define GET_Vertex4d(disp) ((disp)->Vertex4d)
-#define SET_Vertex4d(disp, fn) ((disp)->Vertex4d = fn)
-#define CALL_Vertex4dv(disp, parameters) (*((disp)->Vertex4dv)) parameters
-#define GET_Vertex4dv(disp) ((disp)->Vertex4dv)
-#define SET_Vertex4dv(disp, fn) ((disp)->Vertex4dv = fn)
-#define CALL_Vertex4f(disp, parameters) (*((disp)->Vertex4f)) parameters
-#define GET_Vertex4f(disp) ((disp)->Vertex4f)
-#define SET_Vertex4f(disp, fn) ((disp)->Vertex4f = fn)
-#define CALL_Vertex4fv(disp, parameters) (*((disp)->Vertex4fv)) parameters
-#define GET_Vertex4fv(disp) ((disp)->Vertex4fv)
-#define SET_Vertex4fv(disp, fn) ((disp)->Vertex4fv = fn)
-#define CALL_Vertex4i(disp, parameters) (*((disp)->Vertex4i)) parameters
-#define GET_Vertex4i(disp) ((disp)->Vertex4i)
-#define SET_Vertex4i(disp, fn) ((disp)->Vertex4i = fn)
-#define CALL_Vertex4iv(disp, parameters) (*((disp)->Vertex4iv)) parameters
-#define GET_Vertex4iv(disp) ((disp)->Vertex4iv)
-#define SET_Vertex4iv(disp, fn) ((disp)->Vertex4iv = fn)
-#define CALL_Vertex4s(disp, parameters) (*((disp)->Vertex4s)) parameters
-#define GET_Vertex4s(disp) ((disp)->Vertex4s)
-#define SET_Vertex4s(disp, fn) ((disp)->Vertex4s = fn)
-#define CALL_Vertex4sv(disp, parameters) (*((disp)->Vertex4sv)) parameters
-#define GET_Vertex4sv(disp) ((disp)->Vertex4sv)
-#define SET_Vertex4sv(disp, fn) ((disp)->Vertex4sv = fn)
-#define CALL_ClipPlane(disp, parameters) (*((disp)->ClipPlane)) parameters
-#define GET_ClipPlane(disp) ((disp)->ClipPlane)
-#define SET_ClipPlane(disp, fn) ((disp)->ClipPlane = fn)
-#define CALL_ColorMaterial(disp, parameters) (*((disp)->ColorMaterial)) parameters
-#define GET_ColorMaterial(disp) ((disp)->ColorMaterial)
-#define SET_ColorMaterial(disp, fn) ((disp)->ColorMaterial = fn)
-#define CALL_CullFace(disp, parameters) (*((disp)->CullFace)) parameters
-#define GET_CullFace(disp) ((disp)->CullFace)
-#define SET_CullFace(disp, fn) ((disp)->CullFace = fn)
-#define CALL_Fogf(disp, parameters) (*((disp)->Fogf)) parameters
-#define GET_Fogf(disp) ((disp)->Fogf)
-#define SET_Fogf(disp, fn) ((disp)->Fogf = fn)
-#define CALL_Fogfv(disp, parameters) (*((disp)->Fogfv)) parameters
-#define GET_Fogfv(disp) ((disp)->Fogfv)
-#define SET_Fogfv(disp, fn) ((disp)->Fogfv = fn)
-#define CALL_Fogi(disp, parameters) (*((disp)->Fogi)) parameters
-#define GET_Fogi(disp) ((disp)->Fogi)
-#define SET_Fogi(disp, fn) ((disp)->Fogi = fn)
-#define CALL_Fogiv(disp, parameters) (*((disp)->Fogiv)) parameters
-#define GET_Fogiv(disp) ((disp)->Fogiv)
-#define SET_Fogiv(disp, fn) ((disp)->Fogiv = fn)
-#define CALL_FrontFace(disp, parameters) (*((disp)->FrontFace)) parameters
-#define GET_FrontFace(disp) ((disp)->FrontFace)
-#define SET_FrontFace(disp, fn) ((disp)->FrontFace = fn)
-#define CALL_Hint(disp, parameters) (*((disp)->Hint)) parameters
-#define GET_Hint(disp) ((disp)->Hint)
-#define SET_Hint(disp, fn) ((disp)->Hint = fn)
-#define CALL_Lightf(disp, parameters) (*((disp)->Lightf)) parameters
-#define GET_Lightf(disp) ((disp)->Lightf)
-#define SET_Lightf(disp, fn) ((disp)->Lightf = fn)
-#define CALL_Lightfv(disp, parameters) (*((disp)->Lightfv)) parameters
-#define GET_Lightfv(disp) ((disp)->Lightfv)
-#define SET_Lightfv(disp, fn) ((disp)->Lightfv = fn)
-#define CALL_Lighti(disp, parameters) (*((disp)->Lighti)) parameters
-#define GET_Lighti(disp) ((disp)->Lighti)
-#define SET_Lighti(disp, fn) ((disp)->Lighti = fn)
-#define CALL_Lightiv(disp, parameters) (*((disp)->Lightiv)) parameters
-#define GET_Lightiv(disp) ((disp)->Lightiv)
-#define SET_Lightiv(disp, fn) ((disp)->Lightiv = fn)
-#define CALL_LightModelf(disp, parameters) (*((disp)->LightModelf)) parameters
-#define GET_LightModelf(disp) ((disp)->LightModelf)
-#define SET_LightModelf(disp, fn) ((disp)->LightModelf = fn)
-#define CALL_LightModelfv(disp, parameters) (*((disp)->LightModelfv)) parameters
-#define GET_LightModelfv(disp) ((disp)->LightModelfv)
-#define SET_LightModelfv(disp, fn) ((disp)->LightModelfv = fn)
-#define CALL_LightModeli(disp, parameters) (*((disp)->LightModeli)) parameters
-#define GET_LightModeli(disp) ((disp)->LightModeli)
-#define SET_LightModeli(disp, fn) ((disp)->LightModeli = fn)
-#define CALL_LightModeliv(disp, parameters) (*((disp)->LightModeliv)) parameters
-#define GET_LightModeliv(disp) ((disp)->LightModeliv)
-#define SET_LightModeliv(disp, fn) ((disp)->LightModeliv = fn)
-#define CALL_LineStipple(disp, parameters) (*((disp)->LineStipple)) parameters
-#define GET_LineStipple(disp) ((disp)->LineStipple)
-#define SET_LineStipple(disp, fn) ((disp)->LineStipple = fn)
-#define CALL_LineWidth(disp, parameters) (*((disp)->LineWidth)) parameters
-#define GET_LineWidth(disp) ((disp)->LineWidth)
-#define SET_LineWidth(disp, fn) ((disp)->LineWidth = fn)
-#define CALL_Materialf(disp, parameters) (*((disp)->Materialf)) parameters
-#define GET_Materialf(disp) ((disp)->Materialf)
-#define SET_Materialf(disp, fn) ((disp)->Materialf = fn)
-#define CALL_Materialfv(disp, parameters) (*((disp)->Materialfv)) parameters
-#define GET_Materialfv(disp) ((disp)->Materialfv)
-#define SET_Materialfv(disp, fn) ((disp)->Materialfv = fn)
-#define CALL_Materiali(disp, parameters) (*((disp)->Materiali)) parameters
-#define GET_Materiali(disp) ((disp)->Materiali)
-#define SET_Materiali(disp, fn) ((disp)->Materiali = fn)
-#define CALL_Materialiv(disp, parameters) (*((disp)->Materialiv)) parameters
-#define GET_Materialiv(disp) ((disp)->Materialiv)
-#define SET_Materialiv(disp, fn) ((disp)->Materialiv = fn)
-#define CALL_PointSize(disp, parameters) (*((disp)->PointSize)) parameters
-#define GET_PointSize(disp) ((disp)->PointSize)
-#define SET_PointSize(disp, fn) ((disp)->PointSize = fn)
-#define CALL_PolygonMode(disp, parameters) (*((disp)->PolygonMode)) parameters
-#define GET_PolygonMode(disp) ((disp)->PolygonMode)
-#define SET_PolygonMode(disp, fn) ((disp)->PolygonMode = fn)
-#define CALL_PolygonStipple(disp, parameters) (*((disp)->PolygonStipple)) parameters
-#define GET_PolygonStipple(disp) ((disp)->PolygonStipple)
-#define SET_PolygonStipple(disp, fn) ((disp)->PolygonStipple = fn)
-#define CALL_Scissor(disp, parameters) (*((disp)->Scissor)) parameters
-#define GET_Scissor(disp) ((disp)->Scissor)
-#define SET_Scissor(disp, fn) ((disp)->Scissor = fn)
-#define CALL_ShadeModel(disp, parameters) (*((disp)->ShadeModel)) parameters
-#define GET_ShadeModel(disp) ((disp)->ShadeModel)
-#define SET_ShadeModel(disp, fn) ((disp)->ShadeModel = fn)
-#define CALL_TexParameterf(disp, parameters) (*((disp)->TexParameterf)) parameters
-#define GET_TexParameterf(disp) ((disp)->TexParameterf)
-#define SET_TexParameterf(disp, fn) ((disp)->TexParameterf = fn)
-#define CALL_TexParameterfv(disp, parameters) (*((disp)->TexParameterfv)) parameters
-#define GET_TexParameterfv(disp) ((disp)->TexParameterfv)
-#define SET_TexParameterfv(disp, fn) ((disp)->TexParameterfv = fn)
-#define CALL_TexParameteri(disp, parameters) (*((disp)->TexParameteri)) parameters
-#define GET_TexParameteri(disp) ((disp)->TexParameteri)
-#define SET_TexParameteri(disp, fn) ((disp)->TexParameteri = fn)
-#define CALL_TexParameteriv(disp, parameters) (*((disp)->TexParameteriv)) parameters
-#define GET_TexParameteriv(disp) ((disp)->TexParameteriv)
-#define SET_TexParameteriv(disp, fn) ((disp)->TexParameteriv = fn)
-#define CALL_TexImage1D(disp, parameters) (*((disp)->TexImage1D)) parameters
-#define GET_TexImage1D(disp) ((disp)->TexImage1D)
-#define SET_TexImage1D(disp, fn) ((disp)->TexImage1D = fn)
-#define CALL_TexImage2D(disp, parameters) (*((disp)->TexImage2D)) parameters
-#define GET_TexImage2D(disp) ((disp)->TexImage2D)
-#define SET_TexImage2D(disp, fn) ((disp)->TexImage2D = fn)
-#define CALL_TexEnvf(disp, parameters) (*((disp)->TexEnvf)) parameters
-#define GET_TexEnvf(disp) ((disp)->TexEnvf)
-#define SET_TexEnvf(disp, fn) ((disp)->TexEnvf = fn)
-#define CALL_TexEnvfv(disp, parameters) (*((disp)->TexEnvfv)) parameters
-#define GET_TexEnvfv(disp) ((disp)->TexEnvfv)
-#define SET_TexEnvfv(disp, fn) ((disp)->TexEnvfv = fn)
-#define CALL_TexEnvi(disp, parameters) (*((disp)->TexEnvi)) parameters
-#define GET_TexEnvi(disp) ((disp)->TexEnvi)
-#define SET_TexEnvi(disp, fn) ((disp)->TexEnvi = fn)
-#define CALL_TexEnviv(disp, parameters) (*((disp)->TexEnviv)) parameters
-#define GET_TexEnviv(disp) ((disp)->TexEnviv)
-#define SET_TexEnviv(disp, fn) ((disp)->TexEnviv = fn)
-#define CALL_TexGend(disp, parameters) (*((disp)->TexGend)) parameters
-#define GET_TexGend(disp) ((disp)->TexGend)
-#define SET_TexGend(disp, fn) ((disp)->TexGend = fn)
-#define CALL_TexGendv(disp, parameters) (*((disp)->TexGendv)) parameters
-#define GET_TexGendv(disp) ((disp)->TexGendv)
-#define SET_TexGendv(disp, fn) ((disp)->TexGendv = fn)
-#define CALL_TexGenf(disp, parameters) (*((disp)->TexGenf)) parameters
-#define GET_TexGenf(disp) ((disp)->TexGenf)
-#define SET_TexGenf(disp, fn) ((disp)->TexGenf = fn)
-#define CALL_TexGenfv(disp, parameters) (*((disp)->TexGenfv)) parameters
-#define GET_TexGenfv(disp) ((disp)->TexGenfv)
-#define SET_TexGenfv(disp, fn) ((disp)->TexGenfv = fn)
-#define CALL_TexGeni(disp, parameters) (*((disp)->TexGeni)) parameters
-#define GET_TexGeni(disp) ((disp)->TexGeni)
-#define SET_TexGeni(disp, fn) ((disp)->TexGeni = fn)
-#define CALL_TexGeniv(disp, parameters) (*((disp)->TexGeniv)) parameters
-#define GET_TexGeniv(disp) ((disp)->TexGeniv)
-#define SET_TexGeniv(disp, fn) ((disp)->TexGeniv = fn)
-#define CALL_FeedbackBuffer(disp, parameters) (*((disp)->FeedbackBuffer)) parameters
-#define GET_FeedbackBuffer(disp) ((disp)->FeedbackBuffer)
-#define SET_FeedbackBuffer(disp, fn) ((disp)->FeedbackBuffer = fn)
-#define CALL_SelectBuffer(disp, parameters) (*((disp)->SelectBuffer)) parameters
-#define GET_SelectBuffer(disp) ((disp)->SelectBuffer)
-#define SET_SelectBuffer(disp, fn) ((disp)->SelectBuffer = fn)
-#define CALL_RenderMode(disp, parameters) (*((disp)->RenderMode)) parameters
-#define GET_RenderMode(disp) ((disp)->RenderMode)
-#define SET_RenderMode(disp, fn) ((disp)->RenderMode = fn)
-#define CALL_InitNames(disp, parameters) (*((disp)->InitNames)) parameters
-#define GET_InitNames(disp) ((disp)->InitNames)
-#define SET_InitNames(disp, fn) ((disp)->InitNames = fn)
-#define CALL_LoadName(disp, parameters) (*((disp)->LoadName)) parameters
-#define GET_LoadName(disp) ((disp)->LoadName)
-#define SET_LoadName(disp, fn) ((disp)->LoadName = fn)
-#define CALL_PassThrough(disp, parameters) (*((disp)->PassThrough)) parameters
-#define GET_PassThrough(disp) ((disp)->PassThrough)
-#define SET_PassThrough(disp, fn) ((disp)->PassThrough = fn)
-#define CALL_PopName(disp, parameters) (*((disp)->PopName)) parameters
-#define GET_PopName(disp) ((disp)->PopName)
-#define SET_PopName(disp, fn) ((disp)->PopName = fn)
-#define CALL_PushName(disp, parameters) (*((disp)->PushName)) parameters
-#define GET_PushName(disp) ((disp)->PushName)
-#define SET_PushName(disp, fn) ((disp)->PushName = fn)
-#define CALL_DrawBuffer(disp, parameters) (*((disp)->DrawBuffer)) parameters
-#define GET_DrawBuffer(disp) ((disp)->DrawBuffer)
-#define SET_DrawBuffer(disp, fn) ((disp)->DrawBuffer = fn)
-#define CALL_Clear(disp, parameters) (*((disp)->Clear)) parameters
-#define GET_Clear(disp) ((disp)->Clear)
-#define SET_Clear(disp, fn) ((disp)->Clear = fn)
-#define CALL_ClearAccum(disp, parameters) (*((disp)->ClearAccum)) parameters
-#define GET_ClearAccum(disp) ((disp)->ClearAccum)
-#define SET_ClearAccum(disp, fn) ((disp)->ClearAccum = fn)
-#define CALL_ClearIndex(disp, parameters) (*((disp)->ClearIndex)) parameters
-#define GET_ClearIndex(disp) ((disp)->ClearIndex)
-#define SET_ClearIndex(disp, fn) ((disp)->ClearIndex = fn)
-#define CALL_ClearColor(disp, parameters) (*((disp)->ClearColor)) parameters
-#define GET_ClearColor(disp) ((disp)->ClearColor)
-#define SET_ClearColor(disp, fn) ((disp)->ClearColor = fn)
-#define CALL_ClearStencil(disp, parameters) (*((disp)->ClearStencil)) parameters
-#define GET_ClearStencil(disp) ((disp)->ClearStencil)
-#define SET_ClearStencil(disp, fn) ((disp)->ClearStencil = fn)
-#define CALL_ClearDepth(disp, parameters) (*((disp)->ClearDepth)) parameters
-#define GET_ClearDepth(disp) ((disp)->ClearDepth)
-#define SET_ClearDepth(disp, fn) ((disp)->ClearDepth = fn)
-#define CALL_StencilMask(disp, parameters) (*((disp)->StencilMask)) parameters
-#define GET_StencilMask(disp) ((disp)->StencilMask)
-#define SET_StencilMask(disp, fn) ((disp)->StencilMask = fn)
-#define CALL_ColorMask(disp, parameters) (*((disp)->ColorMask)) parameters
-#define GET_ColorMask(disp) ((disp)->ColorMask)
-#define SET_ColorMask(disp, fn) ((disp)->ColorMask = fn)
-#define CALL_DepthMask(disp, parameters) (*((disp)->DepthMask)) parameters
-#define GET_DepthMask(disp) ((disp)->DepthMask)
-#define SET_DepthMask(disp, fn) ((disp)->DepthMask = fn)
-#define CALL_IndexMask(disp, parameters) (*((disp)->IndexMask)) parameters
-#define GET_IndexMask(disp) ((disp)->IndexMask)
-#define SET_IndexMask(disp, fn) ((disp)->IndexMask = fn)
-#define CALL_Accum(disp, parameters) (*((disp)->Accum)) parameters
-#define GET_Accum(disp) ((disp)->Accum)
-#define SET_Accum(disp, fn) ((disp)->Accum = fn)
-#define CALL_Disable(disp, parameters) (*((disp)->Disable)) parameters
-#define GET_Disable(disp) ((disp)->Disable)
-#define SET_Disable(disp, fn) ((disp)->Disable = fn)
-#define CALL_Enable(disp, parameters) (*((disp)->Enable)) parameters
-#define GET_Enable(disp) ((disp)->Enable)
-#define SET_Enable(disp, fn) ((disp)->Enable = fn)
-#define CALL_Finish(disp, parameters) (*((disp)->Finish)) parameters
-#define GET_Finish(disp) ((disp)->Finish)
-#define SET_Finish(disp, fn) ((disp)->Finish = fn)
-#define CALL_Flush(disp, parameters) (*((disp)->Flush)) parameters
-#define GET_Flush(disp) ((disp)->Flush)
-#define SET_Flush(disp, fn) ((disp)->Flush = fn)
-#define CALL_PopAttrib(disp, parameters) (*((disp)->PopAttrib)) parameters
-#define GET_PopAttrib(disp) ((disp)->PopAttrib)
-#define SET_PopAttrib(disp, fn) ((disp)->PopAttrib = fn)
-#define CALL_PushAttrib(disp, parameters) (*((disp)->PushAttrib)) parameters
-#define GET_PushAttrib(disp) ((disp)->PushAttrib)
-#define SET_PushAttrib(disp, fn) ((disp)->PushAttrib = fn)
-#define CALL_Map1d(disp, parameters) (*((disp)->Map1d)) parameters
-#define GET_Map1d(disp) ((disp)->Map1d)
-#define SET_Map1d(disp, fn) ((disp)->Map1d = fn)
-#define CALL_Map1f(disp, parameters) (*((disp)->Map1f)) parameters
-#define GET_Map1f(disp) ((disp)->Map1f)
-#define SET_Map1f(disp, fn) ((disp)->Map1f = fn)
-#define CALL_Map2d(disp, parameters) (*((disp)->Map2d)) parameters
-#define GET_Map2d(disp) ((disp)->Map2d)
-#define SET_Map2d(disp, fn) ((disp)->Map2d = fn)
-#define CALL_Map2f(disp, parameters) (*((disp)->Map2f)) parameters
-#define GET_Map2f(disp) ((disp)->Map2f)
-#define SET_Map2f(disp, fn) ((disp)->Map2f = fn)
-#define CALL_MapGrid1d(disp, parameters) (*((disp)->MapGrid1d)) parameters
-#define GET_MapGrid1d(disp) ((disp)->MapGrid1d)
-#define SET_MapGrid1d(disp, fn) ((disp)->MapGrid1d = fn)
-#define CALL_MapGrid1f(disp, parameters) (*((disp)->MapGrid1f)) parameters
-#define GET_MapGrid1f(disp) ((disp)->MapGrid1f)
-#define SET_MapGrid1f(disp, fn) ((disp)->MapGrid1f = fn)
-#define CALL_MapGrid2d(disp, parameters) (*((disp)->MapGrid2d)) parameters
-#define GET_MapGrid2d(disp) ((disp)->MapGrid2d)
-#define SET_MapGrid2d(disp, fn) ((disp)->MapGrid2d = fn)
-#define CALL_MapGrid2f(disp, parameters) (*((disp)->MapGrid2f)) parameters
-#define GET_MapGrid2f(disp) ((disp)->MapGrid2f)
-#define SET_MapGrid2f(disp, fn) ((disp)->MapGrid2f = fn)
-#define CALL_EvalCoord1d(disp, parameters) (*((disp)->EvalCoord1d)) parameters
-#define GET_EvalCoord1d(disp) ((disp)->EvalCoord1d)
-#define SET_EvalCoord1d(disp, fn) ((disp)->EvalCoord1d = fn)
-#define CALL_EvalCoord1dv(disp, parameters) (*((disp)->EvalCoord1dv)) parameters
-#define GET_EvalCoord1dv(disp) ((disp)->EvalCoord1dv)
-#define SET_EvalCoord1dv(disp, fn) ((disp)->EvalCoord1dv = fn)
-#define CALL_EvalCoord1f(disp, parameters) (*((disp)->EvalCoord1f)) parameters
-#define GET_EvalCoord1f(disp) ((disp)->EvalCoord1f)
-#define SET_EvalCoord1f(disp, fn) ((disp)->EvalCoord1f = fn)
-#define CALL_EvalCoord1fv(disp, parameters) (*((disp)->EvalCoord1fv)) parameters
-#define GET_EvalCoord1fv(disp) ((disp)->EvalCoord1fv)
-#define SET_EvalCoord1fv(disp, fn) ((disp)->EvalCoord1fv = fn)
-#define CALL_EvalCoord2d(disp, parameters) (*((disp)->EvalCoord2d)) parameters
-#define GET_EvalCoord2d(disp) ((disp)->EvalCoord2d)
-#define SET_EvalCoord2d(disp, fn) ((disp)->EvalCoord2d = fn)
-#define CALL_EvalCoord2dv(disp, parameters) (*((disp)->EvalCoord2dv)) parameters
-#define GET_EvalCoord2dv(disp) ((disp)->EvalCoord2dv)
-#define SET_EvalCoord2dv(disp, fn) ((disp)->EvalCoord2dv = fn)
-#define CALL_EvalCoord2f(disp, parameters) (*((disp)->EvalCoord2f)) parameters
-#define GET_EvalCoord2f(disp) ((disp)->EvalCoord2f)
-#define SET_EvalCoord2f(disp, fn) ((disp)->EvalCoord2f = fn)
-#define CALL_EvalCoord2fv(disp, parameters) (*((disp)->EvalCoord2fv)) parameters
-#define GET_EvalCoord2fv(disp) ((disp)->EvalCoord2fv)
-#define SET_EvalCoord2fv(disp, fn) ((disp)->EvalCoord2fv = fn)
-#define CALL_EvalMesh1(disp, parameters) (*((disp)->EvalMesh1)) parameters
-#define GET_EvalMesh1(disp) ((disp)->EvalMesh1)
-#define SET_EvalMesh1(disp, fn) ((disp)->EvalMesh1 = fn)
-#define CALL_EvalPoint1(disp, parameters) (*((disp)->EvalPoint1)) parameters
-#define GET_EvalPoint1(disp) ((disp)->EvalPoint1)
-#define SET_EvalPoint1(disp, fn) ((disp)->EvalPoint1 = fn)
-#define CALL_EvalMesh2(disp, parameters) (*((disp)->EvalMesh2)) parameters
-#define GET_EvalMesh2(disp) ((disp)->EvalMesh2)
-#define SET_EvalMesh2(disp, fn) ((disp)->EvalMesh2 = fn)
-#define CALL_EvalPoint2(disp, parameters) (*((disp)->EvalPoint2)) parameters
-#define GET_EvalPoint2(disp) ((disp)->EvalPoint2)
-#define SET_EvalPoint2(disp, fn) ((disp)->EvalPoint2 = fn)
-#define CALL_AlphaFunc(disp, parameters) (*((disp)->AlphaFunc)) parameters
-#define GET_AlphaFunc(disp) ((disp)->AlphaFunc)
-#define SET_AlphaFunc(disp, fn) ((disp)->AlphaFunc = fn)
-#define CALL_BlendFunc(disp, parameters) (*((disp)->BlendFunc)) parameters
-#define GET_BlendFunc(disp) ((disp)->BlendFunc)
-#define SET_BlendFunc(disp, fn) ((disp)->BlendFunc = fn)
-#define CALL_LogicOp(disp, parameters) (*((disp)->LogicOp)) parameters
-#define GET_LogicOp(disp) ((disp)->LogicOp)
-#define SET_LogicOp(disp, fn) ((disp)->LogicOp = fn)
-#define CALL_StencilFunc(disp, parameters) (*((disp)->StencilFunc)) parameters
-#define GET_StencilFunc(disp) ((disp)->StencilFunc)
-#define SET_StencilFunc(disp, fn) ((disp)->StencilFunc = fn)
-#define CALL_StencilOp(disp, parameters) (*((disp)->StencilOp)) parameters
-#define GET_StencilOp(disp) ((disp)->StencilOp)
-#define SET_StencilOp(disp, fn) ((disp)->StencilOp = fn)
-#define CALL_DepthFunc(disp, parameters) (*((disp)->DepthFunc)) parameters
-#define GET_DepthFunc(disp) ((disp)->DepthFunc)
-#define SET_DepthFunc(disp, fn) ((disp)->DepthFunc = fn)
-#define CALL_PixelZoom(disp, parameters) (*((disp)->PixelZoom)) parameters
-#define GET_PixelZoom(disp) ((disp)->PixelZoom)
-#define SET_PixelZoom(disp, fn) ((disp)->PixelZoom = fn)
-#define CALL_PixelTransferf(disp, parameters) (*((disp)->PixelTransferf)) parameters
-#define GET_PixelTransferf(disp) ((disp)->PixelTransferf)
-#define SET_PixelTransferf(disp, fn) ((disp)->PixelTransferf = fn)
-#define CALL_PixelTransferi(disp, parameters) (*((disp)->PixelTransferi)) parameters
-#define GET_PixelTransferi(disp) ((disp)->PixelTransferi)
-#define SET_PixelTransferi(disp, fn) ((disp)->PixelTransferi = fn)
-#define CALL_PixelStoref(disp, parameters) (*((disp)->PixelStoref)) parameters
-#define GET_PixelStoref(disp) ((disp)->PixelStoref)
-#define SET_PixelStoref(disp, fn) ((disp)->PixelStoref = fn)
-#define CALL_PixelStorei(disp, parameters) (*((disp)->PixelStorei)) parameters
-#define GET_PixelStorei(disp) ((disp)->PixelStorei)
-#define SET_PixelStorei(disp, fn) ((disp)->PixelStorei = fn)
-#define CALL_PixelMapfv(disp, parameters) (*((disp)->PixelMapfv)) parameters
-#define GET_PixelMapfv(disp) ((disp)->PixelMapfv)
-#define SET_PixelMapfv(disp, fn) ((disp)->PixelMapfv = fn)
-#define CALL_PixelMapuiv(disp, parameters) (*((disp)->PixelMapuiv)) parameters
-#define GET_PixelMapuiv(disp) ((disp)->PixelMapuiv)
-#define SET_PixelMapuiv(disp, fn) ((disp)->PixelMapuiv = fn)
-#define CALL_PixelMapusv(disp, parameters) (*((disp)->PixelMapusv)) parameters
-#define GET_PixelMapusv(disp) ((disp)->PixelMapusv)
-#define SET_PixelMapusv(disp, fn) ((disp)->PixelMapusv = fn)
-#define CALL_ReadBuffer(disp, parameters) (*((disp)->ReadBuffer)) parameters
-#define GET_ReadBuffer(disp) ((disp)->ReadBuffer)
-#define SET_ReadBuffer(disp, fn) ((disp)->ReadBuffer = fn)
-#define CALL_CopyPixels(disp, parameters) (*((disp)->CopyPixels)) parameters
-#define GET_CopyPixels(disp) ((disp)->CopyPixels)
-#define SET_CopyPixels(disp, fn) ((disp)->CopyPixels = fn)
-#define CALL_ReadPixels(disp, parameters) (*((disp)->ReadPixels)) parameters
-#define GET_ReadPixels(disp) ((disp)->ReadPixels)
-#define SET_ReadPixels(disp, fn) ((disp)->ReadPixels = fn)
-#define CALL_DrawPixels(disp, parameters) (*((disp)->DrawPixels)) parameters
-#define GET_DrawPixels(disp) ((disp)->DrawPixels)
-#define SET_DrawPixels(disp, fn) ((disp)->DrawPixels = fn)
-#define CALL_GetBooleanv(disp, parameters) (*((disp)->GetBooleanv)) parameters
-#define GET_GetBooleanv(disp) ((disp)->GetBooleanv)
-#define SET_GetBooleanv(disp, fn) ((disp)->GetBooleanv = fn)
-#define CALL_GetClipPlane(disp, parameters) (*((disp)->GetClipPlane)) parameters
-#define GET_GetClipPlane(disp) ((disp)->GetClipPlane)
-#define SET_GetClipPlane(disp, fn) ((disp)->GetClipPlane = fn)
-#define CALL_GetDoublev(disp, parameters) (*((disp)->GetDoublev)) parameters
-#define GET_GetDoublev(disp) ((disp)->GetDoublev)
-#define SET_GetDoublev(disp, fn) ((disp)->GetDoublev = fn)
-#define CALL_GetError(disp, parameters) (*((disp)->GetError)) parameters
-#define GET_GetError(disp) ((disp)->GetError)
-#define SET_GetError(disp, fn) ((disp)->GetError = fn)
-#define CALL_GetFloatv(disp, parameters) (*((disp)->GetFloatv)) parameters
-#define GET_GetFloatv(disp) ((disp)->GetFloatv)
-#define SET_GetFloatv(disp, fn) ((disp)->GetFloatv = fn)
-#define CALL_GetIntegerv(disp, parameters) (*((disp)->GetIntegerv)) parameters
-#define GET_GetIntegerv(disp) ((disp)->GetIntegerv)
-#define SET_GetIntegerv(disp, fn) ((disp)->GetIntegerv = fn)
-#define CALL_GetLightfv(disp, parameters) (*((disp)->GetLightfv)) parameters
-#define GET_GetLightfv(disp) ((disp)->GetLightfv)
-#define SET_GetLightfv(disp, fn) ((disp)->GetLightfv = fn)
-#define CALL_GetLightiv(disp, parameters) (*((disp)->GetLightiv)) parameters
-#define GET_GetLightiv(disp) ((disp)->GetLightiv)
-#define SET_GetLightiv(disp, fn) ((disp)->GetLightiv = fn)
-#define CALL_GetMapdv(disp, parameters) (*((disp)->GetMapdv)) parameters
-#define GET_GetMapdv(disp) ((disp)->GetMapdv)
-#define SET_GetMapdv(disp, fn) ((disp)->GetMapdv = fn)
-#define CALL_GetMapfv(disp, parameters) (*((disp)->GetMapfv)) parameters
-#define GET_GetMapfv(disp) ((disp)->GetMapfv)
-#define SET_GetMapfv(disp, fn) ((disp)->GetMapfv = fn)
-#define CALL_GetMapiv(disp, parameters) (*((disp)->GetMapiv)) parameters
-#define GET_GetMapiv(disp) ((disp)->GetMapiv)
-#define SET_GetMapiv(disp, fn) ((disp)->GetMapiv = fn)
-#define CALL_GetMaterialfv(disp, parameters) (*((disp)->GetMaterialfv)) parameters
-#define GET_GetMaterialfv(disp) ((disp)->GetMaterialfv)
-#define SET_GetMaterialfv(disp, fn) ((disp)->GetMaterialfv = fn)
-#define CALL_GetMaterialiv(disp, parameters) (*((disp)->GetMaterialiv)) parameters
-#define GET_GetMaterialiv(disp) ((disp)->GetMaterialiv)
-#define SET_GetMaterialiv(disp, fn) ((disp)->GetMaterialiv = fn)
-#define CALL_GetPixelMapfv(disp, parameters) (*((disp)->GetPixelMapfv)) parameters
-#define GET_GetPixelMapfv(disp) ((disp)->GetPixelMapfv)
-#define SET_GetPixelMapfv(disp, fn) ((disp)->GetPixelMapfv = fn)
-#define CALL_GetPixelMapuiv(disp, parameters) (*((disp)->GetPixelMapuiv)) parameters
-#define GET_GetPixelMapuiv(disp) ((disp)->GetPixelMapuiv)
-#define SET_GetPixelMapuiv(disp, fn) ((disp)->GetPixelMapuiv = fn)
-#define CALL_GetPixelMapusv(disp, parameters) (*((disp)->GetPixelMapusv)) parameters
-#define GET_GetPixelMapusv(disp) ((disp)->GetPixelMapusv)
-#define SET_GetPixelMapusv(disp, fn) ((disp)->GetPixelMapusv = fn)
-#define CALL_GetPolygonStipple(disp, parameters) (*((disp)->GetPolygonStipple)) parameters
-#define GET_GetPolygonStipple(disp) ((disp)->GetPolygonStipple)
-#define SET_GetPolygonStipple(disp, fn) ((disp)->GetPolygonStipple = fn)
-#define CALL_GetString(disp, parameters) (*((disp)->GetString)) parameters
-#define GET_GetString(disp) ((disp)->GetString)
-#define SET_GetString(disp, fn) ((disp)->GetString = fn)
-#define CALL_GetTexEnvfv(disp, parameters) (*((disp)->GetTexEnvfv)) parameters
-#define GET_GetTexEnvfv(disp) ((disp)->GetTexEnvfv)
-#define SET_GetTexEnvfv(disp, fn) ((disp)->GetTexEnvfv = fn)
-#define CALL_GetTexEnviv(disp, parameters) (*((disp)->GetTexEnviv)) parameters
-#define GET_GetTexEnviv(disp) ((disp)->GetTexEnviv)
-#define SET_GetTexEnviv(disp, fn) ((disp)->GetTexEnviv = fn)
-#define CALL_GetTexGendv(disp, parameters) (*((disp)->GetTexGendv)) parameters
-#define GET_GetTexGendv(disp) ((disp)->GetTexGendv)
-#define SET_GetTexGendv(disp, fn) ((disp)->GetTexGendv = fn)
-#define CALL_GetTexGenfv(disp, parameters) (*((disp)->GetTexGenfv)) parameters
-#define GET_GetTexGenfv(disp) ((disp)->GetTexGenfv)
-#define SET_GetTexGenfv(disp, fn) ((disp)->GetTexGenfv = fn)
-#define CALL_GetTexGeniv(disp, parameters) (*((disp)->GetTexGeniv)) parameters
-#define GET_GetTexGeniv(disp) ((disp)->GetTexGeniv)
-#define SET_GetTexGeniv(disp, fn) ((disp)->GetTexGeniv = fn)
-#define CALL_GetTexImage(disp, parameters) (*((disp)->GetTexImage)) parameters
-#define GET_GetTexImage(disp) ((disp)->GetTexImage)
-#define SET_GetTexImage(disp, fn) ((disp)->GetTexImage = fn)
-#define CALL_GetTexParameterfv(disp, parameters) (*((disp)->GetTexParameterfv)) parameters
-#define GET_GetTexParameterfv(disp) ((disp)->GetTexParameterfv)
-#define SET_GetTexParameterfv(disp, fn) ((disp)->GetTexParameterfv = fn)
-#define CALL_GetTexParameteriv(disp, parameters) (*((disp)->GetTexParameteriv)) parameters
-#define GET_GetTexParameteriv(disp) ((disp)->GetTexParameteriv)
-#define SET_GetTexParameteriv(disp, fn) ((disp)->GetTexParameteriv = fn)
-#define CALL_GetTexLevelParameterfv(disp, parameters) (*((disp)->GetTexLevelParameterfv)) parameters
-#define GET_GetTexLevelParameterfv(disp) ((disp)->GetTexLevelParameterfv)
-#define SET_GetTexLevelParameterfv(disp, fn) ((disp)->GetTexLevelParameterfv = fn)
-#define CALL_GetTexLevelParameteriv(disp, parameters) (*((disp)->GetTexLevelParameteriv)) parameters
-#define GET_GetTexLevelParameteriv(disp) ((disp)->GetTexLevelParameteriv)
-#define SET_GetTexLevelParameteriv(disp, fn) ((disp)->GetTexLevelParameteriv = fn)
-#define CALL_IsEnabled(disp, parameters) (*((disp)->IsEnabled)) parameters
-#define GET_IsEnabled(disp) ((disp)->IsEnabled)
-#define SET_IsEnabled(disp, fn) ((disp)->IsEnabled = fn)
-#define CALL_IsList(disp, parameters) (*((disp)->IsList)) parameters
-#define GET_IsList(disp) ((disp)->IsList)
-#define SET_IsList(disp, fn) ((disp)->IsList = fn)
-#define CALL_DepthRange(disp, parameters) (*((disp)->DepthRange)) parameters
-#define GET_DepthRange(disp) ((disp)->DepthRange)
-#define SET_DepthRange(disp, fn) ((disp)->DepthRange = fn)
-#define CALL_Frustum(disp, parameters) (*((disp)->Frustum)) parameters
-#define GET_Frustum(disp) ((disp)->Frustum)
-#define SET_Frustum(disp, fn) ((disp)->Frustum = fn)
-#define CALL_LoadIdentity(disp, parameters) (*((disp)->LoadIdentity)) parameters
-#define GET_LoadIdentity(disp) ((disp)->LoadIdentity)
-#define SET_LoadIdentity(disp, fn) ((disp)->LoadIdentity = fn)
-#define CALL_LoadMatrixf(disp, parameters) (*((disp)->LoadMatrixf)) parameters
-#define GET_LoadMatrixf(disp) ((disp)->LoadMatrixf)
-#define SET_LoadMatrixf(disp, fn) ((disp)->LoadMatrixf = fn)
-#define CALL_LoadMatrixd(disp, parameters) (*((disp)->LoadMatrixd)) parameters
-#define GET_LoadMatrixd(disp) ((disp)->LoadMatrixd)
-#define SET_LoadMatrixd(disp, fn) ((disp)->LoadMatrixd = fn)
-#define CALL_MatrixMode(disp, parameters) (*((disp)->MatrixMode)) parameters
-#define GET_MatrixMode(disp) ((disp)->MatrixMode)
-#define SET_MatrixMode(disp, fn) ((disp)->MatrixMode = fn)
-#define CALL_MultMatrixf(disp, parameters) (*((disp)->MultMatrixf)) parameters
-#define GET_MultMatrixf(disp) ((disp)->MultMatrixf)
-#define SET_MultMatrixf(disp, fn) ((disp)->MultMatrixf = fn)
-#define CALL_MultMatrixd(disp, parameters) (*((disp)->MultMatrixd)) parameters
-#define GET_MultMatrixd(disp) ((disp)->MultMatrixd)
-#define SET_MultMatrixd(disp, fn) ((disp)->MultMatrixd = fn)
-#define CALL_Ortho(disp, parameters) (*((disp)->Ortho)) parameters
-#define GET_Ortho(disp) ((disp)->Ortho)
-#define SET_Ortho(disp, fn) ((disp)->Ortho = fn)
-#define CALL_PopMatrix(disp, parameters) (*((disp)->PopMatrix)) parameters
-#define GET_PopMatrix(disp) ((disp)->PopMatrix)
-#define SET_PopMatrix(disp, fn) ((disp)->PopMatrix = fn)
-#define CALL_PushMatrix(disp, parameters) (*((disp)->PushMatrix)) parameters
-#define GET_PushMatrix(disp) ((disp)->PushMatrix)
-#define SET_PushMatrix(disp, fn) ((disp)->PushMatrix = fn)
-#define CALL_Rotated(disp, parameters) (*((disp)->Rotated)) parameters
-#define GET_Rotated(disp) ((disp)->Rotated)
-#define SET_Rotated(disp, fn) ((disp)->Rotated = fn)
-#define CALL_Rotatef(disp, parameters) (*((disp)->Rotatef)) parameters
-#define GET_Rotatef(disp) ((disp)->Rotatef)
-#define SET_Rotatef(disp, fn) ((disp)->Rotatef = fn)
-#define CALL_Scaled(disp, parameters) (*((disp)->Scaled)) parameters
-#define GET_Scaled(disp) ((disp)->Scaled)
-#define SET_Scaled(disp, fn) ((disp)->Scaled = fn)
-#define CALL_Scalef(disp, parameters) (*((disp)->Scalef)) parameters
-#define GET_Scalef(disp) ((disp)->Scalef)
-#define SET_Scalef(disp, fn) ((disp)->Scalef = fn)
-#define CALL_Translated(disp, parameters) (*((disp)->Translated)) parameters
-#define GET_Translated(disp) ((disp)->Translated)
-#define SET_Translated(disp, fn) ((disp)->Translated = fn)
-#define CALL_Translatef(disp, parameters) (*((disp)->Translatef)) parameters
-#define GET_Translatef(disp) ((disp)->Translatef)
-#define SET_Translatef(disp, fn) ((disp)->Translatef = fn)
-#define CALL_Viewport(disp, parameters) (*((disp)->Viewport)) parameters
-#define GET_Viewport(disp) ((disp)->Viewport)
-#define SET_Viewport(disp, fn) ((disp)->Viewport = fn)
-#define CALL_ArrayElement(disp, parameters) (*((disp)->ArrayElement)) parameters
-#define GET_ArrayElement(disp) ((disp)->ArrayElement)
-#define SET_ArrayElement(disp, fn) ((disp)->ArrayElement = fn)
-#define CALL_BindTexture(disp, parameters) (*((disp)->BindTexture)) parameters
-#define GET_BindTexture(disp) ((disp)->BindTexture)
-#define SET_BindTexture(disp, fn) ((disp)->BindTexture = fn)
-#define CALL_ColorPointer(disp, parameters) (*((disp)->ColorPointer)) parameters
-#define GET_ColorPointer(disp) ((disp)->ColorPointer)
-#define SET_ColorPointer(disp, fn) ((disp)->ColorPointer = fn)
-#define CALL_DisableClientState(disp, parameters) (*((disp)->DisableClientState)) parameters
-#define GET_DisableClientState(disp) ((disp)->DisableClientState)
-#define SET_DisableClientState(disp, fn) ((disp)->DisableClientState = fn)
-#define CALL_DrawArrays(disp, parameters) (*((disp)->DrawArrays)) parameters
-#define GET_DrawArrays(disp) ((disp)->DrawArrays)
-#define SET_DrawArrays(disp, fn) ((disp)->DrawArrays = fn)
-#define CALL_DrawElements(disp, parameters) (*((disp)->DrawElements)) parameters
-#define GET_DrawElements(disp) ((disp)->DrawElements)
-#define SET_DrawElements(disp, fn) ((disp)->DrawElements = fn)
-#define CALL_EdgeFlagPointer(disp, parameters) (*((disp)->EdgeFlagPointer)) parameters
-#define GET_EdgeFlagPointer(disp) ((disp)->EdgeFlagPointer)
-#define SET_EdgeFlagPointer(disp, fn) ((disp)->EdgeFlagPointer = fn)
-#define CALL_EnableClientState(disp, parameters) (*((disp)->EnableClientState)) parameters
-#define GET_EnableClientState(disp) ((disp)->EnableClientState)
-#define SET_EnableClientState(disp, fn) ((disp)->EnableClientState = fn)
-#define CALL_IndexPointer(disp, parameters) (*((disp)->IndexPointer)) parameters
-#define GET_IndexPointer(disp) ((disp)->IndexPointer)
-#define SET_IndexPointer(disp, fn) ((disp)->IndexPointer = fn)
-#define CALL_Indexub(disp, parameters) (*((disp)->Indexub)) parameters
-#define GET_Indexub(disp) ((disp)->Indexub)
-#define SET_Indexub(disp, fn) ((disp)->Indexub = fn)
-#define CALL_Indexubv(disp, parameters) (*((disp)->Indexubv)) parameters
-#define GET_Indexubv(disp) ((disp)->Indexubv)
-#define SET_Indexubv(disp, fn) ((disp)->Indexubv = fn)
-#define CALL_InterleavedArrays(disp, parameters) (*((disp)->InterleavedArrays)) parameters
-#define GET_InterleavedArrays(disp) ((disp)->InterleavedArrays)
-#define SET_InterleavedArrays(disp, fn) ((disp)->InterleavedArrays = fn)
-#define CALL_NormalPointer(disp, parameters) (*((disp)->NormalPointer)) parameters
-#define GET_NormalPointer(disp) ((disp)->NormalPointer)
-#define SET_NormalPointer(disp, fn) ((disp)->NormalPointer = fn)
-#define CALL_PolygonOffset(disp, parameters) (*((disp)->PolygonOffset)) parameters
-#define GET_PolygonOffset(disp) ((disp)->PolygonOffset)
-#define SET_PolygonOffset(disp, fn) ((disp)->PolygonOffset = fn)
-#define CALL_TexCoordPointer(disp, parameters) (*((disp)->TexCoordPointer)) parameters
-#define GET_TexCoordPointer(disp) ((disp)->TexCoordPointer)
-#define SET_TexCoordPointer(disp, fn) ((disp)->TexCoordPointer = fn)
-#define CALL_VertexPointer(disp, parameters) (*((disp)->VertexPointer)) parameters
-#define GET_VertexPointer(disp) ((disp)->VertexPointer)
-#define SET_VertexPointer(disp, fn) ((disp)->VertexPointer = fn)
-#define CALL_AreTexturesResident(disp, parameters) (*((disp)->AreTexturesResident)) parameters
-#define GET_AreTexturesResident(disp) ((disp)->AreTexturesResident)
-#define SET_AreTexturesResident(disp, fn) ((disp)->AreTexturesResident = fn)
-#define CALL_CopyTexImage1D(disp, parameters) (*((disp)->CopyTexImage1D)) parameters
-#define GET_CopyTexImage1D(disp) ((disp)->CopyTexImage1D)
-#define SET_CopyTexImage1D(disp, fn) ((disp)->CopyTexImage1D = fn)
-#define CALL_CopyTexImage2D(disp, parameters) (*((disp)->CopyTexImage2D)) parameters
-#define GET_CopyTexImage2D(disp) ((disp)->CopyTexImage2D)
-#define SET_CopyTexImage2D(disp, fn) ((disp)->CopyTexImage2D = fn)
-#define CALL_CopyTexSubImage1D(disp, parameters) (*((disp)->CopyTexSubImage1D)) parameters
-#define GET_CopyTexSubImage1D(disp) ((disp)->CopyTexSubImage1D)
-#define SET_CopyTexSubImage1D(disp, fn) ((disp)->CopyTexSubImage1D = fn)
-#define CALL_CopyTexSubImage2D(disp, parameters) (*((disp)->CopyTexSubImage2D)) parameters
-#define GET_CopyTexSubImage2D(disp) ((disp)->CopyTexSubImage2D)
-#define SET_CopyTexSubImage2D(disp, fn) ((disp)->CopyTexSubImage2D = fn)
-#define CALL_DeleteTextures(disp, parameters) (*((disp)->DeleteTextures)) parameters
-#define GET_DeleteTextures(disp) ((disp)->DeleteTextures)
-#define SET_DeleteTextures(disp, fn) ((disp)->DeleteTextures = fn)
-#define CALL_GenTextures(disp, parameters) (*((disp)->GenTextures)) parameters
-#define GET_GenTextures(disp) ((disp)->GenTextures)
-#define SET_GenTextures(disp, fn) ((disp)->GenTextures = fn)
-#define CALL_GetPointerv(disp, parameters) (*((disp)->GetPointerv)) parameters
-#define GET_GetPointerv(disp) ((disp)->GetPointerv)
-#define SET_GetPointerv(disp, fn) ((disp)->GetPointerv = fn)
-#define CALL_IsTexture(disp, parameters) (*((disp)->IsTexture)) parameters
-#define GET_IsTexture(disp) ((disp)->IsTexture)
-#define SET_IsTexture(disp, fn) ((disp)->IsTexture = fn)
-#define CALL_PrioritizeTextures(disp, parameters) (*((disp)->PrioritizeTextures)) parameters
-#define GET_PrioritizeTextures(disp) ((disp)->PrioritizeTextures)
-#define SET_PrioritizeTextures(disp, fn) ((disp)->PrioritizeTextures = fn)
-#define CALL_TexSubImage1D(disp, parameters) (*((disp)->TexSubImage1D)) parameters
-#define GET_TexSubImage1D(disp) ((disp)->TexSubImage1D)
-#define SET_TexSubImage1D(disp, fn) ((disp)->TexSubImage1D = fn)
-#define CALL_TexSubImage2D(disp, parameters) (*((disp)->TexSubImage2D)) parameters
-#define GET_TexSubImage2D(disp) ((disp)->TexSubImage2D)
-#define SET_TexSubImage2D(disp, fn) ((disp)->TexSubImage2D = fn)
-#define CALL_PopClientAttrib(disp, parameters) (*((disp)->PopClientAttrib)) parameters
-#define GET_PopClientAttrib(disp) ((disp)->PopClientAttrib)
-#define SET_PopClientAttrib(disp, fn) ((disp)->PopClientAttrib = fn)
-#define CALL_PushClientAttrib(disp, parameters) (*((disp)->PushClientAttrib)) parameters
-#define GET_PushClientAttrib(disp) ((disp)->PushClientAttrib)
-#define SET_PushClientAttrib(disp, fn) ((disp)->PushClientAttrib = fn)
-#define CALL_BlendColor(disp, parameters) (*((disp)->BlendColor)) parameters
-#define GET_BlendColor(disp) ((disp)->BlendColor)
-#define SET_BlendColor(disp, fn) ((disp)->BlendColor = fn)
-#define CALL_BlendEquation(disp, parameters) (*((disp)->BlendEquation)) parameters
-#define GET_BlendEquation(disp) ((disp)->BlendEquation)
-#define SET_BlendEquation(disp, fn) ((disp)->BlendEquation = fn)
-#define CALL_DrawRangeElements(disp, parameters) (*((disp)->DrawRangeElements)) parameters
-#define GET_DrawRangeElements(disp) ((disp)->DrawRangeElements)
-#define SET_DrawRangeElements(disp, fn) ((disp)->DrawRangeElements = fn)
-#define CALL_ColorTable(disp, parameters) (*((disp)->ColorTable)) parameters
-#define GET_ColorTable(disp) ((disp)->ColorTable)
-#define SET_ColorTable(disp, fn) ((disp)->ColorTable = fn)
-#define CALL_ColorTableParameterfv(disp, parameters) (*((disp)->ColorTableParameterfv)) parameters
-#define GET_ColorTableParameterfv(disp) ((disp)->ColorTableParameterfv)
-#define SET_ColorTableParameterfv(disp, fn) ((disp)->ColorTableParameterfv = fn)
-#define CALL_ColorTableParameteriv(disp, parameters) (*((disp)->ColorTableParameteriv)) parameters
-#define GET_ColorTableParameteriv(disp) ((disp)->ColorTableParameteriv)
-#define SET_ColorTableParameteriv(disp, fn) ((disp)->ColorTableParameteriv = fn)
-#define CALL_CopyColorTable(disp, parameters) (*((disp)->CopyColorTable)) parameters
-#define GET_CopyColorTable(disp) ((disp)->CopyColorTable)
-#define SET_CopyColorTable(disp, fn) ((disp)->CopyColorTable = fn)
-#define CALL_GetColorTable(disp, parameters) (*((disp)->GetColorTable)) parameters
-#define GET_GetColorTable(disp) ((disp)->GetColorTable)
-#define SET_GetColorTable(disp, fn) ((disp)->GetColorTable = fn)
-#define CALL_GetColorTableParameterfv(disp, parameters) (*((disp)->GetColorTableParameterfv)) parameters
-#define GET_GetColorTableParameterfv(disp) ((disp)->GetColorTableParameterfv)
-#define SET_GetColorTableParameterfv(disp, fn) ((disp)->GetColorTableParameterfv = fn)
-#define CALL_GetColorTableParameteriv(disp, parameters) (*((disp)->GetColorTableParameteriv)) parameters
-#define GET_GetColorTableParameteriv(disp) ((disp)->GetColorTableParameteriv)
-#define SET_GetColorTableParameteriv(disp, fn) ((disp)->GetColorTableParameteriv = fn)
-#define CALL_ColorSubTable(disp, parameters) (*((disp)->ColorSubTable)) parameters
-#define GET_ColorSubTable(disp) ((disp)->ColorSubTable)
-#define SET_ColorSubTable(disp, fn) ((disp)->ColorSubTable = fn)
-#define CALL_CopyColorSubTable(disp, parameters) (*((disp)->CopyColorSubTable)) parameters
-#define GET_CopyColorSubTable(disp) ((disp)->CopyColorSubTable)
-#define SET_CopyColorSubTable(disp, fn) ((disp)->CopyColorSubTable = fn)
-#define CALL_ConvolutionFilter1D(disp, parameters) (*((disp)->ConvolutionFilter1D)) parameters
-#define GET_ConvolutionFilter1D(disp) ((disp)->ConvolutionFilter1D)
-#define SET_ConvolutionFilter1D(disp, fn) ((disp)->ConvolutionFilter1D = fn)
-#define CALL_ConvolutionFilter2D(disp, parameters) (*((disp)->ConvolutionFilter2D)) parameters
-#define GET_ConvolutionFilter2D(disp) ((disp)->ConvolutionFilter2D)
-#define SET_ConvolutionFilter2D(disp, fn) ((disp)->ConvolutionFilter2D = fn)
-#define CALL_ConvolutionParameterf(disp, parameters) (*((disp)->ConvolutionParameterf)) parameters
-#define GET_ConvolutionParameterf(disp) ((disp)->ConvolutionParameterf)
-#define SET_ConvolutionParameterf(disp, fn) ((disp)->ConvolutionParameterf = fn)
-#define CALL_ConvolutionParameterfv(disp, parameters) (*((disp)->ConvolutionParameterfv)) parameters
-#define GET_ConvolutionParameterfv(disp) ((disp)->ConvolutionParameterfv)
-#define SET_ConvolutionParameterfv(disp, fn) ((disp)->ConvolutionParameterfv = fn)
-#define CALL_ConvolutionParameteri(disp, parameters) (*((disp)->ConvolutionParameteri)) parameters
-#define GET_ConvolutionParameteri(disp) ((disp)->ConvolutionParameteri)
-#define SET_ConvolutionParameteri(disp, fn) ((disp)->ConvolutionParameteri = fn)
-#define CALL_ConvolutionParameteriv(disp, parameters) (*((disp)->ConvolutionParameteriv)) parameters
-#define GET_ConvolutionParameteriv(disp) ((disp)->ConvolutionParameteriv)
-#define SET_ConvolutionParameteriv(disp, fn) ((disp)->ConvolutionParameteriv = fn)
-#define CALL_CopyConvolutionFilter1D(disp, parameters) (*((disp)->CopyConvolutionFilter1D)) parameters
-#define GET_CopyConvolutionFilter1D(disp) ((disp)->CopyConvolutionFilter1D)
-#define SET_CopyConvolutionFilter1D(disp, fn) ((disp)->CopyConvolutionFilter1D = fn)
-#define CALL_CopyConvolutionFilter2D(disp, parameters) (*((disp)->CopyConvolutionFilter2D)) parameters
-#define GET_CopyConvolutionFilter2D(disp) ((disp)->CopyConvolutionFilter2D)
-#define SET_CopyConvolutionFilter2D(disp, fn) ((disp)->CopyConvolutionFilter2D = fn)
-#define CALL_GetConvolutionFilter(disp, parameters) (*((disp)->GetConvolutionFilter)) parameters
-#define GET_GetConvolutionFilter(disp) ((disp)->GetConvolutionFilter)
-#define SET_GetConvolutionFilter(disp, fn) ((disp)->GetConvolutionFilter = fn)
-#define CALL_GetConvolutionParameterfv(disp, parameters) (*((disp)->GetConvolutionParameterfv)) parameters
-#define GET_GetConvolutionParameterfv(disp) ((disp)->GetConvolutionParameterfv)
-#define SET_GetConvolutionParameterfv(disp, fn) ((disp)->GetConvolutionParameterfv = fn)
-#define CALL_GetConvolutionParameteriv(disp, parameters) (*((disp)->GetConvolutionParameteriv)) parameters
-#define GET_GetConvolutionParameteriv(disp) ((disp)->GetConvolutionParameteriv)
-#define SET_GetConvolutionParameteriv(disp, fn) ((disp)->GetConvolutionParameteriv = fn)
-#define CALL_GetSeparableFilter(disp, parameters) (*((disp)->GetSeparableFilter)) parameters
-#define GET_GetSeparableFilter(disp) ((disp)->GetSeparableFilter)
-#define SET_GetSeparableFilter(disp, fn) ((disp)->GetSeparableFilter = fn)
-#define CALL_SeparableFilter2D(disp, parameters) (*((disp)->SeparableFilter2D)) parameters
-#define GET_SeparableFilter2D(disp) ((disp)->SeparableFilter2D)
-#define SET_SeparableFilter2D(disp, fn) ((disp)->SeparableFilter2D = fn)
-#define CALL_GetHistogram(disp, parameters) (*((disp)->GetHistogram)) parameters
-#define GET_GetHistogram(disp) ((disp)->GetHistogram)
-#define SET_GetHistogram(disp, fn) ((disp)->GetHistogram = fn)
-#define CALL_GetHistogramParameterfv(disp, parameters) (*((disp)->GetHistogramParameterfv)) parameters
-#define GET_GetHistogramParameterfv(disp) ((disp)->GetHistogramParameterfv)
-#define SET_GetHistogramParameterfv(disp, fn) ((disp)->GetHistogramParameterfv = fn)
-#define CALL_GetHistogramParameteriv(disp, parameters) (*((disp)->GetHistogramParameteriv)) parameters
-#define GET_GetHistogramParameteriv(disp) ((disp)->GetHistogramParameteriv)
-#define SET_GetHistogramParameteriv(disp, fn) ((disp)->GetHistogramParameteriv = fn)
-#define CALL_GetMinmax(disp, parameters) (*((disp)->GetMinmax)) parameters
-#define GET_GetMinmax(disp) ((disp)->GetMinmax)
-#define SET_GetMinmax(disp, fn) ((disp)->GetMinmax = fn)
-#define CALL_GetMinmaxParameterfv(disp, parameters) (*((disp)->GetMinmaxParameterfv)) parameters
-#define GET_GetMinmaxParameterfv(disp) ((disp)->GetMinmaxParameterfv)
-#define SET_GetMinmaxParameterfv(disp, fn) ((disp)->GetMinmaxParameterfv = fn)
-#define CALL_GetMinmaxParameteriv(disp, parameters) (*((disp)->GetMinmaxParameteriv)) parameters
-#define GET_GetMinmaxParameteriv(disp) ((disp)->GetMinmaxParameteriv)
-#define SET_GetMinmaxParameteriv(disp, fn) ((disp)->GetMinmaxParameteriv = fn)
-#define CALL_Histogram(disp, parameters) (*((disp)->Histogram)) parameters
-#define GET_Histogram(disp) ((disp)->Histogram)
-#define SET_Histogram(disp, fn) ((disp)->Histogram = fn)
-#define CALL_Minmax(disp, parameters) (*((disp)->Minmax)) parameters
-#define GET_Minmax(disp) ((disp)->Minmax)
-#define SET_Minmax(disp, fn) ((disp)->Minmax = fn)
-#define CALL_ResetHistogram(disp, parameters) (*((disp)->ResetHistogram)) parameters
-#define GET_ResetHistogram(disp) ((disp)->ResetHistogram)
-#define SET_ResetHistogram(disp, fn) ((disp)->ResetHistogram = fn)
-#define CALL_ResetMinmax(disp, parameters) (*((disp)->ResetMinmax)) parameters
-#define GET_ResetMinmax(disp) ((disp)->ResetMinmax)
-#define SET_ResetMinmax(disp, fn) ((disp)->ResetMinmax = fn)
-#define CALL_TexImage3D(disp, parameters) (*((disp)->TexImage3D)) parameters
-#define GET_TexImage3D(disp) ((disp)->TexImage3D)
-#define SET_TexImage3D(disp, fn) ((disp)->TexImage3D = fn)
-#define CALL_TexSubImage3D(disp, parameters) (*((disp)->TexSubImage3D)) parameters
-#define GET_TexSubImage3D(disp) ((disp)->TexSubImage3D)
-#define SET_TexSubImage3D(disp, fn) ((disp)->TexSubImage3D = fn)
-#define CALL_CopyTexSubImage3D(disp, parameters) (*((disp)->CopyTexSubImage3D)) parameters
-#define GET_CopyTexSubImage3D(disp) ((disp)->CopyTexSubImage3D)
-#define SET_CopyTexSubImage3D(disp, fn) ((disp)->CopyTexSubImage3D = fn)
-#define CALL_ActiveTextureARB(disp, parameters) (*((disp)->ActiveTextureARB)) parameters
-#define GET_ActiveTextureARB(disp) ((disp)->ActiveTextureARB)
-#define SET_ActiveTextureARB(disp, fn) ((disp)->ActiveTextureARB = fn)
-#define CALL_ClientActiveTextureARB(disp, parameters) (*((disp)->ClientActiveTextureARB)) parameters
-#define GET_ClientActiveTextureARB(disp) ((disp)->ClientActiveTextureARB)
-#define SET_ClientActiveTextureARB(disp, fn) ((disp)->ClientActiveTextureARB = fn)
-#define CALL_MultiTexCoord1dARB(disp, parameters) (*((disp)->MultiTexCoord1dARB)) parameters
-#define GET_MultiTexCoord1dARB(disp) ((disp)->MultiTexCoord1dARB)
-#define SET_MultiTexCoord1dARB(disp, fn) ((disp)->MultiTexCoord1dARB = fn)
-#define CALL_MultiTexCoord1dvARB(disp, parameters) (*((disp)->MultiTexCoord1dvARB)) parameters
-#define GET_MultiTexCoord1dvARB(disp) ((disp)->MultiTexCoord1dvARB)
-#define SET_MultiTexCoord1dvARB(disp, fn) ((disp)->MultiTexCoord1dvARB = fn)
-#define CALL_MultiTexCoord1fARB(disp, parameters) (*((disp)->MultiTexCoord1fARB)) parameters
-#define GET_MultiTexCoord1fARB(disp) ((disp)->MultiTexCoord1fARB)
-#define SET_MultiTexCoord1fARB(disp, fn) ((disp)->MultiTexCoord1fARB = fn)
-#define CALL_MultiTexCoord1fvARB(disp, parameters) (*((disp)->MultiTexCoord1fvARB)) parameters
-#define GET_MultiTexCoord1fvARB(disp) ((disp)->MultiTexCoord1fvARB)
-#define SET_MultiTexCoord1fvARB(disp, fn) ((disp)->MultiTexCoord1fvARB = fn)
-#define CALL_MultiTexCoord1iARB(disp, parameters) (*((disp)->MultiTexCoord1iARB)) parameters
-#define GET_MultiTexCoord1iARB(disp) ((disp)->MultiTexCoord1iARB)
-#define SET_MultiTexCoord1iARB(disp, fn) ((disp)->MultiTexCoord1iARB = fn)
-#define CALL_MultiTexCoord1ivARB(disp, parameters) (*((disp)->MultiTexCoord1ivARB)) parameters
-#define GET_MultiTexCoord1ivARB(disp) ((disp)->MultiTexCoord1ivARB)
-#define SET_MultiTexCoord1ivARB(disp, fn) ((disp)->MultiTexCoord1ivARB = fn)
-#define CALL_MultiTexCoord1sARB(disp, parameters) (*((disp)->MultiTexCoord1sARB)) parameters
-#define GET_MultiTexCoord1sARB(disp) ((disp)->MultiTexCoord1sARB)
-#define SET_MultiTexCoord1sARB(disp, fn) ((disp)->MultiTexCoord1sARB = fn)
-#define CALL_MultiTexCoord1svARB(disp, parameters) (*((disp)->MultiTexCoord1svARB)) parameters
-#define GET_MultiTexCoord1svARB(disp) ((disp)->MultiTexCoord1svARB)
-#define SET_MultiTexCoord1svARB(disp, fn) ((disp)->MultiTexCoord1svARB = fn)
-#define CALL_MultiTexCoord2dARB(disp, parameters) (*((disp)->MultiTexCoord2dARB)) parameters
-#define GET_MultiTexCoord2dARB(disp) ((disp)->MultiTexCoord2dARB)
-#define SET_MultiTexCoord2dARB(disp, fn) ((disp)->MultiTexCoord2dARB = fn)
-#define CALL_MultiTexCoord2dvARB(disp, parameters) (*((disp)->MultiTexCoord2dvARB)) parameters
-#define GET_MultiTexCoord2dvARB(disp) ((disp)->MultiTexCoord2dvARB)
-#define SET_MultiTexCoord2dvARB(disp, fn) ((disp)->MultiTexCoord2dvARB = fn)
-#define CALL_MultiTexCoord2fARB(disp, parameters) (*((disp)->MultiTexCoord2fARB)) parameters
-#define GET_MultiTexCoord2fARB(disp) ((disp)->MultiTexCoord2fARB)
-#define SET_MultiTexCoord2fARB(disp, fn) ((disp)->MultiTexCoord2fARB = fn)
-#define CALL_MultiTexCoord2fvARB(disp, parameters) (*((disp)->MultiTexCoord2fvARB)) parameters
-#define GET_MultiTexCoord2fvARB(disp) ((disp)->MultiTexCoord2fvARB)
-#define SET_MultiTexCoord2fvARB(disp, fn) ((disp)->MultiTexCoord2fvARB = fn)
-#define CALL_MultiTexCoord2iARB(disp, parameters) (*((disp)->MultiTexCoord2iARB)) parameters
-#define GET_MultiTexCoord2iARB(disp) ((disp)->MultiTexCoord2iARB)
-#define SET_MultiTexCoord2iARB(disp, fn) ((disp)->MultiTexCoord2iARB = fn)
-#define CALL_MultiTexCoord2ivARB(disp, parameters) (*((disp)->MultiTexCoord2ivARB)) parameters
-#define GET_MultiTexCoord2ivARB(disp) ((disp)->MultiTexCoord2ivARB)
-#define SET_MultiTexCoord2ivARB(disp, fn) ((disp)->MultiTexCoord2ivARB = fn)
-#define CALL_MultiTexCoord2sARB(disp, parameters) (*((disp)->MultiTexCoord2sARB)) parameters
-#define GET_MultiTexCoord2sARB(disp) ((disp)->MultiTexCoord2sARB)
-#define SET_MultiTexCoord2sARB(disp, fn) ((disp)->MultiTexCoord2sARB = fn)
-#define CALL_MultiTexCoord2svARB(disp, parameters) (*((disp)->MultiTexCoord2svARB)) parameters
-#define GET_MultiTexCoord2svARB(disp) ((disp)->MultiTexCoord2svARB)
-#define SET_MultiTexCoord2svARB(disp, fn) ((disp)->MultiTexCoord2svARB = fn)
-#define CALL_MultiTexCoord3dARB(disp, parameters) (*((disp)->MultiTexCoord3dARB)) parameters
-#define GET_MultiTexCoord3dARB(disp) ((disp)->MultiTexCoord3dARB)
-#define SET_MultiTexCoord3dARB(disp, fn) ((disp)->MultiTexCoord3dARB = fn)
-#define CALL_MultiTexCoord3dvARB(disp, parameters) (*((disp)->MultiTexCoord3dvARB)) parameters
-#define GET_MultiTexCoord3dvARB(disp) ((disp)->MultiTexCoord3dvARB)
-#define SET_MultiTexCoord3dvARB(disp, fn) ((disp)->MultiTexCoord3dvARB = fn)
-#define CALL_MultiTexCoord3fARB(disp, parameters) (*((disp)->MultiTexCoord3fARB)) parameters
-#define GET_MultiTexCoord3fARB(disp) ((disp)->MultiTexCoord3fARB)
-#define SET_MultiTexCoord3fARB(disp, fn) ((disp)->MultiTexCoord3fARB = fn)
-#define CALL_MultiTexCoord3fvARB(disp, parameters) (*((disp)->MultiTexCoord3fvARB)) parameters
-#define GET_MultiTexCoord3fvARB(disp) ((disp)->MultiTexCoord3fvARB)
-#define SET_MultiTexCoord3fvARB(disp, fn) ((disp)->MultiTexCoord3fvARB = fn)
-#define CALL_MultiTexCoord3iARB(disp, parameters) (*((disp)->MultiTexCoord3iARB)) parameters
-#define GET_MultiTexCoord3iARB(disp) ((disp)->MultiTexCoord3iARB)
-#define SET_MultiTexCoord3iARB(disp, fn) ((disp)->MultiTexCoord3iARB = fn)
-#define CALL_MultiTexCoord3ivARB(disp, parameters) (*((disp)->MultiTexCoord3ivARB)) parameters
-#define GET_MultiTexCoord3ivARB(disp) ((disp)->MultiTexCoord3ivARB)
-#define SET_MultiTexCoord3ivARB(disp, fn) ((disp)->MultiTexCoord3ivARB = fn)
-#define CALL_MultiTexCoord3sARB(disp, parameters) (*((disp)->MultiTexCoord3sARB)) parameters
-#define GET_MultiTexCoord3sARB(disp) ((disp)->MultiTexCoord3sARB)
-#define SET_MultiTexCoord3sARB(disp, fn) ((disp)->MultiTexCoord3sARB = fn)
-#define CALL_MultiTexCoord3svARB(disp, parameters) (*((disp)->MultiTexCoord3svARB)) parameters
-#define GET_MultiTexCoord3svARB(disp) ((disp)->MultiTexCoord3svARB)
-#define SET_MultiTexCoord3svARB(disp, fn) ((disp)->MultiTexCoord3svARB = fn)
-#define CALL_MultiTexCoord4dARB(disp, parameters) (*((disp)->MultiTexCoord4dARB)) parameters
-#define GET_MultiTexCoord4dARB(disp) ((disp)->MultiTexCoord4dARB)
-#define SET_MultiTexCoord4dARB(disp, fn) ((disp)->MultiTexCoord4dARB = fn)
-#define CALL_MultiTexCoord4dvARB(disp, parameters) (*((disp)->MultiTexCoord4dvARB)) parameters
-#define GET_MultiTexCoord4dvARB(disp) ((disp)->MultiTexCoord4dvARB)
-#define SET_MultiTexCoord4dvARB(disp, fn) ((disp)->MultiTexCoord4dvARB = fn)
-#define CALL_MultiTexCoord4fARB(disp, parameters) (*((disp)->MultiTexCoord4fARB)) parameters
-#define GET_MultiTexCoord4fARB(disp) ((disp)->MultiTexCoord4fARB)
-#define SET_MultiTexCoord4fARB(disp, fn) ((disp)->MultiTexCoord4fARB = fn)
-#define CALL_MultiTexCoord4fvARB(disp, parameters) (*((disp)->MultiTexCoord4fvARB)) parameters
-#define GET_MultiTexCoord4fvARB(disp) ((disp)->MultiTexCoord4fvARB)
-#define SET_MultiTexCoord4fvARB(disp, fn) ((disp)->MultiTexCoord4fvARB = fn)
-#define CALL_MultiTexCoord4iARB(disp, parameters) (*((disp)->MultiTexCoord4iARB)) parameters
-#define GET_MultiTexCoord4iARB(disp) ((disp)->MultiTexCoord4iARB)
-#define SET_MultiTexCoord4iARB(disp, fn) ((disp)->MultiTexCoord4iARB = fn)
-#define CALL_MultiTexCoord4ivARB(disp, parameters) (*((disp)->MultiTexCoord4ivARB)) parameters
-#define GET_MultiTexCoord4ivARB(disp) ((disp)->MultiTexCoord4ivARB)
-#define SET_MultiTexCoord4ivARB(disp, fn) ((disp)->MultiTexCoord4ivARB = fn)
-#define CALL_MultiTexCoord4sARB(disp, parameters) (*((disp)->MultiTexCoord4sARB)) parameters
-#define GET_MultiTexCoord4sARB(disp) ((disp)->MultiTexCoord4sARB)
-#define SET_MultiTexCoord4sARB(disp, fn) ((disp)->MultiTexCoord4sARB = fn)
-#define CALL_MultiTexCoord4svARB(disp, parameters) (*((disp)->MultiTexCoord4svARB)) parameters
-#define GET_MultiTexCoord4svARB(disp) ((disp)->MultiTexCoord4svARB)
-#define SET_MultiTexCoord4svARB(disp, fn) ((disp)->MultiTexCoord4svARB = fn)
-
-#if !defined(_GLAPI_USE_REMAP_TABLE)
-
-#define CALL_AttachShader(disp, parameters) (*((disp)->AttachShader)) parameters
-#define GET_AttachShader(disp) ((disp)->AttachShader)
-#define SET_AttachShader(disp, fn) ((disp)->AttachShader = fn)
-#define CALL_CreateProgram(disp, parameters) (*((disp)->CreateProgram)) parameters
-#define GET_CreateProgram(disp) ((disp)->CreateProgram)
-#define SET_CreateProgram(disp, fn) ((disp)->CreateProgram = fn)
-#define CALL_CreateShader(disp, parameters) (*((disp)->CreateShader)) parameters
-#define GET_CreateShader(disp) ((disp)->CreateShader)
-#define SET_CreateShader(disp, fn) ((disp)->CreateShader = fn)
-#define CALL_DeleteProgram(disp, parameters) (*((disp)->DeleteProgram)) parameters
-#define GET_DeleteProgram(disp) ((disp)->DeleteProgram)
-#define SET_DeleteProgram(disp, fn) ((disp)->DeleteProgram = fn)
-#define CALL_DeleteShader(disp, parameters) (*((disp)->DeleteShader)) parameters
-#define GET_DeleteShader(disp) ((disp)->DeleteShader)
-#define SET_DeleteShader(disp, fn) ((disp)->DeleteShader = fn)
-#define CALL_DetachShader(disp, parameters) (*((disp)->DetachShader)) parameters
-#define GET_DetachShader(disp) ((disp)->DetachShader)
-#define SET_DetachShader(disp, fn) ((disp)->DetachShader = fn)
-#define CALL_GetAttachedShaders(disp, parameters) (*((disp)->GetAttachedShaders)) parameters
-#define GET_GetAttachedShaders(disp) ((disp)->GetAttachedShaders)
-#define SET_GetAttachedShaders(disp, fn) ((disp)->GetAttachedShaders = fn)
-#define CALL_GetProgramInfoLog(disp, parameters) (*((disp)->GetProgramInfoLog)) parameters
-#define GET_GetProgramInfoLog(disp) ((disp)->GetProgramInfoLog)
-#define SET_GetProgramInfoLog(disp, fn) ((disp)->GetProgramInfoLog = fn)
-#define CALL_GetProgramiv(disp, parameters) (*((disp)->GetProgramiv)) parameters
-#define GET_GetProgramiv(disp) ((disp)->GetProgramiv)
-#define SET_GetProgramiv(disp, fn) ((disp)->GetProgramiv = fn)
-#define CALL_GetShaderInfoLog(disp, parameters) (*((disp)->GetShaderInfoLog)) parameters
-#define GET_GetShaderInfoLog(disp) ((disp)->GetShaderInfoLog)
-#define SET_GetShaderInfoLog(disp, fn) ((disp)->GetShaderInfoLog = fn)
-#define CALL_GetShaderiv(disp, parameters) (*((disp)->GetShaderiv)) parameters
-#define GET_GetShaderiv(disp) ((disp)->GetShaderiv)
-#define SET_GetShaderiv(disp, fn) ((disp)->GetShaderiv = fn)
-#define CALL_IsProgram(disp, parameters) (*((disp)->IsProgram)) parameters
-#define GET_IsProgram(disp) ((disp)->IsProgram)
-#define SET_IsProgram(disp, fn) ((disp)->IsProgram = fn)
-#define CALL_IsShader(disp, parameters) (*((disp)->IsShader)) parameters
-#define GET_IsShader(disp) ((disp)->IsShader)
-#define SET_IsShader(disp, fn) ((disp)->IsShader = fn)
-#define CALL_StencilFuncSeparate(disp, parameters) (*((disp)->StencilFuncSeparate)) parameters
-#define GET_StencilFuncSeparate(disp) ((disp)->StencilFuncSeparate)
-#define SET_StencilFuncSeparate(disp, fn) ((disp)->StencilFuncSeparate = fn)
-#define CALL_StencilMaskSeparate(disp, parameters) (*((disp)->StencilMaskSeparate)) parameters
-#define GET_StencilMaskSeparate(disp) ((disp)->StencilMaskSeparate)
-#define SET_StencilMaskSeparate(disp, fn) ((disp)->StencilMaskSeparate = fn)
-#define CALL_StencilOpSeparate(disp, parameters) (*((disp)->StencilOpSeparate)) parameters
-#define GET_StencilOpSeparate(disp) ((disp)->StencilOpSeparate)
-#define SET_StencilOpSeparate(disp, fn) ((disp)->StencilOpSeparate = fn)
-#define CALL_UniformMatrix2x3fv(disp, parameters) (*((disp)->UniformMatrix2x3fv)) parameters
-#define GET_UniformMatrix2x3fv(disp) ((disp)->UniformMatrix2x3fv)
-#define SET_UniformMatrix2x3fv(disp, fn) ((disp)->UniformMatrix2x3fv = fn)
-#define CALL_UniformMatrix2x4fv(disp, parameters) (*((disp)->UniformMatrix2x4fv)) parameters
-#define GET_UniformMatrix2x4fv(disp) ((disp)->UniformMatrix2x4fv)
-#define SET_UniformMatrix2x4fv(disp, fn) ((disp)->UniformMatrix2x4fv = fn)
-#define CALL_UniformMatrix3x2fv(disp, parameters) (*((disp)->UniformMatrix3x2fv)) parameters
-#define GET_UniformMatrix3x2fv(disp) ((disp)->UniformMatrix3x2fv)
-#define SET_UniformMatrix3x2fv(disp, fn) ((disp)->UniformMatrix3x2fv = fn)
-#define CALL_UniformMatrix3x4fv(disp, parameters) (*((disp)->UniformMatrix3x4fv)) parameters
-#define GET_UniformMatrix3x4fv(disp) ((disp)->UniformMatrix3x4fv)
-#define SET_UniformMatrix3x4fv(disp, fn) ((disp)->UniformMatrix3x4fv = fn)
-#define CALL_UniformMatrix4x2fv(disp, parameters) (*((disp)->UniformMatrix4x2fv)) parameters
-#define GET_UniformMatrix4x2fv(disp) ((disp)->UniformMatrix4x2fv)
-#define SET_UniformMatrix4x2fv(disp, fn) ((disp)->UniformMatrix4x2fv = fn)
-#define CALL_UniformMatrix4x3fv(disp, parameters) (*((disp)->UniformMatrix4x3fv)) parameters
-#define GET_UniformMatrix4x3fv(disp) ((disp)->UniformMatrix4x3fv)
-#define SET_UniformMatrix4x3fv(disp, fn) ((disp)->UniformMatrix4x3fv = fn)
-#define CALL_DrawArraysInstanced(disp, parameters) (*((disp)->DrawArraysInstanced)) parameters
-#define GET_DrawArraysInstanced(disp) ((disp)->DrawArraysInstanced)
-#define SET_DrawArraysInstanced(disp, fn) ((disp)->DrawArraysInstanced = fn)
-#define CALL_DrawElementsInstanced(disp, parameters) (*((disp)->DrawElementsInstanced)) parameters
-#define GET_DrawElementsInstanced(disp) ((disp)->DrawElementsInstanced)
-#define SET_DrawElementsInstanced(disp, fn) ((disp)->DrawElementsInstanced = fn)
-#define CALL_LoadTransposeMatrixdARB(disp, parameters) (*((disp)->LoadTransposeMatrixdARB)) parameters
-#define GET_LoadTransposeMatrixdARB(disp) ((disp)->LoadTransposeMatrixdARB)
-#define SET_LoadTransposeMatrixdARB(disp, fn) ((disp)->LoadTransposeMatrixdARB = fn)
-#define CALL_LoadTransposeMatrixfARB(disp, parameters) (*((disp)->LoadTransposeMatrixfARB)) parameters
-#define GET_LoadTransposeMatrixfARB(disp) ((disp)->LoadTransposeMatrixfARB)
-#define SET_LoadTransposeMatrixfARB(disp, fn) ((disp)->LoadTransposeMatrixfARB = fn)
-#define CALL_MultTransposeMatrixdARB(disp, parameters) (*((disp)->MultTransposeMatrixdARB)) parameters
-#define GET_MultTransposeMatrixdARB(disp) ((disp)->MultTransposeMatrixdARB)
-#define SET_MultTransposeMatrixdARB(disp, fn) ((disp)->MultTransposeMatrixdARB = fn)
-#define CALL_MultTransposeMatrixfARB(disp, parameters) (*((disp)->MultTransposeMatrixfARB)) parameters
-#define GET_MultTransposeMatrixfARB(disp) ((disp)->MultTransposeMatrixfARB)
-#define SET_MultTransposeMatrixfARB(disp, fn) ((disp)->MultTransposeMatrixfARB = fn)
-#define CALL_SampleCoverageARB(disp, parameters) (*((disp)->SampleCoverageARB)) parameters
-#define GET_SampleCoverageARB(disp) ((disp)->SampleCoverageARB)
-#define SET_SampleCoverageARB(disp, fn) ((disp)->SampleCoverageARB = fn)
-#define CALL_CompressedTexImage1DARB(disp, parameters) (*((disp)->CompressedTexImage1DARB)) parameters
-#define GET_CompressedTexImage1DARB(disp) ((disp)->CompressedTexImage1DARB)
-#define SET_CompressedTexImage1DARB(disp, fn) ((disp)->CompressedTexImage1DARB = fn)
-#define CALL_CompressedTexImage2DARB(disp, parameters) (*((disp)->CompressedTexImage2DARB)) parameters
-#define GET_CompressedTexImage2DARB(disp) ((disp)->CompressedTexImage2DARB)
-#define SET_CompressedTexImage2DARB(disp, fn) ((disp)->CompressedTexImage2DARB = fn)
-#define CALL_CompressedTexImage3DARB(disp, parameters) (*((disp)->CompressedTexImage3DARB)) parameters
-#define GET_CompressedTexImage3DARB(disp) ((disp)->CompressedTexImage3DARB)
-#define SET_CompressedTexImage3DARB(disp, fn) ((disp)->CompressedTexImage3DARB = fn)
-#define CALL_CompressedTexSubImage1DARB(disp, parameters) (*((disp)->CompressedTexSubImage1DARB)) parameters
-#define GET_CompressedTexSubImage1DARB(disp) ((disp)->CompressedTexSubImage1DARB)
-#define SET_CompressedTexSubImage1DARB(disp, fn) ((disp)->CompressedTexSubImage1DARB = fn)
-#define CALL_CompressedTexSubImage2DARB(disp, parameters) (*((disp)->CompressedTexSubImage2DARB)) parameters
-#define GET_CompressedTexSubImage2DARB(disp) ((disp)->CompressedTexSubImage2DARB)
-#define SET_CompressedTexSubImage2DARB(disp, fn) ((disp)->CompressedTexSubImage2DARB = fn)
-#define CALL_CompressedTexSubImage3DARB(disp, parameters) (*((disp)->CompressedTexSubImage3DARB)) parameters
-#define GET_CompressedTexSubImage3DARB(disp) ((disp)->CompressedTexSubImage3DARB)
-#define SET_CompressedTexSubImage3DARB(disp, fn) ((disp)->CompressedTexSubImage3DARB = fn)
-#define CALL_GetCompressedTexImageARB(disp, parameters) (*((disp)->GetCompressedTexImageARB)) parameters
-#define GET_GetCompressedTexImageARB(disp) ((disp)->GetCompressedTexImageARB)
-#define SET_GetCompressedTexImageARB(disp, fn) ((disp)->GetCompressedTexImageARB = fn)
-#define CALL_DisableVertexAttribArrayARB(disp, parameters) (*((disp)->DisableVertexAttribArrayARB)) parameters
-#define GET_DisableVertexAttribArrayARB(disp) ((disp)->DisableVertexAttribArrayARB)
-#define SET_DisableVertexAttribArrayARB(disp, fn) ((disp)->DisableVertexAttribArrayARB = fn)
-#define CALL_EnableVertexAttribArrayARB(disp, parameters) (*((disp)->EnableVertexAttribArrayARB)) parameters
-#define GET_EnableVertexAttribArrayARB(disp) ((disp)->EnableVertexAttribArrayARB)
-#define SET_EnableVertexAttribArrayARB(disp, fn) ((disp)->EnableVertexAttribArrayARB = fn)
-#define CALL_GetProgramEnvParameterdvARB(disp, parameters) (*((disp)->GetProgramEnvParameterdvARB)) parameters
-#define GET_GetProgramEnvParameterdvARB(disp) ((disp)->GetProgramEnvParameterdvARB)
-#define SET_GetProgramEnvParameterdvARB(disp, fn) ((disp)->GetProgramEnvParameterdvARB = fn)
-#define CALL_GetProgramEnvParameterfvARB(disp, parameters) (*((disp)->GetProgramEnvParameterfvARB)) parameters
-#define GET_GetProgramEnvParameterfvARB(disp) ((disp)->GetProgramEnvParameterfvARB)
-#define SET_GetProgramEnvParameterfvARB(disp, fn) ((disp)->GetProgramEnvParameterfvARB = fn)
-#define CALL_GetProgramLocalParameterdvARB(disp, parameters) (*((disp)->GetProgramLocalParameterdvARB)) parameters
-#define GET_GetProgramLocalParameterdvARB(disp) ((disp)->GetProgramLocalParameterdvARB)
-#define SET_GetProgramLocalParameterdvARB(disp, fn) ((disp)->GetProgramLocalParameterdvARB = fn)
-#define CALL_GetProgramLocalParameterfvARB(disp, parameters) (*((disp)->GetProgramLocalParameterfvARB)) parameters
-#define GET_GetProgramLocalParameterfvARB(disp) ((disp)->GetProgramLocalParameterfvARB)
-#define SET_GetProgramLocalParameterfvARB(disp, fn) ((disp)->GetProgramLocalParameterfvARB = fn)
-#define CALL_GetProgramStringARB(disp, parameters) (*((disp)->GetProgramStringARB)) parameters
-#define GET_GetProgramStringARB(disp) ((disp)->GetProgramStringARB)
-#define SET_GetProgramStringARB(disp, fn) ((disp)->GetProgramStringARB = fn)
-#define CALL_GetProgramivARB(disp, parameters) (*((disp)->GetProgramivARB)) parameters
-#define GET_GetProgramivARB(disp) ((disp)->GetProgramivARB)
-#define SET_GetProgramivARB(disp, fn) ((disp)->GetProgramivARB = fn)
-#define CALL_GetVertexAttribdvARB(disp, parameters) (*((disp)->GetVertexAttribdvARB)) parameters
-#define GET_GetVertexAttribdvARB(disp) ((disp)->GetVertexAttribdvARB)
-#define SET_GetVertexAttribdvARB(disp, fn) ((disp)->GetVertexAttribdvARB = fn)
-#define CALL_GetVertexAttribfvARB(disp, parameters) (*((disp)->GetVertexAttribfvARB)) parameters
-#define GET_GetVertexAttribfvARB(disp) ((disp)->GetVertexAttribfvARB)
-#define SET_GetVertexAttribfvARB(disp, fn) ((disp)->GetVertexAttribfvARB = fn)
-#define CALL_GetVertexAttribivARB(disp, parameters) (*((disp)->GetVertexAttribivARB)) parameters
-#define GET_GetVertexAttribivARB(disp) ((disp)->GetVertexAttribivARB)
-#define SET_GetVertexAttribivARB(disp, fn) ((disp)->GetVertexAttribivARB = fn)
-#define CALL_ProgramEnvParameter4dARB(disp, parameters) (*((disp)->ProgramEnvParameter4dARB)) parameters
-#define GET_ProgramEnvParameter4dARB(disp) ((disp)->ProgramEnvParameter4dARB)
-#define SET_ProgramEnvParameter4dARB(disp, fn) ((disp)->ProgramEnvParameter4dARB = fn)
-#define CALL_ProgramEnvParameter4dvARB(disp, parameters) (*((disp)->ProgramEnvParameter4dvARB)) parameters
-#define GET_ProgramEnvParameter4dvARB(disp) ((disp)->ProgramEnvParameter4dvARB)
-#define SET_ProgramEnvParameter4dvARB(disp, fn) ((disp)->ProgramEnvParameter4dvARB = fn)
-#define CALL_ProgramEnvParameter4fARB(disp, parameters) (*((disp)->ProgramEnvParameter4fARB)) parameters
-#define GET_ProgramEnvParameter4fARB(disp) ((disp)->ProgramEnvParameter4fARB)
-#define SET_ProgramEnvParameter4fARB(disp, fn) ((disp)->ProgramEnvParameter4fARB = fn)
-#define CALL_ProgramEnvParameter4fvARB(disp, parameters) (*((disp)->ProgramEnvParameter4fvARB)) parameters
-#define GET_ProgramEnvParameter4fvARB(disp) ((disp)->ProgramEnvParameter4fvARB)
-#define SET_ProgramEnvParameter4fvARB(disp, fn) ((disp)->ProgramEnvParameter4fvARB = fn)
-#define CALL_ProgramLocalParameter4dARB(disp, parameters) (*((disp)->ProgramLocalParameter4dARB)) parameters
-#define GET_ProgramLocalParameter4dARB(disp) ((disp)->ProgramLocalParameter4dARB)
-#define SET_ProgramLocalParameter4dARB(disp, fn) ((disp)->ProgramLocalParameter4dARB = fn)
-#define CALL_ProgramLocalParameter4dvARB(disp, parameters) (*((disp)->ProgramLocalParameter4dvARB)) parameters
-#define GET_ProgramLocalParameter4dvARB(disp) ((disp)->ProgramLocalParameter4dvARB)
-#define SET_ProgramLocalParameter4dvARB(disp, fn) ((disp)->ProgramLocalParameter4dvARB = fn)
-#define CALL_ProgramLocalParameter4fARB(disp, parameters) (*((disp)->ProgramLocalParameter4fARB)) parameters
-#define GET_ProgramLocalParameter4fARB(disp) ((disp)->ProgramLocalParameter4fARB)
-#define SET_ProgramLocalParameter4fARB(disp, fn) ((disp)->ProgramLocalParameter4fARB = fn)
-#define CALL_ProgramLocalParameter4fvARB(disp, parameters) (*((disp)->ProgramLocalParameter4fvARB)) parameters
-#define GET_ProgramLocalParameter4fvARB(disp) ((disp)->ProgramLocalParameter4fvARB)
-#define SET_ProgramLocalParameter4fvARB(disp, fn) ((disp)->ProgramLocalParameter4fvARB = fn)
-#define CALL_ProgramStringARB(disp, parameters) (*((disp)->ProgramStringARB)) parameters
-#define GET_ProgramStringARB(disp) ((disp)->ProgramStringARB)
-#define SET_ProgramStringARB(disp, fn) ((disp)->ProgramStringARB = fn)
-#define CALL_VertexAttrib1dARB(disp, parameters) (*((disp)->VertexAttrib1dARB)) parameters
-#define GET_VertexAttrib1dARB(disp) ((disp)->VertexAttrib1dARB)
-#define SET_VertexAttrib1dARB(disp, fn) ((disp)->VertexAttrib1dARB = fn)
-#define CALL_VertexAttrib1dvARB(disp, parameters) (*((disp)->VertexAttrib1dvARB)) parameters
-#define GET_VertexAttrib1dvARB(disp) ((disp)->VertexAttrib1dvARB)
-#define SET_VertexAttrib1dvARB(disp, fn) ((disp)->VertexAttrib1dvARB = fn)
-#define CALL_VertexAttrib1fARB(disp, parameters) (*((disp)->VertexAttrib1fARB)) parameters
-#define GET_VertexAttrib1fARB(disp) ((disp)->VertexAttrib1fARB)
-#define SET_VertexAttrib1fARB(disp, fn) ((disp)->VertexAttrib1fARB = fn)
-#define CALL_VertexAttrib1fvARB(disp, parameters) (*((disp)->VertexAttrib1fvARB)) parameters
-#define GET_VertexAttrib1fvARB(disp) ((disp)->VertexAttrib1fvARB)
-#define SET_VertexAttrib1fvARB(disp, fn) ((disp)->VertexAttrib1fvARB = fn)
-#define CALL_VertexAttrib1sARB(disp, parameters) (*((disp)->VertexAttrib1sARB)) parameters
-#define GET_VertexAttrib1sARB(disp) ((disp)->VertexAttrib1sARB)
-#define SET_VertexAttrib1sARB(disp, fn) ((disp)->VertexAttrib1sARB = fn)
-#define CALL_VertexAttrib1svARB(disp, parameters) (*((disp)->VertexAttrib1svARB)) parameters
-#define GET_VertexAttrib1svARB(disp) ((disp)->VertexAttrib1svARB)
-#define SET_VertexAttrib1svARB(disp, fn) ((disp)->VertexAttrib1svARB = fn)
-#define CALL_VertexAttrib2dARB(disp, parameters) (*((disp)->VertexAttrib2dARB)) parameters
-#define GET_VertexAttrib2dARB(disp) ((disp)->VertexAttrib2dARB)
-#define SET_VertexAttrib2dARB(disp, fn) ((disp)->VertexAttrib2dARB = fn)
-#define CALL_VertexAttrib2dvARB(disp, parameters) (*((disp)->VertexAttrib2dvARB)) parameters
-#define GET_VertexAttrib2dvARB(disp) ((disp)->VertexAttrib2dvARB)
-#define SET_VertexAttrib2dvARB(disp, fn) ((disp)->VertexAttrib2dvARB = fn)
-#define CALL_VertexAttrib2fARB(disp, parameters) (*((disp)->VertexAttrib2fARB)) parameters
-#define GET_VertexAttrib2fARB(disp) ((disp)->VertexAttrib2fARB)
-#define SET_VertexAttrib2fARB(disp, fn) ((disp)->VertexAttrib2fARB = fn)
-#define CALL_VertexAttrib2fvARB(disp, parameters) (*((disp)->VertexAttrib2fvARB)) parameters
-#define GET_VertexAttrib2fvARB(disp) ((disp)->VertexAttrib2fvARB)
-#define SET_VertexAttrib2fvARB(disp, fn) ((disp)->VertexAttrib2fvARB = fn)
-#define CALL_VertexAttrib2sARB(disp, parameters) (*((disp)->VertexAttrib2sARB)) parameters
-#define GET_VertexAttrib2sARB(disp) ((disp)->VertexAttrib2sARB)
-#define SET_VertexAttrib2sARB(disp, fn) ((disp)->VertexAttrib2sARB = fn)
-#define CALL_VertexAttrib2svARB(disp, parameters) (*((disp)->VertexAttrib2svARB)) parameters
-#define GET_VertexAttrib2svARB(disp) ((disp)->VertexAttrib2svARB)
-#define SET_VertexAttrib2svARB(disp, fn) ((disp)->VertexAttrib2svARB = fn)
-#define CALL_VertexAttrib3dARB(disp, parameters) (*((disp)->VertexAttrib3dARB)) parameters
-#define GET_VertexAttrib3dARB(disp) ((disp)->VertexAttrib3dARB)
-#define SET_VertexAttrib3dARB(disp, fn) ((disp)->VertexAttrib3dARB = fn)
-#define CALL_VertexAttrib3dvARB(disp, parameters) (*((disp)->VertexAttrib3dvARB)) parameters
-#define GET_VertexAttrib3dvARB(disp) ((disp)->VertexAttrib3dvARB)
-#define SET_VertexAttrib3dvARB(disp, fn) ((disp)->VertexAttrib3dvARB = fn)
-#define CALL_VertexAttrib3fARB(disp, parameters) (*((disp)->VertexAttrib3fARB)) parameters
-#define GET_VertexAttrib3fARB(disp) ((disp)->VertexAttrib3fARB)
-#define SET_VertexAttrib3fARB(disp, fn) ((disp)->VertexAttrib3fARB = fn)
-#define CALL_VertexAttrib3fvARB(disp, parameters) (*((disp)->VertexAttrib3fvARB)) parameters
-#define GET_VertexAttrib3fvARB(disp) ((disp)->VertexAttrib3fvARB)
-#define SET_VertexAttrib3fvARB(disp, fn) ((disp)->VertexAttrib3fvARB = fn)
-#define CALL_VertexAttrib3sARB(disp, parameters) (*((disp)->VertexAttrib3sARB)) parameters
-#define GET_VertexAttrib3sARB(disp) ((disp)->VertexAttrib3sARB)
-#define SET_VertexAttrib3sARB(disp, fn) ((disp)->VertexAttrib3sARB = fn)
-#define CALL_VertexAttrib3svARB(disp, parameters) (*((disp)->VertexAttrib3svARB)) parameters
-#define GET_VertexAttrib3svARB(disp) ((disp)->VertexAttrib3svARB)
-#define SET_VertexAttrib3svARB(disp, fn) ((disp)->VertexAttrib3svARB = fn)
-#define CALL_VertexAttrib4NbvARB(disp, parameters) (*((disp)->VertexAttrib4NbvARB)) parameters
-#define GET_VertexAttrib4NbvARB(disp) ((disp)->VertexAttrib4NbvARB)
-#define SET_VertexAttrib4NbvARB(disp, fn) ((disp)->VertexAttrib4NbvARB = fn)
-#define CALL_VertexAttrib4NivARB(disp, parameters) (*((disp)->VertexAttrib4NivARB)) parameters
-#define GET_VertexAttrib4NivARB(disp) ((disp)->VertexAttrib4NivARB)
-#define SET_VertexAttrib4NivARB(disp, fn) ((disp)->VertexAttrib4NivARB = fn)
-#define CALL_VertexAttrib4NsvARB(disp, parameters) (*((disp)->VertexAttrib4NsvARB)) parameters
-#define GET_VertexAttrib4NsvARB(disp) ((disp)->VertexAttrib4NsvARB)
-#define SET_VertexAttrib4NsvARB(disp, fn) ((disp)->VertexAttrib4NsvARB = fn)
-#define CALL_VertexAttrib4NubARB(disp, parameters) (*((disp)->VertexAttrib4NubARB)) parameters
-#define GET_VertexAttrib4NubARB(disp) ((disp)->VertexAttrib4NubARB)
-#define SET_VertexAttrib4NubARB(disp, fn) ((disp)->VertexAttrib4NubARB = fn)
-#define CALL_VertexAttrib4NubvARB(disp, parameters) (*((disp)->VertexAttrib4NubvARB)) parameters
-#define GET_VertexAttrib4NubvARB(disp) ((disp)->VertexAttrib4NubvARB)
-#define SET_VertexAttrib4NubvARB(disp, fn) ((disp)->VertexAttrib4NubvARB = fn)
-#define CALL_VertexAttrib4NuivARB(disp, parameters) (*((disp)->VertexAttrib4NuivARB)) parameters
-#define GET_VertexAttrib4NuivARB(disp) ((disp)->VertexAttrib4NuivARB)
-#define SET_VertexAttrib4NuivARB(disp, fn) ((disp)->VertexAttrib4NuivARB = fn)
-#define CALL_VertexAttrib4NusvARB(disp, parameters) (*((disp)->VertexAttrib4NusvARB)) parameters
-#define GET_VertexAttrib4NusvARB(disp) ((disp)->VertexAttrib4NusvARB)
-#define SET_VertexAttrib4NusvARB(disp, fn) ((disp)->VertexAttrib4NusvARB = fn)
-#define CALL_VertexAttrib4bvARB(disp, parameters) (*((disp)->VertexAttrib4bvARB)) parameters
-#define GET_VertexAttrib4bvARB(disp) ((disp)->VertexAttrib4bvARB)
-#define SET_VertexAttrib4bvARB(disp, fn) ((disp)->VertexAttrib4bvARB = fn)
-#define CALL_VertexAttrib4dARB(disp, parameters) (*((disp)->VertexAttrib4dARB)) parameters
-#define GET_VertexAttrib4dARB(disp) ((disp)->VertexAttrib4dARB)
-#define SET_VertexAttrib4dARB(disp, fn) ((disp)->VertexAttrib4dARB = fn)
-#define CALL_VertexAttrib4dvARB(disp, parameters) (*((disp)->VertexAttrib4dvARB)) parameters
-#define GET_VertexAttrib4dvARB(disp) ((disp)->VertexAttrib4dvARB)
-#define SET_VertexAttrib4dvARB(disp, fn) ((disp)->VertexAttrib4dvARB = fn)
-#define CALL_VertexAttrib4fARB(disp, parameters) (*((disp)->VertexAttrib4fARB)) parameters
-#define GET_VertexAttrib4fARB(disp) ((disp)->VertexAttrib4fARB)
-#define SET_VertexAttrib4fARB(disp, fn) ((disp)->VertexAttrib4fARB = fn)
-#define CALL_VertexAttrib4fvARB(disp, parameters) (*((disp)->VertexAttrib4fvARB)) parameters
-#define GET_VertexAttrib4fvARB(disp) ((disp)->VertexAttrib4fvARB)
-#define SET_VertexAttrib4fvARB(disp, fn) ((disp)->VertexAttrib4fvARB = fn)
-#define CALL_VertexAttrib4ivARB(disp, parameters) (*((disp)->VertexAttrib4ivARB)) parameters
-#define GET_VertexAttrib4ivARB(disp) ((disp)->VertexAttrib4ivARB)
-#define SET_VertexAttrib4ivARB(disp, fn) ((disp)->VertexAttrib4ivARB = fn)
-#define CALL_VertexAttrib4sARB(disp, parameters) (*((disp)->VertexAttrib4sARB)) parameters
-#define GET_VertexAttrib4sARB(disp) ((disp)->VertexAttrib4sARB)
-#define SET_VertexAttrib4sARB(disp, fn) ((disp)->VertexAttrib4sARB = fn)
-#define CALL_VertexAttrib4svARB(disp, parameters) (*((disp)->VertexAttrib4svARB)) parameters
-#define GET_VertexAttrib4svARB(disp) ((disp)->VertexAttrib4svARB)
-#define SET_VertexAttrib4svARB(disp, fn) ((disp)->VertexAttrib4svARB = fn)
-#define CALL_VertexAttrib4ubvARB(disp, parameters) (*((disp)->VertexAttrib4ubvARB)) parameters
-#define GET_VertexAttrib4ubvARB(disp) ((disp)->VertexAttrib4ubvARB)
-#define SET_VertexAttrib4ubvARB(disp, fn) ((disp)->VertexAttrib4ubvARB = fn)
-#define CALL_VertexAttrib4uivARB(disp, parameters) (*((disp)->VertexAttrib4uivARB)) parameters
-#define GET_VertexAttrib4uivARB(disp) ((disp)->VertexAttrib4uivARB)
-#define SET_VertexAttrib4uivARB(disp, fn) ((disp)->VertexAttrib4uivARB = fn)
-#define CALL_VertexAttrib4usvARB(disp, parameters) (*((disp)->VertexAttrib4usvARB)) parameters
-#define GET_VertexAttrib4usvARB(disp) ((disp)->VertexAttrib4usvARB)
-#define SET_VertexAttrib4usvARB(disp, fn) ((disp)->VertexAttrib4usvARB = fn)
-#define CALL_VertexAttribPointerARB(disp, parameters) (*((disp)->VertexAttribPointerARB)) parameters
-#define GET_VertexAttribPointerARB(disp) ((disp)->VertexAttribPointerARB)
-#define SET_VertexAttribPointerARB(disp, fn) ((disp)->VertexAttribPointerARB = fn)
-#define CALL_BindBufferARB(disp, parameters) (*((disp)->BindBufferARB)) parameters
-#define GET_BindBufferARB(disp) ((disp)->BindBufferARB)
-#define SET_BindBufferARB(disp, fn) ((disp)->BindBufferARB = fn)
-#define CALL_BufferDataARB(disp, parameters) (*((disp)->BufferDataARB)) parameters
-#define GET_BufferDataARB(disp) ((disp)->BufferDataARB)
-#define SET_BufferDataARB(disp, fn) ((disp)->BufferDataARB = fn)
-#define CALL_BufferSubDataARB(disp, parameters) (*((disp)->BufferSubDataARB)) parameters
-#define GET_BufferSubDataARB(disp) ((disp)->BufferSubDataARB)
-#define SET_BufferSubDataARB(disp, fn) ((disp)->BufferSubDataARB = fn)
-#define CALL_DeleteBuffersARB(disp, parameters) (*((disp)->DeleteBuffersARB)) parameters
-#define GET_DeleteBuffersARB(disp) ((disp)->DeleteBuffersARB)
-#define SET_DeleteBuffersARB(disp, fn) ((disp)->DeleteBuffersARB = fn)
-#define CALL_GenBuffersARB(disp, parameters) (*((disp)->GenBuffersARB)) parameters
-#define GET_GenBuffersARB(disp) ((disp)->GenBuffersARB)
-#define SET_GenBuffersARB(disp, fn) ((disp)->GenBuffersARB = fn)
-#define CALL_GetBufferParameterivARB(disp, parameters) (*((disp)->GetBufferParameterivARB)) parameters
-#define GET_GetBufferParameterivARB(disp) ((disp)->GetBufferParameterivARB)
-#define SET_GetBufferParameterivARB(disp, fn) ((disp)->GetBufferParameterivARB = fn)
-#define CALL_GetBufferPointervARB(disp, parameters) (*((disp)->GetBufferPointervARB)) parameters
-#define GET_GetBufferPointervARB(disp) ((disp)->GetBufferPointervARB)
-#define SET_GetBufferPointervARB(disp, fn) ((disp)->GetBufferPointervARB = fn)
-#define CALL_GetBufferSubDataARB(disp, parameters) (*((disp)->GetBufferSubDataARB)) parameters
-#define GET_GetBufferSubDataARB(disp) ((disp)->GetBufferSubDataARB)
-#define SET_GetBufferSubDataARB(disp, fn) ((disp)->GetBufferSubDataARB = fn)
-#define CALL_IsBufferARB(disp, parameters) (*((disp)->IsBufferARB)) parameters
-#define GET_IsBufferARB(disp) ((disp)->IsBufferARB)
-#define SET_IsBufferARB(disp, fn) ((disp)->IsBufferARB = fn)
-#define CALL_MapBufferARB(disp, parameters) (*((disp)->MapBufferARB)) parameters
-#define GET_MapBufferARB(disp) ((disp)->MapBufferARB)
-#define SET_MapBufferARB(disp, fn) ((disp)->MapBufferARB = fn)
-#define CALL_UnmapBufferARB(disp, parameters) (*((disp)->UnmapBufferARB)) parameters
-#define GET_UnmapBufferARB(disp) ((disp)->UnmapBufferARB)
-#define SET_UnmapBufferARB(disp, fn) ((disp)->UnmapBufferARB = fn)
-#define CALL_BeginQueryARB(disp, parameters) (*((disp)->BeginQueryARB)) parameters
-#define GET_BeginQueryARB(disp) ((disp)->BeginQueryARB)
-#define SET_BeginQueryARB(disp, fn) ((disp)->BeginQueryARB = fn)
-#define CALL_DeleteQueriesARB(disp, parameters) (*((disp)->DeleteQueriesARB)) parameters
-#define GET_DeleteQueriesARB(disp) ((disp)->DeleteQueriesARB)
-#define SET_DeleteQueriesARB(disp, fn) ((disp)->DeleteQueriesARB = fn)
-#define CALL_EndQueryARB(disp, parameters) (*((disp)->EndQueryARB)) parameters
-#define GET_EndQueryARB(disp) ((disp)->EndQueryARB)
-#define SET_EndQueryARB(disp, fn) ((disp)->EndQueryARB = fn)
-#define CALL_GenQueriesARB(disp, parameters) (*((disp)->GenQueriesARB)) parameters
-#define GET_GenQueriesARB(disp) ((disp)->GenQueriesARB)
-#define SET_GenQueriesARB(disp, fn) ((disp)->GenQueriesARB = fn)
-#define CALL_GetQueryObjectivARB(disp, parameters) (*((disp)->GetQueryObjectivARB)) parameters
-#define GET_GetQueryObjectivARB(disp) ((disp)->GetQueryObjectivARB)
-#define SET_GetQueryObjectivARB(disp, fn) ((disp)->GetQueryObjectivARB = fn)
-#define CALL_GetQueryObjectuivARB(disp, parameters) (*((disp)->GetQueryObjectuivARB)) parameters
-#define GET_GetQueryObjectuivARB(disp) ((disp)->GetQueryObjectuivARB)
-#define SET_GetQueryObjectuivARB(disp, fn) ((disp)->GetQueryObjectuivARB = fn)
-#define CALL_GetQueryivARB(disp, parameters) (*((disp)->GetQueryivARB)) parameters
-#define GET_GetQueryivARB(disp) ((disp)->GetQueryivARB)
-#define SET_GetQueryivARB(disp, fn) ((disp)->GetQueryivARB = fn)
-#define CALL_IsQueryARB(disp, parameters) (*((disp)->IsQueryARB)) parameters
-#define GET_IsQueryARB(disp) ((disp)->IsQueryARB)
-#define SET_IsQueryARB(disp, fn) ((disp)->IsQueryARB = fn)
-#define CALL_AttachObjectARB(disp, parameters) (*((disp)->AttachObjectARB)) parameters
-#define GET_AttachObjectARB(disp) ((disp)->AttachObjectARB)
-#define SET_AttachObjectARB(disp, fn) ((disp)->AttachObjectARB = fn)
-#define CALL_CompileShaderARB(disp, parameters) (*((disp)->CompileShaderARB)) parameters
-#define GET_CompileShaderARB(disp) ((disp)->CompileShaderARB)
-#define SET_CompileShaderARB(disp, fn) ((disp)->CompileShaderARB = fn)
-#define CALL_CreateProgramObjectARB(disp, parameters) (*((disp)->CreateProgramObjectARB)) parameters
-#define GET_CreateProgramObjectARB(disp) ((disp)->CreateProgramObjectARB)
-#define SET_CreateProgramObjectARB(disp, fn) ((disp)->CreateProgramObjectARB = fn)
-#define CALL_CreateShaderObjectARB(disp, parameters) (*((disp)->CreateShaderObjectARB)) parameters
-#define GET_CreateShaderObjectARB(disp) ((disp)->CreateShaderObjectARB)
-#define SET_CreateShaderObjectARB(disp, fn) ((disp)->CreateShaderObjectARB = fn)
-#define CALL_DeleteObjectARB(disp, parameters) (*((disp)->DeleteObjectARB)) parameters
-#define GET_DeleteObjectARB(disp) ((disp)->DeleteObjectARB)
-#define SET_DeleteObjectARB(disp, fn) ((disp)->DeleteObjectARB = fn)
-#define CALL_DetachObjectARB(disp, parameters) (*((disp)->DetachObjectARB)) parameters
-#define GET_DetachObjectARB(disp) ((disp)->DetachObjectARB)
-#define SET_DetachObjectARB(disp, fn) ((disp)->DetachObjectARB = fn)
-#define CALL_GetActiveUniformARB(disp, parameters) (*((disp)->GetActiveUniformARB)) parameters
-#define GET_GetActiveUniformARB(disp) ((disp)->GetActiveUniformARB)
-#define SET_GetActiveUniformARB(disp, fn) ((disp)->GetActiveUniformARB = fn)
-#define CALL_GetAttachedObjectsARB(disp, parameters) (*((disp)->GetAttachedObjectsARB)) parameters
-#define GET_GetAttachedObjectsARB(disp) ((disp)->GetAttachedObjectsARB)
-#define SET_GetAttachedObjectsARB(disp, fn) ((disp)->GetAttachedObjectsARB = fn)
-#define CALL_GetHandleARB(disp, parameters) (*((disp)->GetHandleARB)) parameters
-#define GET_GetHandleARB(disp) ((disp)->GetHandleARB)
-#define SET_GetHandleARB(disp, fn) ((disp)->GetHandleARB = fn)
-#define CALL_GetInfoLogARB(disp, parameters) (*((disp)->GetInfoLogARB)) parameters
-#define GET_GetInfoLogARB(disp) ((disp)->GetInfoLogARB)
-#define SET_GetInfoLogARB(disp, fn) ((disp)->GetInfoLogARB = fn)
-#define CALL_GetObjectParameterfvARB(disp, parameters) (*((disp)->GetObjectParameterfvARB)) parameters
-#define GET_GetObjectParameterfvARB(disp) ((disp)->GetObjectParameterfvARB)
-#define SET_GetObjectParameterfvARB(disp, fn) ((disp)->GetObjectParameterfvARB = fn)
-#define CALL_GetObjectParameterivARB(disp, parameters) (*((disp)->GetObjectParameterivARB)) parameters
-#define GET_GetObjectParameterivARB(disp) ((disp)->GetObjectParameterivARB)
-#define SET_GetObjectParameterivARB(disp, fn) ((disp)->GetObjectParameterivARB = fn)
-#define CALL_GetShaderSourceARB(disp, parameters) (*((disp)->GetShaderSourceARB)) parameters
-#define GET_GetShaderSourceARB(disp) ((disp)->GetShaderSourceARB)
-#define SET_GetShaderSourceARB(disp, fn) ((disp)->GetShaderSourceARB = fn)
-#define CALL_GetUniformLocationARB(disp, parameters) (*((disp)->GetUniformLocationARB)) parameters
-#define GET_GetUniformLocationARB(disp) ((disp)->GetUniformLocationARB)
-#define SET_GetUniformLocationARB(disp, fn) ((disp)->GetUniformLocationARB = fn)
-#define CALL_GetUniformfvARB(disp, parameters) (*((disp)->GetUniformfvARB)) parameters
-#define GET_GetUniformfvARB(disp) ((disp)->GetUniformfvARB)
-#define SET_GetUniformfvARB(disp, fn) ((disp)->GetUniformfvARB = fn)
-#define CALL_GetUniformivARB(disp, parameters) (*((disp)->GetUniformivARB)) parameters
-#define GET_GetUniformivARB(disp) ((disp)->GetUniformivARB)
-#define SET_GetUniformivARB(disp, fn) ((disp)->GetUniformivARB = fn)
-#define CALL_LinkProgramARB(disp, parameters) (*((disp)->LinkProgramARB)) parameters
-#define GET_LinkProgramARB(disp) ((disp)->LinkProgramARB)
-#define SET_LinkProgramARB(disp, fn) ((disp)->LinkProgramARB = fn)
-#define CALL_ShaderSourceARB(disp, parameters) (*((disp)->ShaderSourceARB)) parameters
-#define GET_ShaderSourceARB(disp) ((disp)->ShaderSourceARB)
-#define SET_ShaderSourceARB(disp, fn) ((disp)->ShaderSourceARB = fn)
-#define CALL_Uniform1fARB(disp, parameters) (*((disp)->Uniform1fARB)) parameters
-#define GET_Uniform1fARB(disp) ((disp)->Uniform1fARB)
-#define SET_Uniform1fARB(disp, fn) ((disp)->Uniform1fARB = fn)
-#define CALL_Uniform1fvARB(disp, parameters) (*((disp)->Uniform1fvARB)) parameters
-#define GET_Uniform1fvARB(disp) ((disp)->Uniform1fvARB)
-#define SET_Uniform1fvARB(disp, fn) ((disp)->Uniform1fvARB = fn)
-#define CALL_Uniform1iARB(disp, parameters) (*((disp)->Uniform1iARB)) parameters
-#define GET_Uniform1iARB(disp) ((disp)->Uniform1iARB)
-#define SET_Uniform1iARB(disp, fn) ((disp)->Uniform1iARB = fn)
-#define CALL_Uniform1ivARB(disp, parameters) (*((disp)->Uniform1ivARB)) parameters
-#define GET_Uniform1ivARB(disp) ((disp)->Uniform1ivARB)
-#define SET_Uniform1ivARB(disp, fn) ((disp)->Uniform1ivARB = fn)
-#define CALL_Uniform2fARB(disp, parameters) (*((disp)->Uniform2fARB)) parameters
-#define GET_Uniform2fARB(disp) ((disp)->Uniform2fARB)
-#define SET_Uniform2fARB(disp, fn) ((disp)->Uniform2fARB = fn)
-#define CALL_Uniform2fvARB(disp, parameters) (*((disp)->Uniform2fvARB)) parameters
-#define GET_Uniform2fvARB(disp) ((disp)->Uniform2fvARB)
-#define SET_Uniform2fvARB(disp, fn) ((disp)->Uniform2fvARB = fn)
-#define CALL_Uniform2iARB(disp, parameters) (*((disp)->Uniform2iARB)) parameters
-#define GET_Uniform2iARB(disp) ((disp)->Uniform2iARB)
-#define SET_Uniform2iARB(disp, fn) ((disp)->Uniform2iARB = fn)
-#define CALL_Uniform2ivARB(disp, parameters) (*((disp)->Uniform2ivARB)) parameters
-#define GET_Uniform2ivARB(disp) ((disp)->Uniform2ivARB)
-#define SET_Uniform2ivARB(disp, fn) ((disp)->Uniform2ivARB = fn)
-#define CALL_Uniform3fARB(disp, parameters) (*((disp)->Uniform3fARB)) parameters
-#define GET_Uniform3fARB(disp) ((disp)->Uniform3fARB)
-#define SET_Uniform3fARB(disp, fn) ((disp)->Uniform3fARB = fn)
-#define CALL_Uniform3fvARB(disp, parameters) (*((disp)->Uniform3fvARB)) parameters
-#define GET_Uniform3fvARB(disp) ((disp)->Uniform3fvARB)
-#define SET_Uniform3fvARB(disp, fn) ((disp)->Uniform3fvARB = fn)
-#define CALL_Uniform3iARB(disp, parameters) (*((disp)->Uniform3iARB)) parameters
-#define GET_Uniform3iARB(disp) ((disp)->Uniform3iARB)
-#define SET_Uniform3iARB(disp, fn) ((disp)->Uniform3iARB = fn)
-#define CALL_Uniform3ivARB(disp, parameters) (*((disp)->Uniform3ivARB)) parameters
-#define GET_Uniform3ivARB(disp) ((disp)->Uniform3ivARB)
-#define SET_Uniform3ivARB(disp, fn) ((disp)->Uniform3ivARB = fn)
-#define CALL_Uniform4fARB(disp, parameters) (*((disp)->Uniform4fARB)) parameters
-#define GET_Uniform4fARB(disp) ((disp)->Uniform4fARB)
-#define SET_Uniform4fARB(disp, fn) ((disp)->Uniform4fARB = fn)
-#define CALL_Uniform4fvARB(disp, parameters) (*((disp)->Uniform4fvARB)) parameters
-#define GET_Uniform4fvARB(disp) ((disp)->Uniform4fvARB)
-#define SET_Uniform4fvARB(disp, fn) ((disp)->Uniform4fvARB = fn)
-#define CALL_Uniform4iARB(disp, parameters) (*((disp)->Uniform4iARB)) parameters
-#define GET_Uniform4iARB(disp) ((disp)->Uniform4iARB)
-#define SET_Uniform4iARB(disp, fn) ((disp)->Uniform4iARB = fn)
-#define CALL_Uniform4ivARB(disp, parameters) (*((disp)->Uniform4ivARB)) parameters
-#define GET_Uniform4ivARB(disp) ((disp)->Uniform4ivARB)
-#define SET_Uniform4ivARB(disp, fn) ((disp)->Uniform4ivARB = fn)
-#define CALL_UniformMatrix2fvARB(disp, parameters) (*((disp)->UniformMatrix2fvARB)) parameters
-#define GET_UniformMatrix2fvARB(disp) ((disp)->UniformMatrix2fvARB)
-#define SET_UniformMatrix2fvARB(disp, fn) ((disp)->UniformMatrix2fvARB = fn)
-#define CALL_UniformMatrix3fvARB(disp, parameters) (*((disp)->UniformMatrix3fvARB)) parameters
-#define GET_UniformMatrix3fvARB(disp) ((disp)->UniformMatrix3fvARB)
-#define SET_UniformMatrix3fvARB(disp, fn) ((disp)->UniformMatrix3fvARB = fn)
-#define CALL_UniformMatrix4fvARB(disp, parameters) (*((disp)->UniformMatrix4fvARB)) parameters
-#define GET_UniformMatrix4fvARB(disp) ((disp)->UniformMatrix4fvARB)
-#define SET_UniformMatrix4fvARB(disp, fn) ((disp)->UniformMatrix4fvARB = fn)
-#define CALL_UseProgramObjectARB(disp, parameters) (*((disp)->UseProgramObjectARB)) parameters
-#define GET_UseProgramObjectARB(disp) ((disp)->UseProgramObjectARB)
-#define SET_UseProgramObjectARB(disp, fn) ((disp)->UseProgramObjectARB = fn)
-#define CALL_ValidateProgramARB(disp, parameters) (*((disp)->ValidateProgramARB)) parameters
-#define GET_ValidateProgramARB(disp) ((disp)->ValidateProgramARB)
-#define SET_ValidateProgramARB(disp, fn) ((disp)->ValidateProgramARB = fn)
-#define CALL_BindAttribLocationARB(disp, parameters) (*((disp)->BindAttribLocationARB)) parameters
-#define GET_BindAttribLocationARB(disp) ((disp)->BindAttribLocationARB)
-#define SET_BindAttribLocationARB(disp, fn) ((disp)->BindAttribLocationARB = fn)
-#define CALL_GetActiveAttribARB(disp, parameters) (*((disp)->GetActiveAttribARB)) parameters
-#define GET_GetActiveAttribARB(disp) ((disp)->GetActiveAttribARB)
-#define SET_GetActiveAttribARB(disp, fn) ((disp)->GetActiveAttribARB = fn)
-#define CALL_GetAttribLocationARB(disp, parameters) (*((disp)->GetAttribLocationARB)) parameters
-#define GET_GetAttribLocationARB(disp) ((disp)->GetAttribLocationARB)
-#define SET_GetAttribLocationARB(disp, fn) ((disp)->GetAttribLocationARB = fn)
-#define CALL_DrawBuffersARB(disp, parameters) (*((disp)->DrawBuffersARB)) parameters
-#define GET_DrawBuffersARB(disp) ((disp)->DrawBuffersARB)
-#define SET_DrawBuffersARB(disp, fn) ((disp)->DrawBuffersARB = fn)
-#define CALL_RenderbufferStorageMultisample(disp, parameters) (*((disp)->RenderbufferStorageMultisample)) parameters
-#define GET_RenderbufferStorageMultisample(disp) ((disp)->RenderbufferStorageMultisample)
-#define SET_RenderbufferStorageMultisample(disp, fn) ((disp)->RenderbufferStorageMultisample = fn)
-#define CALL_FlushMappedBufferRange(disp, parameters) (*((disp)->FlushMappedBufferRange)) parameters
-#define GET_FlushMappedBufferRange(disp) ((disp)->FlushMappedBufferRange)
-#define SET_FlushMappedBufferRange(disp, fn) ((disp)->FlushMappedBufferRange = fn)
-#define CALL_MapBufferRange(disp, parameters) (*((disp)->MapBufferRange)) parameters
-#define GET_MapBufferRange(disp) ((disp)->MapBufferRange)
-#define SET_MapBufferRange(disp, fn) ((disp)->MapBufferRange = fn)
-#define CALL_BindVertexArray(disp, parameters) (*((disp)->BindVertexArray)) parameters
-#define GET_BindVertexArray(disp) ((disp)->BindVertexArray)
-#define SET_BindVertexArray(disp, fn) ((disp)->BindVertexArray = fn)
-#define CALL_GenVertexArrays(disp, parameters) (*((disp)->GenVertexArrays)) parameters
-#define GET_GenVertexArrays(disp) ((disp)->GenVertexArrays)
-#define SET_GenVertexArrays(disp, fn) ((disp)->GenVertexArrays = fn)
-#define CALL_CopyBufferSubData(disp, parameters) (*((disp)->CopyBufferSubData)) parameters
-#define GET_CopyBufferSubData(disp) ((disp)->CopyBufferSubData)
-#define SET_CopyBufferSubData(disp, fn) ((disp)->CopyBufferSubData = fn)
-#define CALL_ClientWaitSync(disp, parameters) (*((disp)->ClientWaitSync)) parameters
-#define GET_ClientWaitSync(disp) ((disp)->ClientWaitSync)
-#define SET_ClientWaitSync(disp, fn) ((disp)->ClientWaitSync = fn)
-#define CALL_DeleteSync(disp, parameters) (*((disp)->DeleteSync)) parameters
-#define GET_DeleteSync(disp) ((disp)->DeleteSync)
-#define SET_DeleteSync(disp, fn) ((disp)->DeleteSync = fn)
-#define CALL_FenceSync(disp, parameters) (*((disp)->FenceSync)) parameters
-#define GET_FenceSync(disp) ((disp)->FenceSync)
-#define SET_FenceSync(disp, fn) ((disp)->FenceSync = fn)
-#define CALL_GetInteger64v(disp, parameters) (*((disp)->GetInteger64v)) parameters
-#define GET_GetInteger64v(disp) ((disp)->GetInteger64v)
-#define SET_GetInteger64v(disp, fn) ((disp)->GetInteger64v = fn)
-#define CALL_GetSynciv(disp, parameters) (*((disp)->GetSynciv)) parameters
-#define GET_GetSynciv(disp) ((disp)->GetSynciv)
-#define SET_GetSynciv(disp, fn) ((disp)->GetSynciv = fn)
-#define CALL_IsSync(disp, parameters) (*((disp)->IsSync)) parameters
-#define GET_IsSync(disp) ((disp)->IsSync)
-#define SET_IsSync(disp, fn) ((disp)->IsSync = fn)
-#define CALL_WaitSync(disp, parameters) (*((disp)->WaitSync)) parameters
-#define GET_WaitSync(disp) ((disp)->WaitSync)
-#define SET_WaitSync(disp, fn) ((disp)->WaitSync = fn)
-#define CALL_DrawElementsBaseVertex(disp, parameters) (*((disp)->DrawElementsBaseVertex)) parameters
-#define GET_DrawElementsBaseVertex(disp) ((disp)->DrawElementsBaseVertex)
-#define SET_DrawElementsBaseVertex(disp, fn) ((disp)->DrawElementsBaseVertex = fn)
-#define CALL_DrawRangeElementsBaseVertex(disp, parameters) (*((disp)->DrawRangeElementsBaseVertex)) parameters
-#define GET_DrawRangeElementsBaseVertex(disp) ((disp)->DrawRangeElementsBaseVertex)
-#define SET_DrawRangeElementsBaseVertex(disp, fn) ((disp)->DrawRangeElementsBaseVertex = fn)
-#define CALL_MultiDrawElementsBaseVertex(disp, parameters) (*((disp)->MultiDrawElementsBaseVertex)) parameters
-#define GET_MultiDrawElementsBaseVertex(disp) ((disp)->MultiDrawElementsBaseVertex)
-#define SET_MultiDrawElementsBaseVertex(disp, fn) ((disp)->MultiDrawElementsBaseVertex = fn)
-#define CALL_PolygonOffsetEXT(disp, parameters) (*((disp)->PolygonOffsetEXT)) parameters
-#define GET_PolygonOffsetEXT(disp) ((disp)->PolygonOffsetEXT)
-#define SET_PolygonOffsetEXT(disp, fn) ((disp)->PolygonOffsetEXT = fn)
-#define CALL_GetPixelTexGenParameterfvSGIS(disp, parameters) (*((disp)->GetPixelTexGenParameterfvSGIS)) parameters
-#define GET_GetPixelTexGenParameterfvSGIS(disp) ((disp)->GetPixelTexGenParameterfvSGIS)
-#define SET_GetPixelTexGenParameterfvSGIS(disp, fn) ((disp)->GetPixelTexGenParameterfvSGIS = fn)
-#define CALL_GetPixelTexGenParameterivSGIS(disp, parameters) (*((disp)->GetPixelTexGenParameterivSGIS)) parameters
-#define GET_GetPixelTexGenParameterivSGIS(disp) ((disp)->GetPixelTexGenParameterivSGIS)
-#define SET_GetPixelTexGenParameterivSGIS(disp, fn) ((disp)->GetPixelTexGenParameterivSGIS = fn)
-#define CALL_PixelTexGenParameterfSGIS(disp, parameters) (*((disp)->PixelTexGenParameterfSGIS)) parameters
-#define GET_PixelTexGenParameterfSGIS(disp) ((disp)->PixelTexGenParameterfSGIS)
-#define SET_PixelTexGenParameterfSGIS(disp, fn) ((disp)->PixelTexGenParameterfSGIS = fn)
-#define CALL_PixelTexGenParameterfvSGIS(disp, parameters) (*((disp)->PixelTexGenParameterfvSGIS)) parameters
-#define GET_PixelTexGenParameterfvSGIS(disp) ((disp)->PixelTexGenParameterfvSGIS)
-#define SET_PixelTexGenParameterfvSGIS(disp, fn) ((disp)->PixelTexGenParameterfvSGIS = fn)
-#define CALL_PixelTexGenParameteriSGIS(disp, parameters) (*((disp)->PixelTexGenParameteriSGIS)) parameters
-#define GET_PixelTexGenParameteriSGIS(disp) ((disp)->PixelTexGenParameteriSGIS)
-#define SET_PixelTexGenParameteriSGIS(disp, fn) ((disp)->PixelTexGenParameteriSGIS = fn)
-#define CALL_PixelTexGenParameterivSGIS(disp, parameters) (*((disp)->PixelTexGenParameterivSGIS)) parameters
-#define GET_PixelTexGenParameterivSGIS(disp) ((disp)->PixelTexGenParameterivSGIS)
-#define SET_PixelTexGenParameterivSGIS(disp, fn) ((disp)->PixelTexGenParameterivSGIS = fn)
-#define CALL_SampleMaskSGIS(disp, parameters) (*((disp)->SampleMaskSGIS)) parameters
-#define GET_SampleMaskSGIS(disp) ((disp)->SampleMaskSGIS)
-#define SET_SampleMaskSGIS(disp, fn) ((disp)->SampleMaskSGIS = fn)
-#define CALL_SamplePatternSGIS(disp, parameters) (*((disp)->SamplePatternSGIS)) parameters
-#define GET_SamplePatternSGIS(disp) ((disp)->SamplePatternSGIS)
-#define SET_SamplePatternSGIS(disp, fn) ((disp)->SamplePatternSGIS = fn)
-#define CALL_ColorPointerEXT(disp, parameters) (*((disp)->ColorPointerEXT)) parameters
-#define GET_ColorPointerEXT(disp) ((disp)->ColorPointerEXT)
-#define SET_ColorPointerEXT(disp, fn) ((disp)->ColorPointerEXT = fn)
-#define CALL_EdgeFlagPointerEXT(disp, parameters) (*((disp)->EdgeFlagPointerEXT)) parameters
-#define GET_EdgeFlagPointerEXT(disp) ((disp)->EdgeFlagPointerEXT)
-#define SET_EdgeFlagPointerEXT(disp, fn) ((disp)->EdgeFlagPointerEXT = fn)
-#define CALL_IndexPointerEXT(disp, parameters) (*((disp)->IndexPointerEXT)) parameters
-#define GET_IndexPointerEXT(disp) ((disp)->IndexPointerEXT)
-#define SET_IndexPointerEXT(disp, fn) ((disp)->IndexPointerEXT = fn)
-#define CALL_NormalPointerEXT(disp, parameters) (*((disp)->NormalPointerEXT)) parameters
-#define GET_NormalPointerEXT(disp) ((disp)->NormalPointerEXT)
-#define SET_NormalPointerEXT(disp, fn) ((disp)->NormalPointerEXT = fn)
-#define CALL_TexCoordPointerEXT(disp, parameters) (*((disp)->TexCoordPointerEXT)) parameters
-#define GET_TexCoordPointerEXT(disp) ((disp)->TexCoordPointerEXT)
-#define SET_TexCoordPointerEXT(disp, fn) ((disp)->TexCoordPointerEXT = fn)
-#define CALL_VertexPointerEXT(disp, parameters) (*((disp)->VertexPointerEXT)) parameters
-#define GET_VertexPointerEXT(disp) ((disp)->VertexPointerEXT)
-#define SET_VertexPointerEXT(disp, fn) ((disp)->VertexPointerEXT = fn)
-#define CALL_PointParameterfEXT(disp, parameters) (*((disp)->PointParameterfEXT)) parameters
-#define GET_PointParameterfEXT(disp) ((disp)->PointParameterfEXT)
-#define SET_PointParameterfEXT(disp, fn) ((disp)->PointParameterfEXT = fn)
-#define CALL_PointParameterfvEXT(disp, parameters) (*((disp)->PointParameterfvEXT)) parameters
-#define GET_PointParameterfvEXT(disp) ((disp)->PointParameterfvEXT)
-#define SET_PointParameterfvEXT(disp, fn) ((disp)->PointParameterfvEXT = fn)
-#define CALL_LockArraysEXT(disp, parameters) (*((disp)->LockArraysEXT)) parameters
-#define GET_LockArraysEXT(disp) ((disp)->LockArraysEXT)
-#define SET_LockArraysEXT(disp, fn) ((disp)->LockArraysEXT = fn)
-#define CALL_UnlockArraysEXT(disp, parameters) (*((disp)->UnlockArraysEXT)) parameters
-#define GET_UnlockArraysEXT(disp) ((disp)->UnlockArraysEXT)
-#define SET_UnlockArraysEXT(disp, fn) ((disp)->UnlockArraysEXT = fn)
-#define CALL_CullParameterdvEXT(disp, parameters) (*((disp)->CullParameterdvEXT)) parameters
-#define GET_CullParameterdvEXT(disp) ((disp)->CullParameterdvEXT)
-#define SET_CullParameterdvEXT(disp, fn) ((disp)->CullParameterdvEXT = fn)
-#define CALL_CullParameterfvEXT(disp, parameters) (*((disp)->CullParameterfvEXT)) parameters
-#define GET_CullParameterfvEXT(disp) ((disp)->CullParameterfvEXT)
-#define SET_CullParameterfvEXT(disp, fn) ((disp)->CullParameterfvEXT = fn)
-#define CALL_SecondaryColor3bEXT(disp, parameters) (*((disp)->SecondaryColor3bEXT)) parameters
-#define GET_SecondaryColor3bEXT(disp) ((disp)->SecondaryColor3bEXT)
-#define SET_SecondaryColor3bEXT(disp, fn) ((disp)->SecondaryColor3bEXT = fn)
-#define CALL_SecondaryColor3bvEXT(disp, parameters) (*((disp)->SecondaryColor3bvEXT)) parameters
-#define GET_SecondaryColor3bvEXT(disp) ((disp)->SecondaryColor3bvEXT)
-#define SET_SecondaryColor3bvEXT(disp, fn) ((disp)->SecondaryColor3bvEXT = fn)
-#define CALL_SecondaryColor3dEXT(disp, parameters) (*((disp)->SecondaryColor3dEXT)) parameters
-#define GET_SecondaryColor3dEXT(disp) ((disp)->SecondaryColor3dEXT)
-#define SET_SecondaryColor3dEXT(disp, fn) ((disp)->SecondaryColor3dEXT = fn)
-#define CALL_SecondaryColor3dvEXT(disp, parameters) (*((disp)->SecondaryColor3dvEXT)) parameters
-#define GET_SecondaryColor3dvEXT(disp) ((disp)->SecondaryColor3dvEXT)
-#define SET_SecondaryColor3dvEXT(disp, fn) ((disp)->SecondaryColor3dvEXT = fn)
-#define CALL_SecondaryColor3fEXT(disp, parameters) (*((disp)->SecondaryColor3fEXT)) parameters
-#define GET_SecondaryColor3fEXT(disp) ((disp)->SecondaryColor3fEXT)
-#define SET_SecondaryColor3fEXT(disp, fn) ((disp)->SecondaryColor3fEXT = fn)
-#define CALL_SecondaryColor3fvEXT(disp, parameters) (*((disp)->SecondaryColor3fvEXT)) parameters
-#define GET_SecondaryColor3fvEXT(disp) ((disp)->SecondaryColor3fvEXT)
-#define SET_SecondaryColor3fvEXT(disp, fn) ((disp)->SecondaryColor3fvEXT = fn)
-#define CALL_SecondaryColor3iEXT(disp, parameters) (*((disp)->SecondaryColor3iEXT)) parameters
-#define GET_SecondaryColor3iEXT(disp) ((disp)->SecondaryColor3iEXT)
-#define SET_SecondaryColor3iEXT(disp, fn) ((disp)->SecondaryColor3iEXT = fn)
-#define CALL_SecondaryColor3ivEXT(disp, parameters) (*((disp)->SecondaryColor3ivEXT)) parameters
-#define GET_SecondaryColor3ivEXT(disp) ((disp)->SecondaryColor3ivEXT)
-#define SET_SecondaryColor3ivEXT(disp, fn) ((disp)->SecondaryColor3ivEXT = fn)
-#define CALL_SecondaryColor3sEXT(disp, parameters) (*((disp)->SecondaryColor3sEXT)) parameters
-#define GET_SecondaryColor3sEXT(disp) ((disp)->SecondaryColor3sEXT)
-#define SET_SecondaryColor3sEXT(disp, fn) ((disp)->SecondaryColor3sEXT = fn)
-#define CALL_SecondaryColor3svEXT(disp, parameters) (*((disp)->SecondaryColor3svEXT)) parameters
-#define GET_SecondaryColor3svEXT(disp) ((disp)->SecondaryColor3svEXT)
-#define SET_SecondaryColor3svEXT(disp, fn) ((disp)->SecondaryColor3svEXT = fn)
-#define CALL_SecondaryColor3ubEXT(disp, parameters) (*((disp)->SecondaryColor3ubEXT)) parameters
-#define GET_SecondaryColor3ubEXT(disp) ((disp)->SecondaryColor3ubEXT)
-#define SET_SecondaryColor3ubEXT(disp, fn) ((disp)->SecondaryColor3ubEXT = fn)
-#define CALL_SecondaryColor3ubvEXT(disp, parameters) (*((disp)->SecondaryColor3ubvEXT)) parameters
-#define GET_SecondaryColor3ubvEXT(disp) ((disp)->SecondaryColor3ubvEXT)
-#define SET_SecondaryColor3ubvEXT(disp, fn) ((disp)->SecondaryColor3ubvEXT = fn)
-#define CALL_SecondaryColor3uiEXT(disp, parameters) (*((disp)->SecondaryColor3uiEXT)) parameters
-#define GET_SecondaryColor3uiEXT(disp) ((disp)->SecondaryColor3uiEXT)
-#define SET_SecondaryColor3uiEXT(disp, fn) ((disp)->SecondaryColor3uiEXT = fn)
-#define CALL_SecondaryColor3uivEXT(disp, parameters) (*((disp)->SecondaryColor3uivEXT)) parameters
-#define GET_SecondaryColor3uivEXT(disp) ((disp)->SecondaryColor3uivEXT)
-#define SET_SecondaryColor3uivEXT(disp, fn) ((disp)->SecondaryColor3uivEXT = fn)
-#define CALL_SecondaryColor3usEXT(disp, parameters) (*((disp)->SecondaryColor3usEXT)) parameters
-#define GET_SecondaryColor3usEXT(disp) ((disp)->SecondaryColor3usEXT)
-#define SET_SecondaryColor3usEXT(disp, fn) ((disp)->SecondaryColor3usEXT = fn)
-#define CALL_SecondaryColor3usvEXT(disp, parameters) (*((disp)->SecondaryColor3usvEXT)) parameters
-#define GET_SecondaryColor3usvEXT(disp) ((disp)->SecondaryColor3usvEXT)
-#define SET_SecondaryColor3usvEXT(disp, fn) ((disp)->SecondaryColor3usvEXT = fn)
-#define CALL_SecondaryColorPointerEXT(disp, parameters) (*((disp)->SecondaryColorPointerEXT)) parameters
-#define GET_SecondaryColorPointerEXT(disp) ((disp)->SecondaryColorPointerEXT)
-#define SET_SecondaryColorPointerEXT(disp, fn) ((disp)->SecondaryColorPointerEXT = fn)
-#define CALL_MultiDrawArraysEXT(disp, parameters) (*((disp)->MultiDrawArraysEXT)) parameters
-#define GET_MultiDrawArraysEXT(disp) ((disp)->MultiDrawArraysEXT)
-#define SET_MultiDrawArraysEXT(disp, fn) ((disp)->MultiDrawArraysEXT = fn)
-#define CALL_MultiDrawElementsEXT(disp, parameters) (*((disp)->MultiDrawElementsEXT)) parameters
-#define GET_MultiDrawElementsEXT(disp) ((disp)->MultiDrawElementsEXT)
-#define SET_MultiDrawElementsEXT(disp, fn) ((disp)->MultiDrawElementsEXT = fn)
-#define CALL_FogCoordPointerEXT(disp, parameters) (*((disp)->FogCoordPointerEXT)) parameters
-#define GET_FogCoordPointerEXT(disp) ((disp)->FogCoordPointerEXT)
-#define SET_FogCoordPointerEXT(disp, fn) ((disp)->FogCoordPointerEXT = fn)
-#define CALL_FogCoorddEXT(disp, parameters) (*((disp)->FogCoorddEXT)) parameters
-#define GET_FogCoorddEXT(disp) ((disp)->FogCoorddEXT)
-#define SET_FogCoorddEXT(disp, fn) ((disp)->FogCoorddEXT = fn)
-#define CALL_FogCoorddvEXT(disp, parameters) (*((disp)->FogCoorddvEXT)) parameters
-#define GET_FogCoorddvEXT(disp) ((disp)->FogCoorddvEXT)
-#define SET_FogCoorddvEXT(disp, fn) ((disp)->FogCoorddvEXT = fn)
-#define CALL_FogCoordfEXT(disp, parameters) (*((disp)->FogCoordfEXT)) parameters
-#define GET_FogCoordfEXT(disp) ((disp)->FogCoordfEXT)
-#define SET_FogCoordfEXT(disp, fn) ((disp)->FogCoordfEXT = fn)
-#define CALL_FogCoordfvEXT(disp, parameters) (*((disp)->FogCoordfvEXT)) parameters
-#define GET_FogCoordfvEXT(disp) ((disp)->FogCoordfvEXT)
-#define SET_FogCoordfvEXT(disp, fn) ((disp)->FogCoordfvEXT = fn)
-#define CALL_PixelTexGenSGIX(disp, parameters) (*((disp)->PixelTexGenSGIX)) parameters
-#define GET_PixelTexGenSGIX(disp) ((disp)->PixelTexGenSGIX)
-#define SET_PixelTexGenSGIX(disp, fn) ((disp)->PixelTexGenSGIX = fn)
-#define CALL_BlendFuncSeparateEXT(disp, parameters) (*((disp)->BlendFuncSeparateEXT)) parameters
-#define GET_BlendFuncSeparateEXT(disp) ((disp)->BlendFuncSeparateEXT)
-#define SET_BlendFuncSeparateEXT(disp, fn) ((disp)->BlendFuncSeparateEXT = fn)
-#define CALL_FlushVertexArrayRangeNV(disp, parameters) (*((disp)->FlushVertexArrayRangeNV)) parameters
-#define GET_FlushVertexArrayRangeNV(disp) ((disp)->FlushVertexArrayRangeNV)
-#define SET_FlushVertexArrayRangeNV(disp, fn) ((disp)->FlushVertexArrayRangeNV = fn)
-#define CALL_VertexArrayRangeNV(disp, parameters) (*((disp)->VertexArrayRangeNV)) parameters
-#define GET_VertexArrayRangeNV(disp) ((disp)->VertexArrayRangeNV)
-#define SET_VertexArrayRangeNV(disp, fn) ((disp)->VertexArrayRangeNV = fn)
-#define CALL_CombinerInputNV(disp, parameters) (*((disp)->CombinerInputNV)) parameters
-#define GET_CombinerInputNV(disp) ((disp)->CombinerInputNV)
-#define SET_CombinerInputNV(disp, fn) ((disp)->CombinerInputNV = fn)
-#define CALL_CombinerOutputNV(disp, parameters) (*((disp)->CombinerOutputNV)) parameters
-#define GET_CombinerOutputNV(disp) ((disp)->CombinerOutputNV)
-#define SET_CombinerOutputNV(disp, fn) ((disp)->CombinerOutputNV = fn)
-#define CALL_CombinerParameterfNV(disp, parameters) (*((disp)->CombinerParameterfNV)) parameters
-#define GET_CombinerParameterfNV(disp) ((disp)->CombinerParameterfNV)
-#define SET_CombinerParameterfNV(disp, fn) ((disp)->CombinerParameterfNV = fn)
-#define CALL_CombinerParameterfvNV(disp, parameters) (*((disp)->CombinerParameterfvNV)) parameters
-#define GET_CombinerParameterfvNV(disp) ((disp)->CombinerParameterfvNV)
-#define SET_CombinerParameterfvNV(disp, fn) ((disp)->CombinerParameterfvNV = fn)
-#define CALL_CombinerParameteriNV(disp, parameters) (*((disp)->CombinerParameteriNV)) parameters
-#define GET_CombinerParameteriNV(disp) ((disp)->CombinerParameteriNV)
-#define SET_CombinerParameteriNV(disp, fn) ((disp)->CombinerParameteriNV = fn)
-#define CALL_CombinerParameterivNV(disp, parameters) (*((disp)->CombinerParameterivNV)) parameters
-#define GET_CombinerParameterivNV(disp) ((disp)->CombinerParameterivNV)
-#define SET_CombinerParameterivNV(disp, fn) ((disp)->CombinerParameterivNV = fn)
-#define CALL_FinalCombinerInputNV(disp, parameters) (*((disp)->FinalCombinerInputNV)) parameters
-#define GET_FinalCombinerInputNV(disp) ((disp)->FinalCombinerInputNV)
-#define SET_FinalCombinerInputNV(disp, fn) ((disp)->FinalCombinerInputNV = fn)
-#define CALL_GetCombinerInputParameterfvNV(disp, parameters) (*((disp)->GetCombinerInputParameterfvNV)) parameters
-#define GET_GetCombinerInputParameterfvNV(disp) ((disp)->GetCombinerInputParameterfvNV)
-#define SET_GetCombinerInputParameterfvNV(disp, fn) ((disp)->GetCombinerInputParameterfvNV = fn)
-#define CALL_GetCombinerInputParameterivNV(disp, parameters) (*((disp)->GetCombinerInputParameterivNV)) parameters
-#define GET_GetCombinerInputParameterivNV(disp) ((disp)->GetCombinerInputParameterivNV)
-#define SET_GetCombinerInputParameterivNV(disp, fn) ((disp)->GetCombinerInputParameterivNV = fn)
-#define CALL_GetCombinerOutputParameterfvNV(disp, parameters) (*((disp)->GetCombinerOutputParameterfvNV)) parameters
-#define GET_GetCombinerOutputParameterfvNV(disp) ((disp)->GetCombinerOutputParameterfvNV)
-#define SET_GetCombinerOutputParameterfvNV(disp, fn) ((disp)->GetCombinerOutputParameterfvNV = fn)
-#define CALL_GetCombinerOutputParameterivNV(disp, parameters) (*((disp)->GetCombinerOutputParameterivNV)) parameters
-#define GET_GetCombinerOutputParameterivNV(disp) ((disp)->GetCombinerOutputParameterivNV)
-#define SET_GetCombinerOutputParameterivNV(disp, fn) ((disp)->GetCombinerOutputParameterivNV = fn)
-#define CALL_GetFinalCombinerInputParameterfvNV(disp, parameters) (*((disp)->GetFinalCombinerInputParameterfvNV)) parameters
-#define GET_GetFinalCombinerInputParameterfvNV(disp) ((disp)->GetFinalCombinerInputParameterfvNV)
-#define SET_GetFinalCombinerInputParameterfvNV(disp, fn) ((disp)->GetFinalCombinerInputParameterfvNV = fn)
-#define CALL_GetFinalCombinerInputParameterivNV(disp, parameters) (*((disp)->GetFinalCombinerInputParameterivNV)) parameters
-#define GET_GetFinalCombinerInputParameterivNV(disp) ((disp)->GetFinalCombinerInputParameterivNV)
-#define SET_GetFinalCombinerInputParameterivNV(disp, fn) ((disp)->GetFinalCombinerInputParameterivNV = fn)
-#define CALL_ResizeBuffersMESA(disp, parameters) (*((disp)->ResizeBuffersMESA)) parameters
-#define GET_ResizeBuffersMESA(disp) ((disp)->ResizeBuffersMESA)
-#define SET_ResizeBuffersMESA(disp, fn) ((disp)->ResizeBuffersMESA = fn)
-#define CALL_WindowPos2dMESA(disp, parameters) (*((disp)->WindowPos2dMESA)) parameters
-#define GET_WindowPos2dMESA(disp) ((disp)->WindowPos2dMESA)
-#define SET_WindowPos2dMESA(disp, fn) ((disp)->WindowPos2dMESA = fn)
-#define CALL_WindowPos2dvMESA(disp, parameters) (*((disp)->WindowPos2dvMESA)) parameters
-#define GET_WindowPos2dvMESA(disp) ((disp)->WindowPos2dvMESA)
-#define SET_WindowPos2dvMESA(disp, fn) ((disp)->WindowPos2dvMESA = fn)
-#define CALL_WindowPos2fMESA(disp, parameters) (*((disp)->WindowPos2fMESA)) parameters
-#define GET_WindowPos2fMESA(disp) ((disp)->WindowPos2fMESA)
-#define SET_WindowPos2fMESA(disp, fn) ((disp)->WindowPos2fMESA = fn)
-#define CALL_WindowPos2fvMESA(disp, parameters) (*((disp)->WindowPos2fvMESA)) parameters
-#define GET_WindowPos2fvMESA(disp) ((disp)->WindowPos2fvMESA)
-#define SET_WindowPos2fvMESA(disp, fn) ((disp)->WindowPos2fvMESA = fn)
-#define CALL_WindowPos2iMESA(disp, parameters) (*((disp)->WindowPos2iMESA)) parameters
-#define GET_WindowPos2iMESA(disp) ((disp)->WindowPos2iMESA)
-#define SET_WindowPos2iMESA(disp, fn) ((disp)->WindowPos2iMESA = fn)
-#define CALL_WindowPos2ivMESA(disp, parameters) (*((disp)->WindowPos2ivMESA)) parameters
-#define GET_WindowPos2ivMESA(disp) ((disp)->WindowPos2ivMESA)
-#define SET_WindowPos2ivMESA(disp, fn) ((disp)->WindowPos2ivMESA = fn)
-#define CALL_WindowPos2sMESA(disp, parameters) (*((disp)->WindowPos2sMESA)) parameters
-#define GET_WindowPos2sMESA(disp) ((disp)->WindowPos2sMESA)
-#define SET_WindowPos2sMESA(disp, fn) ((disp)->WindowPos2sMESA = fn)
-#define CALL_WindowPos2svMESA(disp, parameters) (*((disp)->WindowPos2svMESA)) parameters
-#define GET_WindowPos2svMESA(disp) ((disp)->WindowPos2svMESA)
-#define SET_WindowPos2svMESA(disp, fn) ((disp)->WindowPos2svMESA = fn)
-#define CALL_WindowPos3dMESA(disp, parameters) (*((disp)->WindowPos3dMESA)) parameters
-#define GET_WindowPos3dMESA(disp) ((disp)->WindowPos3dMESA)
-#define SET_WindowPos3dMESA(disp, fn) ((disp)->WindowPos3dMESA = fn)
-#define CALL_WindowPos3dvMESA(disp, parameters) (*((disp)->WindowPos3dvMESA)) parameters
-#define GET_WindowPos3dvMESA(disp) ((disp)->WindowPos3dvMESA)
-#define SET_WindowPos3dvMESA(disp, fn) ((disp)->WindowPos3dvMESA = fn)
-#define CALL_WindowPos3fMESA(disp, parameters) (*((disp)->WindowPos3fMESA)) parameters
-#define GET_WindowPos3fMESA(disp) ((disp)->WindowPos3fMESA)
-#define SET_WindowPos3fMESA(disp, fn) ((disp)->WindowPos3fMESA = fn)
-#define CALL_WindowPos3fvMESA(disp, parameters) (*((disp)->WindowPos3fvMESA)) parameters
-#define GET_WindowPos3fvMESA(disp) ((disp)->WindowPos3fvMESA)
-#define SET_WindowPos3fvMESA(disp, fn) ((disp)->WindowPos3fvMESA = fn)
-#define CALL_WindowPos3iMESA(disp, parameters) (*((disp)->WindowPos3iMESA)) parameters
-#define GET_WindowPos3iMESA(disp) ((disp)->WindowPos3iMESA)
-#define SET_WindowPos3iMESA(disp, fn) ((disp)->WindowPos3iMESA = fn)
-#define CALL_WindowPos3ivMESA(disp, parameters) (*((disp)->WindowPos3ivMESA)) parameters
-#define GET_WindowPos3ivMESA(disp) ((disp)->WindowPos3ivMESA)
-#define SET_WindowPos3ivMESA(disp, fn) ((disp)->WindowPos3ivMESA = fn)
-#define CALL_WindowPos3sMESA(disp, parameters) (*((disp)->WindowPos3sMESA)) parameters
-#define GET_WindowPos3sMESA(disp) ((disp)->WindowPos3sMESA)
-#define SET_WindowPos3sMESA(disp, fn) ((disp)->WindowPos3sMESA = fn)
-#define CALL_WindowPos3svMESA(disp, parameters) (*((disp)->WindowPos3svMESA)) parameters
-#define GET_WindowPos3svMESA(disp) ((disp)->WindowPos3svMESA)
-#define SET_WindowPos3svMESA(disp, fn) ((disp)->WindowPos3svMESA = fn)
-#define CALL_WindowPos4dMESA(disp, parameters) (*((disp)->WindowPos4dMESA)) parameters
-#define GET_WindowPos4dMESA(disp) ((disp)->WindowPos4dMESA)
-#define SET_WindowPos4dMESA(disp, fn) ((disp)->WindowPos4dMESA = fn)
-#define CALL_WindowPos4dvMESA(disp, parameters) (*((disp)->WindowPos4dvMESA)) parameters
-#define GET_WindowPos4dvMESA(disp) ((disp)->WindowPos4dvMESA)
-#define SET_WindowPos4dvMESA(disp, fn) ((disp)->WindowPos4dvMESA = fn)
-#define CALL_WindowPos4fMESA(disp, parameters) (*((disp)->WindowPos4fMESA)) parameters
-#define GET_WindowPos4fMESA(disp) ((disp)->WindowPos4fMESA)
-#define SET_WindowPos4fMESA(disp, fn) ((disp)->WindowPos4fMESA = fn)
-#define CALL_WindowPos4fvMESA(disp, parameters) (*((disp)->WindowPos4fvMESA)) parameters
-#define GET_WindowPos4fvMESA(disp) ((disp)->WindowPos4fvMESA)
-#define SET_WindowPos4fvMESA(disp, fn) ((disp)->WindowPos4fvMESA = fn)
-#define CALL_WindowPos4iMESA(disp, parameters) (*((disp)->WindowPos4iMESA)) parameters
-#define GET_WindowPos4iMESA(disp) ((disp)->WindowPos4iMESA)
-#define SET_WindowPos4iMESA(disp, fn) ((disp)->WindowPos4iMESA = fn)
-#define CALL_WindowPos4ivMESA(disp, parameters) (*((disp)->WindowPos4ivMESA)) parameters
-#define GET_WindowPos4ivMESA(disp) ((disp)->WindowPos4ivMESA)
-#define SET_WindowPos4ivMESA(disp, fn) ((disp)->WindowPos4ivMESA = fn)
-#define CALL_WindowPos4sMESA(disp, parameters) (*((disp)->WindowPos4sMESA)) parameters
-#define GET_WindowPos4sMESA(disp) ((disp)->WindowPos4sMESA)
-#define SET_WindowPos4sMESA(disp, fn) ((disp)->WindowPos4sMESA = fn)
-#define CALL_WindowPos4svMESA(disp, parameters) (*((disp)->WindowPos4svMESA)) parameters
-#define GET_WindowPos4svMESA(disp) ((disp)->WindowPos4svMESA)
-#define SET_WindowPos4svMESA(disp, fn) ((disp)->WindowPos4svMESA = fn)
-#define CALL_MultiModeDrawArraysIBM(disp, parameters) (*((disp)->MultiModeDrawArraysIBM)) parameters
-#define GET_MultiModeDrawArraysIBM(disp) ((disp)->MultiModeDrawArraysIBM)
-#define SET_MultiModeDrawArraysIBM(disp, fn) ((disp)->MultiModeDrawArraysIBM = fn)
-#define CALL_MultiModeDrawElementsIBM(disp, parameters) (*((disp)->MultiModeDrawElementsIBM)) parameters
-#define GET_MultiModeDrawElementsIBM(disp) ((disp)->MultiModeDrawElementsIBM)
-#define SET_MultiModeDrawElementsIBM(disp, fn) ((disp)->MultiModeDrawElementsIBM = fn)
-#define CALL_DeleteFencesNV(disp, parameters) (*((disp)->DeleteFencesNV)) parameters
-#define GET_DeleteFencesNV(disp) ((disp)->DeleteFencesNV)
-#define SET_DeleteFencesNV(disp, fn) ((disp)->DeleteFencesNV = fn)
-#define CALL_FinishFenceNV(disp, parameters) (*((disp)->FinishFenceNV)) parameters
-#define GET_FinishFenceNV(disp) ((disp)->FinishFenceNV)
-#define SET_FinishFenceNV(disp, fn) ((disp)->FinishFenceNV = fn)
-#define CALL_GenFencesNV(disp, parameters) (*((disp)->GenFencesNV)) parameters
-#define GET_GenFencesNV(disp) ((disp)->GenFencesNV)
-#define SET_GenFencesNV(disp, fn) ((disp)->GenFencesNV = fn)
-#define CALL_GetFenceivNV(disp, parameters) (*((disp)->GetFenceivNV)) parameters
-#define GET_GetFenceivNV(disp) ((disp)->GetFenceivNV)
-#define SET_GetFenceivNV(disp, fn) ((disp)->GetFenceivNV = fn)
-#define CALL_IsFenceNV(disp, parameters) (*((disp)->IsFenceNV)) parameters
-#define GET_IsFenceNV(disp) ((disp)->IsFenceNV)
-#define SET_IsFenceNV(disp, fn) ((disp)->IsFenceNV = fn)
-#define CALL_SetFenceNV(disp, parameters) (*((disp)->SetFenceNV)) parameters
-#define GET_SetFenceNV(disp) ((disp)->SetFenceNV)
-#define SET_SetFenceNV(disp, fn) ((disp)->SetFenceNV = fn)
-#define CALL_TestFenceNV(disp, parameters) (*((disp)->TestFenceNV)) parameters
-#define GET_TestFenceNV(disp) ((disp)->TestFenceNV)
-#define SET_TestFenceNV(disp, fn) ((disp)->TestFenceNV = fn)
-#define CALL_AreProgramsResidentNV(disp, parameters) (*((disp)->AreProgramsResidentNV)) parameters
-#define GET_AreProgramsResidentNV(disp) ((disp)->AreProgramsResidentNV)
-#define SET_AreProgramsResidentNV(disp, fn) ((disp)->AreProgramsResidentNV = fn)
-#define CALL_BindProgramNV(disp, parameters) (*((disp)->BindProgramNV)) parameters
-#define GET_BindProgramNV(disp) ((disp)->BindProgramNV)
-#define SET_BindProgramNV(disp, fn) ((disp)->BindProgramNV = fn)
-#define CALL_DeleteProgramsNV(disp, parameters) (*((disp)->DeleteProgramsNV)) parameters
-#define GET_DeleteProgramsNV(disp) ((disp)->DeleteProgramsNV)
-#define SET_DeleteProgramsNV(disp, fn) ((disp)->DeleteProgramsNV = fn)
-#define CALL_ExecuteProgramNV(disp, parameters) (*((disp)->ExecuteProgramNV)) parameters
-#define GET_ExecuteProgramNV(disp) ((disp)->ExecuteProgramNV)
-#define SET_ExecuteProgramNV(disp, fn) ((disp)->ExecuteProgramNV = fn)
-#define CALL_GenProgramsNV(disp, parameters) (*((disp)->GenProgramsNV)) parameters
-#define GET_GenProgramsNV(disp) ((disp)->GenProgramsNV)
-#define SET_GenProgramsNV(disp, fn) ((disp)->GenProgramsNV = fn)
-#define CALL_GetProgramParameterdvNV(disp, parameters) (*((disp)->GetProgramParameterdvNV)) parameters
-#define GET_GetProgramParameterdvNV(disp) ((disp)->GetProgramParameterdvNV)
-#define SET_GetProgramParameterdvNV(disp, fn) ((disp)->GetProgramParameterdvNV = fn)
-#define CALL_GetProgramParameterfvNV(disp, parameters) (*((disp)->GetProgramParameterfvNV)) parameters
-#define GET_GetProgramParameterfvNV(disp) ((disp)->GetProgramParameterfvNV)
-#define SET_GetProgramParameterfvNV(disp, fn) ((disp)->GetProgramParameterfvNV = fn)
-#define CALL_GetProgramStringNV(disp, parameters) (*((disp)->GetProgramStringNV)) parameters
-#define GET_GetProgramStringNV(disp) ((disp)->GetProgramStringNV)
-#define SET_GetProgramStringNV(disp, fn) ((disp)->GetProgramStringNV = fn)
-#define CALL_GetProgramivNV(disp, parameters) (*((disp)->GetProgramivNV)) parameters
-#define GET_GetProgramivNV(disp) ((disp)->GetProgramivNV)
-#define SET_GetProgramivNV(disp, fn) ((disp)->GetProgramivNV = fn)
-#define CALL_GetTrackMatrixivNV(disp, parameters) (*((disp)->GetTrackMatrixivNV)) parameters
-#define GET_GetTrackMatrixivNV(disp) ((disp)->GetTrackMatrixivNV)
-#define SET_GetTrackMatrixivNV(disp, fn) ((disp)->GetTrackMatrixivNV = fn)
-#define CALL_GetVertexAttribPointervNV(disp, parameters) (*((disp)->GetVertexAttribPointervNV)) parameters
-#define GET_GetVertexAttribPointervNV(disp) ((disp)->GetVertexAttribPointervNV)
-#define SET_GetVertexAttribPointervNV(disp, fn) ((disp)->GetVertexAttribPointervNV = fn)
-#define CALL_GetVertexAttribdvNV(disp, parameters) (*((disp)->GetVertexAttribdvNV)) parameters
-#define GET_GetVertexAttribdvNV(disp) ((disp)->GetVertexAttribdvNV)
-#define SET_GetVertexAttribdvNV(disp, fn) ((disp)->GetVertexAttribdvNV = fn)
-#define CALL_GetVertexAttribfvNV(disp, parameters) (*((disp)->GetVertexAttribfvNV)) parameters
-#define GET_GetVertexAttribfvNV(disp) ((disp)->GetVertexAttribfvNV)
-#define SET_GetVertexAttribfvNV(disp, fn) ((disp)->GetVertexAttribfvNV = fn)
-#define CALL_GetVertexAttribivNV(disp, parameters) (*((disp)->GetVertexAttribivNV)) parameters
-#define GET_GetVertexAttribivNV(disp) ((disp)->GetVertexAttribivNV)
-#define SET_GetVertexAttribivNV(disp, fn) ((disp)->GetVertexAttribivNV = fn)
-#define CALL_IsProgramNV(disp, parameters) (*((disp)->IsProgramNV)) parameters
-#define GET_IsProgramNV(disp) ((disp)->IsProgramNV)
-#define SET_IsProgramNV(disp, fn) ((disp)->IsProgramNV = fn)
-#define CALL_LoadProgramNV(disp, parameters) (*((disp)->LoadProgramNV)) parameters
-#define GET_LoadProgramNV(disp) ((disp)->LoadProgramNV)
-#define SET_LoadProgramNV(disp, fn) ((disp)->LoadProgramNV = fn)
-#define CALL_ProgramParameters4dvNV(disp, parameters) (*((disp)->ProgramParameters4dvNV)) parameters
-#define GET_ProgramParameters4dvNV(disp) ((disp)->ProgramParameters4dvNV)
-#define SET_ProgramParameters4dvNV(disp, fn) ((disp)->ProgramParameters4dvNV = fn)
-#define CALL_ProgramParameters4fvNV(disp, parameters) (*((disp)->ProgramParameters4fvNV)) parameters
-#define GET_ProgramParameters4fvNV(disp) ((disp)->ProgramParameters4fvNV)
-#define SET_ProgramParameters4fvNV(disp, fn) ((disp)->ProgramParameters4fvNV = fn)
-#define CALL_RequestResidentProgramsNV(disp, parameters) (*((disp)->RequestResidentProgramsNV)) parameters
-#define GET_RequestResidentProgramsNV(disp) ((disp)->RequestResidentProgramsNV)
-#define SET_RequestResidentProgramsNV(disp, fn) ((disp)->RequestResidentProgramsNV = fn)
-#define CALL_TrackMatrixNV(disp, parameters) (*((disp)->TrackMatrixNV)) parameters
-#define GET_TrackMatrixNV(disp) ((disp)->TrackMatrixNV)
-#define SET_TrackMatrixNV(disp, fn) ((disp)->TrackMatrixNV = fn)
-#define CALL_VertexAttrib1dNV(disp, parameters) (*((disp)->VertexAttrib1dNV)) parameters
-#define GET_VertexAttrib1dNV(disp) ((disp)->VertexAttrib1dNV)
-#define SET_VertexAttrib1dNV(disp, fn) ((disp)->VertexAttrib1dNV = fn)
-#define CALL_VertexAttrib1dvNV(disp, parameters) (*((disp)->VertexAttrib1dvNV)) parameters
-#define GET_VertexAttrib1dvNV(disp) ((disp)->VertexAttrib1dvNV)
-#define SET_VertexAttrib1dvNV(disp, fn) ((disp)->VertexAttrib1dvNV = fn)
-#define CALL_VertexAttrib1fNV(disp, parameters) (*((disp)->VertexAttrib1fNV)) parameters
-#define GET_VertexAttrib1fNV(disp) ((disp)->VertexAttrib1fNV)
-#define SET_VertexAttrib1fNV(disp, fn) ((disp)->VertexAttrib1fNV = fn)
-#define CALL_VertexAttrib1fvNV(disp, parameters) (*((disp)->VertexAttrib1fvNV)) parameters
-#define GET_VertexAttrib1fvNV(disp) ((disp)->VertexAttrib1fvNV)
-#define SET_VertexAttrib1fvNV(disp, fn) ((disp)->VertexAttrib1fvNV = fn)
-#define CALL_VertexAttrib1sNV(disp, parameters) (*((disp)->VertexAttrib1sNV)) parameters
-#define GET_VertexAttrib1sNV(disp) ((disp)->VertexAttrib1sNV)
-#define SET_VertexAttrib1sNV(disp, fn) ((disp)->VertexAttrib1sNV = fn)
-#define CALL_VertexAttrib1svNV(disp, parameters) (*((disp)->VertexAttrib1svNV)) parameters
-#define GET_VertexAttrib1svNV(disp) ((disp)->VertexAttrib1svNV)
-#define SET_VertexAttrib1svNV(disp, fn) ((disp)->VertexAttrib1svNV = fn)
-#define CALL_VertexAttrib2dNV(disp, parameters) (*((disp)->VertexAttrib2dNV)) parameters
-#define GET_VertexAttrib2dNV(disp) ((disp)->VertexAttrib2dNV)
-#define SET_VertexAttrib2dNV(disp, fn) ((disp)->VertexAttrib2dNV = fn)
-#define CALL_VertexAttrib2dvNV(disp, parameters) (*((disp)->VertexAttrib2dvNV)) parameters
-#define GET_VertexAttrib2dvNV(disp) ((disp)->VertexAttrib2dvNV)
-#define SET_VertexAttrib2dvNV(disp, fn) ((disp)->VertexAttrib2dvNV = fn)
-#define CALL_VertexAttrib2fNV(disp, parameters) (*((disp)->VertexAttrib2fNV)) parameters
-#define GET_VertexAttrib2fNV(disp) ((disp)->VertexAttrib2fNV)
-#define SET_VertexAttrib2fNV(disp, fn) ((disp)->VertexAttrib2fNV = fn)
-#define CALL_VertexAttrib2fvNV(disp, parameters) (*((disp)->VertexAttrib2fvNV)) parameters
-#define GET_VertexAttrib2fvNV(disp) ((disp)->VertexAttrib2fvNV)
-#define SET_VertexAttrib2fvNV(disp, fn) ((disp)->VertexAttrib2fvNV = fn)
-#define CALL_VertexAttrib2sNV(disp, parameters) (*((disp)->VertexAttrib2sNV)) parameters
-#define GET_VertexAttrib2sNV(disp) ((disp)->VertexAttrib2sNV)
-#define SET_VertexAttrib2sNV(disp, fn) ((disp)->VertexAttrib2sNV = fn)
-#define CALL_VertexAttrib2svNV(disp, parameters) (*((disp)->VertexAttrib2svNV)) parameters
-#define GET_VertexAttrib2svNV(disp) ((disp)->VertexAttrib2svNV)
-#define SET_VertexAttrib2svNV(disp, fn) ((disp)->VertexAttrib2svNV = fn)
-#define CALL_VertexAttrib3dNV(disp, parameters) (*((disp)->VertexAttrib3dNV)) parameters
-#define GET_VertexAttrib3dNV(disp) ((disp)->VertexAttrib3dNV)
-#define SET_VertexAttrib3dNV(disp, fn) ((disp)->VertexAttrib3dNV = fn)
-#define CALL_VertexAttrib3dvNV(disp, parameters) (*((disp)->VertexAttrib3dvNV)) parameters
-#define GET_VertexAttrib3dvNV(disp) ((disp)->VertexAttrib3dvNV)
-#define SET_VertexAttrib3dvNV(disp, fn) ((disp)->VertexAttrib3dvNV = fn)
-#define CALL_VertexAttrib3fNV(disp, parameters) (*((disp)->VertexAttrib3fNV)) parameters
-#define GET_VertexAttrib3fNV(disp) ((disp)->VertexAttrib3fNV)
-#define SET_VertexAttrib3fNV(disp, fn) ((disp)->VertexAttrib3fNV = fn)
-#define CALL_VertexAttrib3fvNV(disp, parameters) (*((disp)->VertexAttrib3fvNV)) parameters
-#define GET_VertexAttrib3fvNV(disp) ((disp)->VertexAttrib3fvNV)
-#define SET_VertexAttrib3fvNV(disp, fn) ((disp)->VertexAttrib3fvNV = fn)
-#define CALL_VertexAttrib3sNV(disp, parameters) (*((disp)->VertexAttrib3sNV)) parameters
-#define GET_VertexAttrib3sNV(disp) ((disp)->VertexAttrib3sNV)
-#define SET_VertexAttrib3sNV(disp, fn) ((disp)->VertexAttrib3sNV = fn)
-#define CALL_VertexAttrib3svNV(disp, parameters) (*((disp)->VertexAttrib3svNV)) parameters
-#define GET_VertexAttrib3svNV(disp) ((disp)->VertexAttrib3svNV)
-#define SET_VertexAttrib3svNV(disp, fn) ((disp)->VertexAttrib3svNV = fn)
-#define CALL_VertexAttrib4dNV(disp, parameters) (*((disp)->VertexAttrib4dNV)) parameters
-#define GET_VertexAttrib4dNV(disp) ((disp)->VertexAttrib4dNV)
-#define SET_VertexAttrib4dNV(disp, fn) ((disp)->VertexAttrib4dNV = fn)
-#define CALL_VertexAttrib4dvNV(disp, parameters) (*((disp)->VertexAttrib4dvNV)) parameters
-#define GET_VertexAttrib4dvNV(disp) ((disp)->VertexAttrib4dvNV)
-#define SET_VertexAttrib4dvNV(disp, fn) ((disp)->VertexAttrib4dvNV = fn)
-#define CALL_VertexAttrib4fNV(disp, parameters) (*((disp)->VertexAttrib4fNV)) parameters
-#define GET_VertexAttrib4fNV(disp) ((disp)->VertexAttrib4fNV)
-#define SET_VertexAttrib4fNV(disp, fn) ((disp)->VertexAttrib4fNV = fn)
-#define CALL_VertexAttrib4fvNV(disp, parameters) (*((disp)->VertexAttrib4fvNV)) parameters
-#define GET_VertexAttrib4fvNV(disp) ((disp)->VertexAttrib4fvNV)
-#define SET_VertexAttrib4fvNV(disp, fn) ((disp)->VertexAttrib4fvNV = fn)
-#define CALL_VertexAttrib4sNV(disp, parameters) (*((disp)->VertexAttrib4sNV)) parameters
-#define GET_VertexAttrib4sNV(disp) ((disp)->VertexAttrib4sNV)
-#define SET_VertexAttrib4sNV(disp, fn) ((disp)->VertexAttrib4sNV = fn)
-#define CALL_VertexAttrib4svNV(disp, parameters) (*((disp)->VertexAttrib4svNV)) parameters
-#define GET_VertexAttrib4svNV(disp) ((disp)->VertexAttrib4svNV)
-#define SET_VertexAttrib4svNV(disp, fn) ((disp)->VertexAttrib4svNV = fn)
-#define CALL_VertexAttrib4ubNV(disp, parameters) (*((disp)->VertexAttrib4ubNV)) parameters
-#define GET_VertexAttrib4ubNV(disp) ((disp)->VertexAttrib4ubNV)
-#define SET_VertexAttrib4ubNV(disp, fn) ((disp)->VertexAttrib4ubNV = fn)
-#define CALL_VertexAttrib4ubvNV(disp, parameters) (*((disp)->VertexAttrib4ubvNV)) parameters
-#define GET_VertexAttrib4ubvNV(disp) ((disp)->VertexAttrib4ubvNV)
-#define SET_VertexAttrib4ubvNV(disp, fn) ((disp)->VertexAttrib4ubvNV = fn)
-#define CALL_VertexAttribPointerNV(disp, parameters) (*((disp)->VertexAttribPointerNV)) parameters
-#define GET_VertexAttribPointerNV(disp) ((disp)->VertexAttribPointerNV)
-#define SET_VertexAttribPointerNV(disp, fn) ((disp)->VertexAttribPointerNV = fn)
-#define CALL_VertexAttribs1dvNV(disp, parameters) (*((disp)->VertexAttribs1dvNV)) parameters
-#define GET_VertexAttribs1dvNV(disp) ((disp)->VertexAttribs1dvNV)
-#define SET_VertexAttribs1dvNV(disp, fn) ((disp)->VertexAttribs1dvNV = fn)
-#define CALL_VertexAttribs1fvNV(disp, parameters) (*((disp)->VertexAttribs1fvNV)) parameters
-#define GET_VertexAttribs1fvNV(disp) ((disp)->VertexAttribs1fvNV)
-#define SET_VertexAttribs1fvNV(disp, fn) ((disp)->VertexAttribs1fvNV = fn)
-#define CALL_VertexAttribs1svNV(disp, parameters) (*((disp)->VertexAttribs1svNV)) parameters
-#define GET_VertexAttribs1svNV(disp) ((disp)->VertexAttribs1svNV)
-#define SET_VertexAttribs1svNV(disp, fn) ((disp)->VertexAttribs1svNV = fn)
-#define CALL_VertexAttribs2dvNV(disp, parameters) (*((disp)->VertexAttribs2dvNV)) parameters
-#define GET_VertexAttribs2dvNV(disp) ((disp)->VertexAttribs2dvNV)
-#define SET_VertexAttribs2dvNV(disp, fn) ((disp)->VertexAttribs2dvNV = fn)
-#define CALL_VertexAttribs2fvNV(disp, parameters) (*((disp)->VertexAttribs2fvNV)) parameters
-#define GET_VertexAttribs2fvNV(disp) ((disp)->VertexAttribs2fvNV)
-#define SET_VertexAttribs2fvNV(disp, fn) ((disp)->VertexAttribs2fvNV = fn)
-#define CALL_VertexAttribs2svNV(disp, parameters) (*((disp)->VertexAttribs2svNV)) parameters
-#define GET_VertexAttribs2svNV(disp) ((disp)->VertexAttribs2svNV)
-#define SET_VertexAttribs2svNV(disp, fn) ((disp)->VertexAttribs2svNV = fn)
-#define CALL_VertexAttribs3dvNV(disp, parameters) (*((disp)->VertexAttribs3dvNV)) parameters
-#define GET_VertexAttribs3dvNV(disp) ((disp)->VertexAttribs3dvNV)
-#define SET_VertexAttribs3dvNV(disp, fn) ((disp)->VertexAttribs3dvNV = fn)
-#define CALL_VertexAttribs3fvNV(disp, parameters) (*((disp)->VertexAttribs3fvNV)) parameters
-#define GET_VertexAttribs3fvNV(disp) ((disp)->VertexAttribs3fvNV)
-#define SET_VertexAttribs3fvNV(disp, fn) ((disp)->VertexAttribs3fvNV = fn)
-#define CALL_VertexAttribs3svNV(disp, parameters) (*((disp)->VertexAttribs3svNV)) parameters
-#define GET_VertexAttribs3svNV(disp) ((disp)->VertexAttribs3svNV)
-#define SET_VertexAttribs3svNV(disp, fn) ((disp)->VertexAttribs3svNV = fn)
-#define CALL_VertexAttribs4dvNV(disp, parameters) (*((disp)->VertexAttribs4dvNV)) parameters
-#define GET_VertexAttribs4dvNV(disp) ((disp)->VertexAttribs4dvNV)
-#define SET_VertexAttribs4dvNV(disp, fn) ((disp)->VertexAttribs4dvNV = fn)
-#define CALL_VertexAttribs4fvNV(disp, parameters) (*((disp)->VertexAttribs4fvNV)) parameters
-#define GET_VertexAttribs4fvNV(disp) ((disp)->VertexAttribs4fvNV)
-#define SET_VertexAttribs4fvNV(disp, fn) ((disp)->VertexAttribs4fvNV = fn)
-#define CALL_VertexAttribs4svNV(disp, parameters) (*((disp)->VertexAttribs4svNV)) parameters
-#define GET_VertexAttribs4svNV(disp) ((disp)->VertexAttribs4svNV)
-#define SET_VertexAttribs4svNV(disp, fn) ((disp)->VertexAttribs4svNV = fn)
-#define CALL_VertexAttribs4ubvNV(disp, parameters) (*((disp)->VertexAttribs4ubvNV)) parameters
-#define GET_VertexAttribs4ubvNV(disp) ((disp)->VertexAttribs4ubvNV)
-#define SET_VertexAttribs4ubvNV(disp, fn) ((disp)->VertexAttribs4ubvNV = fn)
-#define CALL_GetTexBumpParameterfvATI(disp, parameters) (*((disp)->GetTexBumpParameterfvATI)) parameters
-#define GET_GetTexBumpParameterfvATI(disp) ((disp)->GetTexBumpParameterfvATI)
-#define SET_GetTexBumpParameterfvATI(disp, fn) ((disp)->GetTexBumpParameterfvATI = fn)
-#define CALL_GetTexBumpParameterivATI(disp, parameters) (*((disp)->GetTexBumpParameterivATI)) parameters
-#define GET_GetTexBumpParameterivATI(disp) ((disp)->GetTexBumpParameterivATI)
-#define SET_GetTexBumpParameterivATI(disp, fn) ((disp)->GetTexBumpParameterivATI = fn)
-#define CALL_TexBumpParameterfvATI(disp, parameters) (*((disp)->TexBumpParameterfvATI)) parameters
-#define GET_TexBumpParameterfvATI(disp) ((disp)->TexBumpParameterfvATI)
-#define SET_TexBumpParameterfvATI(disp, fn) ((disp)->TexBumpParameterfvATI = fn)
-#define CALL_TexBumpParameterivATI(disp, parameters) (*((disp)->TexBumpParameterivATI)) parameters
-#define GET_TexBumpParameterivATI(disp) ((disp)->TexBumpParameterivATI)
-#define SET_TexBumpParameterivATI(disp, fn) ((disp)->TexBumpParameterivATI = fn)
-#define CALL_AlphaFragmentOp1ATI(disp, parameters) (*((disp)->AlphaFragmentOp1ATI)) parameters
-#define GET_AlphaFragmentOp1ATI(disp) ((disp)->AlphaFragmentOp1ATI)
-#define SET_AlphaFragmentOp1ATI(disp, fn) ((disp)->AlphaFragmentOp1ATI = fn)
-#define CALL_AlphaFragmentOp2ATI(disp, parameters) (*((disp)->AlphaFragmentOp2ATI)) parameters
-#define GET_AlphaFragmentOp2ATI(disp) ((disp)->AlphaFragmentOp2ATI)
-#define SET_AlphaFragmentOp2ATI(disp, fn) ((disp)->AlphaFragmentOp2ATI = fn)
-#define CALL_AlphaFragmentOp3ATI(disp, parameters) (*((disp)->AlphaFragmentOp3ATI)) parameters
-#define GET_AlphaFragmentOp3ATI(disp) ((disp)->AlphaFragmentOp3ATI)
-#define SET_AlphaFragmentOp3ATI(disp, fn) ((disp)->AlphaFragmentOp3ATI = fn)
-#define CALL_BeginFragmentShaderATI(disp, parameters) (*((disp)->BeginFragmentShaderATI)) parameters
-#define GET_BeginFragmentShaderATI(disp) ((disp)->BeginFragmentShaderATI)
-#define SET_BeginFragmentShaderATI(disp, fn) ((disp)->BeginFragmentShaderATI = fn)
-#define CALL_BindFragmentShaderATI(disp, parameters) (*((disp)->BindFragmentShaderATI)) parameters
-#define GET_BindFragmentShaderATI(disp) ((disp)->BindFragmentShaderATI)
-#define SET_BindFragmentShaderATI(disp, fn) ((disp)->BindFragmentShaderATI = fn)
-#define CALL_ColorFragmentOp1ATI(disp, parameters) (*((disp)->ColorFragmentOp1ATI)) parameters
-#define GET_ColorFragmentOp1ATI(disp) ((disp)->ColorFragmentOp1ATI)
-#define SET_ColorFragmentOp1ATI(disp, fn) ((disp)->ColorFragmentOp1ATI = fn)
-#define CALL_ColorFragmentOp2ATI(disp, parameters) (*((disp)->ColorFragmentOp2ATI)) parameters
-#define GET_ColorFragmentOp2ATI(disp) ((disp)->ColorFragmentOp2ATI)
-#define SET_ColorFragmentOp2ATI(disp, fn) ((disp)->ColorFragmentOp2ATI = fn)
-#define CALL_ColorFragmentOp3ATI(disp, parameters) (*((disp)->ColorFragmentOp3ATI)) parameters
-#define GET_ColorFragmentOp3ATI(disp) ((disp)->ColorFragmentOp3ATI)
-#define SET_ColorFragmentOp3ATI(disp, fn) ((disp)->ColorFragmentOp3ATI = fn)
-#define CALL_DeleteFragmentShaderATI(disp, parameters) (*((disp)->DeleteFragmentShaderATI)) parameters
-#define GET_DeleteFragmentShaderATI(disp) ((disp)->DeleteFragmentShaderATI)
-#define SET_DeleteFragmentShaderATI(disp, fn) ((disp)->DeleteFragmentShaderATI = fn)
-#define CALL_EndFragmentShaderATI(disp, parameters) (*((disp)->EndFragmentShaderATI)) parameters
-#define GET_EndFragmentShaderATI(disp) ((disp)->EndFragmentShaderATI)
-#define SET_EndFragmentShaderATI(disp, fn) ((disp)->EndFragmentShaderATI = fn)
-#define CALL_GenFragmentShadersATI(disp, parameters) (*((disp)->GenFragmentShadersATI)) parameters
-#define GET_GenFragmentShadersATI(disp) ((disp)->GenFragmentShadersATI)
-#define SET_GenFragmentShadersATI(disp, fn) ((disp)->GenFragmentShadersATI = fn)
-#define CALL_PassTexCoordATI(disp, parameters) (*((disp)->PassTexCoordATI)) parameters
-#define GET_PassTexCoordATI(disp) ((disp)->PassTexCoordATI)
-#define SET_PassTexCoordATI(disp, fn) ((disp)->PassTexCoordATI = fn)
-#define CALL_SampleMapATI(disp, parameters) (*((disp)->SampleMapATI)) parameters
-#define GET_SampleMapATI(disp) ((disp)->SampleMapATI)
-#define SET_SampleMapATI(disp, fn) ((disp)->SampleMapATI = fn)
-#define CALL_SetFragmentShaderConstantATI(disp, parameters) (*((disp)->SetFragmentShaderConstantATI)) parameters
-#define GET_SetFragmentShaderConstantATI(disp) ((disp)->SetFragmentShaderConstantATI)
-#define SET_SetFragmentShaderConstantATI(disp, fn) ((disp)->SetFragmentShaderConstantATI = fn)
-#define CALL_PointParameteriNV(disp, parameters) (*((disp)->PointParameteriNV)) parameters
-#define GET_PointParameteriNV(disp) ((disp)->PointParameteriNV)
-#define SET_PointParameteriNV(disp, fn) ((disp)->PointParameteriNV = fn)
-#define CALL_PointParameterivNV(disp, parameters) (*((disp)->PointParameterivNV)) parameters
-#define GET_PointParameterivNV(disp) ((disp)->PointParameterivNV)
-#define SET_PointParameterivNV(disp, fn) ((disp)->PointParameterivNV = fn)
-#define CALL_ActiveStencilFaceEXT(disp, parameters) (*((disp)->ActiveStencilFaceEXT)) parameters
-#define GET_ActiveStencilFaceEXT(disp) ((disp)->ActiveStencilFaceEXT)
-#define SET_ActiveStencilFaceEXT(disp, fn) ((disp)->ActiveStencilFaceEXT = fn)
-#define CALL_BindVertexArrayAPPLE(disp, parameters) (*((disp)->BindVertexArrayAPPLE)) parameters
-#define GET_BindVertexArrayAPPLE(disp) ((disp)->BindVertexArrayAPPLE)
-#define SET_BindVertexArrayAPPLE(disp, fn) ((disp)->BindVertexArrayAPPLE = fn)
-#define CALL_DeleteVertexArraysAPPLE(disp, parameters) (*((disp)->DeleteVertexArraysAPPLE)) parameters
-#define GET_DeleteVertexArraysAPPLE(disp) ((disp)->DeleteVertexArraysAPPLE)
-#define SET_DeleteVertexArraysAPPLE(disp, fn) ((disp)->DeleteVertexArraysAPPLE = fn)
-#define CALL_GenVertexArraysAPPLE(disp, parameters) (*((disp)->GenVertexArraysAPPLE)) parameters
-#define GET_GenVertexArraysAPPLE(disp) ((disp)->GenVertexArraysAPPLE)
-#define SET_GenVertexArraysAPPLE(disp, fn) ((disp)->GenVertexArraysAPPLE = fn)
-#define CALL_IsVertexArrayAPPLE(disp, parameters) (*((disp)->IsVertexArrayAPPLE)) parameters
-#define GET_IsVertexArrayAPPLE(disp) ((disp)->IsVertexArrayAPPLE)
-#define SET_IsVertexArrayAPPLE(disp, fn) ((disp)->IsVertexArrayAPPLE = fn)
-#define CALL_GetProgramNamedParameterdvNV(disp, parameters) (*((disp)->GetProgramNamedParameterdvNV)) parameters
-#define GET_GetProgramNamedParameterdvNV(disp) ((disp)->GetProgramNamedParameterdvNV)
-#define SET_GetProgramNamedParameterdvNV(disp, fn) ((disp)->GetProgramNamedParameterdvNV = fn)
-#define CALL_GetProgramNamedParameterfvNV(disp, parameters) (*((disp)->GetProgramNamedParameterfvNV)) parameters
-#define GET_GetProgramNamedParameterfvNV(disp) ((disp)->GetProgramNamedParameterfvNV)
-#define SET_GetProgramNamedParameterfvNV(disp, fn) ((disp)->GetProgramNamedParameterfvNV = fn)
-#define CALL_ProgramNamedParameter4dNV(disp, parameters) (*((disp)->ProgramNamedParameter4dNV)) parameters
-#define GET_ProgramNamedParameter4dNV(disp) ((disp)->ProgramNamedParameter4dNV)
-#define SET_ProgramNamedParameter4dNV(disp, fn) ((disp)->ProgramNamedParameter4dNV = fn)
-#define CALL_ProgramNamedParameter4dvNV(disp, parameters) (*((disp)->ProgramNamedParameter4dvNV)) parameters
-#define GET_ProgramNamedParameter4dvNV(disp) ((disp)->ProgramNamedParameter4dvNV)
-#define SET_ProgramNamedParameter4dvNV(disp, fn) ((disp)->ProgramNamedParameter4dvNV = fn)
-#define CALL_ProgramNamedParameter4fNV(disp, parameters) (*((disp)->ProgramNamedParameter4fNV)) parameters
-#define GET_ProgramNamedParameter4fNV(disp) ((disp)->ProgramNamedParameter4fNV)
-#define SET_ProgramNamedParameter4fNV(disp, fn) ((disp)->ProgramNamedParameter4fNV = fn)
-#define CALL_ProgramNamedParameter4fvNV(disp, parameters) (*((disp)->ProgramNamedParameter4fvNV)) parameters
-#define GET_ProgramNamedParameter4fvNV(disp) ((disp)->ProgramNamedParameter4fvNV)
-#define SET_ProgramNamedParameter4fvNV(disp, fn) ((disp)->ProgramNamedParameter4fvNV = fn)
-#define CALL_DepthBoundsEXT(disp, parameters) (*((disp)->DepthBoundsEXT)) parameters
-#define GET_DepthBoundsEXT(disp) ((disp)->DepthBoundsEXT)
-#define SET_DepthBoundsEXT(disp, fn) ((disp)->DepthBoundsEXT = fn)
-#define CALL_BlendEquationSeparateEXT(disp, parameters) (*((disp)->BlendEquationSeparateEXT)) parameters
-#define GET_BlendEquationSeparateEXT(disp) ((disp)->BlendEquationSeparateEXT)
-#define SET_BlendEquationSeparateEXT(disp, fn) ((disp)->BlendEquationSeparateEXT = fn)
-#define CALL_BindFramebufferEXT(disp, parameters) (*((disp)->BindFramebufferEXT)) parameters
-#define GET_BindFramebufferEXT(disp) ((disp)->BindFramebufferEXT)
-#define SET_BindFramebufferEXT(disp, fn) ((disp)->BindFramebufferEXT = fn)
-#define CALL_BindRenderbufferEXT(disp, parameters) (*((disp)->BindRenderbufferEXT)) parameters
-#define GET_BindRenderbufferEXT(disp) ((disp)->BindRenderbufferEXT)
-#define SET_BindRenderbufferEXT(disp, fn) ((disp)->BindRenderbufferEXT = fn)
-#define CALL_CheckFramebufferStatusEXT(disp, parameters) (*((disp)->CheckFramebufferStatusEXT)) parameters
-#define GET_CheckFramebufferStatusEXT(disp) ((disp)->CheckFramebufferStatusEXT)
-#define SET_CheckFramebufferStatusEXT(disp, fn) ((disp)->CheckFramebufferStatusEXT = fn)
-#define CALL_DeleteFramebuffersEXT(disp, parameters) (*((disp)->DeleteFramebuffersEXT)) parameters
-#define GET_DeleteFramebuffersEXT(disp) ((disp)->DeleteFramebuffersEXT)
-#define SET_DeleteFramebuffersEXT(disp, fn) ((disp)->DeleteFramebuffersEXT = fn)
-#define CALL_DeleteRenderbuffersEXT(disp, parameters) (*((disp)->DeleteRenderbuffersEXT)) parameters
-#define GET_DeleteRenderbuffersEXT(disp) ((disp)->DeleteRenderbuffersEXT)
-#define SET_DeleteRenderbuffersEXT(disp, fn) ((disp)->DeleteRenderbuffersEXT = fn)
-#define CALL_FramebufferRenderbufferEXT(disp, parameters) (*((disp)->FramebufferRenderbufferEXT)) parameters
-#define GET_FramebufferRenderbufferEXT(disp) ((disp)->FramebufferRenderbufferEXT)
-#define SET_FramebufferRenderbufferEXT(disp, fn) ((disp)->FramebufferRenderbufferEXT = fn)
-#define CALL_FramebufferTexture1DEXT(disp, parameters) (*((disp)->FramebufferTexture1DEXT)) parameters
-#define GET_FramebufferTexture1DEXT(disp) ((disp)->FramebufferTexture1DEXT)
-#define SET_FramebufferTexture1DEXT(disp, fn) ((disp)->FramebufferTexture1DEXT = fn)
-#define CALL_FramebufferTexture2DEXT(disp, parameters) (*((disp)->FramebufferTexture2DEXT)) parameters
-#define GET_FramebufferTexture2DEXT(disp) ((disp)->FramebufferTexture2DEXT)
-#define SET_FramebufferTexture2DEXT(disp, fn) ((disp)->FramebufferTexture2DEXT = fn)
-#define CALL_FramebufferTexture3DEXT(disp, parameters) (*((disp)->FramebufferTexture3DEXT)) parameters
-#define GET_FramebufferTexture3DEXT(disp) ((disp)->FramebufferTexture3DEXT)
-#define SET_FramebufferTexture3DEXT(disp, fn) ((disp)->FramebufferTexture3DEXT = fn)
-#define CALL_GenFramebuffersEXT(disp, parameters) (*((disp)->GenFramebuffersEXT)) parameters
-#define GET_GenFramebuffersEXT(disp) ((disp)->GenFramebuffersEXT)
-#define SET_GenFramebuffersEXT(disp, fn) ((disp)->GenFramebuffersEXT = fn)
-#define CALL_GenRenderbuffersEXT(disp, parameters) (*((disp)->GenRenderbuffersEXT)) parameters
-#define GET_GenRenderbuffersEXT(disp) ((disp)->GenRenderbuffersEXT)
-#define SET_GenRenderbuffersEXT(disp, fn) ((disp)->GenRenderbuffersEXT = fn)
-#define CALL_GenerateMipmapEXT(disp, parameters) (*((disp)->GenerateMipmapEXT)) parameters
-#define GET_GenerateMipmapEXT(disp) ((disp)->GenerateMipmapEXT)
-#define SET_GenerateMipmapEXT(disp, fn) ((disp)->GenerateMipmapEXT = fn)
-#define CALL_GetFramebufferAttachmentParameterivEXT(disp, parameters) (*((disp)->GetFramebufferAttachmentParameterivEXT)) parameters
-#define GET_GetFramebufferAttachmentParameterivEXT(disp) ((disp)->GetFramebufferAttachmentParameterivEXT)
-#define SET_GetFramebufferAttachmentParameterivEXT(disp, fn) ((disp)->GetFramebufferAttachmentParameterivEXT = fn)
-#define CALL_GetRenderbufferParameterivEXT(disp, parameters) (*((disp)->GetRenderbufferParameterivEXT)) parameters
-#define GET_GetRenderbufferParameterivEXT(disp) ((disp)->GetRenderbufferParameterivEXT)
-#define SET_GetRenderbufferParameterivEXT(disp, fn) ((disp)->GetRenderbufferParameterivEXT = fn)
-#define CALL_IsFramebufferEXT(disp, parameters) (*((disp)->IsFramebufferEXT)) parameters
-#define GET_IsFramebufferEXT(disp) ((disp)->IsFramebufferEXT)
-#define SET_IsFramebufferEXT(disp, fn) ((disp)->IsFramebufferEXT = fn)
-#define CALL_IsRenderbufferEXT(disp, parameters) (*((disp)->IsRenderbufferEXT)) parameters
-#define GET_IsRenderbufferEXT(disp) ((disp)->IsRenderbufferEXT)
-#define SET_IsRenderbufferEXT(disp, fn) ((disp)->IsRenderbufferEXT = fn)
-#define CALL_RenderbufferStorageEXT(disp, parameters) (*((disp)->RenderbufferStorageEXT)) parameters
-#define GET_RenderbufferStorageEXT(disp) ((disp)->RenderbufferStorageEXT)
-#define SET_RenderbufferStorageEXT(disp, fn) ((disp)->RenderbufferStorageEXT = fn)
-#define CALL_BlitFramebufferEXT(disp, parameters) (*((disp)->BlitFramebufferEXT)) parameters
-#define GET_BlitFramebufferEXT(disp) ((disp)->BlitFramebufferEXT)
-#define SET_BlitFramebufferEXT(disp, fn) ((disp)->BlitFramebufferEXT = fn)
-#define CALL_BufferParameteriAPPLE(disp, parameters) (*((disp)->BufferParameteriAPPLE)) parameters
-#define GET_BufferParameteriAPPLE(disp) ((disp)->BufferParameteriAPPLE)
-#define SET_BufferParameteriAPPLE(disp, fn) ((disp)->BufferParameteriAPPLE = fn)
-#define CALL_FlushMappedBufferRangeAPPLE(disp, parameters) (*((disp)->FlushMappedBufferRangeAPPLE)) parameters
-#define GET_FlushMappedBufferRangeAPPLE(disp) ((disp)->FlushMappedBufferRangeAPPLE)
-#define SET_FlushMappedBufferRangeAPPLE(disp, fn) ((disp)->FlushMappedBufferRangeAPPLE = fn)
-#define CALL_FramebufferTextureLayerEXT(disp, parameters) (*((disp)->FramebufferTextureLayerEXT)) parameters
-#define GET_FramebufferTextureLayerEXT(disp) ((disp)->FramebufferTextureLayerEXT)
-#define SET_FramebufferTextureLayerEXT(disp, fn) ((disp)->FramebufferTextureLayerEXT = fn)
-#define CALL_ColorMaskIndexedEXT(disp, parameters) (*((disp)->ColorMaskIndexedEXT)) parameters
-#define GET_ColorMaskIndexedEXT(disp) ((disp)->ColorMaskIndexedEXT)
-#define SET_ColorMaskIndexedEXT(disp, fn) ((disp)->ColorMaskIndexedEXT = fn)
-#define CALL_DisableIndexedEXT(disp, parameters) (*((disp)->DisableIndexedEXT)) parameters
-#define GET_DisableIndexedEXT(disp) ((disp)->DisableIndexedEXT)
-#define SET_DisableIndexedEXT(disp, fn) ((disp)->DisableIndexedEXT = fn)
-#define CALL_EnableIndexedEXT(disp, parameters) (*((disp)->EnableIndexedEXT)) parameters
-#define GET_EnableIndexedEXT(disp) ((disp)->EnableIndexedEXT)
-#define SET_EnableIndexedEXT(disp, fn) ((disp)->EnableIndexedEXT = fn)
-#define CALL_GetBooleanIndexedvEXT(disp, parameters) (*((disp)->GetBooleanIndexedvEXT)) parameters
-#define GET_GetBooleanIndexedvEXT(disp) ((disp)->GetBooleanIndexedvEXT)
-#define SET_GetBooleanIndexedvEXT(disp, fn) ((disp)->GetBooleanIndexedvEXT = fn)
-#define CALL_GetIntegerIndexedvEXT(disp, parameters) (*((disp)->GetIntegerIndexedvEXT)) parameters
-#define GET_GetIntegerIndexedvEXT(disp) ((disp)->GetIntegerIndexedvEXT)
-#define SET_GetIntegerIndexedvEXT(disp, fn) ((disp)->GetIntegerIndexedvEXT = fn)
-#define CALL_IsEnabledIndexedEXT(disp, parameters) (*((disp)->IsEnabledIndexedEXT)) parameters
-#define GET_IsEnabledIndexedEXT(disp) ((disp)->IsEnabledIndexedEXT)
-#define SET_IsEnabledIndexedEXT(disp, fn) ((disp)->IsEnabledIndexedEXT = fn)
-#define CALL_BeginConditionalRenderNV(disp, parameters) (*((disp)->BeginConditionalRenderNV)) parameters
-#define GET_BeginConditionalRenderNV(disp) ((disp)->BeginConditionalRenderNV)
-#define SET_BeginConditionalRenderNV(disp, fn) ((disp)->BeginConditionalRenderNV = fn)
-#define CALL_EndConditionalRenderNV(disp, parameters) (*((disp)->EndConditionalRenderNV)) parameters
-#define GET_EndConditionalRenderNV(disp) ((disp)->EndConditionalRenderNV)
-#define SET_EndConditionalRenderNV(disp, fn) ((disp)->EndConditionalRenderNV = fn)
-#define CALL_BeginTransformFeedbackEXT(disp, parameters) (*((disp)->BeginTransformFeedbackEXT)) parameters
-#define GET_BeginTransformFeedbackEXT(disp) ((disp)->BeginTransformFeedbackEXT)
-#define SET_BeginTransformFeedbackEXT(disp, fn) ((disp)->BeginTransformFeedbackEXT = fn)
-#define CALL_BindBufferBaseEXT(disp, parameters) (*((disp)->BindBufferBaseEXT)) parameters
-#define GET_BindBufferBaseEXT(disp) ((disp)->BindBufferBaseEXT)
-#define SET_BindBufferBaseEXT(disp, fn) ((disp)->BindBufferBaseEXT = fn)
-#define CALL_BindBufferOffsetEXT(disp, parameters) (*((disp)->BindBufferOffsetEXT)) parameters
-#define GET_BindBufferOffsetEXT(disp) ((disp)->BindBufferOffsetEXT)
-#define SET_BindBufferOffsetEXT(disp, fn) ((disp)->BindBufferOffsetEXT = fn)
-#define CALL_BindBufferRangeEXT(disp, parameters) (*((disp)->BindBufferRangeEXT)) parameters
-#define GET_BindBufferRangeEXT(disp) ((disp)->BindBufferRangeEXT)
-#define SET_BindBufferRangeEXT(disp, fn) ((disp)->BindBufferRangeEXT = fn)
-#define CALL_EndTransformFeedbackEXT(disp, parameters) (*((disp)->EndTransformFeedbackEXT)) parameters
-#define GET_EndTransformFeedbackEXT(disp) ((disp)->EndTransformFeedbackEXT)
-#define SET_EndTransformFeedbackEXT(disp, fn) ((disp)->EndTransformFeedbackEXT = fn)
-#define CALL_GetTransformFeedbackVaryingEXT(disp, parameters) (*((disp)->GetTransformFeedbackVaryingEXT)) parameters
-#define GET_GetTransformFeedbackVaryingEXT(disp) ((disp)->GetTransformFeedbackVaryingEXT)
-#define SET_GetTransformFeedbackVaryingEXT(disp, fn) ((disp)->GetTransformFeedbackVaryingEXT = fn)
-#define CALL_TransformFeedbackVaryingsEXT(disp, parameters) (*((disp)->TransformFeedbackVaryingsEXT)) parameters
-#define GET_TransformFeedbackVaryingsEXT(disp) ((disp)->TransformFeedbackVaryingsEXT)
-#define SET_TransformFeedbackVaryingsEXT(disp, fn) ((disp)->TransformFeedbackVaryingsEXT = fn)
-#define CALL_ProvokingVertexEXT(disp, parameters) (*((disp)->ProvokingVertexEXT)) parameters
-#define GET_ProvokingVertexEXT(disp) ((disp)->ProvokingVertexEXT)
-#define SET_ProvokingVertexEXT(disp, fn) ((disp)->ProvokingVertexEXT = fn)
-#define CALL_GetTexParameterPointervAPPLE(disp, parameters) (*((disp)->GetTexParameterPointervAPPLE)) parameters
-#define GET_GetTexParameterPointervAPPLE(disp) ((disp)->GetTexParameterPointervAPPLE)
-#define SET_GetTexParameterPointervAPPLE(disp, fn) ((disp)->GetTexParameterPointervAPPLE = fn)
-#define CALL_TextureRangeAPPLE(disp, parameters) (*((disp)->TextureRangeAPPLE)) parameters
-#define GET_TextureRangeAPPLE(disp) ((disp)->TextureRangeAPPLE)
-#define SET_TextureRangeAPPLE(disp, fn) ((disp)->TextureRangeAPPLE = fn)
-#define CALL_GetObjectParameterivAPPLE(disp, parameters) (*((disp)->GetObjectParameterivAPPLE)) parameters
-#define GET_GetObjectParameterivAPPLE(disp) ((disp)->GetObjectParameterivAPPLE)
-#define SET_GetObjectParameterivAPPLE(disp, fn) ((disp)->GetObjectParameterivAPPLE = fn)
-#define CALL_ObjectPurgeableAPPLE(disp, parameters) (*((disp)->ObjectPurgeableAPPLE)) parameters
-#define GET_ObjectPurgeableAPPLE(disp) ((disp)->ObjectPurgeableAPPLE)
-#define SET_ObjectPurgeableAPPLE(disp, fn) ((disp)->ObjectPurgeableAPPLE = fn)
-#define CALL_ObjectUnpurgeableAPPLE(disp, parameters) (*((disp)->ObjectUnpurgeableAPPLE)) parameters
-#define GET_ObjectUnpurgeableAPPLE(disp) ((disp)->ObjectUnpurgeableAPPLE)
-#define SET_ObjectUnpurgeableAPPLE(disp, fn) ((disp)->ObjectUnpurgeableAPPLE = fn)
-#define CALL_StencilFuncSeparateATI(disp, parameters) (*((disp)->StencilFuncSeparateATI)) parameters
-#define GET_StencilFuncSeparateATI(disp) ((disp)->StencilFuncSeparateATI)
-#define SET_StencilFuncSeparateATI(disp, fn) ((disp)->StencilFuncSeparateATI = fn)
-#define CALL_ProgramEnvParameters4fvEXT(disp, parameters) (*((disp)->ProgramEnvParameters4fvEXT)) parameters
-#define GET_ProgramEnvParameters4fvEXT(disp) ((disp)->ProgramEnvParameters4fvEXT)
-#define SET_ProgramEnvParameters4fvEXT(disp, fn) ((disp)->ProgramEnvParameters4fvEXT = fn)
-#define CALL_ProgramLocalParameters4fvEXT(disp, parameters) (*((disp)->ProgramLocalParameters4fvEXT)) parameters
-#define GET_ProgramLocalParameters4fvEXT(disp) ((disp)->ProgramLocalParameters4fvEXT)
-#define SET_ProgramLocalParameters4fvEXT(disp, fn) ((disp)->ProgramLocalParameters4fvEXT = fn)
-#define CALL_GetQueryObjecti64vEXT(disp, parameters) (*((disp)->GetQueryObjecti64vEXT)) parameters
-#define GET_GetQueryObjecti64vEXT(disp) ((disp)->GetQueryObjecti64vEXT)
-#define SET_GetQueryObjecti64vEXT(disp, fn) ((disp)->GetQueryObjecti64vEXT = fn)
-#define CALL_GetQueryObjectui64vEXT(disp, parameters) (*((disp)->GetQueryObjectui64vEXT)) parameters
-#define GET_GetQueryObjectui64vEXT(disp) ((disp)->GetQueryObjectui64vEXT)
-#define SET_GetQueryObjectui64vEXT(disp, fn) ((disp)->GetQueryObjectui64vEXT = fn)
-#define CALL_EGLImageTargetRenderbufferStorageOES(disp, parameters) (*((disp)->EGLImageTargetRenderbufferStorageOES)) parameters
-#define GET_EGLImageTargetRenderbufferStorageOES(disp) ((disp)->EGLImageTargetRenderbufferStorageOES)
-#define SET_EGLImageTargetRenderbufferStorageOES(disp, fn) ((disp)->EGLImageTargetRenderbufferStorageOES = fn)
-#define CALL_EGLImageTargetTexture2DOES(disp, parameters) (*((disp)->EGLImageTargetTexture2DOES)) parameters
-#define GET_EGLImageTargetTexture2DOES(disp) ((disp)->EGLImageTargetTexture2DOES)
-#define SET_EGLImageTargetTexture2DOES(disp, fn) ((disp)->EGLImageTargetTexture2DOES = fn)
-
-#else
-
-#define driDispatchRemapTable_size 409
-extern int driDispatchRemapTable[ driDispatchRemapTable_size ];
-
-#define AttachShader_remap_index 0
-#define CreateProgram_remap_index 1
-#define CreateShader_remap_index 2
-#define DeleteProgram_remap_index 3
-#define DeleteShader_remap_index 4
-#define DetachShader_remap_index 5
-#define GetAttachedShaders_remap_index 6
-#define GetProgramInfoLog_remap_index 7
-#define GetProgramiv_remap_index 8
-#define GetShaderInfoLog_remap_index 9
-#define GetShaderiv_remap_index 10
-#define IsProgram_remap_index 11
-#define IsShader_remap_index 12
-#define StencilFuncSeparate_remap_index 13
-#define StencilMaskSeparate_remap_index 14
-#define StencilOpSeparate_remap_index 15
-#define UniformMatrix2x3fv_remap_index 16
-#define UniformMatrix2x4fv_remap_index 17
-#define UniformMatrix3x2fv_remap_index 18
-#define UniformMatrix3x4fv_remap_index 19
-#define UniformMatrix4x2fv_remap_index 20
-#define UniformMatrix4x3fv_remap_index 21
-#define DrawArraysInstanced_remap_index 22
-#define DrawElementsInstanced_remap_index 23
-#define LoadTransposeMatrixdARB_remap_index 24
-#define LoadTransposeMatrixfARB_remap_index 25
-#define MultTransposeMatrixdARB_remap_index 26
-#define MultTransposeMatrixfARB_remap_index 27
-#define SampleCoverageARB_remap_index 28
-#define CompressedTexImage1DARB_remap_index 29
-#define CompressedTexImage2DARB_remap_index 30
-#define CompressedTexImage3DARB_remap_index 31
-#define CompressedTexSubImage1DARB_remap_index 32
-#define CompressedTexSubImage2DARB_remap_index 33
-#define CompressedTexSubImage3DARB_remap_index 34
-#define GetCompressedTexImageARB_remap_index 35
-#define DisableVertexAttribArrayARB_remap_index 36
-#define EnableVertexAttribArrayARB_remap_index 37
-#define GetProgramEnvParameterdvARB_remap_index 38
-#define GetProgramEnvParameterfvARB_remap_index 39
-#define GetProgramLocalParameterdvARB_remap_index 40
-#define GetProgramLocalParameterfvARB_remap_index 41
-#define GetProgramStringARB_remap_index 42
-#define GetProgramivARB_remap_index 43
-#define GetVertexAttribdvARB_remap_index 44
-#define GetVertexAttribfvARB_remap_index 45
-#define GetVertexAttribivARB_remap_index 46
-#define ProgramEnvParameter4dARB_remap_index 47
-#define ProgramEnvParameter4dvARB_remap_index 48
-#define ProgramEnvParameter4fARB_remap_index 49
-#define ProgramEnvParameter4fvARB_remap_index 50
-#define ProgramLocalParameter4dARB_remap_index 51
-#define ProgramLocalParameter4dvARB_remap_index 52
-#define ProgramLocalParameter4fARB_remap_index 53
-#define ProgramLocalParameter4fvARB_remap_index 54
-#define ProgramStringARB_remap_index 55
-#define VertexAttrib1dARB_remap_index 56
-#define VertexAttrib1dvARB_remap_index 57
-#define VertexAttrib1fARB_remap_index 58
-#define VertexAttrib1fvARB_remap_index 59
-#define VertexAttrib1sARB_remap_index 60
-#define VertexAttrib1svARB_remap_index 61
-#define VertexAttrib2dARB_remap_index 62
-#define VertexAttrib2dvARB_remap_index 63
-#define VertexAttrib2fARB_remap_index 64
-#define VertexAttrib2fvARB_remap_index 65
-#define VertexAttrib2sARB_remap_index 66
-#define VertexAttrib2svARB_remap_index 67
-#define VertexAttrib3dARB_remap_index 68
-#define VertexAttrib3dvARB_remap_index 69
-#define VertexAttrib3fARB_remap_index 70
-#define VertexAttrib3fvARB_remap_index 71
-#define VertexAttrib3sARB_remap_index 72
-#define VertexAttrib3svARB_remap_index 73
-#define VertexAttrib4NbvARB_remap_index 74
-#define VertexAttrib4NivARB_remap_index 75
-#define VertexAttrib4NsvARB_remap_index 76
-#define VertexAttrib4NubARB_remap_index 77
-#define VertexAttrib4NubvARB_remap_index 78
-#define VertexAttrib4NuivARB_remap_index 79
-#define VertexAttrib4NusvARB_remap_index 80
-#define VertexAttrib4bvARB_remap_index 81
-#define VertexAttrib4dARB_remap_index 82
-#define VertexAttrib4dvARB_remap_index 83
-#define VertexAttrib4fARB_remap_index 84
-#define VertexAttrib4fvARB_remap_index 85
-#define VertexAttrib4ivARB_remap_index 86
-#define VertexAttrib4sARB_remap_index 87
-#define VertexAttrib4svARB_remap_index 88
-#define VertexAttrib4ubvARB_remap_index 89
-#define VertexAttrib4uivARB_remap_index 90
-#define VertexAttrib4usvARB_remap_index 91
-#define VertexAttribPointerARB_remap_index 92
-#define BindBufferARB_remap_index 93
-#define BufferDataARB_remap_index 94
-#define BufferSubDataARB_remap_index 95
-#define DeleteBuffersARB_remap_index 96
-#define GenBuffersARB_remap_index 97
-#define GetBufferParameterivARB_remap_index 98
-#define GetBufferPointervARB_remap_index 99
-#define GetBufferSubDataARB_remap_index 100
-#define IsBufferARB_remap_index 101
-#define MapBufferARB_remap_index 102
-#define UnmapBufferARB_remap_index 103
-#define BeginQueryARB_remap_index 104
-#define DeleteQueriesARB_remap_index 105
-#define EndQueryARB_remap_index 106
-#define GenQueriesARB_remap_index 107
-#define GetQueryObjectivARB_remap_index 108
-#define GetQueryObjectuivARB_remap_index 109
-#define GetQueryivARB_remap_index 110
-#define IsQueryARB_remap_index 111
-#define AttachObjectARB_remap_index 112
-#define CompileShaderARB_remap_index 113
-#define CreateProgramObjectARB_remap_index 114
-#define CreateShaderObjectARB_remap_index 115
-#define DeleteObjectARB_remap_index 116
-#define DetachObjectARB_remap_index 117
-#define GetActiveUniformARB_remap_index 118
-#define GetAttachedObjectsARB_remap_index 119
-#define GetHandleARB_remap_index 120
-#define GetInfoLogARB_remap_index 121
-#define GetObjectParameterfvARB_remap_index 122
-#define GetObjectParameterivARB_remap_index 123
-#define GetShaderSourceARB_remap_index 124
-#define GetUniformLocationARB_remap_index 125
-#define GetUniformfvARB_remap_index 126
-#define GetUniformivARB_remap_index 127
-#define LinkProgramARB_remap_index 128
-#define ShaderSourceARB_remap_index 129
-#define Uniform1fARB_remap_index 130
-#define Uniform1fvARB_remap_index 131
-#define Uniform1iARB_remap_index 132
-#define Uniform1ivARB_remap_index 133
-#define Uniform2fARB_remap_index 134
-#define Uniform2fvARB_remap_index 135
-#define Uniform2iARB_remap_index 136
-#define Uniform2ivARB_remap_index 137
-#define Uniform3fARB_remap_index 138
-#define Uniform3fvARB_remap_index 139
-#define Uniform3iARB_remap_index 140
-#define Uniform3ivARB_remap_index 141
-#define Uniform4fARB_remap_index 142
-#define Uniform4fvARB_remap_index 143
-#define Uniform4iARB_remap_index 144
-#define Uniform4ivARB_remap_index 145
-#define UniformMatrix2fvARB_remap_index 146
-#define UniformMatrix3fvARB_remap_index 147
-#define UniformMatrix4fvARB_remap_index 148
-#define UseProgramObjectARB_remap_index 149
-#define ValidateProgramARB_remap_index 150
-#define BindAttribLocationARB_remap_index 151
-#define GetActiveAttribARB_remap_index 152
-#define GetAttribLocationARB_remap_index 153
-#define DrawBuffersARB_remap_index 154
-#define RenderbufferStorageMultisample_remap_index 155
-#define FlushMappedBufferRange_remap_index 156
-#define MapBufferRange_remap_index 157
-#define BindVertexArray_remap_index 158
-#define GenVertexArrays_remap_index 159
-#define CopyBufferSubData_remap_index 160
-#define ClientWaitSync_remap_index 161
-#define DeleteSync_remap_index 162
-#define FenceSync_remap_index 163
-#define GetInteger64v_remap_index 164
-#define GetSynciv_remap_index 165
-#define IsSync_remap_index 166
-#define WaitSync_remap_index 167
-#define DrawElementsBaseVertex_remap_index 168
-#define DrawRangeElementsBaseVertex_remap_index 169
-#define MultiDrawElementsBaseVertex_remap_index 170
-#define PolygonOffsetEXT_remap_index 171
-#define GetPixelTexGenParameterfvSGIS_remap_index 172
-#define GetPixelTexGenParameterivSGIS_remap_index 173
-#define PixelTexGenParameterfSGIS_remap_index 174
-#define PixelTexGenParameterfvSGIS_remap_index 175
-#define PixelTexGenParameteriSGIS_remap_index 176
-#define PixelTexGenParameterivSGIS_remap_index 177
-#define SampleMaskSGIS_remap_index 178
-#define SamplePatternSGIS_remap_index 179
-#define ColorPointerEXT_remap_index 180
-#define EdgeFlagPointerEXT_remap_index 181
-#define IndexPointerEXT_remap_index 182
-#define NormalPointerEXT_remap_index 183
-#define TexCoordPointerEXT_remap_index 184
-#define VertexPointerEXT_remap_index 185
-#define PointParameterfEXT_remap_index 186
-#define PointParameterfvEXT_remap_index 187
-#define LockArraysEXT_remap_index 188
-#define UnlockArraysEXT_remap_index 189
-#define CullParameterdvEXT_remap_index 190
-#define CullParameterfvEXT_remap_index 191
-#define SecondaryColor3bEXT_remap_index 192
-#define SecondaryColor3bvEXT_remap_index 193
-#define SecondaryColor3dEXT_remap_index 194
-#define SecondaryColor3dvEXT_remap_index 195
-#define SecondaryColor3fEXT_remap_index 196
-#define SecondaryColor3fvEXT_remap_index 197
-#define SecondaryColor3iEXT_remap_index 198
-#define SecondaryColor3ivEXT_remap_index 199
-#define SecondaryColor3sEXT_remap_index 200
-#define SecondaryColor3svEXT_remap_index 201
-#define SecondaryColor3ubEXT_remap_index 202
-#define SecondaryColor3ubvEXT_remap_index 203
-#define SecondaryColor3uiEXT_remap_index 204
-#define SecondaryColor3uivEXT_remap_index 205
-#define SecondaryColor3usEXT_remap_index 206
-#define SecondaryColor3usvEXT_remap_index 207
-#define SecondaryColorPointerEXT_remap_index 208
-#define MultiDrawArraysEXT_remap_index 209
-#define MultiDrawElementsEXT_remap_index 210
-#define FogCoordPointerEXT_remap_index 211
-#define FogCoorddEXT_remap_index 212
-#define FogCoorddvEXT_remap_index 213
-#define FogCoordfEXT_remap_index 214
-#define FogCoordfvEXT_remap_index 215
-#define PixelTexGenSGIX_remap_index 216
-#define BlendFuncSeparateEXT_remap_index 217
-#define FlushVertexArrayRangeNV_remap_index 218
-#define VertexArrayRangeNV_remap_index 219
-#define CombinerInputNV_remap_index 220
-#define CombinerOutputNV_remap_index 221
-#define CombinerParameterfNV_remap_index 222
-#define CombinerParameterfvNV_remap_index 223
-#define CombinerParameteriNV_remap_index 224
-#define CombinerParameterivNV_remap_index 225
-#define FinalCombinerInputNV_remap_index 226
-#define GetCombinerInputParameterfvNV_remap_index 227
-#define GetCombinerInputParameterivNV_remap_index 228
-#define GetCombinerOutputParameterfvNV_remap_index 229
-#define GetCombinerOutputParameterivNV_remap_index 230
-#define GetFinalCombinerInputParameterfvNV_remap_index 231
-#define GetFinalCombinerInputParameterivNV_remap_index 232
-#define ResizeBuffersMESA_remap_index 233
-#define WindowPos2dMESA_remap_index 234
-#define WindowPos2dvMESA_remap_index 235
-#define WindowPos2fMESA_remap_index 236
-#define WindowPos2fvMESA_remap_index 237
-#define WindowPos2iMESA_remap_index 238
-#define WindowPos2ivMESA_remap_index 239
-#define WindowPos2sMESA_remap_index 240
-#define WindowPos2svMESA_remap_index 241
-#define WindowPos3dMESA_remap_index 242
-#define WindowPos3dvMESA_remap_index 243
-#define WindowPos3fMESA_remap_index 244
-#define WindowPos3fvMESA_remap_index 245
-#define WindowPos3iMESA_remap_index 246
-#define WindowPos3ivMESA_remap_index 247
-#define WindowPos3sMESA_remap_index 248
-#define WindowPos3svMESA_remap_index 249
-#define WindowPos4dMESA_remap_index 250
-#define WindowPos4dvMESA_remap_index 251
-#define WindowPos4fMESA_remap_index 252
-#define WindowPos4fvMESA_remap_index 253
-#define WindowPos4iMESA_remap_index 254
-#define WindowPos4ivMESA_remap_index 255
-#define WindowPos4sMESA_remap_index 256
-#define WindowPos4svMESA_remap_index 257
-#define MultiModeDrawArraysIBM_remap_index 258
-#define MultiModeDrawElementsIBM_remap_index 259
-#define DeleteFencesNV_remap_index 260
-#define FinishFenceNV_remap_index 261
-#define GenFencesNV_remap_index 262
-#define GetFenceivNV_remap_index 263
-#define IsFenceNV_remap_index 264
-#define SetFenceNV_remap_index 265
-#define TestFenceNV_remap_index 266
-#define AreProgramsResidentNV_remap_index 267
-#define BindProgramNV_remap_index 268
-#define DeleteProgramsNV_remap_index 269
-#define ExecuteProgramNV_remap_index 270
-#define GenProgramsNV_remap_index 271
-#define GetProgramParameterdvNV_remap_index 272
-#define GetProgramParameterfvNV_remap_index 273
-#define GetProgramStringNV_remap_index 274
-#define GetProgramivNV_remap_index 275
-#define GetTrackMatrixivNV_remap_index 276
-#define GetVertexAttribPointervNV_remap_index 277
-#define GetVertexAttribdvNV_remap_index 278
-#define GetVertexAttribfvNV_remap_index 279
-#define GetVertexAttribivNV_remap_index 280
-#define IsProgramNV_remap_index 281
-#define LoadProgramNV_remap_index 282
-#define ProgramParameters4dvNV_remap_index 283
-#define ProgramParameters4fvNV_remap_index 284
-#define RequestResidentProgramsNV_remap_index 285
-#define TrackMatrixNV_remap_index 286
-#define VertexAttrib1dNV_remap_index 287
-#define VertexAttrib1dvNV_remap_index 288
-#define VertexAttrib1fNV_remap_index 289
-#define VertexAttrib1fvNV_remap_index 290
-#define VertexAttrib1sNV_remap_index 291
-#define VertexAttrib1svNV_remap_index 292
-#define VertexAttrib2dNV_remap_index 293
-#define VertexAttrib2dvNV_remap_index 294
-#define VertexAttrib2fNV_remap_index 295
-#define VertexAttrib2fvNV_remap_index 296
-#define VertexAttrib2sNV_remap_index 297
-#define VertexAttrib2svNV_remap_index 298
-#define VertexAttrib3dNV_remap_index 299
-#define VertexAttrib3dvNV_remap_index 300
-#define VertexAttrib3fNV_remap_index 301
-#define VertexAttrib3fvNV_remap_index 302
-#define VertexAttrib3sNV_remap_index 303
-#define VertexAttrib3svNV_remap_index 304
-#define VertexAttrib4dNV_remap_index 305
-#define VertexAttrib4dvNV_remap_index 306
-#define VertexAttrib4fNV_remap_index 307
-#define VertexAttrib4fvNV_remap_index 308
-#define VertexAttrib4sNV_remap_index 309
-#define VertexAttrib4svNV_remap_index 310
-#define VertexAttrib4ubNV_remap_index 311
-#define VertexAttrib4ubvNV_remap_index 312
-#define VertexAttribPointerNV_remap_index 313
-#define VertexAttribs1dvNV_remap_index 314
-#define VertexAttribs1fvNV_remap_index 315
-#define VertexAttribs1svNV_remap_index 316
-#define VertexAttribs2dvNV_remap_index 317
-#define VertexAttribs2fvNV_remap_index 318
-#define VertexAttribs2svNV_remap_index 319
-#define VertexAttribs3dvNV_remap_index 320
-#define VertexAttribs3fvNV_remap_index 321
-#define VertexAttribs3svNV_remap_index 322
-#define VertexAttribs4dvNV_remap_index 323
-#define VertexAttribs4fvNV_remap_index 324
-#define VertexAttribs4svNV_remap_index 325
-#define VertexAttribs4ubvNV_remap_index 326
-#define GetTexBumpParameterfvATI_remap_index 327
-#define GetTexBumpParameterivATI_remap_index 328
-#define TexBumpParameterfvATI_remap_index 329
-#define TexBumpParameterivATI_remap_index 330
-#define AlphaFragmentOp1ATI_remap_index 331
-#define AlphaFragmentOp2ATI_remap_index 332
-#define AlphaFragmentOp3ATI_remap_index 333
-#define BeginFragmentShaderATI_remap_index 334
-#define BindFragmentShaderATI_remap_index 335
-#define ColorFragmentOp1ATI_remap_index 336
-#define ColorFragmentOp2ATI_remap_index 337
-#define ColorFragmentOp3ATI_remap_index 338
-#define DeleteFragmentShaderATI_remap_index 339
-#define EndFragmentShaderATI_remap_index 340
-#define GenFragmentShadersATI_remap_index 341
-#define PassTexCoordATI_remap_index 342
-#define SampleMapATI_remap_index 343
-#define SetFragmentShaderConstantATI_remap_index 344
-#define PointParameteriNV_remap_index 345
-#define PointParameterivNV_remap_index 346
-#define ActiveStencilFaceEXT_remap_index 347
-#define BindVertexArrayAPPLE_remap_index 348
-#define DeleteVertexArraysAPPLE_remap_index 349
-#define GenVertexArraysAPPLE_remap_index 350
-#define IsVertexArrayAPPLE_remap_index 351
-#define GetProgramNamedParameterdvNV_remap_index 352
-#define GetProgramNamedParameterfvNV_remap_index 353
-#define ProgramNamedParameter4dNV_remap_index 354
-#define ProgramNamedParameter4dvNV_remap_index 355
-#define ProgramNamedParameter4fNV_remap_index 356
-#define ProgramNamedParameter4fvNV_remap_index 357
-#define DepthBoundsEXT_remap_index 358
-#define BlendEquationSeparateEXT_remap_index 359
-#define BindFramebufferEXT_remap_index 360
-#define BindRenderbufferEXT_remap_index 361
-#define CheckFramebufferStatusEXT_remap_index 362
-#define DeleteFramebuffersEXT_remap_index 363
-#define DeleteRenderbuffersEXT_remap_index 364
-#define FramebufferRenderbufferEXT_remap_index 365
-#define FramebufferTexture1DEXT_remap_index 366
-#define FramebufferTexture2DEXT_remap_index 367
-#define FramebufferTexture3DEXT_remap_index 368
-#define GenFramebuffersEXT_remap_index 369
-#define GenRenderbuffersEXT_remap_index 370
-#define GenerateMipmapEXT_remap_index 371
-#define GetFramebufferAttachmentParameterivEXT_remap_index 372
-#define GetRenderbufferParameterivEXT_remap_index 373
-#define IsFramebufferEXT_remap_index 374
-#define IsRenderbufferEXT_remap_index 375
-#define RenderbufferStorageEXT_remap_index 376
-#define BlitFramebufferEXT_remap_index 377
-#define BufferParameteriAPPLE_remap_index 378
-#define FlushMappedBufferRangeAPPLE_remap_index 379
-#define FramebufferTextureLayerEXT_remap_index 380
-#define ColorMaskIndexedEXT_remap_index 381
-#define DisableIndexedEXT_remap_index 382
-#define EnableIndexedEXT_remap_index 383
-#define GetBooleanIndexedvEXT_remap_index 384
-#define GetIntegerIndexedvEXT_remap_index 385
-#define IsEnabledIndexedEXT_remap_index 386
-#define BeginConditionalRenderNV_remap_index 387
-#define EndConditionalRenderNV_remap_index 388
-#define BeginTransformFeedbackEXT_remap_index 389
-#define BindBufferBaseEXT_remap_index 390
-#define BindBufferOffsetEXT_remap_index 391
-#define BindBufferRangeEXT_remap_index 392
-#define EndTransformFeedbackEXT_remap_index 393
-#define GetTransformFeedbackVaryingEXT_remap_index 394
-#define TransformFeedbackVaryingsEXT_remap_index 395
-#define ProvokingVertexEXT_remap_index 396
-#define GetTexParameterPointervAPPLE_remap_index 397
-#define TextureRangeAPPLE_remap_index 398
-#define GetObjectParameterivAPPLE_remap_index 399
-#define ObjectPurgeableAPPLE_remap_index 400
-#define ObjectUnpurgeableAPPLE_remap_index 401
-#define StencilFuncSeparateATI_remap_index 402
-#define ProgramEnvParameters4fvEXT_remap_index 403
-#define ProgramLocalParameters4fvEXT_remap_index 404
-#define GetQueryObjecti64vEXT_remap_index 405
-#define GetQueryObjectui64vEXT_remap_index 406
-#define EGLImageTargetRenderbufferStorageOES_remap_index 407
-#define EGLImageTargetTexture2DOES_remap_index 408
-
-#define CALL_AttachShader(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint)), driDispatchRemapTable[AttachShader_remap_index], parameters)
-#define GET_AttachShader(disp) GET_by_offset(disp, driDispatchRemapTable[AttachShader_remap_index])
-#define SET_AttachShader(disp, fn) SET_by_offset(disp, driDispatchRemapTable[AttachShader_remap_index], fn)
-#define CALL_CreateProgram(disp, parameters) CALL_by_offset(disp, (GLuint (GLAPIENTRYP)(void)), driDispatchRemapTable[CreateProgram_remap_index], parameters)
-#define GET_CreateProgram(disp) GET_by_offset(disp, driDispatchRemapTable[CreateProgram_remap_index])
-#define SET_CreateProgram(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CreateProgram_remap_index], fn)
-#define CALL_CreateShader(disp, parameters) CALL_by_offset(disp, (GLuint (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[CreateShader_remap_index], parameters)
-#define GET_CreateShader(disp) GET_by_offset(disp, driDispatchRemapTable[CreateShader_remap_index])
-#define SET_CreateShader(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CreateShader_remap_index], fn)
-#define CALL_DeleteProgram(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[DeleteProgram_remap_index], parameters)
-#define GET_DeleteProgram(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteProgram_remap_index])
-#define SET_DeleteProgram(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteProgram_remap_index], fn)
-#define CALL_DeleteShader(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[DeleteShader_remap_index], parameters)
-#define GET_DeleteShader(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteShader_remap_index])
-#define SET_DeleteShader(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteShader_remap_index], fn)
-#define CALL_DetachShader(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint)), driDispatchRemapTable[DetachShader_remap_index], parameters)
-#define GET_DetachShader(disp) GET_by_offset(disp, driDispatchRemapTable[DetachShader_remap_index])
-#define SET_DetachShader(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DetachShader_remap_index], fn)
-#define CALL_GetAttachedShaders(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, GLsizei *, GLuint *)), driDispatchRemapTable[GetAttachedShaders_remap_index], parameters)
-#define GET_GetAttachedShaders(disp) GET_by_offset(disp, driDispatchRemapTable[GetAttachedShaders_remap_index])
-#define SET_GetAttachedShaders(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetAttachedShaders_remap_index], fn)
-#define CALL_GetProgramInfoLog(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, GLsizei *, GLchar *)), driDispatchRemapTable[GetProgramInfoLog_remap_index], parameters)
-#define GET_GetProgramInfoLog(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramInfoLog_remap_index])
-#define SET_GetProgramInfoLog(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramInfoLog_remap_index], fn)
-#define CALL_GetProgramiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), driDispatchRemapTable[GetProgramiv_remap_index], parameters)
-#define GET_GetProgramiv(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramiv_remap_index])
-#define SET_GetProgramiv(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramiv_remap_index], fn)
-#define CALL_GetShaderInfoLog(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, GLsizei *, GLchar *)), driDispatchRemapTable[GetShaderInfoLog_remap_index], parameters)
-#define GET_GetShaderInfoLog(disp) GET_by_offset(disp, driDispatchRemapTable[GetShaderInfoLog_remap_index])
-#define SET_GetShaderInfoLog(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetShaderInfoLog_remap_index], fn)
-#define CALL_GetShaderiv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), driDispatchRemapTable[GetShaderiv_remap_index], parameters)
-#define GET_GetShaderiv(disp) GET_by_offset(disp, driDispatchRemapTable[GetShaderiv_remap_index])
-#define SET_GetShaderiv(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetShaderiv_remap_index], fn)
-#define CALL_IsProgram(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[IsProgram_remap_index], parameters)
-#define GET_IsProgram(disp) GET_by_offset(disp, driDispatchRemapTable[IsProgram_remap_index])
-#define SET_IsProgram(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsProgram_remap_index], fn)
-#define CALL_IsShader(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[IsShader_remap_index], parameters)
-#define GET_IsShader(disp) GET_by_offset(disp, driDispatchRemapTable[IsShader_remap_index])
-#define SET_IsShader(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsShader_remap_index], fn)
-#define CALL_StencilFuncSeparate(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint, GLuint)), driDispatchRemapTable[StencilFuncSeparate_remap_index], parameters)
-#define GET_StencilFuncSeparate(disp) GET_by_offset(disp, driDispatchRemapTable[StencilFuncSeparate_remap_index])
-#define SET_StencilFuncSeparate(disp, fn) SET_by_offset(disp, driDispatchRemapTable[StencilFuncSeparate_remap_index], fn)
-#define CALL_StencilMaskSeparate(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), driDispatchRemapTable[StencilMaskSeparate_remap_index], parameters)
-#define GET_StencilMaskSeparate(disp) GET_by_offset(disp, driDispatchRemapTable[StencilMaskSeparate_remap_index])
-#define SET_StencilMaskSeparate(disp, fn) SET_by_offset(disp, driDispatchRemapTable[StencilMaskSeparate_remap_index], fn)
-#define CALL_StencilOpSeparate(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLenum)), driDispatchRemapTable[StencilOpSeparate_remap_index], parameters)
-#define GET_StencilOpSeparate(disp) GET_by_offset(disp, driDispatchRemapTable[StencilOpSeparate_remap_index])
-#define SET_StencilOpSeparate(disp, fn) SET_by_offset(disp, driDispatchRemapTable[StencilOpSeparate_remap_index], fn)
-#define CALL_UniformMatrix2x3fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), driDispatchRemapTable[UniformMatrix2x3fv_remap_index], parameters)
-#define GET_UniformMatrix2x3fv(disp) GET_by_offset(disp, driDispatchRemapTable[UniformMatrix2x3fv_remap_index])
-#define SET_UniformMatrix2x3fv(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UniformMatrix2x3fv_remap_index], fn)
-#define CALL_UniformMatrix2x4fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), driDispatchRemapTable[UniformMatrix2x4fv_remap_index], parameters)
-#define GET_UniformMatrix2x4fv(disp) GET_by_offset(disp, driDispatchRemapTable[UniformMatrix2x4fv_remap_index])
-#define SET_UniformMatrix2x4fv(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UniformMatrix2x4fv_remap_index], fn)
-#define CALL_UniformMatrix3x2fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), driDispatchRemapTable[UniformMatrix3x2fv_remap_index], parameters)
-#define GET_UniformMatrix3x2fv(disp) GET_by_offset(disp, driDispatchRemapTable[UniformMatrix3x2fv_remap_index])
-#define SET_UniformMatrix3x2fv(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UniformMatrix3x2fv_remap_index], fn)
-#define CALL_UniformMatrix3x4fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), driDispatchRemapTable[UniformMatrix3x4fv_remap_index], parameters)
-#define GET_UniformMatrix3x4fv(disp) GET_by_offset(disp, driDispatchRemapTable[UniformMatrix3x4fv_remap_index])
-#define SET_UniformMatrix3x4fv(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UniformMatrix3x4fv_remap_index], fn)
-#define CALL_UniformMatrix4x2fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), driDispatchRemapTable[UniformMatrix4x2fv_remap_index], parameters)
-#define GET_UniformMatrix4x2fv(disp) GET_by_offset(disp, driDispatchRemapTable[UniformMatrix4x2fv_remap_index])
-#define SET_UniformMatrix4x2fv(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UniformMatrix4x2fv_remap_index], fn)
-#define CALL_UniformMatrix4x3fv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), driDispatchRemapTable[UniformMatrix4x3fv_remap_index], parameters)
-#define GET_UniformMatrix4x3fv(disp) GET_by_offset(disp, driDispatchRemapTable[UniformMatrix4x3fv_remap_index])
-#define SET_UniformMatrix4x3fv(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UniformMatrix4x3fv_remap_index], fn)
-#define CALL_DrawArraysInstanced(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLsizei, GLsizei)), driDispatchRemapTable[DrawArraysInstanced_remap_index], parameters)
-#define GET_DrawArraysInstanced(disp) GET_by_offset(disp, driDispatchRemapTable[DrawArraysInstanced_remap_index])
-#define SET_DrawArraysInstanced(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DrawArraysInstanced_remap_index], fn)
-#define CALL_DrawElementsInstanced(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLenum, const GLvoid *, GLsizei)), driDispatchRemapTable[DrawElementsInstanced_remap_index], parameters)
-#define GET_DrawElementsInstanced(disp) GET_by_offset(disp, driDispatchRemapTable[DrawElementsInstanced_remap_index])
-#define SET_DrawElementsInstanced(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DrawElementsInstanced_remap_index], fn)
-#define CALL_LoadTransposeMatrixdARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), driDispatchRemapTable[LoadTransposeMatrixdARB_remap_index], parameters)
-#define GET_LoadTransposeMatrixdARB(disp) GET_by_offset(disp, driDispatchRemapTable[LoadTransposeMatrixdARB_remap_index])
-#define SET_LoadTransposeMatrixdARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[LoadTransposeMatrixdARB_remap_index], fn)
-#define CALL_LoadTransposeMatrixfARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), driDispatchRemapTable[LoadTransposeMatrixfARB_remap_index], parameters)
-#define GET_LoadTransposeMatrixfARB(disp) GET_by_offset(disp, driDispatchRemapTable[LoadTransposeMatrixfARB_remap_index])
-#define SET_LoadTransposeMatrixfARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[LoadTransposeMatrixfARB_remap_index], fn)
-#define CALL_MultTransposeMatrixdARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), driDispatchRemapTable[MultTransposeMatrixdARB_remap_index], parameters)
-#define GET_MultTransposeMatrixdARB(disp) GET_by_offset(disp, driDispatchRemapTable[MultTransposeMatrixdARB_remap_index])
-#define SET_MultTransposeMatrixdARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[MultTransposeMatrixdARB_remap_index], fn)
-#define CALL_MultTransposeMatrixfARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), driDispatchRemapTable[MultTransposeMatrixfARB_remap_index], parameters)
-#define GET_MultTransposeMatrixfARB(disp) GET_by_offset(disp, driDispatchRemapTable[MultTransposeMatrixfARB_remap_index])
-#define SET_MultTransposeMatrixfARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[MultTransposeMatrixfARB_remap_index], fn)
-#define CALL_SampleCoverageARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampf, GLboolean)), driDispatchRemapTable[SampleCoverageARB_remap_index], parameters)
-#define GET_SampleCoverageARB(disp) GET_by_offset(disp, driDispatchRemapTable[SampleCoverageARB_remap_index])
-#define SET_SampleCoverageARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SampleCoverageARB_remap_index], fn)
-#define CALL_CompressedTexImage1DARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const GLvoid *)), driDispatchRemapTable[CompressedTexImage1DARB_remap_index], parameters)
-#define GET_CompressedTexImage1DARB(disp) GET_by_offset(disp, driDispatchRemapTable[CompressedTexImage1DARB_remap_index])
-#define SET_CompressedTexImage1DARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CompressedTexImage1DARB_remap_index], fn)
-#define CALL_CompressedTexImage2DARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *)), driDispatchRemapTable[CompressedTexImage2DARB_remap_index], parameters)
-#define GET_CompressedTexImage2DARB(disp) GET_by_offset(disp, driDispatchRemapTable[CompressedTexImage2DARB_remap_index])
-#define SET_CompressedTexImage2DARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CompressedTexImage2DARB_remap_index], fn)
-#define CALL_CompressedTexImage3DARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const GLvoid *)), driDispatchRemapTable[CompressedTexImage3DARB_remap_index], parameters)
-#define GET_CompressedTexImage3DARB(disp) GET_by_offset(disp, driDispatchRemapTable[CompressedTexImage3DARB_remap_index])
-#define SET_CompressedTexImage3DARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CompressedTexImage3DARB_remap_index], fn)
-#define CALL_CompressedTexSubImage1DARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, const GLvoid *)), driDispatchRemapTable[CompressedTexSubImage1DARB_remap_index], parameters)
-#define GET_CompressedTexSubImage1DARB(disp) GET_by_offset(disp, driDispatchRemapTable[CompressedTexSubImage1DARB_remap_index])
-#define SET_CompressedTexSubImage1DARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CompressedTexSubImage1DARB_remap_index], fn)
-#define CALL_CompressedTexSubImage2DARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *)), driDispatchRemapTable[CompressedTexSubImage2DARB_remap_index], parameters)
-#define GET_CompressedTexSubImage2DARB(disp) GET_by_offset(disp, driDispatchRemapTable[CompressedTexSubImage2DARB_remap_index])
-#define SET_CompressedTexSubImage2DARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CompressedTexSubImage2DARB_remap_index], fn)
-#define CALL_CompressedTexSubImage3DARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const GLvoid *)), driDispatchRemapTable[CompressedTexSubImage3DARB_remap_index], parameters)
-#define GET_CompressedTexSubImage3DARB(disp) GET_by_offset(disp, driDispatchRemapTable[CompressedTexSubImage3DARB_remap_index])
-#define SET_CompressedTexSubImage3DARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CompressedTexSubImage3DARB_remap_index], fn)
-#define CALL_GetCompressedTexImageARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint, GLvoid *)), driDispatchRemapTable[GetCompressedTexImageARB_remap_index], parameters)
-#define GET_GetCompressedTexImageARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetCompressedTexImageARB_remap_index])
-#define SET_GetCompressedTexImageARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetCompressedTexImageARB_remap_index], fn)
-#define CALL_DisableVertexAttribArrayARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[DisableVertexAttribArrayARB_remap_index], parameters)
-#define GET_DisableVertexAttribArrayARB(disp) GET_by_offset(disp, driDispatchRemapTable[DisableVertexAttribArrayARB_remap_index])
-#define SET_DisableVertexAttribArrayARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DisableVertexAttribArrayARB_remap_index], fn)
-#define CALL_EnableVertexAttribArrayARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[EnableVertexAttribArrayARB_remap_index], parameters)
-#define GET_EnableVertexAttribArrayARB(disp) GET_by_offset(disp, driDispatchRemapTable[EnableVertexAttribArrayARB_remap_index])
-#define SET_EnableVertexAttribArrayARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[EnableVertexAttribArrayARB_remap_index], fn)
-#define CALL_GetProgramEnvParameterdvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLdouble *)), driDispatchRemapTable[GetProgramEnvParameterdvARB_remap_index], parameters)
-#define GET_GetProgramEnvParameterdvARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramEnvParameterdvARB_remap_index])
-#define SET_GetProgramEnvParameterdvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramEnvParameterdvARB_remap_index], fn)
-#define CALL_GetProgramEnvParameterfvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLfloat *)), driDispatchRemapTable[GetProgramEnvParameterfvARB_remap_index], parameters)
-#define GET_GetProgramEnvParameterfvARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramEnvParameterfvARB_remap_index])
-#define SET_GetProgramEnvParameterfvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramEnvParameterfvARB_remap_index], fn)
-#define CALL_GetProgramLocalParameterdvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLdouble *)), driDispatchRemapTable[GetProgramLocalParameterdvARB_remap_index], parameters)
-#define GET_GetProgramLocalParameterdvARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramLocalParameterdvARB_remap_index])
-#define SET_GetProgramLocalParameterdvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramLocalParameterdvARB_remap_index], fn)
-#define CALL_GetProgramLocalParameterfvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLfloat *)), driDispatchRemapTable[GetProgramLocalParameterfvARB_remap_index], parameters)
-#define GET_GetProgramLocalParameterfvARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramLocalParameterfvARB_remap_index])
-#define SET_GetProgramLocalParameterfvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramLocalParameterfvARB_remap_index], fn)
-#define CALL_GetProgramStringARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLvoid *)), driDispatchRemapTable[GetProgramStringARB_remap_index], parameters)
-#define GET_GetProgramStringARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramStringARB_remap_index])
-#define SET_GetProgramStringARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramStringARB_remap_index], fn)
-#define CALL_GetProgramivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), driDispatchRemapTable[GetProgramivARB_remap_index], parameters)
-#define GET_GetProgramivARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramivARB_remap_index])
-#define SET_GetProgramivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramivARB_remap_index], fn)
-#define CALL_GetVertexAttribdvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLdouble *)), driDispatchRemapTable[GetVertexAttribdvARB_remap_index], parameters)
-#define GET_GetVertexAttribdvARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetVertexAttribdvARB_remap_index])
-#define SET_GetVertexAttribdvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetVertexAttribdvARB_remap_index], fn)
-#define CALL_GetVertexAttribfvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLfloat *)), driDispatchRemapTable[GetVertexAttribfvARB_remap_index], parameters)
-#define GET_GetVertexAttribfvARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetVertexAttribfvARB_remap_index])
-#define SET_GetVertexAttribfvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetVertexAttribfvARB_remap_index], fn)
-#define CALL_GetVertexAttribivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), driDispatchRemapTable[GetVertexAttribivARB_remap_index], parameters)
-#define GET_GetVertexAttribivARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetVertexAttribivARB_remap_index])
-#define SET_GetVertexAttribivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetVertexAttribivARB_remap_index], fn)
-#define CALL_ProgramEnvParameter4dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLdouble, GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[ProgramEnvParameter4dARB_remap_index], parameters)
-#define GET_ProgramEnvParameter4dARB(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameter4dARB_remap_index])
-#define SET_ProgramEnvParameter4dARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameter4dARB_remap_index], fn)
-#define CALL_ProgramEnvParameter4dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, const GLdouble *)), driDispatchRemapTable[ProgramEnvParameter4dvARB_remap_index], parameters)
-#define GET_ProgramEnvParameter4dvARB(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameter4dvARB_remap_index])
-#define SET_ProgramEnvParameter4dvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameter4dvARB_remap_index], fn)
-#define CALL_ProgramEnvParameter4fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLfloat, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[ProgramEnvParameter4fARB_remap_index], parameters)
-#define GET_ProgramEnvParameter4fARB(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameter4fARB_remap_index])
-#define SET_ProgramEnvParameter4fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameter4fARB_remap_index], fn)
-#define CALL_ProgramEnvParameter4fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, const GLfloat *)), driDispatchRemapTable[ProgramEnvParameter4fvARB_remap_index], parameters)
-#define GET_ProgramEnvParameter4fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameter4fvARB_remap_index])
-#define SET_ProgramEnvParameter4fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameter4fvARB_remap_index], fn)
-#define CALL_ProgramLocalParameter4dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLdouble, GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[ProgramLocalParameter4dARB_remap_index], parameters)
-#define GET_ProgramLocalParameter4dARB(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameter4dARB_remap_index])
-#define SET_ProgramLocalParameter4dARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameter4dARB_remap_index], fn)
-#define CALL_ProgramLocalParameter4dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, const GLdouble *)), driDispatchRemapTable[ProgramLocalParameter4dvARB_remap_index], parameters)
-#define GET_ProgramLocalParameter4dvARB(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameter4dvARB_remap_index])
-#define SET_ProgramLocalParameter4dvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameter4dvARB_remap_index], fn)
-#define CALL_ProgramLocalParameter4fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLfloat, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[ProgramLocalParameter4fARB_remap_index], parameters)
-#define GET_ProgramLocalParameter4fARB(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameter4fARB_remap_index])
-#define SET_ProgramLocalParameter4fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameter4fARB_remap_index], fn)
-#define CALL_ProgramLocalParameter4fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, const GLfloat *)), driDispatchRemapTable[ProgramLocalParameter4fvARB_remap_index], parameters)
-#define GET_ProgramLocalParameter4fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameter4fvARB_remap_index])
-#define SET_ProgramLocalParameter4fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameter4fvARB_remap_index], fn)
-#define CALL_ProgramStringARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLsizei, const GLvoid *)), driDispatchRemapTable[ProgramStringARB_remap_index], parameters)
-#define GET_ProgramStringARB(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramStringARB_remap_index])
-#define SET_ProgramStringARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramStringARB_remap_index], fn)
-#define CALL_VertexAttrib1dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLdouble)), driDispatchRemapTable[VertexAttrib1dARB_remap_index], parameters)
-#define GET_VertexAttrib1dARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1dARB_remap_index])
-#define SET_VertexAttrib1dARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1dARB_remap_index], fn)
-#define CALL_VertexAttrib1dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLdouble *)), driDispatchRemapTable[VertexAttrib1dvARB_remap_index], parameters)
-#define GET_VertexAttrib1dvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1dvARB_remap_index])
-#define SET_VertexAttrib1dvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1dvARB_remap_index], fn)
-#define CALL_VertexAttrib1fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat)), driDispatchRemapTable[VertexAttrib1fARB_remap_index], parameters)
-#define GET_VertexAttrib1fARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1fARB_remap_index])
-#define SET_VertexAttrib1fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1fARB_remap_index], fn)
-#define CALL_VertexAttrib1fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), driDispatchRemapTable[VertexAttrib1fvARB_remap_index], parameters)
-#define GET_VertexAttrib1fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1fvARB_remap_index])
-#define SET_VertexAttrib1fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1fvARB_remap_index], fn)
-#define CALL_VertexAttrib1sARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLshort)), driDispatchRemapTable[VertexAttrib1sARB_remap_index], parameters)
-#define GET_VertexAttrib1sARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1sARB_remap_index])
-#define SET_VertexAttrib1sARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1sARB_remap_index], fn)
-#define CALL_VertexAttrib1svARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLshort *)), driDispatchRemapTable[VertexAttrib1svARB_remap_index], parameters)
-#define GET_VertexAttrib1svARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1svARB_remap_index])
-#define SET_VertexAttrib1svARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1svARB_remap_index], fn)
-#define CALL_VertexAttrib2dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLdouble, GLdouble)), driDispatchRemapTable[VertexAttrib2dARB_remap_index], parameters)
-#define GET_VertexAttrib2dARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2dARB_remap_index])
-#define SET_VertexAttrib2dARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2dARB_remap_index], fn)
-#define CALL_VertexAttrib2dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLdouble *)), driDispatchRemapTable[VertexAttrib2dvARB_remap_index], parameters)
-#define GET_VertexAttrib2dvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2dvARB_remap_index])
-#define SET_VertexAttrib2dvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2dvARB_remap_index], fn)
-#define CALL_VertexAttrib2fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat, GLfloat)), driDispatchRemapTable[VertexAttrib2fARB_remap_index], parameters)
-#define GET_VertexAttrib2fARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2fARB_remap_index])
-#define SET_VertexAttrib2fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2fARB_remap_index], fn)
-#define CALL_VertexAttrib2fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), driDispatchRemapTable[VertexAttrib2fvARB_remap_index], parameters)
-#define GET_VertexAttrib2fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2fvARB_remap_index])
-#define SET_VertexAttrib2fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2fvARB_remap_index], fn)
-#define CALL_VertexAttrib2sARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLshort, GLshort)), driDispatchRemapTable[VertexAttrib2sARB_remap_index], parameters)
-#define GET_VertexAttrib2sARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2sARB_remap_index])
-#define SET_VertexAttrib2sARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2sARB_remap_index], fn)
-#define CALL_VertexAttrib2svARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLshort *)), driDispatchRemapTable[VertexAttrib2svARB_remap_index], parameters)
-#define GET_VertexAttrib2svARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2svARB_remap_index])
-#define SET_VertexAttrib2svARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2svARB_remap_index], fn)
-#define CALL_VertexAttrib3dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[VertexAttrib3dARB_remap_index], parameters)
-#define GET_VertexAttrib3dARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3dARB_remap_index])
-#define SET_VertexAttrib3dARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3dARB_remap_index], fn)
-#define CALL_VertexAttrib3dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLdouble *)), driDispatchRemapTable[VertexAttrib3dvARB_remap_index], parameters)
-#define GET_VertexAttrib3dvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3dvARB_remap_index])
-#define SET_VertexAttrib3dvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3dvARB_remap_index], fn)
-#define CALL_VertexAttrib3fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[VertexAttrib3fARB_remap_index], parameters)
-#define GET_VertexAttrib3fARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3fARB_remap_index])
-#define SET_VertexAttrib3fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3fARB_remap_index], fn)
-#define CALL_VertexAttrib3fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), driDispatchRemapTable[VertexAttrib3fvARB_remap_index], parameters)
-#define GET_VertexAttrib3fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3fvARB_remap_index])
-#define SET_VertexAttrib3fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3fvARB_remap_index], fn)
-#define CALL_VertexAttrib3sARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLshort, GLshort, GLshort)), driDispatchRemapTable[VertexAttrib3sARB_remap_index], parameters)
-#define GET_VertexAttrib3sARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3sARB_remap_index])
-#define SET_VertexAttrib3sARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3sARB_remap_index], fn)
-#define CALL_VertexAttrib3svARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLshort *)), driDispatchRemapTable[VertexAttrib3svARB_remap_index], parameters)
-#define GET_VertexAttrib3svARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3svARB_remap_index])
-#define SET_VertexAttrib3svARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3svARB_remap_index], fn)
-#define CALL_VertexAttrib4NbvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLbyte *)), driDispatchRemapTable[VertexAttrib4NbvARB_remap_index], parameters)
-#define GET_VertexAttrib4NbvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NbvARB_remap_index])
-#define SET_VertexAttrib4NbvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NbvARB_remap_index], fn)
-#define CALL_VertexAttrib4NivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLint *)), driDispatchRemapTable[VertexAttrib4NivARB_remap_index], parameters)
-#define GET_VertexAttrib4NivARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NivARB_remap_index])
-#define SET_VertexAttrib4NivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NivARB_remap_index], fn)
-#define CALL_VertexAttrib4NsvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLshort *)), driDispatchRemapTable[VertexAttrib4NsvARB_remap_index], parameters)
-#define GET_VertexAttrib4NsvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NsvARB_remap_index])
-#define SET_VertexAttrib4NsvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NsvARB_remap_index], fn)
-#define CALL_VertexAttrib4NubARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLubyte, GLubyte, GLubyte, GLubyte)), driDispatchRemapTable[VertexAttrib4NubARB_remap_index], parameters)
-#define GET_VertexAttrib4NubARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NubARB_remap_index])
-#define SET_VertexAttrib4NubARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NubARB_remap_index], fn)
-#define CALL_VertexAttrib4NubvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLubyte *)), driDispatchRemapTable[VertexAttrib4NubvARB_remap_index], parameters)
-#define GET_VertexAttrib4NubvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NubvARB_remap_index])
-#define SET_VertexAttrib4NubvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NubvARB_remap_index], fn)
-#define CALL_VertexAttrib4NuivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLuint *)), driDispatchRemapTable[VertexAttrib4NuivARB_remap_index], parameters)
-#define GET_VertexAttrib4NuivARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NuivARB_remap_index])
-#define SET_VertexAttrib4NuivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NuivARB_remap_index], fn)
-#define CALL_VertexAttrib4NusvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLushort *)), driDispatchRemapTable[VertexAttrib4NusvARB_remap_index], parameters)
-#define GET_VertexAttrib4NusvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NusvARB_remap_index])
-#define SET_VertexAttrib4NusvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4NusvARB_remap_index], fn)
-#define CALL_VertexAttrib4bvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLbyte *)), driDispatchRemapTable[VertexAttrib4bvARB_remap_index], parameters)
-#define GET_VertexAttrib4bvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4bvARB_remap_index])
-#define SET_VertexAttrib4bvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4bvARB_remap_index], fn)
-#define CALL_VertexAttrib4dARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLdouble, GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[VertexAttrib4dARB_remap_index], parameters)
-#define GET_VertexAttrib4dARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4dARB_remap_index])
-#define SET_VertexAttrib4dARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4dARB_remap_index], fn)
-#define CALL_VertexAttrib4dvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLdouble *)), driDispatchRemapTable[VertexAttrib4dvARB_remap_index], parameters)
-#define GET_VertexAttrib4dvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4dvARB_remap_index])
-#define SET_VertexAttrib4dvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4dvARB_remap_index], fn)
-#define CALL_VertexAttrib4fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[VertexAttrib4fARB_remap_index], parameters)
-#define GET_VertexAttrib4fARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4fARB_remap_index])
-#define SET_VertexAttrib4fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4fARB_remap_index], fn)
-#define CALL_VertexAttrib4fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), driDispatchRemapTable[VertexAttrib4fvARB_remap_index], parameters)
-#define GET_VertexAttrib4fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4fvARB_remap_index])
-#define SET_VertexAttrib4fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4fvARB_remap_index], fn)
-#define CALL_VertexAttrib4ivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLint *)), driDispatchRemapTable[VertexAttrib4ivARB_remap_index], parameters)
-#define GET_VertexAttrib4ivARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4ivARB_remap_index])
-#define SET_VertexAttrib4ivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4ivARB_remap_index], fn)
-#define CALL_VertexAttrib4sARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLshort, GLshort, GLshort, GLshort)), driDispatchRemapTable[VertexAttrib4sARB_remap_index], parameters)
-#define GET_VertexAttrib4sARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4sARB_remap_index])
-#define SET_VertexAttrib4sARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4sARB_remap_index], fn)
-#define CALL_VertexAttrib4svARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLshort *)), driDispatchRemapTable[VertexAttrib4svARB_remap_index], parameters)
-#define GET_VertexAttrib4svARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4svARB_remap_index])
-#define SET_VertexAttrib4svARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4svARB_remap_index], fn)
-#define CALL_VertexAttrib4ubvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLubyte *)), driDispatchRemapTable[VertexAttrib4ubvARB_remap_index], parameters)
-#define GET_VertexAttrib4ubvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4ubvARB_remap_index])
-#define SET_VertexAttrib4ubvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4ubvARB_remap_index], fn)
-#define CALL_VertexAttrib4uivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLuint *)), driDispatchRemapTable[VertexAttrib4uivARB_remap_index], parameters)
-#define GET_VertexAttrib4uivARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4uivARB_remap_index])
-#define SET_VertexAttrib4uivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4uivARB_remap_index], fn)
-#define CALL_VertexAttrib4usvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLushort *)), driDispatchRemapTable[VertexAttrib4usvARB_remap_index], parameters)
-#define GET_VertexAttrib4usvARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4usvARB_remap_index])
-#define SET_VertexAttrib4usvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4usvARB_remap_index], fn)
-#define CALL_VertexAttribPointerARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLint, GLenum, GLboolean, GLsizei, const GLvoid *)), driDispatchRemapTable[VertexAttribPointerARB_remap_index], parameters)
-#define GET_VertexAttribPointerARB(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribPointerARB_remap_index])
-#define SET_VertexAttribPointerARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribPointerARB_remap_index], fn)
-#define CALL_BindBufferARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), driDispatchRemapTable[BindBufferARB_remap_index], parameters)
-#define GET_BindBufferARB(disp) GET_by_offset(disp, driDispatchRemapTable[BindBufferARB_remap_index])
-#define SET_BindBufferARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindBufferARB_remap_index], fn)
-#define CALL_BufferDataARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizeiptrARB, const GLvoid *, GLenum)), driDispatchRemapTable[BufferDataARB_remap_index], parameters)
-#define GET_BufferDataARB(disp) GET_by_offset(disp, driDispatchRemapTable[BufferDataARB_remap_index])
-#define SET_BufferDataARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BufferDataARB_remap_index], fn)
-#define CALL_BufferSubDataARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLintptrARB, GLsizeiptrARB, const GLvoid *)), driDispatchRemapTable[BufferSubDataARB_remap_index], parameters)
-#define GET_BufferSubDataARB(disp) GET_by_offset(disp, driDispatchRemapTable[BufferSubDataARB_remap_index])
-#define SET_BufferSubDataARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BufferSubDataARB_remap_index], fn)
-#define CALL_DeleteBuffersARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), driDispatchRemapTable[DeleteBuffersARB_remap_index], parameters)
-#define GET_DeleteBuffersARB(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteBuffersARB_remap_index])
-#define SET_DeleteBuffersARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteBuffersARB_remap_index], fn)
-#define CALL_GenBuffersARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), driDispatchRemapTable[GenBuffersARB_remap_index], parameters)
-#define GET_GenBuffersARB(disp) GET_by_offset(disp, driDispatchRemapTable[GenBuffersARB_remap_index])
-#define SET_GenBuffersARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenBuffersARB_remap_index], fn)
-#define CALL_GetBufferParameterivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), driDispatchRemapTable[GetBufferParameterivARB_remap_index], parameters)
-#define GET_GetBufferParameterivARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetBufferParameterivARB_remap_index])
-#define SET_GetBufferParameterivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetBufferParameterivARB_remap_index], fn)
-#define CALL_GetBufferPointervARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLvoid **)), driDispatchRemapTable[GetBufferPointervARB_remap_index], parameters)
-#define GET_GetBufferPointervARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetBufferPointervARB_remap_index])
-#define SET_GetBufferPointervARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetBufferPointervARB_remap_index], fn)
-#define CALL_GetBufferSubDataARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLintptrARB, GLsizeiptrARB, GLvoid *)), driDispatchRemapTable[GetBufferSubDataARB_remap_index], parameters)
-#define GET_GetBufferSubDataARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetBufferSubDataARB_remap_index])
-#define SET_GetBufferSubDataARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetBufferSubDataARB_remap_index], fn)
-#define CALL_IsBufferARB(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[IsBufferARB_remap_index], parameters)
-#define GET_IsBufferARB(disp) GET_by_offset(disp, driDispatchRemapTable[IsBufferARB_remap_index])
-#define SET_IsBufferARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsBufferARB_remap_index], fn)
-#define CALL_MapBufferARB(disp, parameters) CALL_by_offset(disp, (GLvoid * (GLAPIENTRYP)(GLenum, GLenum)), driDispatchRemapTable[MapBufferARB_remap_index], parameters)
-#define GET_MapBufferARB(disp) GET_by_offset(disp, driDispatchRemapTable[MapBufferARB_remap_index])
-#define SET_MapBufferARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[MapBufferARB_remap_index], fn)
-#define CALL_UnmapBufferARB(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[UnmapBufferARB_remap_index], parameters)
-#define GET_UnmapBufferARB(disp) GET_by_offset(disp, driDispatchRemapTable[UnmapBufferARB_remap_index])
-#define SET_UnmapBufferARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UnmapBufferARB_remap_index], fn)
-#define CALL_BeginQueryARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), driDispatchRemapTable[BeginQueryARB_remap_index], parameters)
-#define GET_BeginQueryARB(disp) GET_by_offset(disp, driDispatchRemapTable[BeginQueryARB_remap_index])
-#define SET_BeginQueryARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BeginQueryARB_remap_index], fn)
-#define CALL_DeleteQueriesARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), driDispatchRemapTable[DeleteQueriesARB_remap_index], parameters)
-#define GET_DeleteQueriesARB(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteQueriesARB_remap_index])
-#define SET_DeleteQueriesARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteQueriesARB_remap_index], fn)
-#define CALL_EndQueryARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[EndQueryARB_remap_index], parameters)
-#define GET_EndQueryARB(disp) GET_by_offset(disp, driDispatchRemapTable[EndQueryARB_remap_index])
-#define SET_EndQueryARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[EndQueryARB_remap_index], fn)
-#define CALL_GenQueriesARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), driDispatchRemapTable[GenQueriesARB_remap_index], parameters)
-#define GET_GenQueriesARB(disp) GET_by_offset(disp, driDispatchRemapTable[GenQueriesARB_remap_index])
-#define SET_GenQueriesARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenQueriesARB_remap_index], fn)
-#define CALL_GetQueryObjectivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), driDispatchRemapTable[GetQueryObjectivARB_remap_index], parameters)
-#define GET_GetQueryObjectivARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetQueryObjectivARB_remap_index])
-#define SET_GetQueryObjectivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetQueryObjectivARB_remap_index], fn)
-#define CALL_GetQueryObjectuivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLuint *)), driDispatchRemapTable[GetQueryObjectuivARB_remap_index], parameters)
-#define GET_GetQueryObjectuivARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetQueryObjectuivARB_remap_index])
-#define SET_GetQueryObjectuivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetQueryObjectuivARB_remap_index], fn)
-#define CALL_GetQueryivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), driDispatchRemapTable[GetQueryivARB_remap_index], parameters)
-#define GET_GetQueryivARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetQueryivARB_remap_index])
-#define SET_GetQueryivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetQueryivARB_remap_index], fn)
-#define CALL_IsQueryARB(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[IsQueryARB_remap_index], parameters)
-#define GET_IsQueryARB(disp) GET_by_offset(disp, driDispatchRemapTable[IsQueryARB_remap_index])
-#define SET_IsQueryARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsQueryARB_remap_index], fn)
-#define CALL_AttachObjectARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLhandleARB)), driDispatchRemapTable[AttachObjectARB_remap_index], parameters)
-#define GET_AttachObjectARB(disp) GET_by_offset(disp, driDispatchRemapTable[AttachObjectARB_remap_index])
-#define SET_AttachObjectARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[AttachObjectARB_remap_index], fn)
-#define CALL_CompileShaderARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB)), driDispatchRemapTable[CompileShaderARB_remap_index], parameters)
-#define GET_CompileShaderARB(disp) GET_by_offset(disp, driDispatchRemapTable[CompileShaderARB_remap_index])
-#define SET_CompileShaderARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CompileShaderARB_remap_index], fn)
-#define CALL_CreateProgramObjectARB(disp, parameters) CALL_by_offset(disp, (GLhandleARB (GLAPIENTRYP)(void)), driDispatchRemapTable[CreateProgramObjectARB_remap_index], parameters)
-#define GET_CreateProgramObjectARB(disp) GET_by_offset(disp, driDispatchRemapTable[CreateProgramObjectARB_remap_index])
-#define SET_CreateProgramObjectARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CreateProgramObjectARB_remap_index], fn)
-#define CALL_CreateShaderObjectARB(disp, parameters) CALL_by_offset(disp, (GLhandleARB (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[CreateShaderObjectARB_remap_index], parameters)
-#define GET_CreateShaderObjectARB(disp) GET_by_offset(disp, driDispatchRemapTable[CreateShaderObjectARB_remap_index])
-#define SET_CreateShaderObjectARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CreateShaderObjectARB_remap_index], fn)
-#define CALL_DeleteObjectARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB)), driDispatchRemapTable[DeleteObjectARB_remap_index], parameters)
-#define GET_DeleteObjectARB(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteObjectARB_remap_index])
-#define SET_DeleteObjectARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteObjectARB_remap_index], fn)
-#define CALL_DetachObjectARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLhandleARB)), driDispatchRemapTable[DetachObjectARB_remap_index], parameters)
-#define GET_DetachObjectARB(disp) GET_by_offset(disp, driDispatchRemapTable[DetachObjectARB_remap_index])
-#define SET_DetachObjectARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DetachObjectARB_remap_index], fn)
-#define CALL_GetActiveUniformARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLuint, GLsizei, GLsizei *, GLint *, GLenum *, GLcharARB *)), driDispatchRemapTable[GetActiveUniformARB_remap_index], parameters)
-#define GET_GetActiveUniformARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetActiveUniformARB_remap_index])
-#define SET_GetActiveUniformARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetActiveUniformARB_remap_index], fn)
-#define CALL_GetAttachedObjectsARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLsizei, GLsizei *, GLhandleARB *)), driDispatchRemapTable[GetAttachedObjectsARB_remap_index], parameters)
-#define GET_GetAttachedObjectsARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetAttachedObjectsARB_remap_index])
-#define SET_GetAttachedObjectsARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetAttachedObjectsARB_remap_index], fn)
-#define CALL_GetHandleARB(disp, parameters) CALL_by_offset(disp, (GLhandleARB (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[GetHandleARB_remap_index], parameters)
-#define GET_GetHandleARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetHandleARB_remap_index])
-#define SET_GetHandleARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetHandleARB_remap_index], fn)
-#define CALL_GetInfoLogARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLsizei, GLsizei *, GLcharARB *)), driDispatchRemapTable[GetInfoLogARB_remap_index], parameters)
-#define GET_GetInfoLogARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetInfoLogARB_remap_index])
-#define SET_GetInfoLogARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetInfoLogARB_remap_index], fn)
-#define CALL_GetObjectParameterfvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLenum, GLfloat *)), driDispatchRemapTable[GetObjectParameterfvARB_remap_index], parameters)
-#define GET_GetObjectParameterfvARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetObjectParameterfvARB_remap_index])
-#define SET_GetObjectParameterfvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetObjectParameterfvARB_remap_index], fn)
-#define CALL_GetObjectParameterivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLenum, GLint *)), driDispatchRemapTable[GetObjectParameterivARB_remap_index], parameters)
-#define GET_GetObjectParameterivARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetObjectParameterivARB_remap_index])
-#define SET_GetObjectParameterivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetObjectParameterivARB_remap_index], fn)
-#define CALL_GetShaderSourceARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLsizei, GLsizei *, GLcharARB *)), driDispatchRemapTable[GetShaderSourceARB_remap_index], parameters)
-#define GET_GetShaderSourceARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetShaderSourceARB_remap_index])
-#define SET_GetShaderSourceARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetShaderSourceARB_remap_index], fn)
-#define CALL_GetUniformLocationARB(disp, parameters) CALL_by_offset(disp, (GLint (GLAPIENTRYP)(GLhandleARB, const GLcharARB *)), driDispatchRemapTable[GetUniformLocationARB_remap_index], parameters)
-#define GET_GetUniformLocationARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetUniformLocationARB_remap_index])
-#define SET_GetUniformLocationARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetUniformLocationARB_remap_index], fn)
-#define CALL_GetUniformfvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLint, GLfloat *)), driDispatchRemapTable[GetUniformfvARB_remap_index], parameters)
-#define GET_GetUniformfvARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetUniformfvARB_remap_index])
-#define SET_GetUniformfvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetUniformfvARB_remap_index], fn)
-#define CALL_GetUniformivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLint, GLint *)), driDispatchRemapTable[GetUniformivARB_remap_index], parameters)
-#define GET_GetUniformivARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetUniformivARB_remap_index])
-#define SET_GetUniformivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetUniformivARB_remap_index], fn)
-#define CALL_LinkProgramARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB)), driDispatchRemapTable[LinkProgramARB_remap_index], parameters)
-#define GET_LinkProgramARB(disp) GET_by_offset(disp, driDispatchRemapTable[LinkProgramARB_remap_index])
-#define SET_LinkProgramARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[LinkProgramARB_remap_index], fn)
-#define CALL_ShaderSourceARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLsizei, const GLcharARB **, const GLint *)), driDispatchRemapTable[ShaderSourceARB_remap_index], parameters)
-#define GET_ShaderSourceARB(disp) GET_by_offset(disp, driDispatchRemapTable[ShaderSourceARB_remap_index])
-#define SET_ShaderSourceARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ShaderSourceARB_remap_index], fn)
-#define CALL_Uniform1fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLfloat)), driDispatchRemapTable[Uniform1fARB_remap_index], parameters)
-#define GET_Uniform1fARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform1fARB_remap_index])
-#define SET_Uniform1fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform1fARB_remap_index], fn)
-#define CALL_Uniform1fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLfloat *)), driDispatchRemapTable[Uniform1fvARB_remap_index], parameters)
-#define GET_Uniform1fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform1fvARB_remap_index])
-#define SET_Uniform1fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform1fvARB_remap_index], fn)
-#define CALL_Uniform1iARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint)), driDispatchRemapTable[Uniform1iARB_remap_index], parameters)
-#define GET_Uniform1iARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform1iARB_remap_index])
-#define SET_Uniform1iARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform1iARB_remap_index], fn)
-#define CALL_Uniform1ivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLint *)), driDispatchRemapTable[Uniform1ivARB_remap_index], parameters)
-#define GET_Uniform1ivARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform1ivARB_remap_index])
-#define SET_Uniform1ivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform1ivARB_remap_index], fn)
-#define CALL_Uniform2fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLfloat, GLfloat)), driDispatchRemapTable[Uniform2fARB_remap_index], parameters)
-#define GET_Uniform2fARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform2fARB_remap_index])
-#define SET_Uniform2fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform2fARB_remap_index], fn)
-#define CALL_Uniform2fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLfloat *)), driDispatchRemapTable[Uniform2fvARB_remap_index], parameters)
-#define GET_Uniform2fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform2fvARB_remap_index])
-#define SET_Uniform2fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform2fvARB_remap_index], fn)
-#define CALL_Uniform2iARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint)), driDispatchRemapTable[Uniform2iARB_remap_index], parameters)
-#define GET_Uniform2iARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform2iARB_remap_index])
-#define SET_Uniform2iARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform2iARB_remap_index], fn)
-#define CALL_Uniform2ivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLint *)), driDispatchRemapTable[Uniform2ivARB_remap_index], parameters)
-#define GET_Uniform2ivARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform2ivARB_remap_index])
-#define SET_Uniform2ivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform2ivARB_remap_index], fn)
-#define CALL_Uniform3fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[Uniform3fARB_remap_index], parameters)
-#define GET_Uniform3fARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform3fARB_remap_index])
-#define SET_Uniform3fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform3fARB_remap_index], fn)
-#define CALL_Uniform3fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLfloat *)), driDispatchRemapTable[Uniform3fvARB_remap_index], parameters)
-#define GET_Uniform3fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform3fvARB_remap_index])
-#define SET_Uniform3fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform3fvARB_remap_index], fn)
-#define CALL_Uniform3iARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint)), driDispatchRemapTable[Uniform3iARB_remap_index], parameters)
-#define GET_Uniform3iARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform3iARB_remap_index])
-#define SET_Uniform3iARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform3iARB_remap_index], fn)
-#define CALL_Uniform3ivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLint *)), driDispatchRemapTable[Uniform3ivARB_remap_index], parameters)
-#define GET_Uniform3ivARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform3ivARB_remap_index])
-#define SET_Uniform3ivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform3ivARB_remap_index], fn)
-#define CALL_Uniform4fARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLfloat, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[Uniform4fARB_remap_index], parameters)
-#define GET_Uniform4fARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform4fARB_remap_index])
-#define SET_Uniform4fARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform4fARB_remap_index], fn)
-#define CALL_Uniform4fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLfloat *)), driDispatchRemapTable[Uniform4fvARB_remap_index], parameters)
-#define GET_Uniform4fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform4fvARB_remap_index])
-#define SET_Uniform4fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform4fvARB_remap_index], fn)
-#define CALL_Uniform4iARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint, GLint)), driDispatchRemapTable[Uniform4iARB_remap_index], parameters)
-#define GET_Uniform4iARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform4iARB_remap_index])
-#define SET_Uniform4iARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform4iARB_remap_index], fn)
-#define CALL_Uniform4ivARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, const GLint *)), driDispatchRemapTable[Uniform4ivARB_remap_index], parameters)
-#define GET_Uniform4ivARB(disp) GET_by_offset(disp, driDispatchRemapTable[Uniform4ivARB_remap_index])
-#define SET_Uniform4ivARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[Uniform4ivARB_remap_index], fn)
-#define CALL_UniformMatrix2fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), driDispatchRemapTable[UniformMatrix2fvARB_remap_index], parameters)
-#define GET_UniformMatrix2fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[UniformMatrix2fvARB_remap_index])
-#define SET_UniformMatrix2fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UniformMatrix2fvARB_remap_index], fn)
-#define CALL_UniformMatrix3fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), driDispatchRemapTable[UniformMatrix3fvARB_remap_index], parameters)
-#define GET_UniformMatrix3fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[UniformMatrix3fvARB_remap_index])
-#define SET_UniformMatrix3fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UniformMatrix3fvARB_remap_index], fn)
-#define CALL_UniformMatrix4fvARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei, GLboolean, const GLfloat *)), driDispatchRemapTable[UniformMatrix4fvARB_remap_index], parameters)
-#define GET_UniformMatrix4fvARB(disp) GET_by_offset(disp, driDispatchRemapTable[UniformMatrix4fvARB_remap_index])
-#define SET_UniformMatrix4fvARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UniformMatrix4fvARB_remap_index], fn)
-#define CALL_UseProgramObjectARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB)), driDispatchRemapTable[UseProgramObjectARB_remap_index], parameters)
-#define GET_UseProgramObjectARB(disp) GET_by_offset(disp, driDispatchRemapTable[UseProgramObjectARB_remap_index])
-#define SET_UseProgramObjectARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UseProgramObjectARB_remap_index], fn)
-#define CALL_ValidateProgramARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB)), driDispatchRemapTable[ValidateProgramARB_remap_index], parameters)
-#define GET_ValidateProgramARB(disp) GET_by_offset(disp, driDispatchRemapTable[ValidateProgramARB_remap_index])
-#define SET_ValidateProgramARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ValidateProgramARB_remap_index], fn)
-#define CALL_BindAttribLocationARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLuint, const GLcharARB *)), driDispatchRemapTable[BindAttribLocationARB_remap_index], parameters)
-#define GET_BindAttribLocationARB(disp) GET_by_offset(disp, driDispatchRemapTable[BindAttribLocationARB_remap_index])
-#define SET_BindAttribLocationARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindAttribLocationARB_remap_index], fn)
-#define CALL_GetActiveAttribARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLhandleARB, GLuint, GLsizei, GLsizei *, GLint *, GLenum *, GLcharARB *)), driDispatchRemapTable[GetActiveAttribARB_remap_index], parameters)
-#define GET_GetActiveAttribARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetActiveAttribARB_remap_index])
-#define SET_GetActiveAttribARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetActiveAttribARB_remap_index], fn)
-#define CALL_GetAttribLocationARB(disp, parameters) CALL_by_offset(disp, (GLint (GLAPIENTRYP)(GLhandleARB, const GLcharARB *)), driDispatchRemapTable[GetAttribLocationARB_remap_index], parameters)
-#define GET_GetAttribLocationARB(disp) GET_by_offset(disp, driDispatchRemapTable[GetAttribLocationARB_remap_index])
-#define SET_GetAttribLocationARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetAttribLocationARB_remap_index], fn)
-#define CALL_DrawBuffersARB(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLenum *)), driDispatchRemapTable[DrawBuffersARB_remap_index], parameters)
-#define GET_DrawBuffersARB(disp) GET_by_offset(disp, driDispatchRemapTable[DrawBuffersARB_remap_index])
-#define SET_DrawBuffersARB(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DrawBuffersARB_remap_index], fn)
-#define CALL_RenderbufferStorageMultisample(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLenum, GLsizei, GLsizei)), driDispatchRemapTable[RenderbufferStorageMultisample_remap_index], parameters)
-#define GET_RenderbufferStorageMultisample(disp) GET_by_offset(disp, driDispatchRemapTable[RenderbufferStorageMultisample_remap_index])
-#define SET_RenderbufferStorageMultisample(disp, fn) SET_by_offset(disp, driDispatchRemapTable[RenderbufferStorageMultisample_remap_index], fn)
-#define CALL_FlushMappedBufferRange(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLintptr, GLsizeiptr)), driDispatchRemapTable[FlushMappedBufferRange_remap_index], parameters)
-#define GET_FlushMappedBufferRange(disp) GET_by_offset(disp, driDispatchRemapTable[FlushMappedBufferRange_remap_index])
-#define SET_FlushMappedBufferRange(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FlushMappedBufferRange_remap_index], fn)
-#define CALL_MapBufferRange(disp, parameters) CALL_by_offset(disp, (GLvoid * (GLAPIENTRYP)(GLenum, GLintptr, GLsizeiptr, GLbitfield)), driDispatchRemapTable[MapBufferRange_remap_index], parameters)
-#define GET_MapBufferRange(disp) GET_by_offset(disp, driDispatchRemapTable[MapBufferRange_remap_index])
-#define SET_MapBufferRange(disp, fn) SET_by_offset(disp, driDispatchRemapTable[MapBufferRange_remap_index], fn)
-#define CALL_BindVertexArray(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[BindVertexArray_remap_index], parameters)
-#define GET_BindVertexArray(disp) GET_by_offset(disp, driDispatchRemapTable[BindVertexArray_remap_index])
-#define SET_BindVertexArray(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindVertexArray_remap_index], fn)
-#define CALL_GenVertexArrays(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), driDispatchRemapTable[GenVertexArrays_remap_index], parameters)
-#define GET_GenVertexArrays(disp) GET_by_offset(disp, driDispatchRemapTable[GenVertexArrays_remap_index])
-#define SET_GenVertexArrays(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenVertexArrays_remap_index], fn)
-#define CALL_CopyBufferSubData(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLintptr, GLintptr, GLsizeiptr)), driDispatchRemapTable[CopyBufferSubData_remap_index], parameters)
-#define GET_CopyBufferSubData(disp) GET_by_offset(disp, driDispatchRemapTable[CopyBufferSubData_remap_index])
-#define SET_CopyBufferSubData(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CopyBufferSubData_remap_index], fn)
-#define CALL_ClientWaitSync(disp, parameters) CALL_by_offset(disp, (GLenum (GLAPIENTRYP)(GLsync, GLbitfield, GLuint64)), driDispatchRemapTable[ClientWaitSync_remap_index], parameters)
-#define GET_ClientWaitSync(disp) GET_by_offset(disp, driDispatchRemapTable[ClientWaitSync_remap_index])
-#define SET_ClientWaitSync(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ClientWaitSync_remap_index], fn)
-#define CALL_DeleteSync(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsync)), driDispatchRemapTable[DeleteSync_remap_index], parameters)
-#define GET_DeleteSync(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteSync_remap_index])
-#define SET_DeleteSync(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteSync_remap_index], fn)
-#define CALL_FenceSync(disp, parameters) CALL_by_offset(disp, (GLsync (GLAPIENTRYP)(GLenum, GLbitfield)), driDispatchRemapTable[FenceSync_remap_index], parameters)
-#define GET_FenceSync(disp) GET_by_offset(disp, driDispatchRemapTable[FenceSync_remap_index])
-#define SET_FenceSync(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FenceSync_remap_index], fn)
-#define CALL_GetInteger64v(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint64 *)), driDispatchRemapTable[GetInteger64v_remap_index], parameters)
-#define GET_GetInteger64v(disp) GET_by_offset(disp, driDispatchRemapTable[GetInteger64v_remap_index])
-#define SET_GetInteger64v(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetInteger64v_remap_index], fn)
-#define CALL_GetSynciv(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsync, GLenum, GLsizei, GLsizei *, GLint *)), driDispatchRemapTable[GetSynciv_remap_index], parameters)
-#define GET_GetSynciv(disp) GET_by_offset(disp, driDispatchRemapTable[GetSynciv_remap_index])
-#define SET_GetSynciv(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetSynciv_remap_index], fn)
-#define CALL_IsSync(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLsync)), driDispatchRemapTable[IsSync_remap_index], parameters)
-#define GET_IsSync(disp) GET_by_offset(disp, driDispatchRemapTable[IsSync_remap_index])
-#define SET_IsSync(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsSync_remap_index], fn)
-#define CALL_WaitSync(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsync, GLbitfield, GLuint64)), driDispatchRemapTable[WaitSync_remap_index], parameters)
-#define GET_WaitSync(disp) GET_by_offset(disp, driDispatchRemapTable[WaitSync_remap_index])
-#define SET_WaitSync(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WaitSync_remap_index], fn)
-#define CALL_DrawElementsBaseVertex(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLenum, const GLvoid *, GLint)), driDispatchRemapTable[DrawElementsBaseVertex_remap_index], parameters)
-#define GET_DrawElementsBaseVertex(disp) GET_by_offset(disp, driDispatchRemapTable[DrawElementsBaseVertex_remap_index])
-#define SET_DrawElementsBaseVertex(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DrawElementsBaseVertex_remap_index], fn)
-#define CALL_DrawRangeElementsBaseVertex(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLsizei, GLenum, const GLvoid *, GLint)), driDispatchRemapTable[DrawRangeElementsBaseVertex_remap_index], parameters)
-#define GET_DrawRangeElementsBaseVertex(disp) GET_by_offset(disp, driDispatchRemapTable[DrawRangeElementsBaseVertex_remap_index])
-#define SET_DrawRangeElementsBaseVertex(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DrawRangeElementsBaseVertex_remap_index], fn)
-#define CALL_MultiDrawElementsBaseVertex(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLsizei *, GLenum, const GLvoid **, GLsizei, const GLint *)), driDispatchRemapTable[MultiDrawElementsBaseVertex_remap_index], parameters)
-#define GET_MultiDrawElementsBaseVertex(disp) GET_by_offset(disp, driDispatchRemapTable[MultiDrawElementsBaseVertex_remap_index])
-#define SET_MultiDrawElementsBaseVertex(disp, fn) SET_by_offset(disp, driDispatchRemapTable[MultiDrawElementsBaseVertex_remap_index], fn)
-#define CALL_PolygonOffsetEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat)), driDispatchRemapTable[PolygonOffsetEXT_remap_index], parameters)
-#define GET_PolygonOffsetEXT(disp) GET_by_offset(disp, driDispatchRemapTable[PolygonOffsetEXT_remap_index])
-#define SET_PolygonOffsetEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PolygonOffsetEXT_remap_index], fn)
-#define CALL_GetPixelTexGenParameterfvSGIS(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat *)), driDispatchRemapTable[GetPixelTexGenParameterfvSGIS_remap_index], parameters)
-#define GET_GetPixelTexGenParameterfvSGIS(disp) GET_by_offset(disp, driDispatchRemapTable[GetPixelTexGenParameterfvSGIS_remap_index])
-#define SET_GetPixelTexGenParameterfvSGIS(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetPixelTexGenParameterfvSGIS_remap_index], fn)
-#define CALL_GetPixelTexGenParameterivSGIS(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint *)), driDispatchRemapTable[GetPixelTexGenParameterivSGIS_remap_index], parameters)
-#define GET_GetPixelTexGenParameterivSGIS(disp) GET_by_offset(disp, driDispatchRemapTable[GetPixelTexGenParameterivSGIS_remap_index])
-#define SET_GetPixelTexGenParameterivSGIS(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetPixelTexGenParameterivSGIS_remap_index], fn)
-#define CALL_PixelTexGenParameterfSGIS(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), driDispatchRemapTable[PixelTexGenParameterfSGIS_remap_index], parameters)
-#define GET_PixelTexGenParameterfSGIS(disp) GET_by_offset(disp, driDispatchRemapTable[PixelTexGenParameterfSGIS_remap_index])
-#define SET_PixelTexGenParameterfSGIS(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PixelTexGenParameterfSGIS_remap_index], fn)
-#define CALL_PixelTexGenParameterfvSGIS(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), driDispatchRemapTable[PixelTexGenParameterfvSGIS_remap_index], parameters)
-#define GET_PixelTexGenParameterfvSGIS(disp) GET_by_offset(disp, driDispatchRemapTable[PixelTexGenParameterfvSGIS_remap_index])
-#define SET_PixelTexGenParameterfvSGIS(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PixelTexGenParameterfvSGIS_remap_index], fn)
-#define CALL_PixelTexGenParameteriSGIS(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint)), driDispatchRemapTable[PixelTexGenParameteriSGIS_remap_index], parameters)
-#define GET_PixelTexGenParameteriSGIS(disp) GET_by_offset(disp, driDispatchRemapTable[PixelTexGenParameteriSGIS_remap_index])
-#define SET_PixelTexGenParameteriSGIS(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PixelTexGenParameteriSGIS_remap_index], fn)
-#define CALL_PixelTexGenParameterivSGIS(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), driDispatchRemapTable[PixelTexGenParameterivSGIS_remap_index], parameters)
-#define GET_PixelTexGenParameterivSGIS(disp) GET_by_offset(disp, driDispatchRemapTable[PixelTexGenParameterivSGIS_remap_index])
-#define SET_PixelTexGenParameterivSGIS(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PixelTexGenParameterivSGIS_remap_index], fn)
-#define CALL_SampleMaskSGIS(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampf, GLboolean)), driDispatchRemapTable[SampleMaskSGIS_remap_index], parameters)
-#define GET_SampleMaskSGIS(disp) GET_by_offset(disp, driDispatchRemapTable[SampleMaskSGIS_remap_index])
-#define SET_SampleMaskSGIS(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SampleMaskSGIS_remap_index], fn)
-#define CALL_SamplePatternSGIS(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[SamplePatternSGIS_remap_index], parameters)
-#define GET_SamplePatternSGIS(disp) GET_by_offset(disp, driDispatchRemapTable[SamplePatternSGIS_remap_index])
-#define SET_SamplePatternSGIS(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SamplePatternSGIS_remap_index], fn)
-#define CALL_ColorPointerEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLenum, GLsizei, GLsizei, const GLvoid *)), driDispatchRemapTable[ColorPointerEXT_remap_index], parameters)
-#define GET_ColorPointerEXT(disp) GET_by_offset(disp, driDispatchRemapTable[ColorPointerEXT_remap_index])
-#define SET_ColorPointerEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ColorPointerEXT_remap_index], fn)
-#define CALL_EdgeFlagPointerEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLsizei, const GLboolean *)), driDispatchRemapTable[EdgeFlagPointerEXT_remap_index], parameters)
-#define GET_EdgeFlagPointerEXT(disp) GET_by_offset(disp, driDispatchRemapTable[EdgeFlagPointerEXT_remap_index])
-#define SET_EdgeFlagPointerEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[EdgeFlagPointerEXT_remap_index], fn)
-#define CALL_IndexPointerEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLsizei, const GLvoid *)), driDispatchRemapTable[IndexPointerEXT_remap_index], parameters)
-#define GET_IndexPointerEXT(disp) GET_by_offset(disp, driDispatchRemapTable[IndexPointerEXT_remap_index])
-#define SET_IndexPointerEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IndexPointerEXT_remap_index], fn)
-#define CALL_NormalPointerEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLsizei, const GLvoid *)), driDispatchRemapTable[NormalPointerEXT_remap_index], parameters)
-#define GET_NormalPointerEXT(disp) GET_by_offset(disp, driDispatchRemapTable[NormalPointerEXT_remap_index])
-#define SET_NormalPointerEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[NormalPointerEXT_remap_index], fn)
-#define CALL_TexCoordPointerEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLenum, GLsizei, GLsizei, const GLvoid *)), driDispatchRemapTable[TexCoordPointerEXT_remap_index], parameters)
-#define GET_TexCoordPointerEXT(disp) GET_by_offset(disp, driDispatchRemapTable[TexCoordPointerEXT_remap_index])
-#define SET_TexCoordPointerEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[TexCoordPointerEXT_remap_index], fn)
-#define CALL_VertexPointerEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLenum, GLsizei, GLsizei, const GLvoid *)), driDispatchRemapTable[VertexPointerEXT_remap_index], parameters)
-#define GET_VertexPointerEXT(disp) GET_by_offset(disp, driDispatchRemapTable[VertexPointerEXT_remap_index])
-#define SET_VertexPointerEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexPointerEXT_remap_index], fn)
-#define CALL_PointParameterfEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), driDispatchRemapTable[PointParameterfEXT_remap_index], parameters)
-#define GET_PointParameterfEXT(disp) GET_by_offset(disp, driDispatchRemapTable[PointParameterfEXT_remap_index])
-#define SET_PointParameterfEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PointParameterfEXT_remap_index], fn)
-#define CALL_PointParameterfvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), driDispatchRemapTable[PointParameterfvEXT_remap_index], parameters)
-#define GET_PointParameterfvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[PointParameterfvEXT_remap_index])
-#define SET_PointParameterfvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PointParameterfvEXT_remap_index], fn)
-#define CALL_LockArraysEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLsizei)), driDispatchRemapTable[LockArraysEXT_remap_index], parameters)
-#define GET_LockArraysEXT(disp) GET_by_offset(disp, driDispatchRemapTable[LockArraysEXT_remap_index])
-#define SET_LockArraysEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[LockArraysEXT_remap_index], fn)
-#define CALL_UnlockArraysEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), driDispatchRemapTable[UnlockArraysEXT_remap_index], parameters)
-#define GET_UnlockArraysEXT(disp) GET_by_offset(disp, driDispatchRemapTable[UnlockArraysEXT_remap_index])
-#define SET_UnlockArraysEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[UnlockArraysEXT_remap_index], fn)
-#define CALL_CullParameterdvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLdouble *)), driDispatchRemapTable[CullParameterdvEXT_remap_index], parameters)
-#define GET_CullParameterdvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[CullParameterdvEXT_remap_index])
-#define SET_CullParameterdvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CullParameterdvEXT_remap_index], fn)
-#define CALL_CullParameterfvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat *)), driDispatchRemapTable[CullParameterfvEXT_remap_index], parameters)
-#define GET_CullParameterfvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[CullParameterfvEXT_remap_index])
-#define SET_CullParameterfvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CullParameterfvEXT_remap_index], fn)
-#define CALL_SecondaryColor3bEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLbyte, GLbyte, GLbyte)), driDispatchRemapTable[SecondaryColor3bEXT_remap_index], parameters)
-#define GET_SecondaryColor3bEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3bEXT_remap_index])
-#define SET_SecondaryColor3bEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3bEXT_remap_index], fn)
-#define CALL_SecondaryColor3bvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLbyte *)), driDispatchRemapTable[SecondaryColor3bvEXT_remap_index], parameters)
-#define GET_SecondaryColor3bvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3bvEXT_remap_index])
-#define SET_SecondaryColor3bvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3bvEXT_remap_index], fn)
-#define CALL_SecondaryColor3dEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[SecondaryColor3dEXT_remap_index], parameters)
-#define GET_SecondaryColor3dEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3dEXT_remap_index])
-#define SET_SecondaryColor3dEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3dEXT_remap_index], fn)
-#define CALL_SecondaryColor3dvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), driDispatchRemapTable[SecondaryColor3dvEXT_remap_index], parameters)
-#define GET_SecondaryColor3dvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3dvEXT_remap_index])
-#define SET_SecondaryColor3dvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3dvEXT_remap_index], fn)
-#define CALL_SecondaryColor3fEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[SecondaryColor3fEXT_remap_index], parameters)
-#define GET_SecondaryColor3fEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3fEXT_remap_index])
-#define SET_SecondaryColor3fEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3fEXT_remap_index], fn)
-#define CALL_SecondaryColor3fvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), driDispatchRemapTable[SecondaryColor3fvEXT_remap_index], parameters)
-#define GET_SecondaryColor3fvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3fvEXT_remap_index])
-#define SET_SecondaryColor3fvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3fvEXT_remap_index], fn)
-#define CALL_SecondaryColor3iEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint)), driDispatchRemapTable[SecondaryColor3iEXT_remap_index], parameters)
-#define GET_SecondaryColor3iEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3iEXT_remap_index])
-#define SET_SecondaryColor3iEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3iEXT_remap_index], fn)
-#define CALL_SecondaryColor3ivEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), driDispatchRemapTable[SecondaryColor3ivEXT_remap_index], parameters)
-#define GET_SecondaryColor3ivEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3ivEXT_remap_index])
-#define SET_SecondaryColor3ivEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3ivEXT_remap_index], fn)
-#define CALL_SecondaryColor3sEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort)), driDispatchRemapTable[SecondaryColor3sEXT_remap_index], parameters)
-#define GET_SecondaryColor3sEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3sEXT_remap_index])
-#define SET_SecondaryColor3sEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3sEXT_remap_index], fn)
-#define CALL_SecondaryColor3svEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), driDispatchRemapTable[SecondaryColor3svEXT_remap_index], parameters)
-#define GET_SecondaryColor3svEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3svEXT_remap_index])
-#define SET_SecondaryColor3svEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3svEXT_remap_index], fn)
-#define CALL_SecondaryColor3ubEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLubyte, GLubyte, GLubyte)), driDispatchRemapTable[SecondaryColor3ubEXT_remap_index], parameters)
-#define GET_SecondaryColor3ubEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3ubEXT_remap_index])
-#define SET_SecondaryColor3ubEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3ubEXT_remap_index], fn)
-#define CALL_SecondaryColor3ubvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLubyte *)), driDispatchRemapTable[SecondaryColor3ubvEXT_remap_index], parameters)
-#define GET_SecondaryColor3ubvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3ubvEXT_remap_index])
-#define SET_SecondaryColor3ubvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3ubvEXT_remap_index], fn)
-#define CALL_SecondaryColor3uiEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint, GLuint)), driDispatchRemapTable[SecondaryColor3uiEXT_remap_index], parameters)
-#define GET_SecondaryColor3uiEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3uiEXT_remap_index])
-#define SET_SecondaryColor3uiEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3uiEXT_remap_index], fn)
-#define CALL_SecondaryColor3uivEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLuint *)), driDispatchRemapTable[SecondaryColor3uivEXT_remap_index], parameters)
-#define GET_SecondaryColor3uivEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3uivEXT_remap_index])
-#define SET_SecondaryColor3uivEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3uivEXT_remap_index], fn)
-#define CALL_SecondaryColor3usEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLushort, GLushort, GLushort)), driDispatchRemapTable[SecondaryColor3usEXT_remap_index], parameters)
-#define GET_SecondaryColor3usEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3usEXT_remap_index])
-#define SET_SecondaryColor3usEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3usEXT_remap_index], fn)
-#define CALL_SecondaryColor3usvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLushort *)), driDispatchRemapTable[SecondaryColor3usvEXT_remap_index], parameters)
-#define GET_SecondaryColor3usvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColor3usvEXT_remap_index])
-#define SET_SecondaryColor3usvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColor3usvEXT_remap_index], fn)
-#define CALL_SecondaryColorPointerEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLenum, GLsizei, const GLvoid *)), driDispatchRemapTable[SecondaryColorPointerEXT_remap_index], parameters)
-#define GET_SecondaryColorPointerEXT(disp) GET_by_offset(disp, driDispatchRemapTable[SecondaryColorPointerEXT_remap_index])
-#define SET_SecondaryColorPointerEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SecondaryColorPointerEXT_remap_index], fn)
-#define CALL_MultiDrawArraysEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint *, GLsizei *, GLsizei)), driDispatchRemapTable[MultiDrawArraysEXT_remap_index], parameters)
-#define GET_MultiDrawArraysEXT(disp) GET_by_offset(disp, driDispatchRemapTable[MultiDrawArraysEXT_remap_index])
-#define SET_MultiDrawArraysEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[MultiDrawArraysEXT_remap_index], fn)
-#define CALL_MultiDrawElementsEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLsizei *, GLenum, const GLvoid **, GLsizei)), driDispatchRemapTable[MultiDrawElementsEXT_remap_index], parameters)
-#define GET_MultiDrawElementsEXT(disp) GET_by_offset(disp, driDispatchRemapTable[MultiDrawElementsEXT_remap_index])
-#define SET_MultiDrawElementsEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[MultiDrawElementsEXT_remap_index], fn)
-#define CALL_FogCoordPointerEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, const GLvoid *)), driDispatchRemapTable[FogCoordPointerEXT_remap_index], parameters)
-#define GET_FogCoordPointerEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FogCoordPointerEXT_remap_index])
-#define SET_FogCoordPointerEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FogCoordPointerEXT_remap_index], fn)
-#define CALL_FogCoorddEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble)), driDispatchRemapTable[FogCoorddEXT_remap_index], parameters)
-#define GET_FogCoorddEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FogCoorddEXT_remap_index])
-#define SET_FogCoorddEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FogCoorddEXT_remap_index], fn)
-#define CALL_FogCoorddvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), driDispatchRemapTable[FogCoorddvEXT_remap_index], parameters)
-#define GET_FogCoorddvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FogCoorddvEXT_remap_index])
-#define SET_FogCoorddvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FogCoorddvEXT_remap_index], fn)
-#define CALL_FogCoordfEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat)), driDispatchRemapTable[FogCoordfEXT_remap_index], parameters)
-#define GET_FogCoordfEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FogCoordfEXT_remap_index])
-#define SET_FogCoordfEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FogCoordfEXT_remap_index], fn)
-#define CALL_FogCoordfvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), driDispatchRemapTable[FogCoordfvEXT_remap_index], parameters)
-#define GET_FogCoordfvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FogCoordfvEXT_remap_index])
-#define SET_FogCoordfvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FogCoordfvEXT_remap_index], fn)
-#define CALL_PixelTexGenSGIX(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[PixelTexGenSGIX_remap_index], parameters)
-#define GET_PixelTexGenSGIX(disp) GET_by_offset(disp, driDispatchRemapTable[PixelTexGenSGIX_remap_index])
-#define SET_PixelTexGenSGIX(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PixelTexGenSGIX_remap_index], fn)
-#define CALL_BlendFuncSeparateEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLenum)), driDispatchRemapTable[BlendFuncSeparateEXT_remap_index], parameters)
-#define GET_BlendFuncSeparateEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BlendFuncSeparateEXT_remap_index])
-#define SET_BlendFuncSeparateEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BlendFuncSeparateEXT_remap_index], fn)
-#define CALL_FlushVertexArrayRangeNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), driDispatchRemapTable[FlushVertexArrayRangeNV_remap_index], parameters)
-#define GET_FlushVertexArrayRangeNV(disp) GET_by_offset(disp, driDispatchRemapTable[FlushVertexArrayRangeNV_remap_index])
-#define SET_FlushVertexArrayRangeNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FlushVertexArrayRangeNV_remap_index], fn)
-#define CALL_VertexArrayRangeNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLvoid *)), driDispatchRemapTable[VertexArrayRangeNV_remap_index], parameters)
-#define GET_VertexArrayRangeNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexArrayRangeNV_remap_index])
-#define SET_VertexArrayRangeNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexArrayRangeNV_remap_index], fn)
-#define CALL_CombinerInputNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLenum, GLenum, GLenum)), driDispatchRemapTable[CombinerInputNV_remap_index], parameters)
-#define GET_CombinerInputNV(disp) GET_by_offset(disp, driDispatchRemapTable[CombinerInputNV_remap_index])
-#define SET_CombinerInputNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CombinerInputNV_remap_index], fn)
-#define CALL_CombinerOutputNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLenum, GLenum, GLenum, GLenum, GLboolean, GLboolean, GLboolean)), driDispatchRemapTable[CombinerOutputNV_remap_index], parameters)
-#define GET_CombinerOutputNV(disp) GET_by_offset(disp, driDispatchRemapTable[CombinerOutputNV_remap_index])
-#define SET_CombinerOutputNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CombinerOutputNV_remap_index], fn)
-#define CALL_CombinerParameterfNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat)), driDispatchRemapTable[CombinerParameterfNV_remap_index], parameters)
-#define GET_CombinerParameterfNV(disp) GET_by_offset(disp, driDispatchRemapTable[CombinerParameterfNV_remap_index])
-#define SET_CombinerParameterfNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CombinerParameterfNV_remap_index], fn)
-#define CALL_CombinerParameterfvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), driDispatchRemapTable[CombinerParameterfvNV_remap_index], parameters)
-#define GET_CombinerParameterfvNV(disp) GET_by_offset(disp, driDispatchRemapTable[CombinerParameterfvNV_remap_index])
-#define SET_CombinerParameterfvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CombinerParameterfvNV_remap_index], fn)
-#define CALL_CombinerParameteriNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint)), driDispatchRemapTable[CombinerParameteriNV_remap_index], parameters)
-#define GET_CombinerParameteriNV(disp) GET_by_offset(disp, driDispatchRemapTable[CombinerParameteriNV_remap_index])
-#define SET_CombinerParameteriNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CombinerParameteriNV_remap_index], fn)
-#define CALL_CombinerParameterivNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), driDispatchRemapTable[CombinerParameterivNV_remap_index], parameters)
-#define GET_CombinerParameterivNV(disp) GET_by_offset(disp, driDispatchRemapTable[CombinerParameterivNV_remap_index])
-#define SET_CombinerParameterivNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CombinerParameterivNV_remap_index], fn)
-#define CALL_FinalCombinerInputNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLenum)), driDispatchRemapTable[FinalCombinerInputNV_remap_index], parameters)
-#define GET_FinalCombinerInputNV(disp) GET_by_offset(disp, driDispatchRemapTable[FinalCombinerInputNV_remap_index])
-#define SET_FinalCombinerInputNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FinalCombinerInputNV_remap_index], fn)
-#define CALL_GetCombinerInputParameterfvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLenum, GLfloat *)), driDispatchRemapTable[GetCombinerInputParameterfvNV_remap_index], parameters)
-#define GET_GetCombinerInputParameterfvNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetCombinerInputParameterfvNV_remap_index])
-#define SET_GetCombinerInputParameterfvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetCombinerInputParameterfvNV_remap_index], fn)
-#define CALL_GetCombinerInputParameterivNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLenum, GLint *)), driDispatchRemapTable[GetCombinerInputParameterivNV_remap_index], parameters)
-#define GET_GetCombinerInputParameterivNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetCombinerInputParameterivNV_remap_index])
-#define SET_GetCombinerInputParameterivNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetCombinerInputParameterivNV_remap_index], fn)
-#define CALL_GetCombinerOutputParameterfvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLfloat *)), driDispatchRemapTable[GetCombinerOutputParameterfvNV_remap_index], parameters)
-#define GET_GetCombinerOutputParameterfvNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetCombinerOutputParameterfvNV_remap_index])
-#define SET_GetCombinerOutputParameterfvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetCombinerOutputParameterfvNV_remap_index], fn)
-#define CALL_GetCombinerOutputParameterivNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLint *)), driDispatchRemapTable[GetCombinerOutputParameterivNV_remap_index], parameters)
-#define GET_GetCombinerOutputParameterivNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetCombinerOutputParameterivNV_remap_index])
-#define SET_GetCombinerOutputParameterivNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetCombinerOutputParameterivNV_remap_index], fn)
-#define CALL_GetFinalCombinerInputParameterfvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLfloat *)), driDispatchRemapTable[GetFinalCombinerInputParameterfvNV_remap_index], parameters)
-#define GET_GetFinalCombinerInputParameterfvNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetFinalCombinerInputParameterfvNV_remap_index])
-#define SET_GetFinalCombinerInputParameterfvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetFinalCombinerInputParameterfvNV_remap_index], fn)
-#define CALL_GetFinalCombinerInputParameterivNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), driDispatchRemapTable[GetFinalCombinerInputParameterivNV_remap_index], parameters)
-#define GET_GetFinalCombinerInputParameterivNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetFinalCombinerInputParameterivNV_remap_index])
-#define SET_GetFinalCombinerInputParameterivNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetFinalCombinerInputParameterivNV_remap_index], fn)
-#define CALL_ResizeBuffersMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), driDispatchRemapTable[ResizeBuffersMESA_remap_index], parameters)
-#define GET_ResizeBuffersMESA(disp) GET_by_offset(disp, driDispatchRemapTable[ResizeBuffersMESA_remap_index])
-#define SET_ResizeBuffersMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ResizeBuffersMESA_remap_index], fn)
-#define CALL_WindowPos2dMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble)), driDispatchRemapTable[WindowPos2dMESA_remap_index], parameters)
-#define GET_WindowPos2dMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos2dMESA_remap_index])
-#define SET_WindowPos2dMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos2dMESA_remap_index], fn)
-#define CALL_WindowPos2dvMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), driDispatchRemapTable[WindowPos2dvMESA_remap_index], parameters)
-#define GET_WindowPos2dvMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos2dvMESA_remap_index])
-#define SET_WindowPos2dvMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos2dvMESA_remap_index], fn)
-#define CALL_WindowPos2fMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat)), driDispatchRemapTable[WindowPos2fMESA_remap_index], parameters)
-#define GET_WindowPos2fMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos2fMESA_remap_index])
-#define SET_WindowPos2fMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos2fMESA_remap_index], fn)
-#define CALL_WindowPos2fvMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), driDispatchRemapTable[WindowPos2fvMESA_remap_index], parameters)
-#define GET_WindowPos2fvMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos2fvMESA_remap_index])
-#define SET_WindowPos2fvMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos2fvMESA_remap_index], fn)
-#define CALL_WindowPos2iMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint)), driDispatchRemapTable[WindowPos2iMESA_remap_index], parameters)
-#define GET_WindowPos2iMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos2iMESA_remap_index])
-#define SET_WindowPos2iMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos2iMESA_remap_index], fn)
-#define CALL_WindowPos2ivMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), driDispatchRemapTable[WindowPos2ivMESA_remap_index], parameters)
-#define GET_WindowPos2ivMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos2ivMESA_remap_index])
-#define SET_WindowPos2ivMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos2ivMESA_remap_index], fn)
-#define CALL_WindowPos2sMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort)), driDispatchRemapTable[WindowPos2sMESA_remap_index], parameters)
-#define GET_WindowPos2sMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos2sMESA_remap_index])
-#define SET_WindowPos2sMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos2sMESA_remap_index], fn)
-#define CALL_WindowPos2svMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), driDispatchRemapTable[WindowPos2svMESA_remap_index], parameters)
-#define GET_WindowPos2svMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos2svMESA_remap_index])
-#define SET_WindowPos2svMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos2svMESA_remap_index], fn)
-#define CALL_WindowPos3dMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[WindowPos3dMESA_remap_index], parameters)
-#define GET_WindowPos3dMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos3dMESA_remap_index])
-#define SET_WindowPos3dMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos3dMESA_remap_index], fn)
-#define CALL_WindowPos3dvMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), driDispatchRemapTable[WindowPos3dvMESA_remap_index], parameters)
-#define GET_WindowPos3dvMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos3dvMESA_remap_index])
-#define SET_WindowPos3dvMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos3dvMESA_remap_index], fn)
-#define CALL_WindowPos3fMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[WindowPos3fMESA_remap_index], parameters)
-#define GET_WindowPos3fMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos3fMESA_remap_index])
-#define SET_WindowPos3fMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos3fMESA_remap_index], fn)
-#define CALL_WindowPos3fvMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), driDispatchRemapTable[WindowPos3fvMESA_remap_index], parameters)
-#define GET_WindowPos3fvMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos3fvMESA_remap_index])
-#define SET_WindowPos3fvMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos3fvMESA_remap_index], fn)
-#define CALL_WindowPos3iMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint)), driDispatchRemapTable[WindowPos3iMESA_remap_index], parameters)
-#define GET_WindowPos3iMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos3iMESA_remap_index])
-#define SET_WindowPos3iMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos3iMESA_remap_index], fn)
-#define CALL_WindowPos3ivMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), driDispatchRemapTable[WindowPos3ivMESA_remap_index], parameters)
-#define GET_WindowPos3ivMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos3ivMESA_remap_index])
-#define SET_WindowPos3ivMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos3ivMESA_remap_index], fn)
-#define CALL_WindowPos3sMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort)), driDispatchRemapTable[WindowPos3sMESA_remap_index], parameters)
-#define GET_WindowPos3sMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos3sMESA_remap_index])
-#define SET_WindowPos3sMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos3sMESA_remap_index], fn)
-#define CALL_WindowPos3svMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), driDispatchRemapTable[WindowPos3svMESA_remap_index], parameters)
-#define GET_WindowPos3svMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos3svMESA_remap_index])
-#define SET_WindowPos3svMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos3svMESA_remap_index], fn)
-#define CALL_WindowPos4dMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLdouble, GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[WindowPos4dMESA_remap_index], parameters)
-#define GET_WindowPos4dMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos4dMESA_remap_index])
-#define SET_WindowPos4dMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos4dMESA_remap_index], fn)
-#define CALL_WindowPos4dvMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLdouble *)), driDispatchRemapTable[WindowPos4dvMESA_remap_index], parameters)
-#define GET_WindowPos4dvMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos4dvMESA_remap_index])
-#define SET_WindowPos4dvMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos4dvMESA_remap_index], fn)
-#define CALL_WindowPos4fMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLfloat, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[WindowPos4fMESA_remap_index], parameters)
-#define GET_WindowPos4fMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos4fMESA_remap_index])
-#define SET_WindowPos4fMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos4fMESA_remap_index], fn)
-#define CALL_WindowPos4fvMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLfloat *)), driDispatchRemapTable[WindowPos4fvMESA_remap_index], parameters)
-#define GET_WindowPos4fvMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos4fvMESA_remap_index])
-#define SET_WindowPos4fvMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos4fvMESA_remap_index], fn)
-#define CALL_WindowPos4iMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint)), driDispatchRemapTable[WindowPos4iMESA_remap_index], parameters)
-#define GET_WindowPos4iMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos4iMESA_remap_index])
-#define SET_WindowPos4iMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos4iMESA_remap_index], fn)
-#define CALL_WindowPos4ivMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLint *)), driDispatchRemapTable[WindowPos4ivMESA_remap_index], parameters)
-#define GET_WindowPos4ivMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos4ivMESA_remap_index])
-#define SET_WindowPos4ivMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos4ivMESA_remap_index], fn)
-#define CALL_WindowPos4sMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLshort, GLshort, GLshort, GLshort)), driDispatchRemapTable[WindowPos4sMESA_remap_index], parameters)
-#define GET_WindowPos4sMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos4sMESA_remap_index])
-#define SET_WindowPos4sMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos4sMESA_remap_index], fn)
-#define CALL_WindowPos4svMESA(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLshort *)), driDispatchRemapTable[WindowPos4svMESA_remap_index], parameters)
-#define GET_WindowPos4svMESA(disp) GET_by_offset(disp, driDispatchRemapTable[WindowPos4svMESA_remap_index])
-#define SET_WindowPos4svMESA(disp, fn) SET_by_offset(disp, driDispatchRemapTable[WindowPos4svMESA_remap_index], fn)
-#define CALL_MultiModeDrawArraysIBM(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLenum *, const GLint *, const GLsizei *, GLsizei, GLint)), driDispatchRemapTable[MultiModeDrawArraysIBM_remap_index], parameters)
-#define GET_MultiModeDrawArraysIBM(disp) GET_by_offset(disp, driDispatchRemapTable[MultiModeDrawArraysIBM_remap_index])
-#define SET_MultiModeDrawArraysIBM(disp, fn) SET_by_offset(disp, driDispatchRemapTable[MultiModeDrawArraysIBM_remap_index], fn)
-#define CALL_MultiModeDrawElementsIBM(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(const GLenum *, const GLsizei *, GLenum, const GLvoid * const *, GLsizei, GLint)), driDispatchRemapTable[MultiModeDrawElementsIBM_remap_index], parameters)
-#define GET_MultiModeDrawElementsIBM(disp) GET_by_offset(disp, driDispatchRemapTable[MultiModeDrawElementsIBM_remap_index])
-#define SET_MultiModeDrawElementsIBM(disp, fn) SET_by_offset(disp, driDispatchRemapTable[MultiModeDrawElementsIBM_remap_index], fn)
-#define CALL_DeleteFencesNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), driDispatchRemapTable[DeleteFencesNV_remap_index], parameters)
-#define GET_DeleteFencesNV(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteFencesNV_remap_index])
-#define SET_DeleteFencesNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteFencesNV_remap_index], fn)
-#define CALL_FinishFenceNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[FinishFenceNV_remap_index], parameters)
-#define GET_FinishFenceNV(disp) GET_by_offset(disp, driDispatchRemapTable[FinishFenceNV_remap_index])
-#define SET_FinishFenceNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FinishFenceNV_remap_index], fn)
-#define CALL_GenFencesNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), driDispatchRemapTable[GenFencesNV_remap_index], parameters)
-#define GET_GenFencesNV(disp) GET_by_offset(disp, driDispatchRemapTable[GenFencesNV_remap_index])
-#define SET_GenFencesNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenFencesNV_remap_index], fn)
-#define CALL_GetFenceivNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), driDispatchRemapTable[GetFenceivNV_remap_index], parameters)
-#define GET_GetFenceivNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetFenceivNV_remap_index])
-#define SET_GetFenceivNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetFenceivNV_remap_index], fn)
-#define CALL_IsFenceNV(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[IsFenceNV_remap_index], parameters)
-#define GET_IsFenceNV(disp) GET_by_offset(disp, driDispatchRemapTable[IsFenceNV_remap_index])
-#define SET_IsFenceNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsFenceNV_remap_index], fn)
-#define CALL_SetFenceNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum)), driDispatchRemapTable[SetFenceNV_remap_index], parameters)
-#define GET_SetFenceNV(disp) GET_by_offset(disp, driDispatchRemapTable[SetFenceNV_remap_index])
-#define SET_SetFenceNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SetFenceNV_remap_index], fn)
-#define CALL_TestFenceNV(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[TestFenceNV_remap_index], parameters)
-#define GET_TestFenceNV(disp) GET_by_offset(disp, driDispatchRemapTable[TestFenceNV_remap_index])
-#define SET_TestFenceNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[TestFenceNV_remap_index], fn)
-#define CALL_AreProgramsResidentNV(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLsizei, const GLuint *, GLboolean *)), driDispatchRemapTable[AreProgramsResidentNV_remap_index], parameters)
-#define GET_AreProgramsResidentNV(disp) GET_by_offset(disp, driDispatchRemapTable[AreProgramsResidentNV_remap_index])
-#define SET_AreProgramsResidentNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[AreProgramsResidentNV_remap_index], fn)
-#define CALL_BindProgramNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), driDispatchRemapTable[BindProgramNV_remap_index], parameters)
-#define GET_BindProgramNV(disp) GET_by_offset(disp, driDispatchRemapTable[BindProgramNV_remap_index])
-#define SET_BindProgramNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindProgramNV_remap_index], fn)
-#define CALL_DeleteProgramsNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), driDispatchRemapTable[DeleteProgramsNV_remap_index], parameters)
-#define GET_DeleteProgramsNV(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteProgramsNV_remap_index])
-#define SET_DeleteProgramsNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteProgramsNV_remap_index], fn)
-#define CALL_ExecuteProgramNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, const GLfloat *)), driDispatchRemapTable[ExecuteProgramNV_remap_index], parameters)
-#define GET_ExecuteProgramNV(disp) GET_by_offset(disp, driDispatchRemapTable[ExecuteProgramNV_remap_index])
-#define SET_ExecuteProgramNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ExecuteProgramNV_remap_index], fn)
-#define CALL_GenProgramsNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), driDispatchRemapTable[GenProgramsNV_remap_index], parameters)
-#define GET_GenProgramsNV(disp) GET_by_offset(disp, driDispatchRemapTable[GenProgramsNV_remap_index])
-#define SET_GenProgramsNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenProgramsNV_remap_index], fn)
-#define CALL_GetProgramParameterdvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLenum, GLdouble *)), driDispatchRemapTable[GetProgramParameterdvNV_remap_index], parameters)
-#define GET_GetProgramParameterdvNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramParameterdvNV_remap_index])
-#define SET_GetProgramParameterdvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramParameterdvNV_remap_index], fn)
-#define CALL_GetProgramParameterfvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLenum, GLfloat *)), driDispatchRemapTable[GetProgramParameterfvNV_remap_index], parameters)
-#define GET_GetProgramParameterfvNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramParameterfvNV_remap_index])
-#define SET_GetProgramParameterfvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramParameterfvNV_remap_index], fn)
-#define CALL_GetProgramStringNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLubyte *)), driDispatchRemapTable[GetProgramStringNV_remap_index], parameters)
-#define GET_GetProgramStringNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramStringNV_remap_index])
-#define SET_GetProgramStringNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramStringNV_remap_index], fn)
-#define CALL_GetProgramivNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), driDispatchRemapTable[GetProgramivNV_remap_index], parameters)
-#define GET_GetProgramivNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramivNV_remap_index])
-#define SET_GetProgramivNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramivNV_remap_index], fn)
-#define CALL_GetTrackMatrixivNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLenum, GLint *)), driDispatchRemapTable[GetTrackMatrixivNV_remap_index], parameters)
-#define GET_GetTrackMatrixivNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetTrackMatrixivNV_remap_index])
-#define SET_GetTrackMatrixivNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetTrackMatrixivNV_remap_index], fn)
-#define CALL_GetVertexAttribPointervNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLvoid **)), driDispatchRemapTable[GetVertexAttribPointervNV_remap_index], parameters)
-#define GET_GetVertexAttribPointervNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetVertexAttribPointervNV_remap_index])
-#define SET_GetVertexAttribPointervNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetVertexAttribPointervNV_remap_index], fn)
-#define CALL_GetVertexAttribdvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLdouble *)), driDispatchRemapTable[GetVertexAttribdvNV_remap_index], parameters)
-#define GET_GetVertexAttribdvNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetVertexAttribdvNV_remap_index])
-#define SET_GetVertexAttribdvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetVertexAttribdvNV_remap_index], fn)
-#define CALL_GetVertexAttribfvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLfloat *)), driDispatchRemapTable[GetVertexAttribfvNV_remap_index], parameters)
-#define GET_GetVertexAttribfvNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetVertexAttribfvNV_remap_index])
-#define SET_GetVertexAttribfvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetVertexAttribfvNV_remap_index], fn)
-#define CALL_GetVertexAttribivNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint *)), driDispatchRemapTable[GetVertexAttribivNV_remap_index], parameters)
-#define GET_GetVertexAttribivNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetVertexAttribivNV_remap_index])
-#define SET_GetVertexAttribivNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetVertexAttribivNV_remap_index], fn)
-#define CALL_IsProgramNV(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[IsProgramNV_remap_index], parameters)
-#define GET_IsProgramNV(disp) GET_by_offset(disp, driDispatchRemapTable[IsProgramNV_remap_index])
-#define SET_IsProgramNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsProgramNV_remap_index], fn)
-#define CALL_LoadProgramNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLsizei, const GLubyte *)), driDispatchRemapTable[LoadProgramNV_remap_index], parameters)
-#define GET_LoadProgramNV(disp) GET_by_offset(disp, driDispatchRemapTable[LoadProgramNV_remap_index])
-#define SET_LoadProgramNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[LoadProgramNV_remap_index], fn)
-#define CALL_ProgramParameters4dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, const GLdouble *)), driDispatchRemapTable[ProgramParameters4dvNV_remap_index], parameters)
-#define GET_ProgramParameters4dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramParameters4dvNV_remap_index])
-#define SET_ProgramParameters4dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramParameters4dvNV_remap_index], fn)
-#define CALL_ProgramParameters4fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, const GLfloat *)), driDispatchRemapTable[ProgramParameters4fvNV_remap_index], parameters)
-#define GET_ProgramParameters4fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramParameters4fvNV_remap_index])
-#define SET_ProgramParameters4fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramParameters4fvNV_remap_index], fn)
-#define CALL_RequestResidentProgramsNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), driDispatchRemapTable[RequestResidentProgramsNV_remap_index], parameters)
-#define GET_RequestResidentProgramsNV(disp) GET_by_offset(disp, driDispatchRemapTable[RequestResidentProgramsNV_remap_index])
-#define SET_RequestResidentProgramsNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[RequestResidentProgramsNV_remap_index], fn)
-#define CALL_TrackMatrixNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLenum, GLenum)), driDispatchRemapTable[TrackMatrixNV_remap_index], parameters)
-#define GET_TrackMatrixNV(disp) GET_by_offset(disp, driDispatchRemapTable[TrackMatrixNV_remap_index])
-#define SET_TrackMatrixNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[TrackMatrixNV_remap_index], fn)
-#define CALL_VertexAttrib1dNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLdouble)), driDispatchRemapTable[VertexAttrib1dNV_remap_index], parameters)
-#define GET_VertexAttrib1dNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1dNV_remap_index])
-#define SET_VertexAttrib1dNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1dNV_remap_index], fn)
-#define CALL_VertexAttrib1dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLdouble *)), driDispatchRemapTable[VertexAttrib1dvNV_remap_index], parameters)
-#define GET_VertexAttrib1dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1dvNV_remap_index])
-#define SET_VertexAttrib1dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1dvNV_remap_index], fn)
-#define CALL_VertexAttrib1fNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat)), driDispatchRemapTable[VertexAttrib1fNV_remap_index], parameters)
-#define GET_VertexAttrib1fNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1fNV_remap_index])
-#define SET_VertexAttrib1fNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1fNV_remap_index], fn)
-#define CALL_VertexAttrib1fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), driDispatchRemapTable[VertexAttrib1fvNV_remap_index], parameters)
-#define GET_VertexAttrib1fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1fvNV_remap_index])
-#define SET_VertexAttrib1fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1fvNV_remap_index], fn)
-#define CALL_VertexAttrib1sNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLshort)), driDispatchRemapTable[VertexAttrib1sNV_remap_index], parameters)
-#define GET_VertexAttrib1sNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1sNV_remap_index])
-#define SET_VertexAttrib1sNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1sNV_remap_index], fn)
-#define CALL_VertexAttrib1svNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLshort *)), driDispatchRemapTable[VertexAttrib1svNV_remap_index], parameters)
-#define GET_VertexAttrib1svNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib1svNV_remap_index])
-#define SET_VertexAttrib1svNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib1svNV_remap_index], fn)
-#define CALL_VertexAttrib2dNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLdouble, GLdouble)), driDispatchRemapTable[VertexAttrib2dNV_remap_index], parameters)
-#define GET_VertexAttrib2dNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2dNV_remap_index])
-#define SET_VertexAttrib2dNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2dNV_remap_index], fn)
-#define CALL_VertexAttrib2dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLdouble *)), driDispatchRemapTable[VertexAttrib2dvNV_remap_index], parameters)
-#define GET_VertexAttrib2dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2dvNV_remap_index])
-#define SET_VertexAttrib2dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2dvNV_remap_index], fn)
-#define CALL_VertexAttrib2fNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat, GLfloat)), driDispatchRemapTable[VertexAttrib2fNV_remap_index], parameters)
-#define GET_VertexAttrib2fNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2fNV_remap_index])
-#define SET_VertexAttrib2fNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2fNV_remap_index], fn)
-#define CALL_VertexAttrib2fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), driDispatchRemapTable[VertexAttrib2fvNV_remap_index], parameters)
-#define GET_VertexAttrib2fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2fvNV_remap_index])
-#define SET_VertexAttrib2fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2fvNV_remap_index], fn)
-#define CALL_VertexAttrib2sNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLshort, GLshort)), driDispatchRemapTable[VertexAttrib2sNV_remap_index], parameters)
-#define GET_VertexAttrib2sNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2sNV_remap_index])
-#define SET_VertexAttrib2sNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2sNV_remap_index], fn)
-#define CALL_VertexAttrib2svNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLshort *)), driDispatchRemapTable[VertexAttrib2svNV_remap_index], parameters)
-#define GET_VertexAttrib2svNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib2svNV_remap_index])
-#define SET_VertexAttrib2svNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib2svNV_remap_index], fn)
-#define CALL_VertexAttrib3dNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[VertexAttrib3dNV_remap_index], parameters)
-#define GET_VertexAttrib3dNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3dNV_remap_index])
-#define SET_VertexAttrib3dNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3dNV_remap_index], fn)
-#define CALL_VertexAttrib3dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLdouble *)), driDispatchRemapTable[VertexAttrib3dvNV_remap_index], parameters)
-#define GET_VertexAttrib3dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3dvNV_remap_index])
-#define SET_VertexAttrib3dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3dvNV_remap_index], fn)
-#define CALL_VertexAttrib3fNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[VertexAttrib3fNV_remap_index], parameters)
-#define GET_VertexAttrib3fNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3fNV_remap_index])
-#define SET_VertexAttrib3fNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3fNV_remap_index], fn)
-#define CALL_VertexAttrib3fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), driDispatchRemapTable[VertexAttrib3fvNV_remap_index], parameters)
-#define GET_VertexAttrib3fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3fvNV_remap_index])
-#define SET_VertexAttrib3fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3fvNV_remap_index], fn)
-#define CALL_VertexAttrib3sNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLshort, GLshort, GLshort)), driDispatchRemapTable[VertexAttrib3sNV_remap_index], parameters)
-#define GET_VertexAttrib3sNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3sNV_remap_index])
-#define SET_VertexAttrib3sNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3sNV_remap_index], fn)
-#define CALL_VertexAttrib3svNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLshort *)), driDispatchRemapTable[VertexAttrib3svNV_remap_index], parameters)
-#define GET_VertexAttrib3svNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib3svNV_remap_index])
-#define SET_VertexAttrib3svNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib3svNV_remap_index], fn)
-#define CALL_VertexAttrib4dNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLdouble, GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[VertexAttrib4dNV_remap_index], parameters)
-#define GET_VertexAttrib4dNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4dNV_remap_index])
-#define SET_VertexAttrib4dNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4dNV_remap_index], fn)
-#define CALL_VertexAttrib4dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLdouble *)), driDispatchRemapTable[VertexAttrib4dvNV_remap_index], parameters)
-#define GET_VertexAttrib4dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4dvNV_remap_index])
-#define SET_VertexAttrib4dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4dvNV_remap_index], fn)
-#define CALL_VertexAttrib4fNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLfloat, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[VertexAttrib4fNV_remap_index], parameters)
-#define GET_VertexAttrib4fNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4fNV_remap_index])
-#define SET_VertexAttrib4fNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4fNV_remap_index], fn)
-#define CALL_VertexAttrib4fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), driDispatchRemapTable[VertexAttrib4fvNV_remap_index], parameters)
-#define GET_VertexAttrib4fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4fvNV_remap_index])
-#define SET_VertexAttrib4fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4fvNV_remap_index], fn)
-#define CALL_VertexAttrib4sNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLshort, GLshort, GLshort, GLshort)), driDispatchRemapTable[VertexAttrib4sNV_remap_index], parameters)
-#define GET_VertexAttrib4sNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4sNV_remap_index])
-#define SET_VertexAttrib4sNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4sNV_remap_index], fn)
-#define CALL_VertexAttrib4svNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLshort *)), driDispatchRemapTable[VertexAttrib4svNV_remap_index], parameters)
-#define GET_VertexAttrib4svNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4svNV_remap_index])
-#define SET_VertexAttrib4svNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4svNV_remap_index], fn)
-#define CALL_VertexAttrib4ubNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLubyte, GLubyte, GLubyte, GLubyte)), driDispatchRemapTable[VertexAttrib4ubNV_remap_index], parameters)
-#define GET_VertexAttrib4ubNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4ubNV_remap_index])
-#define SET_VertexAttrib4ubNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4ubNV_remap_index], fn)
-#define CALL_VertexAttrib4ubvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLubyte *)), driDispatchRemapTable[VertexAttrib4ubvNV_remap_index], parameters)
-#define GET_VertexAttrib4ubvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttrib4ubvNV_remap_index])
-#define SET_VertexAttrib4ubvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttrib4ubvNV_remap_index], fn)
-#define CALL_VertexAttribPointerNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLint, GLenum, GLsizei, const GLvoid *)), driDispatchRemapTable[VertexAttribPointerNV_remap_index], parameters)
-#define GET_VertexAttribPointerNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribPointerNV_remap_index])
-#define SET_VertexAttribPointerNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribPointerNV_remap_index], fn)
-#define CALL_VertexAttribs1dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLdouble *)), driDispatchRemapTable[VertexAttribs1dvNV_remap_index], parameters)
-#define GET_VertexAttribs1dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs1dvNV_remap_index])
-#define SET_VertexAttribs1dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs1dvNV_remap_index], fn)
-#define CALL_VertexAttribs1fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLfloat *)), driDispatchRemapTable[VertexAttribs1fvNV_remap_index], parameters)
-#define GET_VertexAttribs1fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs1fvNV_remap_index])
-#define SET_VertexAttribs1fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs1fvNV_remap_index], fn)
-#define CALL_VertexAttribs1svNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLshort *)), driDispatchRemapTable[VertexAttribs1svNV_remap_index], parameters)
-#define GET_VertexAttribs1svNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs1svNV_remap_index])
-#define SET_VertexAttribs1svNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs1svNV_remap_index], fn)
-#define CALL_VertexAttribs2dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLdouble *)), driDispatchRemapTable[VertexAttribs2dvNV_remap_index], parameters)
-#define GET_VertexAttribs2dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs2dvNV_remap_index])
-#define SET_VertexAttribs2dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs2dvNV_remap_index], fn)
-#define CALL_VertexAttribs2fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLfloat *)), driDispatchRemapTable[VertexAttribs2fvNV_remap_index], parameters)
-#define GET_VertexAttribs2fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs2fvNV_remap_index])
-#define SET_VertexAttribs2fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs2fvNV_remap_index], fn)
-#define CALL_VertexAttribs2svNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLshort *)), driDispatchRemapTable[VertexAttribs2svNV_remap_index], parameters)
-#define GET_VertexAttribs2svNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs2svNV_remap_index])
-#define SET_VertexAttribs2svNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs2svNV_remap_index], fn)
-#define CALL_VertexAttribs3dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLdouble *)), driDispatchRemapTable[VertexAttribs3dvNV_remap_index], parameters)
-#define GET_VertexAttribs3dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs3dvNV_remap_index])
-#define SET_VertexAttribs3dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs3dvNV_remap_index], fn)
-#define CALL_VertexAttribs3fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLfloat *)), driDispatchRemapTable[VertexAttribs3fvNV_remap_index], parameters)
-#define GET_VertexAttribs3fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs3fvNV_remap_index])
-#define SET_VertexAttribs3fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs3fvNV_remap_index], fn)
-#define CALL_VertexAttribs3svNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLshort *)), driDispatchRemapTable[VertexAttribs3svNV_remap_index], parameters)
-#define GET_VertexAttribs3svNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs3svNV_remap_index])
-#define SET_VertexAttribs3svNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs3svNV_remap_index], fn)
-#define CALL_VertexAttribs4dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLdouble *)), driDispatchRemapTable[VertexAttribs4dvNV_remap_index], parameters)
-#define GET_VertexAttribs4dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs4dvNV_remap_index])
-#define SET_VertexAttribs4dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs4dvNV_remap_index], fn)
-#define CALL_VertexAttribs4fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLfloat *)), driDispatchRemapTable[VertexAttribs4fvNV_remap_index], parameters)
-#define GET_VertexAttribs4fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs4fvNV_remap_index])
-#define SET_VertexAttribs4fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs4fvNV_remap_index], fn)
-#define CALL_VertexAttribs4svNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLshort *)), driDispatchRemapTable[VertexAttribs4svNV_remap_index], parameters)
-#define GET_VertexAttribs4svNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs4svNV_remap_index])
-#define SET_VertexAttribs4svNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs4svNV_remap_index], fn)
-#define CALL_VertexAttribs4ubvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLubyte *)), driDispatchRemapTable[VertexAttribs4ubvNV_remap_index], parameters)
-#define GET_VertexAttribs4ubvNV(disp) GET_by_offset(disp, driDispatchRemapTable[VertexAttribs4ubvNV_remap_index])
-#define SET_VertexAttribs4ubvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[VertexAttribs4ubvNV_remap_index], fn)
-#define CALL_GetTexBumpParameterfvATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLfloat *)), driDispatchRemapTable[GetTexBumpParameterfvATI_remap_index], parameters)
-#define GET_GetTexBumpParameterfvATI(disp) GET_by_offset(disp, driDispatchRemapTable[GetTexBumpParameterfvATI_remap_index])
-#define SET_GetTexBumpParameterfvATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetTexBumpParameterfvATI_remap_index], fn)
-#define CALL_GetTexBumpParameterivATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint *)), driDispatchRemapTable[GetTexBumpParameterivATI_remap_index], parameters)
-#define GET_GetTexBumpParameterivATI(disp) GET_by_offset(disp, driDispatchRemapTable[GetTexBumpParameterivATI_remap_index])
-#define SET_GetTexBumpParameterivATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetTexBumpParameterivATI_remap_index], fn)
-#define CALL_TexBumpParameterfvATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLfloat *)), driDispatchRemapTable[TexBumpParameterfvATI_remap_index], parameters)
-#define GET_TexBumpParameterfvATI(disp) GET_by_offset(disp, driDispatchRemapTable[TexBumpParameterfvATI_remap_index])
-#define SET_TexBumpParameterfvATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[TexBumpParameterfvATI_remap_index], fn)
-#define CALL_TexBumpParameterivATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), driDispatchRemapTable[TexBumpParameterivATI_remap_index], parameters)
-#define GET_TexBumpParameterivATI(disp) GET_by_offset(disp, driDispatchRemapTable[TexBumpParameterivATI_remap_index])
-#define SET_TexBumpParameterivATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[TexBumpParameterivATI_remap_index], fn)
-#define CALL_AlphaFragmentOp1ATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLuint, GLuint, GLuint)), driDispatchRemapTable[AlphaFragmentOp1ATI_remap_index], parameters)
-#define GET_AlphaFragmentOp1ATI(disp) GET_by_offset(disp, driDispatchRemapTable[AlphaFragmentOp1ATI_remap_index])
-#define SET_AlphaFragmentOp1ATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[AlphaFragmentOp1ATI_remap_index], fn)
-#define CALL_AlphaFragmentOp2ATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint)), driDispatchRemapTable[AlphaFragmentOp2ATI_remap_index], parameters)
-#define GET_AlphaFragmentOp2ATI(disp) GET_by_offset(disp, driDispatchRemapTable[AlphaFragmentOp2ATI_remap_index])
-#define SET_AlphaFragmentOp2ATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[AlphaFragmentOp2ATI_remap_index], fn)
-#define CALL_AlphaFragmentOp3ATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint)), driDispatchRemapTable[AlphaFragmentOp3ATI_remap_index], parameters)
-#define GET_AlphaFragmentOp3ATI(disp) GET_by_offset(disp, driDispatchRemapTable[AlphaFragmentOp3ATI_remap_index])
-#define SET_AlphaFragmentOp3ATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[AlphaFragmentOp3ATI_remap_index], fn)
-#define CALL_BeginFragmentShaderATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), driDispatchRemapTable[BeginFragmentShaderATI_remap_index], parameters)
-#define GET_BeginFragmentShaderATI(disp) GET_by_offset(disp, driDispatchRemapTable[BeginFragmentShaderATI_remap_index])
-#define SET_BeginFragmentShaderATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BeginFragmentShaderATI_remap_index], fn)
-#define CALL_BindFragmentShaderATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[BindFragmentShaderATI_remap_index], parameters)
-#define GET_BindFragmentShaderATI(disp) GET_by_offset(disp, driDispatchRemapTable[BindFragmentShaderATI_remap_index])
-#define SET_BindFragmentShaderATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindFragmentShaderATI_remap_index], fn)
-#define CALL_ColorFragmentOp1ATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint)), driDispatchRemapTable[ColorFragmentOp1ATI_remap_index], parameters)
-#define GET_ColorFragmentOp1ATI(disp) GET_by_offset(disp, driDispatchRemapTable[ColorFragmentOp1ATI_remap_index])
-#define SET_ColorFragmentOp1ATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ColorFragmentOp1ATI_remap_index], fn)
-#define CALL_ColorFragmentOp2ATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint)), driDispatchRemapTable[ColorFragmentOp2ATI_remap_index], parameters)
-#define GET_ColorFragmentOp2ATI(disp) GET_by_offset(disp, driDispatchRemapTable[ColorFragmentOp2ATI_remap_index])
-#define SET_ColorFragmentOp2ATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ColorFragmentOp2ATI_remap_index], fn)
-#define CALL_ColorFragmentOp3ATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint, GLuint)), driDispatchRemapTable[ColorFragmentOp3ATI_remap_index], parameters)
-#define GET_ColorFragmentOp3ATI(disp) GET_by_offset(disp, driDispatchRemapTable[ColorFragmentOp3ATI_remap_index])
-#define SET_ColorFragmentOp3ATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ColorFragmentOp3ATI_remap_index], fn)
-#define CALL_DeleteFragmentShaderATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[DeleteFragmentShaderATI_remap_index], parameters)
-#define GET_DeleteFragmentShaderATI(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteFragmentShaderATI_remap_index])
-#define SET_DeleteFragmentShaderATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteFragmentShaderATI_remap_index], fn)
-#define CALL_EndFragmentShaderATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), driDispatchRemapTable[EndFragmentShaderATI_remap_index], parameters)
-#define GET_EndFragmentShaderATI(disp) GET_by_offset(disp, driDispatchRemapTable[EndFragmentShaderATI_remap_index])
-#define SET_EndFragmentShaderATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[EndFragmentShaderATI_remap_index], fn)
-#define CALL_GenFragmentShadersATI(disp, parameters) CALL_by_offset(disp, (GLuint (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[GenFragmentShadersATI_remap_index], parameters)
-#define GET_GenFragmentShadersATI(disp) GET_by_offset(disp, driDispatchRemapTable[GenFragmentShadersATI_remap_index])
-#define SET_GenFragmentShadersATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenFragmentShadersATI_remap_index], fn)
-#define CALL_PassTexCoordATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint, GLenum)), driDispatchRemapTable[PassTexCoordATI_remap_index], parameters)
-#define GET_PassTexCoordATI(disp) GET_by_offset(disp, driDispatchRemapTable[PassTexCoordATI_remap_index])
-#define SET_PassTexCoordATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PassTexCoordATI_remap_index], fn)
-#define CALL_SampleMapATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint, GLenum)), driDispatchRemapTable[SampleMapATI_remap_index], parameters)
-#define GET_SampleMapATI(disp) GET_by_offset(disp, driDispatchRemapTable[SampleMapATI_remap_index])
-#define SET_SampleMapATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SampleMapATI_remap_index], fn)
-#define CALL_SetFragmentShaderConstantATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, const GLfloat *)), driDispatchRemapTable[SetFragmentShaderConstantATI_remap_index], parameters)
-#define GET_SetFragmentShaderConstantATI(disp) GET_by_offset(disp, driDispatchRemapTable[SetFragmentShaderConstantATI_remap_index])
-#define SET_SetFragmentShaderConstantATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[SetFragmentShaderConstantATI_remap_index], fn)
-#define CALL_PointParameteriNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLint)), driDispatchRemapTable[PointParameteriNV_remap_index], parameters)
-#define GET_PointParameteriNV(disp) GET_by_offset(disp, driDispatchRemapTable[PointParameteriNV_remap_index])
-#define SET_PointParameteriNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PointParameteriNV_remap_index], fn)
-#define CALL_PointParameterivNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, const GLint *)), driDispatchRemapTable[PointParameterivNV_remap_index], parameters)
-#define GET_PointParameterivNV(disp) GET_by_offset(disp, driDispatchRemapTable[PointParameterivNV_remap_index])
-#define SET_PointParameterivNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[PointParameterivNV_remap_index], fn)
-#define CALL_ActiveStencilFaceEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[ActiveStencilFaceEXT_remap_index], parameters)
-#define GET_ActiveStencilFaceEXT(disp) GET_by_offset(disp, driDispatchRemapTable[ActiveStencilFaceEXT_remap_index])
-#define SET_ActiveStencilFaceEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ActiveStencilFaceEXT_remap_index], fn)
-#define CALL_BindVertexArrayAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[BindVertexArrayAPPLE_remap_index], parameters)
-#define GET_BindVertexArrayAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[BindVertexArrayAPPLE_remap_index])
-#define SET_BindVertexArrayAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindVertexArrayAPPLE_remap_index], fn)
-#define CALL_DeleteVertexArraysAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), driDispatchRemapTable[DeleteVertexArraysAPPLE_remap_index], parameters)
-#define GET_DeleteVertexArraysAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteVertexArraysAPPLE_remap_index])
-#define SET_DeleteVertexArraysAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteVertexArraysAPPLE_remap_index], fn)
-#define CALL_GenVertexArraysAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), driDispatchRemapTable[GenVertexArraysAPPLE_remap_index], parameters)
-#define GET_GenVertexArraysAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[GenVertexArraysAPPLE_remap_index])
-#define SET_GenVertexArraysAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenVertexArraysAPPLE_remap_index], fn)
-#define CALL_IsVertexArrayAPPLE(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[IsVertexArrayAPPLE_remap_index], parameters)
-#define GET_IsVertexArrayAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[IsVertexArrayAPPLE_remap_index])
-#define SET_IsVertexArrayAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsVertexArrayAPPLE_remap_index], fn)
-#define CALL_GetProgramNamedParameterdvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLubyte *, GLdouble *)), driDispatchRemapTable[GetProgramNamedParameterdvNV_remap_index], parameters)
-#define GET_GetProgramNamedParameterdvNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramNamedParameterdvNV_remap_index])
-#define SET_GetProgramNamedParameterdvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramNamedParameterdvNV_remap_index], fn)
-#define CALL_GetProgramNamedParameterfvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLubyte *, GLfloat *)), driDispatchRemapTable[GetProgramNamedParameterfvNV_remap_index], parameters)
-#define GET_GetProgramNamedParameterfvNV(disp) GET_by_offset(disp, driDispatchRemapTable[GetProgramNamedParameterfvNV_remap_index])
-#define SET_GetProgramNamedParameterfvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetProgramNamedParameterfvNV_remap_index], fn)
-#define CALL_ProgramNamedParameter4dNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLubyte *, GLdouble, GLdouble, GLdouble, GLdouble)), driDispatchRemapTable[ProgramNamedParameter4dNV_remap_index], parameters)
-#define GET_ProgramNamedParameter4dNV(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramNamedParameter4dNV_remap_index])
-#define SET_ProgramNamedParameter4dNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramNamedParameter4dNV_remap_index], fn)
-#define CALL_ProgramNamedParameter4dvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLubyte *, const GLdouble *)), driDispatchRemapTable[ProgramNamedParameter4dvNV_remap_index], parameters)
-#define GET_ProgramNamedParameter4dvNV(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramNamedParameter4dvNV_remap_index])
-#define SET_ProgramNamedParameter4dvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramNamedParameter4dvNV_remap_index], fn)
-#define CALL_ProgramNamedParameter4fNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLubyte *, GLfloat, GLfloat, GLfloat, GLfloat)), driDispatchRemapTable[ProgramNamedParameter4fNV_remap_index], parameters)
-#define GET_ProgramNamedParameter4fNV(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramNamedParameter4fNV_remap_index])
-#define SET_ProgramNamedParameter4fNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramNamedParameter4fNV_remap_index], fn)
-#define CALL_ProgramNamedParameter4fvNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const GLubyte *, const GLfloat *)), driDispatchRemapTable[ProgramNamedParameter4fvNV_remap_index], parameters)
-#define GET_ProgramNamedParameter4fvNV(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramNamedParameter4fvNV_remap_index])
-#define SET_ProgramNamedParameter4fvNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramNamedParameter4fvNV_remap_index], fn)
-#define CALL_DepthBoundsEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLclampd, GLclampd)), driDispatchRemapTable[DepthBoundsEXT_remap_index], parameters)
-#define GET_DepthBoundsEXT(disp) GET_by_offset(disp, driDispatchRemapTable[DepthBoundsEXT_remap_index])
-#define SET_DepthBoundsEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DepthBoundsEXT_remap_index], fn)
-#define CALL_BlendEquationSeparateEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum)), driDispatchRemapTable[BlendEquationSeparateEXT_remap_index], parameters)
-#define GET_BlendEquationSeparateEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BlendEquationSeparateEXT_remap_index])
-#define SET_BlendEquationSeparateEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BlendEquationSeparateEXT_remap_index], fn)
-#define CALL_BindFramebufferEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), driDispatchRemapTable[BindFramebufferEXT_remap_index], parameters)
-#define GET_BindFramebufferEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BindFramebufferEXT_remap_index])
-#define SET_BindFramebufferEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindFramebufferEXT_remap_index], fn)
-#define CALL_BindRenderbufferEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), driDispatchRemapTable[BindRenderbufferEXT_remap_index], parameters)
-#define GET_BindRenderbufferEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BindRenderbufferEXT_remap_index])
-#define SET_BindRenderbufferEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindRenderbufferEXT_remap_index], fn)
-#define CALL_CheckFramebufferStatusEXT(disp, parameters) CALL_by_offset(disp, (GLenum (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[CheckFramebufferStatusEXT_remap_index], parameters)
-#define GET_CheckFramebufferStatusEXT(disp) GET_by_offset(disp, driDispatchRemapTable[CheckFramebufferStatusEXT_remap_index])
-#define SET_CheckFramebufferStatusEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[CheckFramebufferStatusEXT_remap_index], fn)
-#define CALL_DeleteFramebuffersEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), driDispatchRemapTable[DeleteFramebuffersEXT_remap_index], parameters)
-#define GET_DeleteFramebuffersEXT(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteFramebuffersEXT_remap_index])
-#define SET_DeleteFramebuffersEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteFramebuffersEXT_remap_index], fn)
-#define CALL_DeleteRenderbuffersEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, const GLuint *)), driDispatchRemapTable[DeleteRenderbuffersEXT_remap_index], parameters)
-#define GET_DeleteRenderbuffersEXT(disp) GET_by_offset(disp, driDispatchRemapTable[DeleteRenderbuffersEXT_remap_index])
-#define SET_DeleteRenderbuffersEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DeleteRenderbuffersEXT_remap_index], fn)
-#define CALL_FramebufferRenderbufferEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLuint)), driDispatchRemapTable[FramebufferRenderbufferEXT_remap_index], parameters)
-#define GET_FramebufferRenderbufferEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FramebufferRenderbufferEXT_remap_index])
-#define SET_FramebufferRenderbufferEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FramebufferRenderbufferEXT_remap_index], fn)
-#define CALL_FramebufferTexture1DEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLuint, GLint)), driDispatchRemapTable[FramebufferTexture1DEXT_remap_index], parameters)
-#define GET_FramebufferTexture1DEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FramebufferTexture1DEXT_remap_index])
-#define SET_FramebufferTexture1DEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FramebufferTexture1DEXT_remap_index], fn)
-#define CALL_FramebufferTexture2DEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLuint, GLint)), driDispatchRemapTable[FramebufferTexture2DEXT_remap_index], parameters)
-#define GET_FramebufferTexture2DEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FramebufferTexture2DEXT_remap_index])
-#define SET_FramebufferTexture2DEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FramebufferTexture2DEXT_remap_index], fn)
-#define CALL_FramebufferTexture3DEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLuint, GLint, GLint)), driDispatchRemapTable[FramebufferTexture3DEXT_remap_index], parameters)
-#define GET_FramebufferTexture3DEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FramebufferTexture3DEXT_remap_index])
-#define SET_FramebufferTexture3DEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FramebufferTexture3DEXT_remap_index], fn)
-#define CALL_GenFramebuffersEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), driDispatchRemapTable[GenFramebuffersEXT_remap_index], parameters)
-#define GET_GenFramebuffersEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GenFramebuffersEXT_remap_index])
-#define SET_GenFramebuffersEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenFramebuffersEXT_remap_index], fn)
-#define CALL_GenRenderbuffersEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLsizei, GLuint *)), driDispatchRemapTable[GenRenderbuffersEXT_remap_index], parameters)
-#define GET_GenRenderbuffersEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GenRenderbuffersEXT_remap_index])
-#define SET_GenRenderbuffersEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenRenderbuffersEXT_remap_index], fn)
-#define CALL_GenerateMipmapEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[GenerateMipmapEXT_remap_index], parameters)
-#define GET_GenerateMipmapEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GenerateMipmapEXT_remap_index])
-#define SET_GenerateMipmapEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GenerateMipmapEXT_remap_index], fn)
-#define CALL_GetFramebufferAttachmentParameterivEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLenum, GLint *)), driDispatchRemapTable[GetFramebufferAttachmentParameterivEXT_remap_index], parameters)
-#define GET_GetFramebufferAttachmentParameterivEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GetFramebufferAttachmentParameterivEXT_remap_index])
-#define SET_GetFramebufferAttachmentParameterivEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetFramebufferAttachmentParameterivEXT_remap_index], fn)
-#define CALL_GetRenderbufferParameterivEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint *)), driDispatchRemapTable[GetRenderbufferParameterivEXT_remap_index], parameters)
-#define GET_GetRenderbufferParameterivEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GetRenderbufferParameterivEXT_remap_index])
-#define SET_GetRenderbufferParameterivEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetRenderbufferParameterivEXT_remap_index], fn)
-#define CALL_IsFramebufferEXT(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[IsFramebufferEXT_remap_index], parameters)
-#define GET_IsFramebufferEXT(disp) GET_by_offset(disp, driDispatchRemapTable[IsFramebufferEXT_remap_index])
-#define SET_IsFramebufferEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsFramebufferEXT_remap_index], fn)
-#define CALL_IsRenderbufferEXT(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLuint)), driDispatchRemapTable[IsRenderbufferEXT_remap_index], parameters)
-#define GET_IsRenderbufferEXT(disp) GET_by_offset(disp, driDispatchRemapTable[IsRenderbufferEXT_remap_index])
-#define SET_IsRenderbufferEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsRenderbufferEXT_remap_index], fn)
-#define CALL_RenderbufferStorageEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLsizei, GLsizei)), driDispatchRemapTable[RenderbufferStorageEXT_remap_index], parameters)
-#define GET_RenderbufferStorageEXT(disp) GET_by_offset(disp, driDispatchRemapTable[RenderbufferStorageEXT_remap_index])
-#define SET_RenderbufferStorageEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[RenderbufferStorageEXT_remap_index], fn)
-#define CALL_BlitFramebufferEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLbitfield, GLenum)), driDispatchRemapTable[BlitFramebufferEXT_remap_index], parameters)
-#define GET_BlitFramebufferEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BlitFramebufferEXT_remap_index])
-#define SET_BlitFramebufferEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BlitFramebufferEXT_remap_index], fn)
-#define CALL_BufferParameteriAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint)), driDispatchRemapTable[BufferParameteriAPPLE_remap_index], parameters)
-#define GET_BufferParameteriAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[BufferParameteriAPPLE_remap_index])
-#define SET_BufferParameteriAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BufferParameteriAPPLE_remap_index], fn)
-#define CALL_FlushMappedBufferRangeAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLintptr, GLsizeiptr)), driDispatchRemapTable[FlushMappedBufferRangeAPPLE_remap_index], parameters)
-#define GET_FlushMappedBufferRangeAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[FlushMappedBufferRangeAPPLE_remap_index])
-#define SET_FlushMappedBufferRangeAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FlushMappedBufferRangeAPPLE_remap_index], fn)
-#define CALL_FramebufferTextureLayerEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLuint, GLint, GLint)), driDispatchRemapTable[FramebufferTextureLayerEXT_remap_index], parameters)
-#define GET_FramebufferTextureLayerEXT(disp) GET_by_offset(disp, driDispatchRemapTable[FramebufferTextureLayerEXT_remap_index])
-#define SET_FramebufferTextureLayerEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[FramebufferTextureLayerEXT_remap_index], fn)
-#define CALL_ColorMaskIndexedEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLboolean, GLboolean, GLboolean, GLboolean)), driDispatchRemapTable[ColorMaskIndexedEXT_remap_index], parameters)
-#define GET_ColorMaskIndexedEXT(disp) GET_by_offset(disp, driDispatchRemapTable[ColorMaskIndexedEXT_remap_index])
-#define SET_ColorMaskIndexedEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ColorMaskIndexedEXT_remap_index], fn)
-#define CALL_DisableIndexedEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), driDispatchRemapTable[DisableIndexedEXT_remap_index], parameters)
-#define GET_DisableIndexedEXT(disp) GET_by_offset(disp, driDispatchRemapTable[DisableIndexedEXT_remap_index])
-#define SET_DisableIndexedEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[DisableIndexedEXT_remap_index], fn)
-#define CALL_EnableIndexedEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint)), driDispatchRemapTable[EnableIndexedEXT_remap_index], parameters)
-#define GET_EnableIndexedEXT(disp) GET_by_offset(disp, driDispatchRemapTable[EnableIndexedEXT_remap_index])
-#define SET_EnableIndexedEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[EnableIndexedEXT_remap_index], fn)
-#define CALL_GetBooleanIndexedvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLboolean *)), driDispatchRemapTable[GetBooleanIndexedvEXT_remap_index], parameters)
-#define GET_GetBooleanIndexedvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GetBooleanIndexedvEXT_remap_index])
-#define SET_GetBooleanIndexedvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetBooleanIndexedvEXT_remap_index], fn)
-#define CALL_GetIntegerIndexedvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLint *)), driDispatchRemapTable[GetIntegerIndexedvEXT_remap_index], parameters)
-#define GET_GetIntegerIndexedvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GetIntegerIndexedvEXT_remap_index])
-#define SET_GetIntegerIndexedvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetIntegerIndexedvEXT_remap_index], fn)
-#define CALL_IsEnabledIndexedEXT(disp, parameters) CALL_by_offset(disp, (GLboolean (GLAPIENTRYP)(GLenum, GLuint)), driDispatchRemapTable[IsEnabledIndexedEXT_remap_index], parameters)
-#define GET_IsEnabledIndexedEXT(disp) GET_by_offset(disp, driDispatchRemapTable[IsEnabledIndexedEXT_remap_index])
-#define SET_IsEnabledIndexedEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[IsEnabledIndexedEXT_remap_index], fn)
-#define CALL_BeginConditionalRenderNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum)), driDispatchRemapTable[BeginConditionalRenderNV_remap_index], parameters)
-#define GET_BeginConditionalRenderNV(disp) GET_by_offset(disp, driDispatchRemapTable[BeginConditionalRenderNV_remap_index])
-#define SET_BeginConditionalRenderNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BeginConditionalRenderNV_remap_index], fn)
-#define CALL_EndConditionalRenderNV(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), driDispatchRemapTable[EndConditionalRenderNV_remap_index], parameters)
-#define GET_EndConditionalRenderNV(disp) GET_by_offset(disp, driDispatchRemapTable[EndConditionalRenderNV_remap_index])
-#define SET_EndConditionalRenderNV(disp, fn) SET_by_offset(disp, driDispatchRemapTable[EndConditionalRenderNV_remap_index], fn)
-#define CALL_BeginTransformFeedbackEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[BeginTransformFeedbackEXT_remap_index], parameters)
-#define GET_BeginTransformFeedbackEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BeginTransformFeedbackEXT_remap_index])
-#define SET_BeginTransformFeedbackEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BeginTransformFeedbackEXT_remap_index], fn)
-#define CALL_BindBufferBaseEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint)), driDispatchRemapTable[BindBufferBaseEXT_remap_index], parameters)
-#define GET_BindBufferBaseEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BindBufferBaseEXT_remap_index])
-#define SET_BindBufferBaseEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindBufferBaseEXT_remap_index], fn)
-#define CALL_BindBufferOffsetEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLintptr)), driDispatchRemapTable[BindBufferOffsetEXT_remap_index], parameters)
-#define GET_BindBufferOffsetEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BindBufferOffsetEXT_remap_index])
-#define SET_BindBufferOffsetEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindBufferOffsetEXT_remap_index], fn)
-#define CALL_BindBufferRangeEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLuint, GLintptr, GLsizeiptr)), driDispatchRemapTable[BindBufferRangeEXT_remap_index], parameters)
-#define GET_BindBufferRangeEXT(disp) GET_by_offset(disp, driDispatchRemapTable[BindBufferRangeEXT_remap_index])
-#define SET_BindBufferRangeEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[BindBufferRangeEXT_remap_index], fn)
-#define CALL_EndTransformFeedbackEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(void)), driDispatchRemapTable[EndTransformFeedbackEXT_remap_index], parameters)
-#define GET_EndTransformFeedbackEXT(disp) GET_by_offset(disp, driDispatchRemapTable[EndTransformFeedbackEXT_remap_index])
-#define SET_EndTransformFeedbackEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[EndTransformFeedbackEXT_remap_index], fn)
-#define CALL_GetTransformFeedbackVaryingEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLuint, GLsizei, GLsizei *, GLsizei *, GLenum *, GLchar *)), driDispatchRemapTable[GetTransformFeedbackVaryingEXT_remap_index], parameters)
-#define GET_GetTransformFeedbackVaryingEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GetTransformFeedbackVaryingEXT_remap_index])
-#define SET_GetTransformFeedbackVaryingEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetTransformFeedbackVaryingEXT_remap_index], fn)
-#define CALL_TransformFeedbackVaryingsEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLsizei, const char **, GLenum)), driDispatchRemapTable[TransformFeedbackVaryingsEXT_remap_index], parameters)
-#define GET_TransformFeedbackVaryingsEXT(disp) GET_by_offset(disp, driDispatchRemapTable[TransformFeedbackVaryingsEXT_remap_index])
-#define SET_TransformFeedbackVaryingsEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[TransformFeedbackVaryingsEXT_remap_index], fn)
-#define CALL_ProvokingVertexEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum)), driDispatchRemapTable[ProvokingVertexEXT_remap_index], parameters)
-#define GET_ProvokingVertexEXT(disp) GET_by_offset(disp, driDispatchRemapTable[ProvokingVertexEXT_remap_index])
-#define SET_ProvokingVertexEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProvokingVertexEXT_remap_index], fn)
-#define CALL_GetTexParameterPointervAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLvoid **)), driDispatchRemapTable[GetTexParameterPointervAPPLE_remap_index], parameters)
-#define GET_GetTexParameterPointervAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[GetTexParameterPointervAPPLE_remap_index])
-#define SET_GetTexParameterPointervAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetTexParameterPointervAPPLE_remap_index], fn)
-#define CALL_TextureRangeAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLsizei, GLvoid *)), driDispatchRemapTable[TextureRangeAPPLE_remap_index], parameters)
-#define GET_TextureRangeAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[TextureRangeAPPLE_remap_index])
-#define SET_TextureRangeAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[TextureRangeAPPLE_remap_index], fn)
-#define CALL_GetObjectParameterivAPPLE(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLenum, GLint *)), driDispatchRemapTable[GetObjectParameterivAPPLE_remap_index], parameters)
-#define GET_GetObjectParameterivAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[GetObjectParameterivAPPLE_remap_index])
-#define SET_GetObjectParameterivAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetObjectParameterivAPPLE_remap_index], fn)
-#define CALL_ObjectPurgeableAPPLE(disp, parameters) CALL_by_offset(disp, (GLenum (GLAPIENTRYP)(GLenum, GLuint, GLenum)), driDispatchRemapTable[ObjectPurgeableAPPLE_remap_index], parameters)
-#define GET_ObjectPurgeableAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[ObjectPurgeableAPPLE_remap_index])
-#define SET_ObjectPurgeableAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ObjectPurgeableAPPLE_remap_index], fn)
-#define CALL_ObjectUnpurgeableAPPLE(disp, parameters) CALL_by_offset(disp, (GLenum (GLAPIENTRYP)(GLenum, GLuint, GLenum)), driDispatchRemapTable[ObjectUnpurgeableAPPLE_remap_index], parameters)
-#define GET_ObjectUnpurgeableAPPLE(disp) GET_by_offset(disp, driDispatchRemapTable[ObjectUnpurgeableAPPLE_remap_index])
-#define SET_ObjectUnpurgeableAPPLE(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ObjectUnpurgeableAPPLE_remap_index], fn)
-#define CALL_StencilFuncSeparateATI(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLenum, GLint, GLuint)), driDispatchRemapTable[StencilFuncSeparateATI_remap_index], parameters)
-#define GET_StencilFuncSeparateATI(disp) GET_by_offset(disp, driDispatchRemapTable[StencilFuncSeparateATI_remap_index])
-#define SET_StencilFuncSeparateATI(disp, fn) SET_by_offset(disp, driDispatchRemapTable[StencilFuncSeparateATI_remap_index], fn)
-#define CALL_ProgramEnvParameters4fvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLsizei, const GLfloat *)), driDispatchRemapTable[ProgramEnvParameters4fvEXT_remap_index], parameters)
-#define GET_ProgramEnvParameters4fvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameters4fvEXT_remap_index])
-#define SET_ProgramEnvParameters4fvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramEnvParameters4fvEXT_remap_index], fn)
-#define CALL_ProgramLocalParameters4fvEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLuint, GLsizei, const GLfloat *)), driDispatchRemapTable[ProgramLocalParameters4fvEXT_remap_index], parameters)
-#define GET_ProgramLocalParameters4fvEXT(disp) GET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameters4fvEXT_remap_index])
-#define SET_ProgramLocalParameters4fvEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[ProgramLocalParameters4fvEXT_remap_index], fn)
-#define CALL_GetQueryObjecti64vEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLint64EXT *)), driDispatchRemapTable[GetQueryObjecti64vEXT_remap_index], parameters)
-#define GET_GetQueryObjecti64vEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GetQueryObjecti64vEXT_remap_index])
-#define SET_GetQueryObjecti64vEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetQueryObjecti64vEXT_remap_index], fn)
-#define CALL_GetQueryObjectui64vEXT(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLuint, GLenum, GLuint64EXT *)), driDispatchRemapTable[GetQueryObjectui64vEXT_remap_index], parameters)
-#define GET_GetQueryObjectui64vEXT(disp) GET_by_offset(disp, driDispatchRemapTable[GetQueryObjectui64vEXT_remap_index])
-#define SET_GetQueryObjectui64vEXT(disp, fn) SET_by_offset(disp, driDispatchRemapTable[GetQueryObjectui64vEXT_remap_index], fn)
-#define CALL_EGLImageTargetRenderbufferStorageOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLvoid *)), driDispatchRemapTable[EGLImageTargetRenderbufferStorageOES_remap_index], parameters)
-#define GET_EGLImageTargetRenderbufferStorageOES(disp) GET_by_offset(disp, driDispatchRemapTable[EGLImageTargetRenderbufferStorageOES_remap_index])
-#define SET_EGLImageTargetRenderbufferStorageOES(disp, fn) SET_by_offset(disp, driDispatchRemapTable[EGLImageTargetRenderbufferStorageOES_remap_index], fn)
-#define CALL_EGLImageTargetTexture2DOES(disp, parameters) CALL_by_offset(disp, (void (GLAPIENTRYP)(GLenum, GLvoid *)), driDispatchRemapTable[EGLImageTargetTexture2DOES_remap_index], parameters)
-#define GET_EGLImageTargetTexture2DOES(disp) GET_by_offset(disp, driDispatchRemapTable[EGLImageTargetTexture2DOES_remap_index])
-#define SET_EGLImageTargetTexture2DOES(disp, fn) SET_by_offset(disp, driDispatchRemapTable[EGLImageTargetTexture2DOES_remap_index], fn)
-
-#endif /* !defined(_GLAPI_USE_REMAP_TABLE) */
-
-#endif /* !defined( _GLAPI_DISPATCH_H_ ) */
diff --git a/src/mesa/glapi/glapioffsets.h b/src/mesa/glapi/glapioffsets.h
deleted file mode 100644 (file)
index a8133b4..0000000
+++ /dev/null
@@ -1,1270 +0,0 @@
-/* DO NOT EDIT - This file generated automatically by gl_offsets.py (from Mesa) script */
-
-/*
- * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
- * (C) Copyright IBM Corporation 2004
- * 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
- * BRIAN PAUL, IBM,
- * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
- * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#if !defined( _GLAPI_OFFSETS_H_ )
-#  define _GLAPI_OFFSETS_H_
-
-/* this file should not be included directly in mesa */
-
-#define _gloffset_NewList 0
-#define _gloffset_EndList 1
-#define _gloffset_CallList 2
-#define _gloffset_CallLists 3
-#define _gloffset_DeleteLists 4
-#define _gloffset_GenLists 5
-#define _gloffset_ListBase 6
-#define _gloffset_Begin 7
-#define _gloffset_Bitmap 8
-#define _gloffset_Color3b 9
-#define _gloffset_Color3bv 10
-#define _gloffset_Color3d 11
-#define _gloffset_Color3dv 12
-#define _gloffset_Color3f 13
-#define _gloffset_Color3fv 14
-#define _gloffset_Color3i 15
-#define _gloffset_Color3iv 16
-#define _gloffset_Color3s 17
-#define _gloffset_Color3sv 18
-#define _gloffset_Color3ub 19
-#define _gloffset_Color3ubv 20
-#define _gloffset_Color3ui 21
-#define _gloffset_Color3uiv 22
-#define _gloffset_Color3us 23
-#define _gloffset_Color3usv 24
-#define _gloffset_Color4b 25
-#define _gloffset_Color4bv 26
-#define _gloffset_Color4d 27
-#define _gloffset_Color4dv 28
-#define _gloffset_Color4f 29
-#define _gloffset_Color4fv 30
-#define _gloffset_Color4i 31
-#define _gloffset_Color4iv 32
-#define _gloffset_Color4s 33
-#define _gloffset_Color4sv 34
-#define _gloffset_Color4ub 35
-#define _gloffset_Color4ubv 36
-#define _gloffset_Color4ui 37
-#define _gloffset_Color4uiv 38
-#define _gloffset_Color4us 39
-#define _gloffset_Color4usv 40
-#define _gloffset_EdgeFlag 41
-#define _gloffset_EdgeFlagv 42
-#define _gloffset_End 43
-#define _gloffset_Indexd 44
-#define _gloffset_Indexdv 45
-#define _gloffset_Indexf 46
-#define _gloffset_Indexfv 47
-#define _gloffset_Indexi 48
-#define _gloffset_Indexiv 49
-#define _gloffset_Indexs 50
-#define _gloffset_Indexsv 51
-#define _gloffset_Normal3b 52
-#define _gloffset_Normal3bv 53
-#define _gloffset_Normal3d 54
-#define _gloffset_Normal3dv 55
-#define _gloffset_Normal3f 56
-#define _gloffset_Normal3fv 57
-#define _gloffset_Normal3i 58
-#define _gloffset_Normal3iv 59
-#define _gloffset_Normal3s 60
-#define _gloffset_Normal3sv 61
-#define _gloffset_RasterPos2d 62
-#define _gloffset_RasterPos2dv 63
-#define _gloffset_RasterPos2f 64
-#define _gloffset_RasterPos2fv 65
-#define _gloffset_RasterPos2i 66
-#define _gloffset_RasterPos2iv 67
-#define _gloffset_RasterPos2s 68
-#define _gloffset_RasterPos2sv 69
-#define _gloffset_RasterPos3d 70
-#define _gloffset_RasterPos3dv 71
-#define _gloffset_RasterPos3f 72
-#define _gloffset_RasterPos3fv 73
-#define _gloffset_RasterPos3i 74
-#define _gloffset_RasterPos3iv 75
-#define _gloffset_RasterPos3s 76
-#define _gloffset_RasterPos3sv 77
-#define _gloffset_RasterPos4d 78
-#define _gloffset_RasterPos4dv 79
-#define _gloffset_RasterPos4f 80
-#define _gloffset_RasterPos4fv 81
-#define _gloffset_RasterPos4i 82
-#define _gloffset_RasterPos4iv 83
-#define _gloffset_RasterPos4s 84
-#define _gloffset_RasterPos4sv 85
-#define _gloffset_Rectd 86
-#define _gloffset_Rectdv 87
-#define _gloffset_Rectf 88
-#define _gloffset_Rectfv 89
-#define _gloffset_Recti 90
-#define _gloffset_Rectiv 91
-#define _gloffset_Rects 92
-#define _gloffset_Rectsv 93
-#define _gloffset_TexCoord1d 94
-#define _gloffset_TexCoord1dv 95
-#define _gloffset_TexCoord1f 96
-#define _gloffset_TexCoord1fv 97
-#define _gloffset_TexCoord1i 98
-#define _gloffset_TexCoord1iv 99
-#define _gloffset_TexCoord1s 100
-#define _gloffset_TexCoord1sv 101
-#define _gloffset_TexCoord2d 102
-#define _gloffset_TexCoord2dv 103
-#define _gloffset_TexCoord2f 104
-#define _gloffset_TexCoord2fv 105
-#define _gloffset_TexCoord2i 106
-#define _gloffset_TexCoord2iv 107
-#define _gloffset_TexCoord2s 108
-#define _gloffset_TexCoord2sv 109
-#define _gloffset_TexCoord3d 110
-#define _gloffset_TexCoord3dv 111
-#define _gloffset_TexCoord3f 112
-#define _gloffset_TexCoord3fv 113
-#define _gloffset_TexCoord3i 114
-#define _gloffset_TexCoord3iv 115
-#define _gloffset_TexCoord3s 116
-#define _gloffset_TexCoord3sv 117
-#define _gloffset_TexCoord4d 118
-#define _gloffset_TexCoord4dv 119
-#define _gloffset_TexCoord4f 120
-#define _gloffset_TexCoord4fv 121
-#define _gloffset_TexCoord4i 122
-#define _gloffset_TexCoord4iv 123
-#define _gloffset_TexCoord4s 124
-#define _gloffset_TexCoord4sv 125
-#define _gloffset_Vertex2d 126
-#define _gloffset_Vertex2dv 127
-#define _gloffset_Vertex2f 128
-#define _gloffset_Vertex2fv 129
-#define _gloffset_Vertex2i 130
-#define _gloffset_Vertex2iv 131
-#define _gloffset_Vertex2s 132
-#define _gloffset_Vertex2sv 133
-#define _gloffset_Vertex3d 134
-#define _gloffset_Vertex3dv 135
-#define _gloffset_Vertex3f 136
-#define _gloffset_Vertex3fv 137
-#define _gloffset_Vertex3i 138
-#define _gloffset_Vertex3iv 139
-#define _gloffset_Vertex3s 140
-#define _gloffset_Vertex3sv 141
-#define _gloffset_Vertex4d 142
-#define _gloffset_Vertex4dv 143
-#define _gloffset_Vertex4f 144
-#define _gloffset_Vertex4fv 145
-#define _gloffset_Vertex4i 146
-#define _gloffset_Vertex4iv 147
-#define _gloffset_Vertex4s 148
-#define _gloffset_Vertex4sv 149
-#define _gloffset_ClipPlane 150
-#define _gloffset_ColorMaterial 151
-#define _gloffset_CullFace 152
-#define _gloffset_Fogf 153
-#define _gloffset_Fogfv 154
-#define _gloffset_Fogi 155
-#define _gloffset_Fogiv 156
-#define _gloffset_FrontFace 157
-#define _gloffset_Hint 158
-#define _gloffset_Lightf 159
-#define _gloffset_Lightfv 160
-#define _gloffset_Lighti 161
-#define _gloffset_Lightiv 162
-#define _gloffset_LightModelf 163
-#define _gloffset_LightModelfv 164
-#define _gloffset_LightModeli 165
-#define _gloffset_LightModeliv 166
-#define _gloffset_LineStipple 167
-#define _gloffset_LineWidth 168
-#define _gloffset_Materialf 169
-#define _gloffset_Materialfv 170
-#define _gloffset_Materiali 171
-#define _gloffset_Materialiv 172
-#define _gloffset_PointSize 173
-#define _gloffset_PolygonMode 174
-#define _gloffset_PolygonStipple 175
-#define _gloffset_Scissor 176
-#define _gloffset_ShadeModel 177
-#define _gloffset_TexParameterf 178
-#define _gloffset_TexParameterfv 179
-#define _gloffset_TexParameteri 180
-#define _gloffset_TexParameteriv 181
-#define _gloffset_TexImage1D 182
-#define _gloffset_TexImage2D 183
-#define _gloffset_TexEnvf 184
-#define _gloffset_TexEnvfv 185
-#define _gloffset_TexEnvi 186
-#define _gloffset_TexEnviv 187
-#define _gloffset_TexGend 188
-#define _gloffset_TexGendv 189
-#define _gloffset_TexGenf 190
-#define _gloffset_TexGenfv 191
-#define _gloffset_TexGeni 192
-#define _gloffset_TexGeniv 193
-#define _gloffset_FeedbackBuffer 194
-#define _gloffset_SelectBuffer 195
-#define _gloffset_RenderMode 196
-#define _gloffset_InitNames 197
-#define _gloffset_LoadName 198
-#define _gloffset_PassThrough 199
-#define _gloffset_PopName 200
-#define _gloffset_PushName 201
-#define _gloffset_DrawBuffer 202
-#define _gloffset_Clear 203
-#define _gloffset_ClearAccum 204
-#define _gloffset_ClearIndex 205
-#define _gloffset_ClearColor 206
-#define _gloffset_ClearStencil 207
-#define _gloffset_ClearDepth 208
-#define _gloffset_StencilMask 209
-#define _gloffset_ColorMask 210
-#define _gloffset_DepthMask 211
-#define _gloffset_IndexMask 212
-#define _gloffset_Accum 213
-#define _gloffset_Disable 214
-#define _gloffset_Enable 215
-#define _gloffset_Finish 216
-#define _gloffset_Flush 217
-#define _gloffset_PopAttrib 218
-#define _gloffset_PushAttrib 219
-#define _gloffset_Map1d 220
-#define _gloffset_Map1f 221
-#define _gloffset_Map2d 222
-#define _gloffset_Map2f 223
-#define _gloffset_MapGrid1d 224
-#define _gloffset_MapGrid1f 225
-#define _gloffset_MapGrid2d 226
-#define _gloffset_MapGrid2f 227
-#define _gloffset_EvalCoord1d 228
-#define _gloffset_EvalCoord1dv 229
-#define _gloffset_EvalCoord1f 230
-#define _gloffset_EvalCoord1fv 231
-#define _gloffset_EvalCoord2d 232
-#define _gloffset_EvalCoord2dv 233
-#define _gloffset_EvalCoord2f 234
-#define _gloffset_EvalCoord2fv 235
-#define _gloffset_EvalMesh1 236
-#define _gloffset_EvalPoint1 237
-#define _gloffset_EvalMesh2 238
-#define _gloffset_EvalPoint2 239
-#define _gloffset_AlphaFunc 240
-#define _gloffset_BlendFunc 241
-#define _gloffset_LogicOp 242
-#define _gloffset_StencilFunc 243
-#define _gloffset_StencilOp 244
-#define _gloffset_DepthFunc 245
-#define _gloffset_PixelZoom 246
-#define _gloffset_PixelTransferf 247
-#define _gloffset_PixelTransferi 248
-#define _gloffset_PixelStoref 249
-#define _gloffset_PixelStorei 250
-#define _gloffset_PixelMapfv 251
-#define _gloffset_PixelMapuiv 252
-#define _gloffset_PixelMapusv 253
-#define _gloffset_ReadBuffer 254
-#define _gloffset_CopyPixels 255
-#define _gloffset_ReadPixels 256
-#define _gloffset_DrawPixels 257
-#define _gloffset_GetBooleanv 258
-#define _gloffset_GetClipPlane 259
-#define _gloffset_GetDoublev 260
-#define _gloffset_GetError 261
-#define _gloffset_GetFloatv 262
-#define _gloffset_GetIntegerv 263
-#define _gloffset_GetLightfv 264
-#define _gloffset_GetLightiv 265
-#define _gloffset_GetMapdv 266
-#define _gloffset_GetMapfv 267
-#define _gloffset_GetMapiv 268
-#define _gloffset_GetMaterialfv 269
-#define _gloffset_GetMaterialiv 270
-#define _gloffset_GetPixelMapfv 271
-#define _gloffset_GetPixelMapuiv 272
-#define _gloffset_GetPixelMapusv 273
-#define _gloffset_GetPolygonStipple 274
-#define _gloffset_GetString 275
-#define _gloffset_GetTexEnvfv 276
-#define _gloffset_GetTexEnviv 277
-#define _gloffset_GetTexGendv 278
-#define _gloffset_GetTexGenfv 279
-#define _gloffset_GetTexGeniv 280
-#define _gloffset_GetTexImage 281
-#define _gloffset_GetTexParameterfv 282
-#define _gloffset_GetTexParameteriv 283
-#define _gloffset_GetTexLevelParameterfv 284
-#define _gloffset_GetTexLevelParameteriv 285
-#define _gloffset_IsEnabled 286
-#define _gloffset_IsList 287
-#define _gloffset_DepthRange 288
-#define _gloffset_Frustum 289
-#define _gloffset_LoadIdentity 290
-#define _gloffset_LoadMatrixf 291
-#define _gloffset_LoadMatrixd 292
-#define _gloffset_MatrixMode 293
-#define _gloffset_MultMatrixf 294
-#define _gloffset_MultMatrixd 295
-#define _gloffset_Ortho 296
-#define _gloffset_PopMatrix 297
-#define _gloffset_PushMatrix 298
-#define _gloffset_Rotated 299
-#define _gloffset_Rotatef 300
-#define _gloffset_Scaled 301
-#define _gloffset_Scalef 302
-#define _gloffset_Translated 303
-#define _gloffset_Translatef 304
-#define _gloffset_Viewport 305
-#define _gloffset_ArrayElement 306
-#define _gloffset_BindTexture 307
-#define _gloffset_ColorPointer 308
-#define _gloffset_DisableClientState 309
-#define _gloffset_DrawArrays 310
-#define _gloffset_DrawElements 311
-#define _gloffset_EdgeFlagPointer 312
-#define _gloffset_EnableClientState 313
-#define _gloffset_IndexPointer 314
-#define _gloffset_Indexub 315
-#define _gloffset_Indexubv 316
-#define _gloffset_InterleavedArrays 317
-#define _gloffset_NormalPointer 318
-#define _gloffset_PolygonOffset 319
-#define _gloffset_TexCoordPointer 320
-#define _gloffset_VertexPointer 321
-#define _gloffset_AreTexturesResident 322
-#define _gloffset_CopyTexImage1D 323
-#define _gloffset_CopyTexImage2D 324
-#define _gloffset_CopyTexSubImage1D 325
-#define _gloffset_CopyTexSubImage2D 326
-#define _gloffset_DeleteTextures 327
-#define _gloffset_GenTextures 328
-#define _gloffset_GetPointerv 329
-#define _gloffset_IsTexture 330
-#define _gloffset_PrioritizeTextures 331
-#define _gloffset_TexSubImage1D 332
-#define _gloffset_TexSubImage2D 333
-#define _gloffset_PopClientAttrib 334
-#define _gloffset_PushClientAttrib 335
-#define _gloffset_BlendColor 336
-#define _gloffset_BlendEquation 337
-#define _gloffset_DrawRangeElements 338
-#define _gloffset_ColorTable 339
-#define _gloffset_ColorTableParameterfv 340
-#define _gloffset_ColorTableParameteriv 341
-#define _gloffset_CopyColorTable 342
-#define _gloffset_GetColorTable 343
-#define _gloffset_GetColorTableParameterfv 344
-#define _gloffset_GetColorTableParameteriv 345
-#define _gloffset_ColorSubTable 346
-#define _gloffset_CopyColorSubTable 347
-#define _gloffset_ConvolutionFilter1D 348
-#define _gloffset_ConvolutionFilter2D 349
-#define _gloffset_ConvolutionParameterf 350
-#define _gloffset_ConvolutionParameterfv 351
-#define _gloffset_ConvolutionParameteri 352
-#define _gloffset_ConvolutionParameteriv 353
-#define _gloffset_CopyConvolutionFilter1D 354
-#define _gloffset_CopyConvolutionFilter2D 355
-#define _gloffset_GetConvolutionFilter 356
-#define _gloffset_GetConvolutionParameterfv 357
-#define _gloffset_GetConvolutionParameteriv 358
-#define _gloffset_GetSeparableFilter 359
-#define _gloffset_SeparableFilter2D 360
-#define _gloffset_GetHistogram 361
-#define _gloffset_GetHistogramParameterfv 362
-#define _gloffset_GetHistogramParameteriv 363
-#define _gloffset_GetMinmax 364
-#define _gloffset_GetMinmaxParameterfv 365
-#define _gloffset_GetMinmaxParameteriv 366
-#define _gloffset_Histogram 367
-#define _gloffset_Minmax 368
-#define _gloffset_ResetHistogram 369
-#define _gloffset_ResetMinmax 370
-#define _gloffset_TexImage3D 371
-#define _gloffset_TexSubImage3D 372
-#define _gloffset_CopyTexSubImage3D 373
-#define _gloffset_ActiveTextureARB 374
-#define _gloffset_ClientActiveTextureARB 375
-#define _gloffset_MultiTexCoord1dARB 376
-#define _gloffset_MultiTexCoord1dvARB 377
-#define _gloffset_MultiTexCoord1fARB 378
-#define _gloffset_MultiTexCoord1fvARB 379
-#define _gloffset_MultiTexCoord1iARB 380
-#define _gloffset_MultiTexCoord1ivARB 381
-#define _gloffset_MultiTexCoord1sARB 382
-#define _gloffset_MultiTexCoord1svARB 383
-#define _gloffset_MultiTexCoord2dARB 384
-#define _gloffset_MultiTexCoord2dvARB 385
-#define _gloffset_MultiTexCoord2fARB 386
-#define _gloffset_MultiTexCoord2fvARB 387
-#define _gloffset_MultiTexCoord2iARB 388
-#define _gloffset_MultiTexCoord2ivARB 389
-#define _gloffset_MultiTexCoord2sARB 390
-#define _gloffset_MultiTexCoord2svARB 391
-#define _gloffset_MultiTexCoord3dARB 392
-#define _gloffset_MultiTexCoord3dvARB 393
-#define _gloffset_MultiTexCoord3fARB 394
-#define _gloffset_MultiTexCoord3fvARB 395
-#define _gloffset_MultiTexCoord3iARB 396
-#define _gloffset_MultiTexCoord3ivARB 397
-#define _gloffset_MultiTexCoord3sARB 398
-#define _gloffset_MultiTexCoord3svARB 399
-#define _gloffset_MultiTexCoord4dARB 400
-#define _gloffset_MultiTexCoord4dvARB 401
-#define _gloffset_MultiTexCoord4fARB 402
-#define _gloffset_MultiTexCoord4fvARB 403
-#define _gloffset_MultiTexCoord4iARB 404
-#define _gloffset_MultiTexCoord4ivARB 405
-#define _gloffset_MultiTexCoord4sARB 406
-#define _gloffset_MultiTexCoord4svARB 407
-
-#if !defined(_GLAPI_USE_REMAP_TABLE)
-
-#define _gloffset_AttachShader 408
-#define _gloffset_CreateProgram 409
-#define _gloffset_CreateShader 410
-#define _gloffset_DeleteProgram 411
-#define _gloffset_DeleteShader 412
-#define _gloffset_DetachShader 413
-#define _gloffset_GetAttachedShaders 414
-#define _gloffset_GetProgramInfoLog 415
-#define _gloffset_GetProgramiv 416
-#define _gloffset_GetShaderInfoLog 417
-#define _gloffset_GetShaderiv 418
-#define _gloffset_IsProgram 419
-#define _gloffset_IsShader 420
-#define _gloffset_StencilFuncSeparate 421
-#define _gloffset_StencilMaskSeparate 422
-#define _gloffset_StencilOpSeparate 423
-#define _gloffset_UniformMatrix2x3fv 424
-#define _gloffset_UniformMatrix2x4fv 425
-#define _gloffset_UniformMatrix3x2fv 426
-#define _gloffset_UniformMatrix3x4fv 427
-#define _gloffset_UniformMatrix4x2fv 428
-#define _gloffset_UniformMatrix4x3fv 429
-#define _gloffset_DrawArraysInstanced 430
-#define _gloffset_DrawElementsInstanced 431
-#define _gloffset_LoadTransposeMatrixdARB 432
-#define _gloffset_LoadTransposeMatrixfARB 433
-#define _gloffset_MultTransposeMatrixdARB 434
-#define _gloffset_MultTransposeMatrixfARB 435
-#define _gloffset_SampleCoverageARB 436
-#define _gloffset_CompressedTexImage1DARB 437
-#define _gloffset_CompressedTexImage2DARB 438
-#define _gloffset_CompressedTexImage3DARB 439
-#define _gloffset_CompressedTexSubImage1DARB 440
-#define _gloffset_CompressedTexSubImage2DARB 441
-#define _gloffset_CompressedTexSubImage3DARB 442
-#define _gloffset_GetCompressedTexImageARB 443
-#define _gloffset_DisableVertexAttribArrayARB 444
-#define _gloffset_EnableVertexAttribArrayARB 445
-#define _gloffset_GetProgramEnvParameterdvARB 446
-#define _gloffset_GetProgramEnvParameterfvARB 447
-#define _gloffset_GetProgramLocalParameterdvARB 448
-#define _gloffset_GetProgramLocalParameterfvARB 449
-#define _gloffset_GetProgramStringARB 450
-#define _gloffset_GetProgramivARB 451
-#define _gloffset_GetVertexAttribdvARB 452
-#define _gloffset_GetVertexAttribfvARB 453
-#define _gloffset_GetVertexAttribivARB 454
-#define _gloffset_ProgramEnvParameter4dARB 455
-#define _gloffset_ProgramEnvParameter4dvARB 456
-#define _gloffset_ProgramEnvParameter4fARB 457
-#define _gloffset_ProgramEnvParameter4fvARB 458
-#define _gloffset_ProgramLocalParameter4dARB 459
-#define _gloffset_ProgramLocalParameter4dvARB 460
-#define _gloffset_ProgramLocalParameter4fARB 461
-#define _gloffset_ProgramLocalParameter4fvARB 462
-#define _gloffset_ProgramStringARB 463
-#define _gloffset_VertexAttrib1dARB 464
-#define _gloffset_VertexAttrib1dvARB 465
-#define _gloffset_VertexAttrib1fARB 466
-#define _gloffset_VertexAttrib1fvARB 467
-#define _gloffset_VertexAttrib1sARB 468
-#define _gloffset_VertexAttrib1svARB 469
-#define _gloffset_VertexAttrib2dARB 470
-#define _gloffset_VertexAttrib2dvARB 471
-#define _gloffset_VertexAttrib2fARB 472
-#define _gloffset_VertexAttrib2fvARB 473
-#define _gloffset_VertexAttrib2sARB 474
-#define _gloffset_VertexAttrib2svARB 475
-#define _gloffset_VertexAttrib3dARB 476
-#define _gloffset_VertexAttrib3dvARB 477
-#define _gloffset_VertexAttrib3fARB 478
-#define _gloffset_VertexAttrib3fvARB 479
-#define _gloffset_VertexAttrib3sARB 480
-#define _gloffset_VertexAttrib3svARB 481
-#define _gloffset_VertexAttrib4NbvARB 482
-#define _gloffset_VertexAttrib4NivARB 483
-#define _gloffset_VertexAttrib4NsvARB 484
-#define _gloffset_VertexAttrib4NubARB 485
-#define _gloffset_VertexAttrib4NubvARB 486
-#define _gloffset_VertexAttrib4NuivARB 487
-#define _gloffset_VertexAttrib4NusvARB 488
-#define _gloffset_VertexAttrib4bvARB 489
-#define _gloffset_VertexAttrib4dARB 490
-#define _gloffset_VertexAttrib4dvARB 491
-#define _gloffset_VertexAttrib4fARB 492
-#define _gloffset_VertexAttrib4fvARB 493
-#define _gloffset_VertexAttrib4ivARB 494
-#define _gloffset_VertexAttrib4sARB 495
-#define _gloffset_VertexAttrib4svARB 496
-#define _gloffset_VertexAttrib4ubvARB 497
-#define _gloffset_VertexAttrib4uivARB 498
-#define _gloffset_VertexAttrib4usvARB 499
-#define _gloffset_VertexAttribPointerARB 500
-#define _gloffset_BindBufferARB 501
-#define _gloffset_BufferDataARB 502
-#define _gloffset_BufferSubDataARB 503
-#define _gloffset_DeleteBuffersARB 504
-#define _gloffset_GenBuffersARB 505
-#define _gloffset_GetBufferParameterivARB 506
-#define _gloffset_GetBufferPointervARB 507
-#define _gloffset_GetBufferSubDataARB 508
-#define _gloffset_IsBufferARB 509
-#define _gloffset_MapBufferARB 510
-#define _gloffset_UnmapBufferARB 511
-#define _gloffset_BeginQueryARB 512
-#define _gloffset_DeleteQueriesARB 513
-#define _gloffset_EndQueryARB 514
-#define _gloffset_GenQueriesARB 515
-#define _gloffset_GetQueryObjectivARB 516
-#define _gloffset_GetQueryObjectuivARB 517
-#define _gloffset_GetQueryivARB 518
-#define _gloffset_IsQueryARB 519
-#define _gloffset_AttachObjectARB 520
-#define _gloffset_CompileShaderARB 521
-#define _gloffset_CreateProgramObjectARB 522
-#define _gloffset_CreateShaderObjectARB 523
-#define _gloffset_DeleteObjectARB 524
-#define _gloffset_DetachObjectARB 525
-#define _gloffset_GetActiveUniformARB 526
-#define _gloffset_GetAttachedObjectsARB 527
-#define _gloffset_GetHandleARB 528
-#define _gloffset_GetInfoLogARB 529
-#define _gloffset_GetObjectParameterfvARB 530
-#define _gloffset_GetObjectParameterivARB 531
-#define _gloffset_GetShaderSourceARB 532
-#define _gloffset_GetUniformLocationARB 533
-#define _gloffset_GetUniformfvARB 534
-#define _gloffset_GetUniformivARB 535
-#define _gloffset_LinkProgramARB 536
-#define _gloffset_ShaderSourceARB 537
-#define _gloffset_Uniform1fARB 538
-#define _gloffset_Uniform1fvARB 539
-#define _gloffset_Uniform1iARB 540
-#define _gloffset_Uniform1ivARB 541
-#define _gloffset_Uniform2fARB 542
-#define _gloffset_Uniform2fvARB 543
-#define _gloffset_Uniform2iARB 544
-#define _gloffset_Uniform2ivARB 545
-#define _gloffset_Uniform3fARB 546
-#define _gloffset_Uniform3fvARB 547
-#define _gloffset_Uniform3iARB 548
-#define _gloffset_Uniform3ivARB 549
-#define _gloffset_Uniform4fARB 550
-#define _gloffset_Uniform4fvARB 551
-#define _gloffset_Uniform4iARB 552
-#define _gloffset_Uniform4ivARB 553
-#define _gloffset_UniformMatrix2fvARB 554
-#define _gloffset_UniformMatrix3fvARB 555
-#define _gloffset_UniformMatrix4fvARB 556
-#define _gloffset_UseProgramObjectARB 557
-#define _gloffset_ValidateProgramARB 558
-#define _gloffset_BindAttribLocationARB 559
-#define _gloffset_GetActiveAttribARB 560
-#define _gloffset_GetAttribLocationARB 561
-#define _gloffset_DrawBuffersARB 562
-#define _gloffset_RenderbufferStorageMultisample 563
-#define _gloffset_FlushMappedBufferRange 564
-#define _gloffset_MapBufferRange 565
-#define _gloffset_BindVertexArray 566
-#define _gloffset_GenVertexArrays 567
-#define _gloffset_CopyBufferSubData 568
-#define _gloffset_ClientWaitSync 569
-#define _gloffset_DeleteSync 570
-#define _gloffset_FenceSync 571
-#define _gloffset_GetInteger64v 572
-#define _gloffset_GetSynciv 573
-#define _gloffset_IsSync 574
-#define _gloffset_WaitSync 575
-#define _gloffset_DrawElementsBaseVertex 576
-#define _gloffset_DrawRangeElementsBaseVertex 577
-#define _gloffset_MultiDrawElementsBaseVertex 578
-#define _gloffset_PolygonOffsetEXT 579
-#define _gloffset_GetPixelTexGenParameterfvSGIS 580
-#define _gloffset_GetPixelTexGenParameterivSGIS 581
-#define _gloffset_PixelTexGenParameterfSGIS 582
-#define _gloffset_PixelTexGenParameterfvSGIS 583
-#define _gloffset_PixelTexGenParameteriSGIS 584
-#define _gloffset_PixelTexGenParameterivSGIS 585
-#define _gloffset_SampleMaskSGIS 586
-#define _gloffset_SamplePatternSGIS 587
-#define _gloffset_ColorPointerEXT 588
-#define _gloffset_EdgeFlagPointerEXT 589
-#define _gloffset_IndexPointerEXT 590
-#define _gloffset_NormalPointerEXT 591
-#define _gloffset_TexCoordPointerEXT 592
-#define _gloffset_VertexPointerEXT 593
-#define _gloffset_PointParameterfEXT 594
-#define _gloffset_PointParameterfvEXT 595
-#define _gloffset_LockArraysEXT 596
-#define _gloffset_UnlockArraysEXT 597
-#define _gloffset_CullParameterdvEXT 598
-#define _gloffset_CullParameterfvEXT 599
-#define _gloffset_SecondaryColor3bEXT 600
-#define _gloffset_SecondaryColor3bvEXT 601
-#define _gloffset_SecondaryColor3dEXT 602
-#define _gloffset_SecondaryColor3dvEXT 603
-#define _gloffset_SecondaryColor3fEXT 604
-#define _gloffset_SecondaryColor3fvEXT 605
-#define _gloffset_SecondaryColor3iEXT 606
-#define _gloffset_SecondaryColor3ivEXT 607
-#define _gloffset_SecondaryColor3sEXT 608
-#define _gloffset_SecondaryColor3svEXT 609
-#define _gloffset_SecondaryColor3ubEXT 610
-#define _gloffset_SecondaryColor3ubvEXT 611
-#define _gloffset_SecondaryColor3uiEXT 612
-#define _gloffset_SecondaryColor3uivEXT 613
-#define _gloffset_SecondaryColor3usEXT 614
-#define _gloffset_SecondaryColor3usvEXT 615
-#define _gloffset_SecondaryColorPointerEXT 616
-#define _gloffset_MultiDrawArraysEXT 617
-#define _gloffset_MultiDrawElementsEXT 618
-#define _gloffset_FogCoordPointerEXT 619
-#define _gloffset_FogCoorddEXT 620
-#define _gloffset_FogCoorddvEXT 621
-#define _gloffset_FogCoordfEXT 622
-#define _gloffset_FogCoordfvEXT 623
-#define _gloffset_PixelTexGenSGIX 624
-#define _gloffset_BlendFuncSeparateEXT 625
-#define _gloffset_FlushVertexArrayRangeNV 626
-#define _gloffset_VertexArrayRangeNV 627
-#define _gloffset_CombinerInputNV 628
-#define _gloffset_CombinerOutputNV 629
-#define _gloffset_CombinerParameterfNV 630
-#define _gloffset_CombinerParameterfvNV 631
-#define _gloffset_CombinerParameteriNV 632
-#define _gloffset_CombinerParameterivNV 633
-#define _gloffset_FinalCombinerInputNV 634
-#define _gloffset_GetCombinerInputParameterfvNV 635
-#define _gloffset_GetCombinerInputParameterivNV 636
-#define _gloffset_GetCombinerOutputParameterfvNV 637
-#define _gloffset_GetCombinerOutputParameterivNV 638
-#define _gloffset_GetFinalCombinerInputParameterfvNV 639
-#define _gloffset_GetFinalCombinerInputParameterivNV 640
-#define _gloffset_ResizeBuffersMESA 641
-#define _gloffset_WindowPos2dMESA 642
-#define _gloffset_WindowPos2dvMESA 643
-#define _gloffset_WindowPos2fMESA 644
-#define _gloffset_WindowPos2fvMESA 645
-#define _gloffset_WindowPos2iMESA 646
-#define _gloffset_WindowPos2ivMESA 647
-#define _gloffset_WindowPos2sMESA 648
-#define _gloffset_WindowPos2svMESA 649
-#define _gloffset_WindowPos3dMESA 650
-#define _gloffset_WindowPos3dvMESA 651
-#define _gloffset_WindowPos3fMESA 652
-#define _gloffset_WindowPos3fvMESA 653
-#define _gloffset_WindowPos3iMESA 654
-#define _gloffset_WindowPos3ivMESA 655
-#define _gloffset_WindowPos3sMESA 656
-#define _gloffset_WindowPos3svMESA 657
-#define _gloffset_WindowPos4dMESA 658
-#define _gloffset_WindowPos4dvMESA 659
-#define _gloffset_WindowPos4fMESA 660
-#define _gloffset_WindowPos4fvMESA 661
-#define _gloffset_WindowPos4iMESA 662
-#define _gloffset_WindowPos4ivMESA 663
-#define _gloffset_WindowPos4sMESA 664
-#define _gloffset_WindowPos4svMESA 665
-#define _gloffset_MultiModeDrawArraysIBM 666
-#define _gloffset_MultiModeDrawElementsIBM 667
-#define _gloffset_DeleteFencesNV 668
-#define _gloffset_FinishFenceNV 669
-#define _gloffset_GenFencesNV 670
-#define _gloffset_GetFenceivNV 671
-#define _gloffset_IsFenceNV 672
-#define _gloffset_SetFenceNV 673
-#define _gloffset_TestFenceNV 674
-#define _gloffset_AreProgramsResidentNV 675
-#define _gloffset_BindProgramNV 676
-#define _gloffset_DeleteProgramsNV 677
-#define _gloffset_ExecuteProgramNV 678
-#define _gloffset_GenProgramsNV 679
-#define _gloffset_GetProgramParameterdvNV 680
-#define _gloffset_GetProgramParameterfvNV 681
-#define _gloffset_GetProgramStringNV 682
-#define _gloffset_GetProgramivNV 683
-#define _gloffset_GetTrackMatrixivNV 684
-#define _gloffset_GetVertexAttribPointervNV 685
-#define _gloffset_GetVertexAttribdvNV 686
-#define _gloffset_GetVertexAttribfvNV 687
-#define _gloffset_GetVertexAttribivNV 688
-#define _gloffset_IsProgramNV 689
-#define _gloffset_LoadProgramNV 690
-#define _gloffset_ProgramParameters4dvNV 691
-#define _gloffset_ProgramParameters4fvNV 692
-#define _gloffset_RequestResidentProgramsNV 693
-#define _gloffset_TrackMatrixNV 694
-#define _gloffset_VertexAttrib1dNV 695
-#define _gloffset_VertexAttrib1dvNV 696
-#define _gloffset_VertexAttrib1fNV 697
-#define _gloffset_VertexAttrib1fvNV 698
-#define _gloffset_VertexAttrib1sNV 699
-#define _gloffset_VertexAttrib1svNV 700
-#define _gloffset_VertexAttrib2dNV 701
-#define _gloffset_VertexAttrib2dvNV 702
-#define _gloffset_VertexAttrib2fNV 703
-#define _gloffset_VertexAttrib2fvNV 704
-#define _gloffset_VertexAttrib2sNV 705
-#define _gloffset_VertexAttrib2svNV 706
-#define _gloffset_VertexAttrib3dNV 707
-#define _gloffset_VertexAttrib3dvNV 708
-#define _gloffset_VertexAttrib3fNV 709
-#define _gloffset_VertexAttrib3fvNV 710
-#define _gloffset_VertexAttrib3sNV 711
-#define _gloffset_VertexAttrib3svNV 712
-#define _gloffset_VertexAttrib4dNV 713
-#define _gloffset_VertexAttrib4dvNV 714
-#define _gloffset_VertexAttrib4fNV 715
-#define _gloffset_VertexAttrib4fvNV 716
-#define _gloffset_VertexAttrib4sNV 717
-#define _gloffset_VertexAttrib4svNV 718
-#define _gloffset_VertexAttrib4ubNV 719
-#define _gloffset_VertexAttrib4ubvNV 720
-#define _gloffset_VertexAttribPointerNV 721
-#define _gloffset_VertexAttribs1dvNV 722
-#define _gloffset_VertexAttribs1fvNV 723
-#define _gloffset_VertexAttribs1svNV 724
-#define _gloffset_VertexAttribs2dvNV 725
-#define _gloffset_VertexAttribs2fvNV 726
-#define _gloffset_VertexAttribs2svNV 727
-#define _gloffset_VertexAttribs3dvNV 728
-#define _gloffset_VertexAttribs3fvNV 729
-#define _gloffset_VertexAttribs3svNV 730
-#define _gloffset_VertexAttribs4dvNV 731
-#define _gloffset_VertexAttribs4fvNV 732
-#define _gloffset_VertexAttribs4svNV 733
-#define _gloffset_VertexAttribs4ubvNV 734
-#define _gloffset_GetTexBumpParameterfvATI 735
-#define _gloffset_GetTexBumpParameterivATI 736
-#define _gloffset_TexBumpParameterfvATI 737
-#define _gloffset_TexBumpParameterivATI 738
-#define _gloffset_AlphaFragmentOp1ATI 739
-#define _gloffset_AlphaFragmentOp2ATI 740
-#define _gloffset_AlphaFragmentOp3ATI 741
-#define _gloffset_BeginFragmentShaderATI 742
-#define _gloffset_BindFragmentShaderATI 743
-#define _gloffset_ColorFragmentOp1ATI 744
-#define _gloffset_ColorFragmentOp2ATI 745
-#define _gloffset_ColorFragmentOp3ATI 746
-#define _gloffset_DeleteFragmentShaderATI 747
-#define _gloffset_EndFragmentShaderATI 748
-#define _gloffset_GenFragmentShadersATI 749
-#define _gloffset_PassTexCoordATI 750
-#define _gloffset_SampleMapATI 751
-#define _gloffset_SetFragmentShaderConstantATI 752
-#define _gloffset_PointParameteriNV 753
-#define _gloffset_PointParameterivNV 754
-#define _gloffset_ActiveStencilFaceEXT 755
-#define _gloffset_BindVertexArrayAPPLE 756
-#define _gloffset_DeleteVertexArraysAPPLE 757
-#define _gloffset_GenVertexArraysAPPLE 758
-#define _gloffset_IsVertexArrayAPPLE 759
-#define _gloffset_GetProgramNamedParameterdvNV 760
-#define _gloffset_GetProgramNamedParameterfvNV 761
-#define _gloffset_ProgramNamedParameter4dNV 762
-#define _gloffset_ProgramNamedParameter4dvNV 763
-#define _gloffset_ProgramNamedParameter4fNV 764
-#define _gloffset_ProgramNamedParameter4fvNV 765
-#define _gloffset_DepthBoundsEXT 766
-#define _gloffset_BlendEquationSeparateEXT 767
-#define _gloffset_BindFramebufferEXT 768
-#define _gloffset_BindRenderbufferEXT 769
-#define _gloffset_CheckFramebufferStatusEXT 770
-#define _gloffset_DeleteFramebuffersEXT 771
-#define _gloffset_DeleteRenderbuffersEXT 772
-#define _gloffset_FramebufferRenderbufferEXT 773
-#define _gloffset_FramebufferTexture1DEXT 774
-#define _gloffset_FramebufferTexture2DEXT 775
-#define _gloffset_FramebufferTexture3DEXT 776
-#define _gloffset_GenFramebuffersEXT 777
-#define _gloffset_GenRenderbuffersEXT 778
-#define _gloffset_GenerateMipmapEXT 779
-#define _gloffset_GetFramebufferAttachmentParameterivEXT 780
-#define _gloffset_GetRenderbufferParameterivEXT 781
-#define _gloffset_IsFramebufferEXT 782
-#define _gloffset_IsRenderbufferEXT 783
-#define _gloffset_RenderbufferStorageEXT 784
-#define _gloffset_BlitFramebufferEXT 785
-#define _gloffset_BufferParameteriAPPLE 786
-#define _gloffset_FlushMappedBufferRangeAPPLE 787
-#define _gloffset_FramebufferTextureLayerEXT 788
-#define _gloffset_ColorMaskIndexedEXT 789
-#define _gloffset_DisableIndexedEXT 790
-#define _gloffset_EnableIndexedEXT 791
-#define _gloffset_GetBooleanIndexedvEXT 792
-#define _gloffset_GetIntegerIndexedvEXT 793
-#define _gloffset_IsEnabledIndexedEXT 794
-#define _gloffset_BeginConditionalRenderNV 795
-#define _gloffset_EndConditionalRenderNV 796
-#define _gloffset_BeginTransformFeedbackEXT 797
-#define _gloffset_BindBufferBaseEXT 798
-#define _gloffset_BindBufferOffsetEXT 799
-#define _gloffset_BindBufferRangeEXT 800
-#define _gloffset_EndTransformFeedbackEXT 801
-#define _gloffset_GetTransformFeedbackVaryingEXT 802
-#define _gloffset_TransformFeedbackVaryingsEXT 803
-#define _gloffset_ProvokingVertexEXT 804
-#define _gloffset_GetTexParameterPointervAPPLE 805
-#define _gloffset_TextureRangeAPPLE 806
-#define _gloffset_GetObjectParameterivAPPLE 807
-#define _gloffset_ObjectPurgeableAPPLE 808
-#define _gloffset_ObjectUnpurgeableAPPLE 809
-#define _gloffset_StencilFuncSeparateATI 810
-#define _gloffset_ProgramEnvParameters4fvEXT 811
-#define _gloffset_ProgramLocalParameters4fvEXT 812
-#define _gloffset_GetQueryObjecti64vEXT 813
-#define _gloffset_GetQueryObjectui64vEXT 814
-#define _gloffset_EGLImageTargetRenderbufferStorageOES 815
-#define _gloffset_EGLImageTargetTexture2DOES 816
-#define _gloffset_FIRST_DYNAMIC 817
-
-#else
-
-#define _gloffset_AttachShader driDispatchRemapTable[AttachShader_remap_index]
-#define _gloffset_CreateProgram driDispatchRemapTable[CreateProgram_remap_index]
-#define _gloffset_CreateShader driDispatchRemapTable[CreateShader_remap_index]
-#define _gloffset_DeleteProgram driDispatchRemapTable[DeleteProgram_remap_index]
-#define _gloffset_DeleteShader driDispatchRemapTable[DeleteShader_remap_index]
-#define _gloffset_DetachShader driDispatchRemapTable[DetachShader_remap_index]
-#define _gloffset_GetAttachedShaders driDispatchRemapTable[GetAttachedShaders_remap_index]
-#define _gloffset_GetProgramInfoLog driDispatchRemapTable[GetProgramInfoLog_remap_index]
-#define _gloffset_GetProgramiv driDispatchRemapTable[GetProgramiv_remap_index]
-#define _gloffset_GetShaderInfoLog driDispatchRemapTable[GetShaderInfoLog_remap_index]
-#define _gloffset_GetShaderiv driDispatchRemapTable[GetShaderiv_remap_index]
-#define _gloffset_IsProgram driDispatchRemapTable[IsProgram_remap_index]
-#define _gloffset_IsShader driDispatchRemapTable[IsShader_remap_index]
-#define _gloffset_StencilFuncSeparate driDispatchRemapTable[StencilFuncSeparate_remap_index]
-#define _gloffset_StencilMaskSeparate driDispatchRemapTable[StencilMaskSeparate_remap_index]
-#define _gloffset_StencilOpSeparate driDispatchRemapTable[StencilOpSeparate_remap_index]
-#define _gloffset_UniformMatrix2x3fv driDispatchRemapTable[UniformMatrix2x3fv_remap_index]
-#define _gloffset_UniformMatrix2x4fv driDispatchRemapTable[UniformMatrix2x4fv_remap_index]
-#define _gloffset_UniformMatrix3x2fv driDispatchRemapTable[UniformMatrix3x2fv_remap_index]
-#define _gloffset_UniformMatrix3x4fv driDispatchRemapTable[UniformMatrix3x4fv_remap_index]
-#define _gloffset_UniformMatrix4x2fv driDispatchRemapTable[UniformMatrix4x2fv_remap_index]
-#define _gloffset_UniformMatrix4x3fv driDispatchRemapTable[UniformMatrix4x3fv_remap_index]
-#define _gloffset_DrawArraysInstanced driDispatchRemapTable[DrawArraysInstanced_remap_index]
-#define _gloffset_DrawElementsInstanced driDispatchRemapTable[DrawElementsInstanced_remap_index]
-#define _gloffset_LoadTransposeMatrixdARB driDispatchRemapTable[LoadTransposeMatrixdARB_remap_index]
-#define _gloffset_LoadTransposeMatrixfARB driDispatchRemapTable[LoadTransposeMatrixfARB_remap_index]
-#define _gloffset_MultTransposeMatrixdARB driDispatchRemapTable[MultTransposeMatrixdARB_remap_index]
-#define _gloffset_MultTransposeMatrixfARB driDispatchRemapTable[MultTransposeMatrixfARB_remap_index]
-#define _gloffset_SampleCoverageARB driDispatchRemapTable[SampleCoverageARB_remap_index]
-#define _gloffset_CompressedTexImage1DARB driDispatchRemapTable[CompressedTexImage1DARB_remap_index]
-#define _gloffset_CompressedTexImage2DARB driDispatchRemapTable[CompressedTexImage2DARB_remap_index]
-#define _gloffset_CompressedTexImage3DARB driDispatchRemapTable[CompressedTexImage3DARB_remap_index]
-#define _gloffset_CompressedTexSubImage1DARB driDispatchRemapTable[CompressedTexSubImage1DARB_remap_index]
-#define _gloffset_CompressedTexSubImage2DARB driDispatchRemapTable[CompressedTexSubImage2DARB_remap_index]
-#define _gloffset_CompressedTexSubImage3DARB driDispatchRemapTable[CompressedTexSubImage3DARB_remap_index]
-#define _gloffset_GetCompressedTexImageARB driDispatchRemapTable[GetCompressedTexImageARB_remap_index]
-#define _gloffset_DisableVertexAttribArrayARB driDispatchRemapTable[DisableVertexAttribArrayARB_remap_index]
-#define _gloffset_EnableVertexAttribArrayARB driDispatchRemapTable[EnableVertexAttribArrayARB_remap_index]
-#define _gloffset_GetProgramEnvParameterdvARB driDispatchRemapTable[GetProgramEnvParameterdvARB_remap_index]
-#define _gloffset_GetProgramEnvParameterfvARB driDispatchRemapTable[GetProgramEnvParameterfvARB_remap_index]
-#define _gloffset_GetProgramLocalParameterdvARB driDispatchRemapTable[GetProgramLocalParameterdvARB_remap_index]
-#define _gloffset_GetProgramLocalParameterfvARB driDispatchRemapTable[GetProgramLocalParameterfvARB_remap_index]
-#define _gloffset_GetProgramStringARB driDispatchRemapTable[GetProgramStringARB_remap_index]
-#define _gloffset_GetProgramivARB driDispatchRemapTable[GetProgramivARB_remap_index]
-#define _gloffset_GetVertexAttribdvARB driDispatchRemapTable[GetVertexAttribdvARB_remap_index]
-#define _gloffset_GetVertexAttribfvARB driDispatchRemapTable[GetVertexAttribfvARB_remap_index]
-#define _gloffset_GetVertexAttribivARB driDispatchRemapTable[GetVertexAttribivARB_remap_index]
-#define _gloffset_ProgramEnvParameter4dARB driDispatchRemapTable[ProgramEnvParameter4dARB_remap_index]
-#define _gloffset_ProgramEnvParameter4dvARB driDispatchRemapTable[ProgramEnvParameter4dvARB_remap_index]
-#define _gloffset_ProgramEnvParameter4fARB driDispatchRemapTable[ProgramEnvParameter4fARB_remap_index]
-#define _gloffset_ProgramEnvParameter4fvARB driDispatchRemapTable[ProgramEnvParameter4fvARB_remap_index]
-#define _gloffset_ProgramLocalParameter4dARB driDispatchRemapTable[ProgramLocalParameter4dARB_remap_index]
-#define _gloffset_ProgramLocalParameter4dvARB driDispatchRemapTable[ProgramLocalParameter4dvARB_remap_index]
-#define _gloffset_ProgramLocalParameter4fARB driDispatchRemapTable[ProgramLocalParameter4fARB_remap_index]
-#define _gloffset_ProgramLocalParameter4fvARB driDispatchRemapTable[ProgramLocalParameter4fvARB_remap_index]
-#define _gloffset_ProgramStringARB driDispatchRemapTable[ProgramStringARB_remap_index]
-#define _gloffset_VertexAttrib1dARB driDispatchRemapTable[VertexAttrib1dARB_remap_index]
-#define _gloffset_VertexAttrib1dvARB driDispatchRemapTable[VertexAttrib1dvARB_remap_index]
-#define _gloffset_VertexAttrib1fARB driDispatchRemapTable[VertexAttrib1fARB_remap_index]
-#define _gloffset_VertexAttrib1fvARB driDispatchRemapTable[VertexAttrib1fvARB_remap_index]
-#define _gloffset_VertexAttrib1sARB driDispatchRemapTable[VertexAttrib1sARB_remap_index]
-#define _gloffset_VertexAttrib1svARB driDispatchRemapTable[VertexAttrib1svARB_remap_index]
-#define _gloffset_VertexAttrib2dARB driDispatchRemapTable[VertexAttrib2dARB_remap_index]
-#define _gloffset_VertexAttrib2dvARB driDispatchRemapTable[VertexAttrib2dvARB_remap_index]
-#define _gloffset_VertexAttrib2fARB driDispatchRemapTable[VertexAttrib2fARB_remap_index]
-#define _gloffset_VertexAttrib2fvARB driDispatchRemapTable[VertexAttrib2fvARB_remap_index]
-#define _gloffset_VertexAttrib2sARB driDispatchRemapTable[VertexAttrib2sARB_remap_index]
-#define _gloffset_VertexAttrib2svARB driDispatchRemapTable[VertexAttrib2svARB_remap_index]
-#define _gloffset_VertexAttrib3dARB driDispatchRemapTable[VertexAttrib3dARB_remap_index]
-#define _gloffset_VertexAttrib3dvARB driDispatchRemapTable[VertexAttrib3dvARB_remap_index]
-#define _gloffset_VertexAttrib3fARB driDispatchRemapTable[VertexAttrib3fARB_remap_index]
-#define _gloffset_VertexAttrib3fvARB driDispatchRemapTable[VertexAttrib3fvARB_remap_index]
-#define _gloffset_VertexAttrib3sARB driDispatchRemapTable[VertexAttrib3sARB_remap_index]
-#define _gloffset_VertexAttrib3svARB driDispatchRemapTable[VertexAttrib3svARB_remap_index]
-#define _gloffset_VertexAttrib4NbvARB driDispatchRemapTable[VertexAttrib4NbvARB_remap_index]
-#define _gloffset_VertexAttrib4NivARB driDispatchRemapTable[VertexAttrib4NivARB_remap_index]
-#define _gloffset_VertexAttrib4NsvARB driDispatchRemapTable[VertexAttrib4NsvARB_remap_index]
-#define _gloffset_VertexAttrib4NubARB driDispatchRemapTable[VertexAttrib4NubARB_remap_index]
-#define _gloffset_VertexAttrib4NubvARB driDispatchRemapTable[VertexAttrib4NubvARB_remap_index]
-#define _gloffset_VertexAttrib4NuivARB driDispatchRemapTable[VertexAttrib4NuivARB_remap_index]
-#define _gloffset_VertexAttrib4NusvARB driDispatchRemapTable[VertexAttrib4NusvARB_remap_index]
-#define _gloffset_VertexAttrib4bvARB driDispatchRemapTable[VertexAttrib4bvARB_remap_index]
-#define _gloffset_VertexAttrib4dARB driDispatchRemapTable[VertexAttrib4dARB_remap_index]
-#define _gloffset_VertexAttrib4dvARB driDispatchRemapTable[VertexAttrib4dvARB_remap_index]
-#define _gloffset_VertexAttrib4fARB driDispatchRemapTable[VertexAttrib4fARB_remap_index]
-#define _gloffset_VertexAttrib4fvARB driDispatchRemapTable[VertexAttrib4fvARB_remap_index]
-#define _gloffset_VertexAttrib4ivARB driDispatchRemapTable[VertexAttrib4ivARB_remap_index]
-#define _gloffset_VertexAttrib4sARB driDispatchRemapTable[VertexAttrib4sARB_remap_index]
-#define _gloffset_VertexAttrib4svARB driDispatchRemapTable[VertexAttrib4svARB_remap_index]
-#define _gloffset_VertexAttrib4ubvARB driDispatchRemapTable[VertexAttrib4ubvARB_remap_index]
-#define _gloffset_VertexAttrib4uivARB driDispatchRemapTable[VertexAttrib4uivARB_remap_index]
-#define _gloffset_VertexAttrib4usvARB driDispatchRemapTable[VertexAttrib4usvARB_remap_index]
-#define _gloffset_VertexAttribPointerARB driDispatchRemapTable[VertexAttribPointerARB_remap_index]
-#define _gloffset_BindBufferARB driDispatchRemapTable[BindBufferARB_remap_index]
-#define _gloffset_BufferDataARB driDispatchRemapTable[BufferDataARB_remap_index]
-#define _gloffset_BufferSubDataARB driDispatchRemapTable[BufferSubDataARB_remap_index]
-#define _gloffset_DeleteBuffersARB driDispatchRemapTable[DeleteBuffersARB_remap_index]
-#define _gloffset_GenBuffersARB driDispatchRemapTable[GenBuffersARB_remap_index]
-#define _gloffset_GetBufferParameterivARB driDispatchRemapTable[GetBufferParameterivARB_remap_index]
-#define _gloffset_GetBufferPointervARB driDispatchRemapTable[GetBufferPointervARB_remap_index]
-#define _gloffset_GetBufferSubDataARB driDispatchRemapTable[GetBufferSubDataARB_remap_index]
-#define _gloffset_IsBufferARB driDispatchRemapTable[IsBufferARB_remap_index]
-#define _gloffset_MapBufferARB driDispatchRemapTable[MapBufferARB_remap_index]
-#define _gloffset_UnmapBufferARB driDispatchRemapTable[UnmapBufferARB_remap_index]
-#define _gloffset_BeginQueryARB driDispatchRemapTable[BeginQueryARB_remap_index]
-#define _gloffset_DeleteQueriesARB driDispatchRemapTable[DeleteQueriesARB_remap_index]
-#define _gloffset_EndQueryARB driDispatchRemapTable[EndQueryARB_remap_index]
-#define _gloffset_GenQueriesARB driDispatchRemapTable[GenQueriesARB_remap_index]
-#define _gloffset_GetQueryObjectivARB driDispatchRemapTable[GetQueryObjectivARB_remap_index]
-#define _gloffset_GetQueryObjectuivARB driDispatchRemapTable[GetQueryObjectuivARB_remap_index]
-#define _gloffset_GetQueryivARB driDispatchRemapTable[GetQueryivARB_remap_index]
-#define _gloffset_IsQueryARB driDispatchRemapTable[IsQueryARB_remap_index]
-#define _gloffset_AttachObjectARB driDispatchRemapTable[AttachObjectARB_remap_index]
-#define _gloffset_CompileShaderARB driDispatchRemapTable[CompileShaderARB_remap_index]
-#define _gloffset_CreateProgramObjectARB driDispatchRemapTable[CreateProgramObjectARB_remap_index]
-#define _gloffset_CreateShaderObjectARB driDispatchRemapTable[CreateShaderObjectARB_remap_index]
-#define _gloffset_DeleteObjectARB driDispatchRemapTable[DeleteObjectARB_remap_index]
-#define _gloffset_DetachObjectARB driDispatchRemapTable[DetachObjectARB_remap_index]
-#define _gloffset_GetActiveUniformARB driDispatchRemapTable[GetActiveUniformARB_remap_index]
-#define _gloffset_GetAttachedObjectsARB driDispatchRemapTable[GetAttachedObjectsARB_remap_index]
-#define _gloffset_GetHandleARB driDispatchRemapTable[GetHandleARB_remap_index]
-#define _gloffset_GetInfoLogARB driDispatchRemapTable[GetInfoLogARB_remap_index]
-#define _gloffset_GetObjectParameterfvARB driDispatchRemapTable[GetObjectParameterfvARB_remap_index]
-#define _gloffset_GetObjectParameterivARB driDispatchRemapTable[GetObjectParameterivARB_remap_index]
-#define _gloffset_GetShaderSourceARB driDispatchRemapTable[GetShaderSourceARB_remap_index]
-#define _gloffset_GetUniformLocationARB driDispatchRemapTable[GetUniformLocationARB_remap_index]
-#define _gloffset_GetUniformfvARB driDispatchRemapTable[GetUniformfvARB_remap_index]
-#define _gloffset_GetUniformivARB driDispatchRemapTable[GetUniformivARB_remap_index]
-#define _gloffset_LinkProgramARB driDispatchRemapTable[LinkProgramARB_remap_index]
-#define _gloffset_ShaderSourceARB driDispatchRemapTable[ShaderSourceARB_remap_index]
-#define _gloffset_Uniform1fARB driDispatchRemapTable[Uniform1fARB_remap_index]
-#define _gloffset_Uniform1fvARB driDispatchRemapTable[Uniform1fvARB_remap_index]
-#define _gloffset_Uniform1iARB driDispatchRemapTable[Uniform1iARB_remap_index]
-#define _gloffset_Uniform1ivARB driDispatchRemapTable[Uniform1ivARB_remap_index]
-#define _gloffset_Uniform2fARB driDispatchRemapTable[Uniform2fARB_remap_index]
-#define _gloffset_Uniform2fvARB driDispatchRemapTable[Uniform2fvARB_remap_index]
-#define _gloffset_Uniform2iARB driDispatchRemapTable[Uniform2iARB_remap_index]
-#define _gloffset_Uniform2ivARB driDispatchRemapTable[Uniform2ivARB_remap_index]
-#define _gloffset_Uniform3fARB driDispatchRemapTable[Uniform3fARB_remap_index]
-#define _gloffset_Uniform3fvARB driDispatchRemapTable[Uniform3fvARB_remap_index]
-#define _gloffset_Uniform3iARB driDispatchRemapTable[Uniform3iARB_remap_index]
-#define _gloffset_Uniform3ivARB driDispatchRemapTable[Uniform3ivARB_remap_index]
-#define _gloffset_Uniform4fARB driDispatchRemapTable[Uniform4fARB_remap_index]
-#define _gloffset_Uniform4fvARB driDispatchRemapTable[Uniform4fvARB_remap_index]
-#define _gloffset_Uniform4iARB driDispatchRemapTable[Uniform4iARB_remap_index]
-#define _gloffset_Uniform4ivARB driDispatchRemapTable[Uniform4ivARB_remap_index]
-#define _gloffset_UniformMatrix2fvARB driDispatchRemapTable[UniformMatrix2fvARB_remap_index]
-#define _gloffset_UniformMatrix3fvARB driDispatchRemapTable[UniformMatrix3fvARB_remap_index]
-#define _gloffset_UniformMatrix4fvARB driDispatchRemapTable[UniformMatrix4fvARB_remap_index]
-#define _gloffset_UseProgramObjectARB driDispatchRemapTable[UseProgramObjectARB_remap_index]
-#define _gloffset_ValidateProgramARB driDispatchRemapTable[ValidateProgramARB_remap_index]
-#define _gloffset_BindAttribLocationARB driDispatchRemapTable[BindAttribLocationARB_remap_index]
-#define _gloffset_GetActiveAttribARB driDispatchRemapTable[GetActiveAttribARB_remap_index]
-#define _gloffset_GetAttribLocationARB driDispatchRemapTable[GetAttribLocationARB_remap_index]
-#define _gloffset_DrawBuffersARB driDispatchRemapTable[DrawBuffersARB_remap_index]
-#define _gloffset_RenderbufferStorageMultisample driDispatchRemapTable[RenderbufferStorageMultisample_remap_index]
-#define _gloffset_FlushMappedBufferRange driDispatchRemapTable[FlushMappedBufferRange_remap_index]
-#define _gloffset_MapBufferRange driDispatchRemapTable[MapBufferRange_remap_index]
-#define _gloffset_BindVertexArray driDispatchRemapTable[BindVertexArray_remap_index]
-#define _gloffset_GenVertexArrays driDispatchRemapTable[GenVertexArrays_remap_index]
-#define _gloffset_CopyBufferSubData driDispatchRemapTable[CopyBufferSubData_remap_index]
-#define _gloffset_ClientWaitSync driDispatchRemapTable[ClientWaitSync_remap_index]
-#define _gloffset_DeleteSync driDispatchRemapTable[DeleteSync_remap_index]
-#define _gloffset_FenceSync driDispatchRemapTable[FenceSync_remap_index]
-#define _gloffset_GetInteger64v driDispatchRemapTable[GetInteger64v_remap_index]
-#define _gloffset_GetSynciv driDispatchRemapTable[GetSynciv_remap_index]
-#define _gloffset_IsSync driDispatchRemapTable[IsSync_remap_index]
-#define _gloffset_WaitSync driDispatchRemapTable[WaitSync_remap_index]
-#define _gloffset_DrawElementsBaseVertex driDispatchRemapTable[DrawElementsBaseVertex_remap_index]
-#define _gloffset_DrawRangeElementsBaseVertex driDispatchRemapTable[DrawRangeElementsBaseVertex_remap_index]
-#define _gloffset_MultiDrawElementsBaseVertex driDispatchRemapTable[MultiDrawElementsBaseVertex_remap_index]
-#define _gloffset_PolygonOffsetEXT driDispatchRemapTable[PolygonOffsetEXT_remap_index]
-#define _gloffset_GetPixelTexGenParameterfvSGIS driDispatchRemapTable[GetPixelTexGenParameterfvSGIS_remap_index]
-#define _gloffset_GetPixelTexGenParameterivSGIS driDispatchRemapTable[GetPixelTexGenParameterivSGIS_remap_index]
-#define _gloffset_PixelTexGenParameterfSGIS driDispatchRemapTable[PixelTexGenParameterfSGIS_remap_index]
-#define _gloffset_PixelTexGenParameterfvSGIS driDispatchRemapTable[PixelTexGenParameterfvSGIS_remap_index]
-#define _gloffset_PixelTexGenParameteriSGIS driDispatchRemapTable[PixelTexGenParameteriSGIS_remap_index]
-#define _gloffset_PixelTexGenParameterivSGIS driDispatchRemapTable[PixelTexGenParameterivSGIS_remap_index]
-#define _gloffset_SampleMaskSGIS driDispatchRemapTable[SampleMaskSGIS_remap_index]
-#define _gloffset_SamplePatternSGIS driDispatchRemapTable[SamplePatternSGIS_remap_index]
-#define _gloffset_ColorPointerEXT driDispatchRemapTable[ColorPointerEXT_remap_index]
-#define _gloffset_EdgeFlagPointerEXT driDispatchRemapTable[EdgeFlagPointerEXT_remap_index]
-#define _gloffset_IndexPointerEXT driDispatchRemapTable[IndexPointerEXT_remap_index]
-#define _gloffset_NormalPointerEXT driDispatchRemapTable[NormalPointerEXT_remap_index]
-#define _gloffset_TexCoordPointerEXT driDispatchRemapTable[TexCoordPointerEXT_remap_index]
-#define _gloffset_VertexPointerEXT driDispatchRemapTable[VertexPointerEXT_remap_index]
-#define _gloffset_PointParameterfEXT driDispatchRemapTable[PointParameterfEXT_remap_index]
-#define _gloffset_PointParameterfvEXT driDispatchRemapTable[PointParameterfvEXT_remap_index]
-#define _gloffset_LockArraysEXT driDispatchRemapTable[LockArraysEXT_remap_index]
-#define _gloffset_UnlockArraysEXT driDispatchRemapTable[UnlockArraysEXT_remap_index]
-#define _gloffset_CullParameterdvEXT driDispatchRemapTable[CullParameterdvEXT_remap_index]
-#define _gloffset_CullParameterfvEXT driDispatchRemapTable[CullParameterfvEXT_remap_index]
-#define _gloffset_SecondaryColor3bEXT driDispatchRemapTable[SecondaryColor3bEXT_remap_index]
-#define _gloffset_SecondaryColor3bvEXT driDispatchRemapTable[SecondaryColor3bvEXT_remap_index]
-#define _gloffset_SecondaryColor3dEXT driDispatchRemapTable[SecondaryColor3dEXT_remap_index]
-#define _gloffset_SecondaryColor3dvEXT driDispatchRemapTable[SecondaryColor3dvEXT_remap_index]
-#define _gloffset_SecondaryColor3fEXT driDispatchRemapTable[SecondaryColor3fEXT_remap_index]
-#define _gloffset_SecondaryColor3fvEXT driDispatchRemapTable[SecondaryColor3fvEXT_remap_index]
-#define _gloffset_SecondaryColor3iEXT driDispatchRemapTable[SecondaryColor3iEXT_remap_index]
-#define _gloffset_SecondaryColor3ivEXT driDispatchRemapTable[SecondaryColor3ivEXT_remap_index]
-#define _gloffset_SecondaryColor3sEXT driDispatchRemapTable[SecondaryColor3sEXT_remap_index]
-#define _gloffset_SecondaryColor3svEXT driDispatchRemapTable[SecondaryColor3svEXT_remap_index]
-#define _gloffset_SecondaryColor3ubEXT driDispatchRemapTable[SecondaryColor3ubEXT_remap_index]
-#define _gloffset_SecondaryColor3ubvEXT driDispatchRemapTable[SecondaryColor3ubvEXT_remap_index]
-#define _gloffset_SecondaryColor3uiEXT driDispatchRemapTable[SecondaryColor3uiEXT_remap_index]
-#define _gloffset_SecondaryColor3uivEXT driDispatchRemapTable[SecondaryColor3uivEXT_remap_index]
-#define _gloffset_SecondaryColor3usEXT driDispatchRemapTable[SecondaryColor3usEXT_remap_index]
-#define _gloffset_SecondaryColor3usvEXT driDispatchRemapTable[SecondaryColor3usvEXT_remap_index]
-#define _gloffset_SecondaryColorPointerEXT driDispatchRemapTable[SecondaryColorPointerEXT_remap_index]
-#define _gloffset_MultiDrawArraysEXT driDispatchRemapTable[MultiDrawArraysEXT_remap_index]
-#define _gloffset_MultiDrawElementsEXT driDispatchRemapTable[MultiDrawElementsEXT_remap_index]
-#define _gloffset_FogCoordPointerEXT driDispatchRemapTable[FogCoordPointerEXT_remap_index]
-#define _gloffset_FogCoorddEXT driDispatchRemapTable[FogCoorddEXT_remap_index]
-#define _gloffset_FogCoorddvEXT driDispatchRemapTable[FogCoorddvEXT_remap_index]
-#define _gloffset_FogCoordfEXT driDispatchRemapTable[FogCoordfEXT_remap_index]
-#define _gloffset_FogCoordfvEXT driDispatchRemapTable[FogCoordfvEXT_remap_index]
-#define _gloffset_PixelTexGenSGIX driDispatchRemapTable[PixelTexGenSGIX_remap_index]
-#define _gloffset_BlendFuncSeparateEXT driDispatchRemapTable[BlendFuncSeparateEXT_remap_index]
-#define _gloffset_FlushVertexArrayRangeNV driDispatchRemapTable[FlushVertexArrayRangeNV_remap_index]
-#define _gloffset_VertexArrayRangeNV driDispatchRemapTable[VertexArrayRangeNV_remap_index]
-#define _gloffset_CombinerInputNV driDispatchRemapTable[CombinerInputNV_remap_index]
-#define _gloffset_CombinerOutputNV driDispatchRemapTable[CombinerOutputNV_remap_index]
-#define _gloffset_CombinerParameterfNV driDispatchRemapTable[CombinerParameterfNV_remap_index]
-#define _gloffset_CombinerParameterfvNV driDispatchRemapTable[CombinerParameterfvNV_remap_index]
-#define _gloffset_CombinerParameteriNV driDispatchRemapTable[CombinerParameteriNV_remap_index]
-#define _gloffset_CombinerParameterivNV driDispatchRemapTable[CombinerParameterivNV_remap_index]
-#define _gloffset_FinalCombinerInputNV driDispatchRemapTable[FinalCombinerInputNV_remap_index]
-#define _gloffset_GetCombinerInputParameterfvNV driDispatchRemapTable[GetCombinerInputParameterfvNV_remap_index]
-#define _gloffset_GetCombinerInputParameterivNV driDispatchRemapTable[GetCombinerInputParameterivNV_remap_index]
-#define _gloffset_GetCombinerOutputParameterfvNV driDispatchRemapTable[GetCombinerOutputParameterfvNV_remap_index]
-#define _gloffset_GetCombinerOutputParameterivNV driDispatchRemapTable[GetCombinerOutputParameterivNV_remap_index]
-#define _gloffset_GetFinalCombinerInputParameterfvNV driDispatchRemapTable[GetFinalCombinerInputParameterfvNV_remap_index]
-#define _gloffset_GetFinalCombinerInputParameterivNV driDispatchRemapTable[GetFinalCombinerInputParameterivNV_remap_index]
-#define _gloffset_ResizeBuffersMESA driDispatchRemapTable[ResizeBuffersMESA_remap_index]
-#define _gloffset_WindowPos2dMESA driDispatchRemapTable[WindowPos2dMESA_remap_index]
-#define _gloffset_WindowPos2dvMESA driDispatchRemapTable[WindowPos2dvMESA_remap_index]
-#define _gloffset_WindowPos2fMESA driDispatchRemapTable[WindowPos2fMESA_remap_index]
-#define _gloffset_WindowPos2fvMESA driDispatchRemapTable[WindowPos2fvMESA_remap_index]
-#define _gloffset_WindowPos2iMESA driDispatchRemapTable[WindowPos2iMESA_remap_index]
-#define _gloffset_WindowPos2ivMESA driDispatchRemapTable[WindowPos2ivMESA_remap_index]
-#define _gloffset_WindowPos2sMESA driDispatchRemapTable[WindowPos2sMESA_remap_index]
-#define _gloffset_WindowPos2svMESA driDispatchRemapTable[WindowPos2svMESA_remap_index]
-#define _gloffset_WindowPos3dMESA driDispatchRemapTable[WindowPos3dMESA_remap_index]
-#define _gloffset_WindowPos3dvMESA driDispatchRemapTable[WindowPos3dvMESA_remap_index]
-#define _gloffset_WindowPos3fMESA driDispatchRemapTable[WindowPos3fMESA_remap_index]
-#define _gloffset_WindowPos3fvMESA driDispatchRemapTable[WindowPos3fvMESA_remap_index]
-#define _gloffset_WindowPos3iMESA driDispatchRemapTable[WindowPos3iMESA_remap_index]
-#define _gloffset_WindowPos3ivMESA driDispatchRemapTable[WindowPos3ivMESA_remap_index]
-#define _gloffset_WindowPos3sMESA driDispatchRemapTable[WindowPos3sMESA_remap_index]
-#define _gloffset_WindowPos3svMESA driDispatchRemapTable[WindowPos3svMESA_remap_index]
-#define _gloffset_WindowPos4dMESA driDispatchRemapTable[WindowPos4dMESA_remap_index]
-#define _gloffset_WindowPos4dvMESA driDispatchRemapTable[WindowPos4dvMESA_remap_index]
-#define _gloffset_WindowPos4fMESA driDispatchRemapTable[WindowPos4fMESA_remap_index]
-#define _gloffset_WindowPos4fvMESA driDispatchRemapTable[WindowPos4fvMESA_remap_index]
-#define _gloffset_WindowPos4iMESA driDispatchRemapTable[WindowPos4iMESA_remap_index]
-#define _gloffset_WindowPos4ivMESA driDispatchRemapTable[WindowPos4ivMESA_remap_index]
-#define _gloffset_WindowPos4sMESA driDispatchRemapTable[WindowPos4sMESA_remap_index]
-#define _gloffset_WindowPos4svMESA driDispatchRemapTable[WindowPos4svMESA_remap_index]
-#define _gloffset_MultiModeDrawArraysIBM driDispatchRemapTable[MultiModeDrawArraysIBM_remap_index]
-#define _gloffset_MultiModeDrawElementsIBM driDispatchRemapTable[MultiModeDrawElementsIBM_remap_index]
-#define _gloffset_DeleteFencesNV driDispatchRemapTable[DeleteFencesNV_remap_index]
-#define _gloffset_FinishFenceNV driDispatchRemapTable[FinishFenceNV_remap_index]
-#define _gloffset_GenFencesNV driDispatchRemapTable[GenFencesNV_remap_index]
-#define _gloffset_GetFenceivNV driDispatchRemapTable[GetFenceivNV_remap_index]
-#define _gloffset_IsFenceNV driDispatchRemapTable[IsFenceNV_remap_index]
-#define _gloffset_SetFenceNV driDispatchRemapTable[SetFenceNV_remap_index]
-#define _gloffset_TestFenceNV driDispatchRemapTable[TestFenceNV_remap_index]
-#define _gloffset_AreProgramsResidentNV driDispatchRemapTable[AreProgramsResidentNV_remap_index]
-#define _gloffset_BindProgramNV driDispatchRemapTable[BindProgramNV_remap_index]
-#define _gloffset_DeleteProgramsNV driDispatchRemapTable[DeleteProgramsNV_remap_index]
-#define _gloffset_ExecuteProgramNV driDispatchRemapTable[ExecuteProgramNV_remap_index]
-#define _gloffset_GenProgramsNV driDispatchRemapTable[GenProgramsNV_remap_index]
-#define _gloffset_GetProgramParameterdvNV driDispatchRemapTable[GetProgramParameterdvNV_remap_index]
-#define _gloffset_GetProgramParameterfvNV driDispatchRemapTable[GetProgramParameterfvNV_remap_index]
-#define _gloffset_GetProgramStringNV driDispatchRemapTable[GetProgramStringNV_remap_index]
-#define _gloffset_GetProgramivNV driDispatchRemapTable[GetProgramivNV_remap_index]
-#define _gloffset_GetTrackMatrixivNV driDispatchRemapTable[GetTrackMatrixivNV_remap_index]
-#define _gloffset_GetVertexAttribPointervNV driDispatchRemapTable[GetVertexAttribPointervNV_remap_index]
-#define _gloffset_GetVertexAttribdvNV driDispatchRemapTable[GetVertexAttribdvNV_remap_index]
-#define _gloffset_GetVertexAttribfvNV driDispatchRemapTable[GetVertexAttribfvNV_remap_index]
-#define _gloffset_GetVertexAttribivNV driDispatchRemapTable[GetVertexAttribivNV_remap_index]
-#define _gloffset_IsProgramNV driDispatchRemapTable[IsProgramNV_remap_index]
-#define _gloffset_LoadProgramNV driDispatchRemapTable[LoadProgramNV_remap_index]
-#define _gloffset_ProgramParameters4dvNV driDispatchRemapTable[ProgramParameters4dvNV_remap_index]
-#define _gloffset_ProgramParameters4fvNV driDispatchRemapTable[ProgramParameters4fvNV_remap_index]
-#define _gloffset_RequestResidentProgramsNV driDispatchRemapTable[RequestResidentProgramsNV_remap_index]
-#define _gloffset_TrackMatrixNV driDispatchRemapTable[TrackMatrixNV_remap_index]
-#define _gloffset_VertexAttrib1dNV driDispatchRemapTable[VertexAttrib1dNV_remap_index]
-#define _gloffset_VertexAttrib1dvNV driDispatchRemapTable[VertexAttrib1dvNV_remap_index]
-#define _gloffset_VertexAttrib1fNV driDispatchRemapTable[VertexAttrib1fNV_remap_index]
-#define _gloffset_VertexAttrib1fvNV driDispatchRemapTable[VertexAttrib1fvNV_remap_index]
-#define _gloffset_VertexAttrib1sNV driDispatchRemapTable[VertexAttrib1sNV_remap_index]
-#define _gloffset_VertexAttrib1svNV driDispatchRemapTable[VertexAttrib1svNV_remap_index]
-#define _gloffset_VertexAttrib2dNV driDispatchRemapTable[VertexAttrib2dNV_remap_index]
-#define _gloffset_VertexAttrib2dvNV driDispatchRemapTable[VertexAttrib2dvNV_remap_index]
-#define _gloffset_VertexAttrib2fNV driDispatchRemapTable[VertexAttrib2fNV_remap_index]
-#define _gloffset_VertexAttrib2fvNV driDispatchRemapTable[VertexAttrib2fvNV_remap_index]
-#define _gloffset_VertexAttrib2sNV driDispatchRemapTable[VertexAttrib2sNV_remap_index]
-#define _gloffset_VertexAttrib2svNV driDispatchRemapTable[VertexAttrib2svNV_remap_index]
-#define _gloffset_VertexAttrib3dNV driDispatchRemapTable[VertexAttrib3dNV_remap_index]
-#define _gloffset_VertexAttrib3dvNV driDispatchRemapTable[VertexAttrib3dvNV_remap_index]
-#define _gloffset_VertexAttrib3fNV driDispatchRemapTable[VertexAttrib3fNV_remap_index]
-#define _gloffset_VertexAttrib3fvNV driDispatchRemapTable[VertexAttrib3fvNV_remap_index]
-#define _gloffset_VertexAttrib3sNV driDispatchRemapTable[VertexAttrib3sNV_remap_index]
-#define _gloffset_VertexAttrib3svNV driDispatchRemapTable[VertexAttrib3svNV_remap_index]
-#define _gloffset_VertexAttrib4dNV driDispatchRemapTable[VertexAttrib4dNV_remap_index]
-#define _gloffset_VertexAttrib4dvNV driDispatchRemapTable[VertexAttrib4dvNV_remap_index]
-#define _gloffset_VertexAttrib4fNV driDispatchRemapTable[VertexAttrib4fNV_remap_index]
-#define _gloffset_VertexAttrib4fvNV driDispatchRemapTable[VertexAttrib4fvNV_remap_index]
-#define _gloffset_VertexAttrib4sNV driDispatchRemapTable[VertexAttrib4sNV_remap_index]
-#define _gloffset_VertexAttrib4svNV driDispatchRemapTable[VertexAttrib4svNV_remap_index]
-#define _gloffset_VertexAttrib4ubNV driDispatchRemapTable[VertexAttrib4ubNV_remap_index]
-#define _gloffset_VertexAttrib4ubvNV driDispatchRemapTable[VertexAttrib4ubvNV_remap_index]
-#define _gloffset_VertexAttribPointerNV driDispatchRemapTable[VertexAttribPointerNV_remap_index]
-#define _gloffset_VertexAttribs1dvNV driDispatchRemapTable[VertexAttribs1dvNV_remap_index]
-#define _gloffset_VertexAttribs1fvNV driDispatchRemapTable[VertexAttribs1fvNV_remap_index]
-#define _gloffset_VertexAttribs1svNV driDispatchRemapTable[VertexAttribs1svNV_remap_index]
-#define _gloffset_VertexAttribs2dvNV driDispatchRemapTable[VertexAttribs2dvNV_remap_index]
-#define _gloffset_VertexAttribs2fvNV driDispatchRemapTable[VertexAttribs2fvNV_remap_index]
-#define _gloffset_VertexAttribs2svNV driDispatchRemapTable[VertexAttribs2svNV_remap_index]
-#define _gloffset_VertexAttribs3dvNV driDispatchRemapTable[VertexAttribs3dvNV_remap_index]
-#define _gloffset_VertexAttribs3fvNV driDispatchRemapTable[VertexAttribs3fvNV_remap_index]
-#define _gloffset_VertexAttribs3svNV driDispatchRemapTable[VertexAttribs3svNV_remap_index]
-#define _gloffset_VertexAttribs4dvNV driDispatchRemapTable[VertexAttribs4dvNV_remap_index]
-#define _gloffset_VertexAttribs4fvNV driDispatchRemapTable[VertexAttribs4fvNV_remap_index]
-#define _gloffset_VertexAttribs4svNV driDispatchRemapTable[VertexAttribs4svNV_remap_index]
-#define _gloffset_VertexAttribs4ubvNV driDispatchRemapTable[VertexAttribs4ubvNV_remap_index]
-#define _gloffset_GetTexBumpParameterfvATI driDispatchRemapTable[GetTexBumpParameterfvATI_remap_index]
-#define _gloffset_GetTexBumpParameterivATI driDispatchRemapTable[GetTexBumpParameterivATI_remap_index]
-#define _gloffset_TexBumpParameterfvATI driDispatchRemapTable[TexBumpParameterfvATI_remap_index]
-#define _gloffset_TexBumpParameterivATI driDispatchRemapTable[TexBumpParameterivATI_remap_index]
-#define _gloffset_AlphaFragmentOp1ATI driDispatchRemapTable[AlphaFragmentOp1ATI_remap_index]
-#define _gloffset_AlphaFragmentOp2ATI driDispatchRemapTable[AlphaFragmentOp2ATI_remap_index]
-#define _gloffset_AlphaFragmentOp3ATI driDispatchRemapTable[AlphaFragmentOp3ATI_remap_index]
-#define _gloffset_BeginFragmentShaderATI driDispatchRemapTable[BeginFragmentShaderATI_remap_index]
-#define _gloffset_BindFragmentShaderATI driDispatchRemapTable[BindFragmentShaderATI_remap_index]
-#define _gloffset_ColorFragmentOp1ATI driDispatchRemapTable[ColorFragmentOp1ATI_remap_index]
-#define _gloffset_ColorFragmentOp2ATI driDispatchRemapTable[ColorFragmentOp2ATI_remap_index]
-#define _gloffset_ColorFragmentOp3ATI driDispatchRemapTable[ColorFragmentOp3ATI_remap_index]
-#define _gloffset_DeleteFragmentShaderATI driDispatchRemapTable[DeleteFragmentShaderATI_remap_index]
-#define _gloffset_EndFragmentShaderATI driDispatchRemapTable[EndFragmentShaderATI_remap_index]
-#define _gloffset_GenFragmentShadersATI driDispatchRemapTable[GenFragmentShadersATI_remap_index]
-#define _gloffset_PassTexCoordATI driDispatchRemapTable[PassTexCoordATI_remap_index]
-#define _gloffset_SampleMapATI driDispatchRemapTable[SampleMapATI_remap_index]
-#define _gloffset_SetFragmentShaderConstantATI driDispatchRemapTable[SetFragmentShaderConstantATI_remap_index]
-#define _gloffset_PointParameteriNV driDispatchRemapTable[PointParameteriNV_remap_index]
-#define _gloffset_PointParameterivNV driDispatchRemapTable[PointParameterivNV_remap_index]
-#define _gloffset_ActiveStencilFaceEXT driDispatchRemapTable[ActiveStencilFaceEXT_remap_index]
-#define _gloffset_BindVertexArrayAPPLE driDispatchRemapTable[BindVertexArrayAPPLE_remap_index]
-#define _gloffset_DeleteVertexArraysAPPLE driDispatchRemapTable[DeleteVertexArraysAPPLE_remap_index]
-#define _gloffset_GenVertexArraysAPPLE driDispatchRemapTable[GenVertexArraysAPPLE_remap_index]
-#define _gloffset_IsVertexArrayAPPLE driDispatchRemapTable[IsVertexArrayAPPLE_remap_index]
-#define _gloffset_GetProgramNamedParameterdvNV driDispatchRemapTable[GetProgramNamedParameterdvNV_remap_index]
-#define _gloffset_GetProgramNamedParameterfvNV driDispatchRemapTable[GetProgramNamedParameterfvNV_remap_index]
-#define _gloffset_ProgramNamedParameter4dNV driDispatchRemapTable[ProgramNamedParameter4dNV_remap_index]
-#define _gloffset_ProgramNamedParameter4dvNV driDispatchRemapTable[ProgramNamedParameter4dvNV_remap_index]
-#define _gloffset_ProgramNamedParameter4fNV driDispatchRemapTable[ProgramNamedParameter4fNV_remap_index]
-#define _gloffset_ProgramNamedParameter4fvNV driDispatchRemapTable[ProgramNamedParameter4fvNV_remap_index]
-#define _gloffset_DepthBoundsEXT driDispatchRemapTable[DepthBoundsEXT_remap_index]
-#define _gloffset_BlendEquationSeparateEXT driDispatchRemapTable[BlendEquationSeparateEXT_remap_index]
-#define _gloffset_BindFramebufferEXT driDispatchRemapTable[BindFramebufferEXT_remap_index]
-#define _gloffset_BindRenderbufferEXT driDispatchRemapTable[BindRenderbufferEXT_remap_index]
-#define _gloffset_CheckFramebufferStatusEXT driDispatchRemapTable[CheckFramebufferStatusEXT_remap_index]
-#define _gloffset_DeleteFramebuffersEXT driDispatchRemapTable[DeleteFramebuffersEXT_remap_index]
-#define _gloffset_DeleteRenderbuffersEXT driDispatchRemapTable[DeleteRenderbuffersEXT_remap_index]
-#define _gloffset_FramebufferRenderbufferEXT driDispatchRemapTable[FramebufferRenderbufferEXT_remap_index]
-#define _gloffset_FramebufferTexture1DEXT driDispatchRemapTable[FramebufferTexture1DEXT_remap_index]
-#define _gloffset_FramebufferTexture2DEXT driDispatchRemapTable[FramebufferTexture2DEXT_remap_index]
-#define _gloffset_FramebufferTexture3DEXT driDispatchRemapTable[FramebufferTexture3DEXT_remap_index]
-#define _gloffset_GenFramebuffersEXT driDispatchRemapTable[GenFramebuffersEXT_remap_index]
-#define _gloffset_GenRenderbuffersEXT driDispatchRemapTable[GenRenderbuffersEXT_remap_index]
-#define _gloffset_GenerateMipmapEXT driDispatchRemapTable[GenerateMipmapEXT_remap_index]
-#define _gloffset_GetFramebufferAttachmentParameterivEXT driDispatchRemapTable[GetFramebufferAttachmentParameterivEXT_remap_index]
-#define _gloffset_GetRenderbufferParameterivEXT driDispatchRemapTable[GetRenderbufferParameterivEXT_remap_index]
-#define _gloffset_IsFramebufferEXT driDispatchRemapTable[IsFramebufferEXT_remap_index]
-#define _gloffset_IsRenderbufferEXT driDispatchRemapTable[IsRenderbufferEXT_remap_index]
-#define _gloffset_RenderbufferStorageEXT driDispatchRemapTable[RenderbufferStorageEXT_remap_index]
-#define _gloffset_BlitFramebufferEXT driDispatchRemapTable[BlitFramebufferEXT_remap_index]
-#define _gloffset_BufferParameteriAPPLE driDispatchRemapTable[BufferParameteriAPPLE_remap_index]
-#define _gloffset_FlushMappedBufferRangeAPPLE driDispatchRemapTable[FlushMappedBufferRangeAPPLE_remap_index]
-#define _gloffset_FramebufferTextureLayerEXT driDispatchRemapTable[FramebufferTextureLayerEXT_remap_index]
-#define _gloffset_ColorMaskIndexedEXT driDispatchRemapTable[ColorMaskIndexedEXT_remap_index]
-#define _gloffset_DisableIndexedEXT driDispatchRemapTable[DisableIndexedEXT_remap_index]
-#define _gloffset_EnableIndexedEXT driDispatchRemapTable[EnableIndexedEXT_remap_index]
-#define _gloffset_GetBooleanIndexedvEXT driDispatchRemapTable[GetBooleanIndexedvEXT_remap_index]
-#define _gloffset_GetIntegerIndexedvEXT driDispatchRemapTable[GetIntegerIndexedvEXT_remap_index]
-#define _gloffset_IsEnabledIndexedEXT driDispatchRemapTable[IsEnabledIndexedEXT_remap_index]
-#define _gloffset_BeginConditionalRenderNV driDispatchRemapTable[BeginConditionalRenderNV_remap_index]
-#define _gloffset_EndConditionalRenderNV driDispatchRemapTable[EndConditionalRenderNV_remap_index]
-#define _gloffset_BeginTransformFeedbackEXT driDispatchRemapTable[BeginTransformFeedbackEXT_remap_index]
-#define _gloffset_BindBufferBaseEXT driDispatchRemapTable[BindBufferBaseEXT_remap_index]
-#define _gloffset_BindBufferOffsetEXT driDispatchRemapTable[BindBufferOffsetEXT_remap_index]
-#define _gloffset_BindBufferRangeEXT driDispatchRemapTable[BindBufferRangeEXT_remap_index]
-#define _gloffset_EndTransformFeedbackEXT driDispatchRemapTable[EndTransformFeedbackEXT_remap_index]
-#define _gloffset_GetTransformFeedbackVaryingEXT driDispatchRemapTable[GetTransformFeedbackVaryingEXT_remap_index]
-#define _gloffset_TransformFeedbackVaryingsEXT driDispatchRemapTable[TransformFeedbackVaryingsEXT_remap_index]
-#define _gloffset_ProvokingVertexEXT driDispatchRemapTable[ProvokingVertexEXT_remap_index]
-#define _gloffset_GetTexParameterPointervAPPLE driDispatchRemapTable[GetTexParameterPointervAPPLE_remap_index]
-#define _gloffset_TextureRangeAPPLE driDispatchRemapTable[TextureRangeAPPLE_remap_index]
-#define _gloffset_GetObjectParameterivAPPLE driDispatchRemapTable[GetObjectParameterivAPPLE_remap_index]
-#define _gloffset_ObjectPurgeableAPPLE driDispatchRemapTable[ObjectPurgeableAPPLE_remap_index]
-#define _gloffset_ObjectUnpurgeableAPPLE driDispatchRemapTable[ObjectUnpurgeableAPPLE_remap_index]
-#define _gloffset_StencilFuncSeparateATI driDispatchRemapTable[StencilFuncSeparateATI_remap_index]
-#define _gloffset_ProgramEnvParameters4fvEXT driDispatchRemapTable[ProgramEnvParameters4fvEXT_remap_index]
-#define _gloffset_ProgramLocalParameters4fvEXT driDispatchRemapTable[ProgramLocalParameters4fvEXT_remap_index]
-#define _gloffset_GetQueryObjecti64vEXT driDispatchRemapTable[GetQueryObjecti64vEXT_remap_index]
-#define _gloffset_GetQueryObjectui64vEXT driDispatchRemapTable[GetQueryObjectui64vEXT_remap_index]
-#define _gloffset_EGLImageTargetRenderbufferStorageOES driDispatchRemapTable[EGLImageTargetRenderbufferStorageOES_remap_index]
-#define _gloffset_EGLImageTargetTexture2DOES driDispatchRemapTable[EGLImageTargetTexture2DOES_remap_index]
-
-#endif /* !defined(_GLAPI_USE_REMAP_TABLE) */
-
-#endif /* !defined( _GLAPI_OFFSETS_H_ ) */
diff --git a/src/mesa/glapi/glapitable.h b/src/mesa/glapi/glapitable.h
deleted file mode 100644 (file)
index faf274f..0000000
+++ /dev/null
@@ -1,862 +0,0 @@
-/* DO NOT EDIT - This file generated automatically by gl_table.py (from Mesa) script */
-
-/*
- * Copyright (C) 1999-2003  Brian Paul   All Rights Reserved.
- * (C) Copyright IBM Corporation 2004
- * 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
- * BRIAN PAUL, IBM,
- * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
- * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-#if !defined( _GLAPI_TABLE_H_ )
-#  define _GLAPI_TABLE_H_
-
-#ifndef GLAPIENTRYP
-# ifndef GLAPIENTRY
-#  define GLAPIENTRY
-# endif
-
-# define GLAPIENTRYP GLAPIENTRY *
-#endif
-
-
-struct _glapi_table
-{
-   void (GLAPIENTRYP NewList)(GLuint list, GLenum mode); /* 0 */
-   void (GLAPIENTRYP EndList)(void); /* 1 */
-   void (GLAPIENTRYP CallList)(GLuint list); /* 2 */
-   void (GLAPIENTRYP CallLists)(GLsizei n, GLenum type, const GLvoid * lists); /* 3 */
-   void (GLAPIENTRYP DeleteLists)(GLuint list, GLsizei range); /* 4 */
-   GLuint (GLAPIENTRYP GenLists)(GLsizei range); /* 5 */
-   void (GLAPIENTRYP ListBase)(GLuint base); /* 6 */
-   void (GLAPIENTRYP Begin)(GLenum mode); /* 7 */
-   void (GLAPIENTRYP Bitmap)(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte * bitmap); /* 8 */
-   void (GLAPIENTRYP Color3b)(GLbyte red, GLbyte green, GLbyte blue); /* 9 */
-   void (GLAPIENTRYP Color3bv)(const GLbyte * v); /* 10 */
-   void (GLAPIENTRYP Color3d)(GLdouble red, GLdouble green, GLdouble blue); /* 11 */
-   void (GLAPIENTRYP Color3dv)(const GLdouble * v); /* 12 */
-   void (GLAPIENTRYP Color3f)(GLfloat red, GLfloat green, GLfloat blue); /* 13 */
-   void (GLAPIENTRYP Color3fv)(const GLfloat * v); /* 14 */
-   void (GLAPIENTRYP Color3i)(GLint red, GLint green, GLint blue); /* 15 */
-   void (GLAPIENTRYP Color3iv)(const GLint * v); /* 16 */
-   void (GLAPIENTRYP Color3s)(GLshort red, GLshort green, GLshort blue); /* 17 */
-   void (GLAPIENTRYP Color3sv)(const GLshort * v); /* 18 */
-   void (GLAPIENTRYP Color3ub)(GLubyte red, GLubyte green, GLubyte blue); /* 19 */
-   void (GLAPIENTRYP Color3ubv)(const GLubyte * v); /* 20 */
-   void (GLAPIENTRYP Color3ui)(GLuint red, GLuint green, GLuint blue); /* 21 */
-   void (GLAPIENTRYP Color3uiv)(const GLuint * v); /* 22 */
-   void (GLAPIENTRYP Color3us)(GLushort red, GLushort green, GLushort blue); /* 23 */
-   void (GLAPIENTRYP Color3usv)(const GLushort * v); /* 24 */
-   void (GLAPIENTRYP Color4b)(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha); /* 25 */
-   void (GLAPIENTRYP Color4bv)(const GLbyte * v); /* 26 */
-   void (GLAPIENTRYP Color4d)(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha); /* 27 */
-   void (GLAPIENTRYP Color4dv)(const GLdouble * v); /* 28 */
-   void (GLAPIENTRYP Color4f)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); /* 29 */
-   void (GLAPIENTRYP Color4fv)(const GLfloat * v); /* 30 */
-   void (GLAPIENTRYP Color4i)(GLint red, GLint green, GLint blue, GLint alpha); /* 31 */
-   void (GLAPIENTRYP Color4iv)(const GLint * v); /* 32 */
-   void (GLAPIENTRYP Color4s)(GLshort red, GLshort green, GLshort blue, GLshort alpha); /* 33 */
-   void (GLAPIENTRYP Color4sv)(const GLshort * v); /* 34 */
-   void (GLAPIENTRYP Color4ub)(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha); /* 35 */
-   void (GLAPIENTRYP Color4ubv)(const GLubyte * v); /* 36 */
-   void (GLAPIENTRYP Color4ui)(GLuint red, GLuint green, GLuint blue, GLuint alpha); /* 37 */
-   void (GLAPIENTRYP Color4uiv)(const GLuint * v); /* 38 */
-   void (GLAPIENTRYP Color4us)(GLushort red, GLushort green, GLushort blue, GLushort alpha); /* 39 */
-   void (GLAPIENTRYP Color4usv)(const GLushort * v); /* 40 */
-   void (GLAPIENTRYP EdgeFlag)(GLboolean flag); /* 41 */
-   void (GLAPIENTRYP EdgeFlagv)(const GLboolean * flag); /* 42 */
-   void (GLAPIENTRYP End)(void); /* 43 */
-   void (GLAPIENTRYP Indexd)(GLdouble c); /* 44 */
-   void (GLAPIENTRYP Indexdv)(const GLdouble * c); /* 45 */
-   void (GLAPIENTRYP Indexf)(GLfloat c); /* 46 */
-   void (GLAPIENTRYP Indexfv)(const GLfloat * c); /* 47 */
-   void (GLAPIENTRYP Indexi)(GLint c); /* 48 */
-   void (GLAPIENTRYP Indexiv)(const GLint * c); /* 49 */
-   void (GLAPIENTRYP Indexs)(GLshort c); /* 50 */
-   void (GLAPIENTRYP Indexsv)(const GLshort * c); /* 51 */
-   void (GLAPIENTRYP Normal3b)(GLbyte nx, GLbyte ny, GLbyte nz); /* 52 */
-   void (GLAPIENTRYP Normal3bv)(const GLbyte * v); /* 53 */
-   void (GLAPIENTRYP Normal3d)(GLdouble nx, GLdouble ny, GLdouble nz); /* 54 */
-   void (GLAPIENTRYP Normal3dv)(const GLdouble * v); /* 55 */
-   void (GLAPIENTRYP Normal3f)(GLfloat nx, GLfloat ny, GLfloat nz); /* 56 */
-   void (GLAPIENTRYP Normal3fv)(const GLfloat * v); /* 57 */
-   void (GLAPIENTRYP Normal3i)(GLint nx, GLint ny, GLint nz); /* 58 */
-   void (GLAPIENTRYP Normal3iv)(const GLint * v); /* 59 */
-   void (GLAPIENTRYP Normal3s)(GLshort nx, GLshort ny, GLshort nz); /* 60 */
-   void (GLAPIENTRYP Normal3sv)(const GLshort * v); /* 61 */
-   void (GLAPIENTRYP RasterPos2d)(GLdouble x, GLdouble y); /* 62 */
-   void (GLAPIENTRYP RasterPos2dv)(const GLdouble * v); /* 63 */
-   void (GLAPIENTRYP RasterPos2f)(GLfloat x, GLfloat y); /* 64 */
-   void (GLAPIENTRYP RasterPos2fv)(const GLfloat * v); /* 65 */
-   void (GLAPIENTRYP RasterPos2i)(GLint x, GLint y); /* 66 */
-   void (GLAPIENTRYP RasterPos2iv)(const GLint * v); /* 67 */
-   void (GLAPIENTRYP RasterPos2s)(GLshort x, GLshort y); /* 68 */
-   void (GLAPIENTRYP RasterPos2sv)(const GLshort * v); /* 69 */
-   void (GLAPIENTRYP RasterPos3d)(GLdouble x, GLdouble y, GLdouble z); /* 70 */
-   void (GLAPIENTRYP RasterPos3dv)(const GLdouble * v); /* 71 */
-   void (GLAPIENTRYP RasterPos3f)(GLfloat x, GLfloat y, GLfloat z); /* 72 */
-   void (GLAPIENTRYP RasterPos3fv)(const GLfloat * v); /* 73 */
-   void (GLAPIENTRYP RasterPos3i)(GLint x, GLint y, GLint z); /* 74 */
-   void (GLAPIENTRYP RasterPos3iv)(const GLint * v); /* 75 */
-   void (GLAPIENTRYP RasterPos3s)(GLshort x, GLshort y, GLshort z); /* 76 */
-   void (GLAPIENTRYP RasterPos3sv)(const GLshort * v); /* 77 */
-   void (GLAPIENTRYP RasterPos4d)(GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 78 */
-   void (GLAPIENTRYP RasterPos4dv)(const GLdouble * v); /* 79 */
-   void (GLAPIENTRYP RasterPos4f)(GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 80 */
-   void (GLAPIENTRYP RasterPos4fv)(const GLfloat * v); /* 81 */
-   void (GLAPIENTRYP RasterPos4i)(GLint x, GLint y, GLint z, GLint w); /* 82 */
-   void (GLAPIENTRYP RasterPos4iv)(const GLint * v); /* 83 */
-   void (GLAPIENTRYP RasterPos4s)(GLshort x, GLshort y, GLshort z, GLshort w); /* 84 */
-   void (GLAPIENTRYP RasterPos4sv)(const GLshort * v); /* 85 */
-   void (GLAPIENTRYP Rectd)(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2); /* 86 */
-   void (GLAPIENTRYP Rectdv)(const GLdouble * v1, const GLdouble * v2); /* 87 */
-   void (GLAPIENTRYP Rectf)(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2); /* 88 */
-   void (GLAPIENTRYP Rectfv)(const GLfloat * v1, const GLfloat * v2); /* 89 */
-   void (GLAPIENTRYP Recti)(GLint x1, GLint y1, GLint x2, GLint y2); /* 90 */
-   void (GLAPIENTRYP Rectiv)(const GLint * v1, const GLint * v2); /* 91 */
-   void (GLAPIENTRYP Rects)(GLshort x1, GLshort y1, GLshort x2, GLshort y2); /* 92 */
-   void (GLAPIENTRYP Rectsv)(const GLshort * v1, const GLshort * v2); /* 93 */
-   void (GLAPIENTRYP TexCoord1d)(GLdouble s); /* 94 */
-   void (GLAPIENTRYP TexCoord1dv)(const GLdouble * v); /* 95 */
-   void (GLAPIENTRYP TexCoord1f)(GLfloat s); /* 96 */
-   void (GLAPIENTRYP TexCoord1fv)(const GLfloat * v); /* 97 */
-   void (GLAPIENTRYP TexCoord1i)(GLint s); /* 98 */
-   void (GLAPIENTRYP TexCoord1iv)(const GLint * v); /* 99 */
-   void (GLAPIENTRYP TexCoord1s)(GLshort s); /* 100 */
-   void (GLAPIENTRYP TexCoord1sv)(const GLshort * v); /* 101 */
-   void (GLAPIENTRYP TexCoord2d)(GLdouble s, GLdouble t); /* 102 */
-   void (GLAPIENTRYP TexCoord2dv)(const GLdouble * v); /* 103 */
-   void (GLAPIENTRYP TexCoord2f)(GLfloat s, GLfloat t); /* 104 */
-   void (GLAPIENTRYP TexCoord2fv)(const GLfloat * v); /* 105 */
-   void (GLAPIENTRYP TexCoord2i)(GLint s, GLint t); /* 106 */
-   void (GLAPIENTRYP TexCoord2iv)(const GLint * v); /* 107 */
-   void (GLAPIENTRYP TexCoord2s)(GLshort s, GLshort t); /* 108 */
-   void (GLAPIENTRYP TexCoord2sv)(const GLshort * v); /* 109 */
-   void (GLAPIENTRYP TexCoord3d)(GLdouble s, GLdouble t, GLdouble r); /* 110 */
-   void (GLAPIENTRYP TexCoord3dv)(const GLdouble * v); /* 111 */
-   void (GLAPIENTRYP TexCoord3f)(GLfloat s, GLfloat t, GLfloat r); /* 112 */
-   void (GLAPIENTRYP TexCoord3fv)(const GLfloat * v); /* 113 */
-   void (GLAPIENTRYP TexCoord3i)(GLint s, GLint t, GLint r); /* 114 */
-   void (GLAPIENTRYP TexCoord3iv)(const GLint * v); /* 115 */
-   void (GLAPIENTRYP TexCoord3s)(GLshort s, GLshort t, GLshort r); /* 116 */
-   void (GLAPIENTRYP TexCoord3sv)(const GLshort * v); /* 117 */
-   void (GLAPIENTRYP TexCoord4d)(GLdouble s, GLdouble t, GLdouble r, GLdouble q); /* 118 */
-   void (GLAPIENTRYP TexCoord4dv)(const GLdouble * v); /* 119 */
-   void (GLAPIENTRYP TexCoord4f)(GLfloat s, GLfloat t, GLfloat r, GLfloat q); /* 120 */
-   void (GLAPIENTRYP TexCoord4fv)(const GLfloat * v); /* 121 */
-   void (GLAPIENTRYP TexCoord4i)(GLint s, GLint t, GLint r, GLint q); /* 122 */
-   void (GLAPIENTRYP TexCoord4iv)(const GLint * v); /* 123 */
-   void (GLAPIENTRYP TexCoord4s)(GLshort s, GLshort t, GLshort r, GLshort q); /* 124 */
-   void (GLAPIENTRYP TexCoord4sv)(const GLshort * v); /* 125 */
-   void (GLAPIENTRYP Vertex2d)(GLdouble x, GLdouble y); /* 126 */
-   void (GLAPIENTRYP Vertex2dv)(const GLdouble * v); /* 127 */
-   void (GLAPIENTRYP Vertex2f)(GLfloat x, GLfloat y); /* 128 */
-   void (GLAPIENTRYP Vertex2fv)(const GLfloat * v); /* 129 */
-   void (GLAPIENTRYP Vertex2i)(GLint x, GLint y); /* 130 */
-   void (GLAPIENTRYP Vertex2iv)(const GLint * v); /* 131 */
-   void (GLAPIENTRYP Vertex2s)(GLshort x, GLshort y); /* 132 */
-   void (GLAPIENTRYP Vertex2sv)(const GLshort * v); /* 133 */
-   void (GLAPIENTRYP Vertex3d)(GLdouble x, GLdouble y, GLdouble z); /* 134 */
-   void (GLAPIENTRYP Vertex3dv)(const GLdouble * v); /* 135 */
-   void (GLAPIENTRYP Vertex3f)(GLfloat x, GLfloat y, GLfloat z); /* 136 */
-   void (GLAPIENTRYP Vertex3fv)(const GLfloat * v); /* 137 */
-   void (GLAPIENTRYP Vertex3i)(GLint x, GLint y, GLint z); /* 138 */
-   void (GLAPIENTRYP Vertex3iv)(const GLint * v); /* 139 */
-   void (GLAPIENTRYP Vertex3s)(GLshort x, GLshort y, GLshort z); /* 140 */
-   void (GLAPIENTRYP Vertex3sv)(const GLshort * v); /* 141 */
-   void (GLAPIENTRYP Vertex4d)(GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 142 */
-   void (GLAPIENTRYP Vertex4dv)(const GLdouble * v); /* 143 */
-   void (GLAPIENTRYP Vertex4f)(GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 144 */
-   void (GLAPIENTRYP Vertex4fv)(const GLfloat * v); /* 145 */
-   void (GLAPIENTRYP Vertex4i)(GLint x, GLint y, GLint z, GLint w); /* 146 */
-   void (GLAPIENTRYP Vertex4iv)(const GLint * v); /* 147 */
-   void (GLAPIENTRYP Vertex4s)(GLshort x, GLshort y, GLshort z, GLshort w); /* 148 */
-   void (GLAPIENTRYP Vertex4sv)(const GLshort * v); /* 149 */
-   void (GLAPIENTRYP ClipPlane)(GLenum plane, const GLdouble * equation); /* 150 */
-   void (GLAPIENTRYP ColorMaterial)(GLenum face, GLenum mode); /* 151 */
-   void (GLAPIENTRYP CullFace)(GLenum mode); /* 152 */
-   void (GLAPIENTRYP Fogf)(GLenum pname, GLfloat param); /* 153 */
-   void (GLAPIENTRYP Fogfv)(GLenum pname, const GLfloat * params); /* 154 */
-   void (GLAPIENTRYP Fogi)(GLenum pname, GLint param); /* 155 */
-   void (GLAPIENTRYP Fogiv)(GLenum pname, const GLint * params); /* 156 */
-   void (GLAPIENTRYP FrontFace)(GLenum mode); /* 157 */
-   void (GLAPIENTRYP Hint)(GLenum target, GLenum mode); /* 158 */
-   void (GLAPIENTRYP Lightf)(GLenum light, GLenum pname, GLfloat param); /* 159 */
-   void (GLAPIENTRYP Lightfv)(GLenum light, GLenum pname, const GLfloat * params); /* 160 */
-   void (GLAPIENTRYP Lighti)(GLenum light, GLenum pname, GLint param); /* 161 */
-   void (GLAPIENTRYP Lightiv)(GLenum light, GLenum pname, const GLint * params); /* 162 */
-   void (GLAPIENTRYP LightModelf)(GLenum pname, GLfloat param); /* 163 */
-   void (GLAPIENTRYP LightModelfv)(GLenum pname, const GLfloat * params); /* 164 */
-   void (GLAPIENTRYP LightModeli)(GLenum pname, GLint param); /* 165 */
-   void (GLAPIENTRYP LightModeliv)(GLenum pname, const GLint * params); /* 166 */
-   void (GLAPIENTRYP LineStipple)(GLint factor, GLushort pattern); /* 167 */
-   void (GLAPIENTRYP LineWidth)(GLfloat width); /* 168 */
-   void (GLAPIENTRYP Materialf)(GLenum face, GLenum pname, GLfloat param); /* 169 */
-   void (GLAPIENTRYP Materialfv)(GLenum face, GLenum pname, const GLfloat * params); /* 170 */
-   void (GLAPIENTRYP Materiali)(GLenum face, GLenum pname, GLint param); /* 171 */
-   void (GLAPIENTRYP Materialiv)(GLenum face, GLenum pname, const GLint * params); /* 172 */
-   void (GLAPIENTRYP PointSize)(GLfloat size); /* 173 */
-   void (GLAPIENTRYP PolygonMode)(GLenum face, GLenum mode); /* 174 */
-   void (GLAPIENTRYP PolygonStipple)(const GLubyte * mask); /* 175 */
-   void (GLAPIENTRYP Scissor)(GLint x, GLint y, GLsizei width, GLsizei height); /* 176 */
-   void (GLAPIENTRYP ShadeModel)(GLenum mode); /* 177 */
-   void (GLAPIENTRYP TexParameterf)(GLenum target, GLenum pname, GLfloat param); /* 178 */
-   void (GLAPIENTRYP TexParameterfv)(GLenum target, GLenum pname, const GLfloat * params); /* 179 */
-   void (GLAPIENTRYP TexParameteri)(GLenum target, GLenum pname, GLint param); /* 180 */
-   void (GLAPIENTRYP TexParameteriv)(GLenum target, GLenum pname, const GLint * params); /* 181 */
-   void (GLAPIENTRYP TexImage1D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid * pixels); /* 182 */
-   void (GLAPIENTRYP TexImage2D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid * pixels); /* 183 */
-   void (GLAPIENTRYP TexEnvf)(GLenum target, GLenum pname, GLfloat param); /* 184 */
-   void (GLAPIENTRYP TexEnvfv)(GLenum target, GLenum pname, const GLfloat * params); /* 185 */
-   void (GLAPIENTRYP TexEnvi)(GLenum target, GLenum pname, GLint param); /* 186 */
-   void (GLAPIENTRYP TexEnviv)(GLenum target, GLenum pname, const GLint * params); /* 187 */
-   void (GLAPIENTRYP TexGend)(GLenum coord, GLenum pname, GLdouble param); /* 188 */
-   void (GLAPIENTRYP TexGendv)(GLenum coord, GLenum pname, const GLdouble * params); /* 189 */
-   void (GLAPIENTRYP TexGenf)(GLenum coord, GLenum pname, GLfloat param); /* 190 */
-   void (GLAPIENTRYP TexGenfv)(GLenum coord, GLenum pname, const GLfloat * params); /* 191 */
-   void (GLAPIENTRYP TexGeni)(GLenum coord, GLenum pname, GLint param); /* 192 */
-   void (GLAPIENTRYP TexGeniv)(GLenum coord, GLenum pname, const GLint * params); /* 193 */
-   void (GLAPIENTRYP FeedbackBuffer)(GLsizei size, GLenum type, GLfloat * buffer); /* 194 */
-   void (GLAPIENTRYP SelectBuffer)(GLsizei size, GLuint * buffer); /* 195 */
-   GLint (GLAPIENTRYP RenderMode)(GLenum mode); /* 196 */
-   void (GLAPIENTRYP InitNames)(void); /* 197 */
-   void (GLAPIENTRYP LoadName)(GLuint name); /* 198 */
-   void (GLAPIENTRYP PassThrough)(GLfloat token); /* 199 */
-   void (GLAPIENTRYP PopName)(void); /* 200 */
-   void (GLAPIENTRYP PushName)(GLuint name); /* 201 */
-   void (GLAPIENTRYP DrawBuffer)(GLenum mode); /* 202 */
-   void (GLAPIENTRYP Clear)(GLbitfield mask); /* 203 */
-   void (GLAPIENTRYP ClearAccum)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); /* 204 */
-   void (GLAPIENTRYP ClearIndex)(GLfloat c); /* 205 */
-   void (GLAPIENTRYP ClearColor)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); /* 206 */
-   void (GLAPIENTRYP ClearStencil)(GLint s); /* 207 */
-   void (GLAPIENTRYP ClearDepth)(GLclampd depth); /* 208 */
-   void (GLAPIENTRYP StencilMask)(GLuint mask); /* 209 */
-   void (GLAPIENTRYP ColorMask)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha); /* 210 */
-   void (GLAPIENTRYP DepthMask)(GLboolean flag); /* 211 */
-   void (GLAPIENTRYP IndexMask)(GLuint mask); /* 212 */
-   void (GLAPIENTRYP Accum)(GLenum op, GLfloat value); /* 213 */
-   void (GLAPIENTRYP Disable)(GLenum cap); /* 214 */
-   void (GLAPIENTRYP Enable)(GLenum cap); /* 215 */
-   void (GLAPIENTRYP Finish)(void); /* 216 */
-   void (GLAPIENTRYP Flush)(void); /* 217 */
-   void (GLAPIENTRYP PopAttrib)(void); /* 218 */
-   void (GLAPIENTRYP PushAttrib)(GLbitfield mask); /* 219 */
-   void (GLAPIENTRYP Map1d)(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble * points); /* 220 */
-   void (GLAPIENTRYP Map1f)(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat * points); /* 221 */
-   void (GLAPIENTRYP Map2d)(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble * points); /* 222 */
-   void (GLAPIENTRYP Map2f)(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat * points); /* 223 */
-   void (GLAPIENTRYP MapGrid1d)(GLint un, GLdouble u1, GLdouble u2); /* 224 */
-   void (GLAPIENTRYP MapGrid1f)(GLint un, GLfloat u1, GLfloat u2); /* 225 */
-   void (GLAPIENTRYP MapGrid2d)(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2); /* 226 */
-   void (GLAPIENTRYP MapGrid2f)(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2); /* 227 */
-   void (GLAPIENTRYP EvalCoord1d)(GLdouble u); /* 228 */
-   void (GLAPIENTRYP EvalCoord1dv)(const GLdouble * u); /* 229 */
-   void (GLAPIENTRYP EvalCoord1f)(GLfloat u); /* 230 */
-   void (GLAPIENTRYP EvalCoord1fv)(const GLfloat * u); /* 231 */
-   void (GLAPIENTRYP EvalCoord2d)(GLdouble u, GLdouble v); /* 232 */
-   void (GLAPIENTRYP EvalCoord2dv)(const GLdouble * u); /* 233 */
-   void (GLAPIENTRYP EvalCoord2f)(GLfloat u, GLfloat v); /* 234 */
-   void (GLAPIENTRYP EvalCoord2fv)(const GLfloat * u); /* 235 */
-   void (GLAPIENTRYP EvalMesh1)(GLenum mode, GLint i1, GLint i2); /* 236 */
-   void (GLAPIENTRYP EvalPoint1)(GLint i); /* 237 */
-   void (GLAPIENTRYP EvalMesh2)(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2); /* 238 */
-   void (GLAPIENTRYP EvalPoint2)(GLint i, GLint j); /* 239 */
-   void (GLAPIENTRYP AlphaFunc)(GLenum func, GLclampf ref); /* 240 */
-   void (GLAPIENTRYP BlendFunc)(GLenum sfactor, GLenum dfactor); /* 241 */
-   void (GLAPIENTRYP LogicOp)(GLenum opcode); /* 242 */
-   void (GLAPIENTRYP StencilFunc)(GLenum func, GLint ref, GLuint mask); /* 243 */
-   void (GLAPIENTRYP StencilOp)(GLenum fail, GLenum zfail, GLenum zpass); /* 244 */
-   void (GLAPIENTRYP DepthFunc)(GLenum func); /* 245 */
-   void (GLAPIENTRYP PixelZoom)(GLfloat xfactor, GLfloat yfactor); /* 246 */
-   void (GLAPIENTRYP PixelTransferf)(GLenum pname, GLfloat param); /* 247 */
-   void (GLAPIENTRYP PixelTransferi)(GLenum pname, GLint param); /* 248 */
-   void (GLAPIENTRYP PixelStoref)(GLenum pname, GLfloat param); /* 249 */
-   void (GLAPIENTRYP PixelStorei)(GLenum pname, GLint param); /* 250 */
-   void (GLAPIENTRYP PixelMapfv)(GLenum map, GLsizei mapsize, const GLfloat * values); /* 251 */
-   void (GLAPIENTRYP PixelMapuiv)(GLenum map, GLsizei mapsize, const GLuint * values); /* 252 */
-   void (GLAPIENTRYP PixelMapusv)(GLenum map, GLsizei mapsize, const GLushort * values); /* 253 */
-   void (GLAPIENTRYP ReadBuffer)(GLenum mode); /* 254 */
-   void (GLAPIENTRYP CopyPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type); /* 255 */
-   void (GLAPIENTRYP ReadPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid * pixels); /* 256 */
-   void (GLAPIENTRYP DrawPixels)(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels); /* 257 */
-   void (GLAPIENTRYP GetBooleanv)(GLenum pname, GLboolean * params); /* 258 */
-   void (GLAPIENTRYP GetClipPlane)(GLenum plane, GLdouble * equation); /* 259 */
-   void (GLAPIENTRYP GetDoublev)(GLenum pname, GLdouble * params); /* 260 */
-   GLenum (GLAPIENTRYP GetError)(void); /* 261 */
-   void (GLAPIENTRYP GetFloatv)(GLenum pname, GLfloat * params); /* 262 */
-   void (GLAPIENTRYP GetIntegerv)(GLenum pname, GLint * params); /* 263 */
-   void (GLAPIENTRYP GetLightfv)(GLenum light, GLenum pname, GLfloat * params); /* 264 */
-   void (GLAPIENTRYP GetLightiv)(GLenum light, GLenum pname, GLint * params); /* 265 */
-   void (GLAPIENTRYP GetMapdv)(GLenum target, GLenum query, GLdouble * v); /* 266 */
-   void (GLAPIENTRYP GetMapfv)(GLenum target, GLenum query, GLfloat * v); /* 267 */
-   void (GLAPIENTRYP GetMapiv)(GLenum target, GLenum query, GLint * v); /* 268 */
-   void (GLAPIENTRYP GetMaterialfv)(GLenum face, GLenum pname, GLfloat * params); /* 269 */
-   void (GLAPIENTRYP GetMaterialiv)(GLenum face, GLenum pname, GLint * params); /* 270 */
-   void (GLAPIENTRYP GetPixelMapfv)(GLenum map, GLfloat * values); /* 271 */
-   void (GLAPIENTRYP GetPixelMapuiv)(GLenum map, GLuint * values); /* 272 */
-   void (GLAPIENTRYP GetPixelMapusv)(GLenum map, GLushort * values); /* 273 */
-   void (GLAPIENTRYP GetPolygonStipple)(GLubyte * mask); /* 274 */
-   const GLubyte * (GLAPIENTRYP GetString)(GLenum name); /* 275 */
-   void (GLAPIENTRYP GetTexEnvfv)(GLenum target, GLenum pname, GLfloat * params); /* 276 */
-   void (GLAPIENTRYP GetTexEnviv)(GLenum target, GLenum pname, GLint * params); /* 277 */
-   void (GLAPIENTRYP GetTexGendv)(GLenum coord, GLenum pname, GLdouble * params); /* 278 */
-   void (GLAPIENTRYP GetTexGenfv)(GLenum coord, GLenum pname, GLfloat * params); /* 279 */
-   void (GLAPIENTRYP GetTexGeniv)(GLenum coord, GLenum pname, GLint * params); /* 280 */
-   void (GLAPIENTRYP GetTexImage)(GLenum target, GLint level, GLenum format, GLenum type, GLvoid * pixels); /* 281 */
-   void (GLAPIENTRYP GetTexParameterfv)(GLenum target, GLenum pname, GLfloat * params); /* 282 */
-   void (GLAPIENTRYP GetTexParameteriv)(GLenum target, GLenum pname, GLint * params); /* 283 */
-   void (GLAPIENTRYP GetTexLevelParameterfv)(GLenum target, GLint level, GLenum pname, GLfloat * params); /* 284 */
-   void (GLAPIENTRYP GetTexLevelParameteriv)(GLenum target, GLint level, GLenum pname, GLint * params); /* 285 */
-   GLboolean (GLAPIENTRYP IsEnabled)(GLenum cap); /* 286 */
-   GLboolean (GLAPIENTRYP IsList)(GLuint list); /* 287 */
-   void (GLAPIENTRYP DepthRange)(GLclampd zNear, GLclampd zFar); /* 288 */
-   void (GLAPIENTRYP Frustum)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar); /* 289 */
-   void (GLAPIENTRYP LoadIdentity)(void); /* 290 */
-   void (GLAPIENTRYP LoadMatrixf)(const GLfloat * m); /* 291 */
-   void (GLAPIENTRYP LoadMatrixd)(const GLdouble * m); /* 292 */
-   void (GLAPIENTRYP MatrixMode)(GLenum mode); /* 293 */
-   void (GLAPIENTRYP MultMatrixf)(const GLfloat * m); /* 294 */
-   void (GLAPIENTRYP MultMatrixd)(const GLdouble * m); /* 295 */
-   void (GLAPIENTRYP Ortho)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar); /* 296 */
-   void (GLAPIENTRYP PopMatrix)(void); /* 297 */
-   void (GLAPIENTRYP PushMatrix)(void); /* 298 */
-   void (GLAPIENTRYP Rotated)(GLdouble angle, GLdouble x, GLdouble y, GLdouble z); /* 299 */
-   void (GLAPIENTRYP Rotatef)(GLfloat angle, GLfloat x, GLfloat y, GLfloat z); /* 300 */
-   void (GLAPIENTRYP Scaled)(GLdouble x, GLdouble y, GLdouble z); /* 301 */
-   void (GLAPIENTRYP Scalef)(GLfloat x, GLfloat y, GLfloat z); /* 302 */
-   void (GLAPIENTRYP Translated)(GLdouble x, GLdouble y, GLdouble z); /* 303 */
-   void (GLAPIENTRYP Translatef)(GLfloat x, GLfloat y, GLfloat z); /* 304 */
-   void (GLAPIENTRYP Viewport)(GLint x, GLint y, GLsizei width, GLsizei height); /* 305 */
-   void (GLAPIENTRYP ArrayElement)(GLint i); /* 306 */
-   void (GLAPIENTRYP BindTexture)(GLenum target, GLuint texture); /* 307 */
-   void (GLAPIENTRYP ColorPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 308 */
-   void (GLAPIENTRYP DisableClientState)(GLenum array); /* 309 */
-   void (GLAPIENTRYP DrawArrays)(GLenum mode, GLint first, GLsizei count); /* 310 */
-   void (GLAPIENTRYP DrawElements)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices); /* 311 */
-   void (GLAPIENTRYP EdgeFlagPointer)(GLsizei stride, const GLvoid * pointer); /* 312 */
-   void (GLAPIENTRYP EnableClientState)(GLenum array); /* 313 */
-   void (GLAPIENTRYP IndexPointer)(GLenum type, GLsizei stride, const GLvoid * pointer); /* 314 */
-   void (GLAPIENTRYP Indexub)(GLubyte c); /* 315 */
-   void (GLAPIENTRYP Indexubv)(const GLubyte * c); /* 316 */
-   void (GLAPIENTRYP InterleavedArrays)(GLenum format, GLsizei stride, const GLvoid * pointer); /* 317 */
-   void (GLAPIENTRYP NormalPointer)(GLenum type, GLsizei stride, const GLvoid * pointer); /* 318 */
-   void (GLAPIENTRYP PolygonOffset)(GLfloat factor, GLfloat units); /* 319 */
-   void (GLAPIENTRYP TexCoordPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 320 */
-   void (GLAPIENTRYP VertexPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 321 */
-   GLboolean (GLAPIENTRYP AreTexturesResident)(GLsizei n, const GLuint * textures, GLboolean * residences); /* 322 */
-   void (GLAPIENTRYP CopyTexImage1D)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border); /* 323 */
-   void (GLAPIENTRYP CopyTexImage2D)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); /* 324 */
-   void (GLAPIENTRYP CopyTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width); /* 325 */
-   void (GLAPIENTRYP CopyTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); /* 326 */
-   void (GLAPIENTRYP DeleteTextures)(GLsizei n, const GLuint * textures); /* 327 */
-   void (GLAPIENTRYP GenTextures)(GLsizei n, GLuint * textures); /* 328 */
-   void (GLAPIENTRYP GetPointerv)(GLenum pname, GLvoid ** params); /* 329 */
-   GLboolean (GLAPIENTRYP IsTexture)(GLuint texture); /* 330 */
-   void (GLAPIENTRYP PrioritizeTextures)(GLsizei n, const GLuint * textures, const GLclampf * priorities); /* 331 */
-   void (GLAPIENTRYP TexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid * pixels); /* 332 */
-   void (GLAPIENTRYP TexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels); /* 333 */
-   void (GLAPIENTRYP PopClientAttrib)(void); /* 334 */
-   void (GLAPIENTRYP PushClientAttrib)(GLbitfield mask); /* 335 */
-   void (GLAPIENTRYP BlendColor)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); /* 336 */
-   void (GLAPIENTRYP BlendEquation)(GLenum mode); /* 337 */
-   void (GLAPIENTRYP DrawRangeElements)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid * indices); /* 338 */
-   void (GLAPIENTRYP ColorTable)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid * table); /* 339 */
-   void (GLAPIENTRYP ColorTableParameterfv)(GLenum target, GLenum pname, const GLfloat * params); /* 340 */
-   void (GLAPIENTRYP ColorTableParameteriv)(GLenum target, GLenum pname, const GLint * params); /* 341 */
-   void (GLAPIENTRYP CopyColorTable)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width); /* 342 */
-   void (GLAPIENTRYP GetColorTable)(GLenum target, GLenum format, GLenum type, GLvoid * table); /* 343 */
-   void (GLAPIENTRYP GetColorTableParameterfv)(GLenum target, GLenum pname, GLfloat * params); /* 344 */
-   void (GLAPIENTRYP GetColorTableParameteriv)(GLenum target, GLenum pname, GLint * params); /* 345 */
-   void (GLAPIENTRYP ColorSubTable)(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid * data); /* 346 */
-   void (GLAPIENTRYP CopyColorSubTable)(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width); /* 347 */
-   void (GLAPIENTRYP ConvolutionFilter1D)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid * image); /* 348 */
-   void (GLAPIENTRYP ConvolutionFilter2D)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * image); /* 349 */
-   void (GLAPIENTRYP ConvolutionParameterf)(GLenum target, GLenum pname, GLfloat params); /* 350 */
-   void (GLAPIENTRYP ConvolutionParameterfv)(GLenum target, GLenum pname, const GLfloat * params); /* 351 */
-   void (GLAPIENTRYP ConvolutionParameteri)(GLenum target, GLenum pname, GLint params); /* 352 */
-   void (GLAPIENTRYP ConvolutionParameteriv)(GLenum target, GLenum pname, const GLint * params); /* 353 */
-   void (GLAPIENTRYP CopyConvolutionFilter1D)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width); /* 354 */
-   void (GLAPIENTRYP CopyConvolutionFilter2D)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height); /* 355 */
-   void (GLAPIENTRYP GetConvolutionFilter)(GLenum target, GLenum format, GLenum type, GLvoid * image); /* 356 */
-   void (GLAPIENTRYP GetConvolutionParameterfv)(GLenum target, GLenum pname, GLfloat * params); /* 357 */
-   void (GLAPIENTRYP GetConvolutionParameteriv)(GLenum target, GLenum pname, GLint * params); /* 358 */
-   void (GLAPIENTRYP GetSeparableFilter)(GLenum target, GLenum format, GLenum type, GLvoid * row, GLvoid * column, GLvoid * span); /* 359 */
-   void (GLAPIENTRYP SeparableFilter2D)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * row, const GLvoid * column); /* 360 */
-   void (GLAPIENTRYP GetHistogram)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values); /* 361 */
-   void (GLAPIENTRYP GetHistogramParameterfv)(GLenum target, GLenum pname, GLfloat * params); /* 362 */
-   void (GLAPIENTRYP GetHistogramParameteriv)(GLenum target, GLenum pname, GLint * params); /* 363 */
-   void (GLAPIENTRYP GetMinmax)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values); /* 364 */
-   void (GLAPIENTRYP GetMinmaxParameterfv)(GLenum target, GLenum pname, GLfloat * params); /* 365 */
-   void (GLAPIENTRYP GetMinmaxParameteriv)(GLenum target, GLenum pname, GLint * params); /* 366 */
-   void (GLAPIENTRYP Histogram)(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink); /* 367 */
-   void (GLAPIENTRYP Minmax)(GLenum target, GLenum internalformat, GLboolean sink); /* 368 */
-   void (GLAPIENTRYP ResetHistogram)(GLenum target); /* 369 */
-   void (GLAPIENTRYP ResetMinmax)(GLenum target); /* 370 */
-   void (GLAPIENTRYP TexImage3D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid * pixels); /* 371 */
-   void (GLAPIENTRYP TexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid * pixels); /* 372 */
-   void (GLAPIENTRYP CopyTexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); /* 373 */
-   void (GLAPIENTRYP ActiveTextureARB)(GLenum texture); /* 374 */
-   void (GLAPIENTRYP ClientActiveTextureARB)(GLenum texture); /* 375 */
-   void (GLAPIENTRYP MultiTexCoord1dARB)(GLenum target, GLdouble s); /* 376 */
-   void (GLAPIENTRYP MultiTexCoord1dvARB)(GLenum target, const GLdouble * v); /* 377 */
-   void (GLAPIENTRYP MultiTexCoord1fARB)(GLenum target, GLfloat s); /* 378 */
-   void (GLAPIENTRYP MultiTexCoord1fvARB)(GLenum target, const GLfloat * v); /* 379 */
-   void (GLAPIENTRYP MultiTexCoord1iARB)(GLenum target, GLint s); /* 380 */
-   void (GLAPIENTRYP MultiTexCoord1ivARB)(GLenum target, const GLint * v); /* 381 */
-   void (GLAPIENTRYP MultiTexCoord1sARB)(GLenum target, GLshort s); /* 382 */
-   void (GLAPIENTRYP MultiTexCoord1svARB)(GLenum target, const GLshort * v); /* 383 */
-   void (GLAPIENTRYP MultiTexCoord2dARB)(GLenum target, GLdouble s, GLdouble t); /* 384 */
-   void (GLAPIENTRYP MultiTexCoord2dvARB)(GLenum target, const GLdouble * v); /* 385 */
-   void (GLAPIENTRYP MultiTexCoord2fARB)(GLenum target, GLfloat s, GLfloat t); /* 386 */
-   void (GLAPIENTRYP MultiTexCoord2fvARB)(GLenum target, const GLfloat * v); /* 387 */
-   void (GLAPIENTRYP MultiTexCoord2iARB)(GLenum target, GLint s, GLint t); /* 388 */
-   void (GLAPIENTRYP MultiTexCoord2ivARB)(GLenum target, const GLint * v); /* 389 */
-   void (GLAPIENTRYP MultiTexCoord2sARB)(GLenum target, GLshort s, GLshort t); /* 390 */
-   void (GLAPIENTRYP MultiTexCoord2svARB)(GLenum target, const GLshort * v); /* 391 */
-   void (GLAPIENTRYP MultiTexCoord3dARB)(GLenum target, GLdouble s, GLdouble t, GLdouble r); /* 392 */
-   void (GLAPIENTRYP MultiTexCoord3dvARB)(GLenum target, const GLdouble * v); /* 393 */
-   void (GLAPIENTRYP MultiTexCoord3fARB)(GLenum target, GLfloat s, GLfloat t, GLfloat r); /* 394 */
-   void (GLAPIENTRYP MultiTexCoord3fvARB)(GLenum target, const GLfloat * v); /* 395 */
-   void (GLAPIENTRYP MultiTexCoord3iARB)(GLenum target, GLint s, GLint t, GLint r); /* 396 */
-   void (GLAPIENTRYP MultiTexCoord3ivARB)(GLenum target, const GLint * v); /* 397 */
-   void (GLAPIENTRYP MultiTexCoord3sARB)(GLenum target, GLshort s, GLshort t, GLshort r); /* 398 */
-   void (GLAPIENTRYP MultiTexCoord3svARB)(GLenum target, const GLshort * v); /* 399 */
-   void (GLAPIENTRYP MultiTexCoord4dARB)(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); /* 400 */
-   void (GLAPIENTRYP MultiTexCoord4dvARB)(GLenum target, const GLdouble * v); /* 401 */
-   void (GLAPIENTRYP MultiTexCoord4fARB)(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); /* 402 */
-   void (GLAPIENTRYP MultiTexCoord4fvARB)(GLenum target, const GLfloat * v); /* 403 */
-   void (GLAPIENTRYP MultiTexCoord4iARB)(GLenum target, GLint s, GLint t, GLint r, GLint q); /* 404 */
-   void (GLAPIENTRYP MultiTexCoord4ivARB)(GLenum target, const GLint * v); /* 405 */
-   void (GLAPIENTRYP MultiTexCoord4sARB)(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); /* 406 */
-   void (GLAPIENTRYP MultiTexCoord4svARB)(GLenum target, const GLshort * v); /* 407 */
-   void (GLAPIENTRYP AttachShader)(GLuint program, GLuint shader); /* 408 */
-   GLuint (GLAPIENTRYP CreateProgram)(void); /* 409 */
-   GLuint (GLAPIENTRYP CreateShader)(GLenum type); /* 410 */
-   void (GLAPIENTRYP DeleteProgram)(GLuint program); /* 411 */
-   void (GLAPIENTRYP DeleteShader)(GLuint program); /* 412 */
-   void (GLAPIENTRYP DetachShader)(GLuint program, GLuint shader); /* 413 */
-   void (GLAPIENTRYP GetAttachedShaders)(GLuint program, GLsizei maxCount, GLsizei * count, GLuint * obj); /* 414 */
-   void (GLAPIENTRYP GetProgramInfoLog)(GLuint program, GLsizei bufSize, GLsizei * length, GLchar * infoLog); /* 415 */
-   void (GLAPIENTRYP GetProgramiv)(GLuint program, GLenum pname, GLint * params); /* 416 */
-   void (GLAPIENTRYP GetShaderInfoLog)(GLuint shader, GLsizei bufSize, GLsizei * length, GLchar * infoLog); /* 417 */
-   void (GLAPIENTRYP GetShaderiv)(GLuint shader, GLenum pname, GLint * params); /* 418 */
-   GLboolean (GLAPIENTRYP IsProgram)(GLuint program); /* 419 */
-   GLboolean (GLAPIENTRYP IsShader)(GLuint shader); /* 420 */
-   void (GLAPIENTRYP StencilFuncSeparate)(GLenum face, GLenum func, GLint ref, GLuint mask); /* 421 */
-   void (GLAPIENTRYP StencilMaskSeparate)(GLenum face, GLuint mask); /* 422 */
-   void (GLAPIENTRYP StencilOpSeparate)(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass); /* 423 */
-   void (GLAPIENTRYP UniformMatrix2x3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 424 */
-   void (GLAPIENTRYP UniformMatrix2x4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 425 */
-   void (GLAPIENTRYP UniformMatrix3x2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 426 */
-   void (GLAPIENTRYP UniformMatrix3x4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 427 */
-   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 DrawArraysInstanced)(GLenum mode, GLint first, GLsizei count, GLsizei primcount); /* 430 */
-   void (GLAPIENTRYP DrawElementsInstanced)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices, GLsizei primcount); /* 431 */
-   void (GLAPIENTRYP LoadTransposeMatrixdARB)(const GLdouble * m); /* 432 */
-   void (GLAPIENTRYP LoadTransposeMatrixfARB)(const GLfloat * m); /* 433 */
-   void (GLAPIENTRYP MultTransposeMatrixdARB)(const GLdouble * m); /* 434 */
-   void (GLAPIENTRYP MultTransposeMatrixfARB)(const GLfloat * m); /* 435 */
-   void (GLAPIENTRYP SampleCoverageARB)(GLclampf value, GLboolean invert); /* 436 */
-   void (GLAPIENTRYP CompressedTexImage1DARB)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid * data); /* 437 */
-   void (GLAPIENTRYP CompressedTexImage2DARB)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid * data); /* 438 */
-   void (GLAPIENTRYP CompressedTexImage3DARB)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid * data); /* 439 */
-   void (GLAPIENTRYP CompressedTexSubImage1DARB)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid * data); /* 440 */
-   void (GLAPIENTRYP CompressedTexSubImage2DARB)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid * data); /* 441 */
-   void (GLAPIENTRYP CompressedTexSubImage3DARB)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid * data); /* 442 */
-   void (GLAPIENTRYP GetCompressedTexImageARB)(GLenum target, GLint level, GLvoid * img); /* 443 */
-   void (GLAPIENTRYP DisableVertexAttribArrayARB)(GLuint index); /* 444 */
-   void (GLAPIENTRYP EnableVertexAttribArrayARB)(GLuint index); /* 445 */
-   void (GLAPIENTRYP GetProgramEnvParameterdvARB)(GLenum target, GLuint index, GLdouble * params); /* 446 */
-   void (GLAPIENTRYP GetProgramEnvParameterfvARB)(GLenum target, GLuint index, GLfloat * params); /* 447 */
-   void (GLAPIENTRYP GetProgramLocalParameterdvARB)(GLenum target, GLuint index, GLdouble * params); /* 448 */
-   void (GLAPIENTRYP GetProgramLocalParameterfvARB)(GLenum target, GLuint index, GLfloat * params); /* 449 */
-   void (GLAPIENTRYP GetProgramStringARB)(GLenum target, GLenum pname, GLvoid * string); /* 450 */
-   void (GLAPIENTRYP GetProgramivARB)(GLenum target, GLenum pname, GLint * params); /* 451 */
-   void (GLAPIENTRYP GetVertexAttribdvARB)(GLuint index, GLenum pname, GLdouble * params); /* 452 */
-   void (GLAPIENTRYP GetVertexAttribfvARB)(GLuint index, GLenum pname, GLfloat * params); /* 453 */
-   void (GLAPIENTRYP GetVertexAttribivARB)(GLuint index, GLenum pname, GLint * params); /* 454 */
-   void (GLAPIENTRYP ProgramEnvParameter4dARB)(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 455 */
-   void (GLAPIENTRYP ProgramEnvParameter4dvARB)(GLenum target, GLuint index, const GLdouble * params); /* 456 */
-   void (GLAPIENTRYP ProgramEnvParameter4fARB)(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 457 */
-   void (GLAPIENTRYP ProgramEnvParameter4fvARB)(GLenum target, GLuint index, const GLfloat * params); /* 458 */
-   void (GLAPIENTRYP ProgramLocalParameter4dARB)(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 459 */
-   void (GLAPIENTRYP ProgramLocalParameter4dvARB)(GLenum target, GLuint index, const GLdouble * params); /* 460 */
-   void (GLAPIENTRYP ProgramLocalParameter4fARB)(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 461 */
-   void (GLAPIENTRYP ProgramLocalParameter4fvARB)(GLenum target, GLuint index, const GLfloat * params); /* 462 */
-   void (GLAPIENTRYP ProgramStringARB)(GLenum target, GLenum format, GLsizei len, const GLvoid * string); /* 463 */
-   void (GLAPIENTRYP VertexAttrib1dARB)(GLuint index, GLdouble x); /* 464 */
-   void (GLAPIENTRYP VertexAttrib1dvARB)(GLuint index, const GLdouble * v); /* 465 */
-   void (GLAPIENTRYP VertexAttrib1fARB)(GLuint index, GLfloat x); /* 466 */
-   void (GLAPIENTRYP VertexAttrib1fvARB)(GLuint index, const GLfloat * v); /* 467 */
-   void (GLAPIENTRYP VertexAttrib1sARB)(GLuint index, GLshort x); /* 468 */
-   void (GLAPIENTRYP VertexAttrib1svARB)(GLuint index, const GLshort * v); /* 469 */
-   void (GLAPIENTRYP VertexAttrib2dARB)(GLuint index, GLdouble x, GLdouble y); /* 470 */
-   void (GLAPIENTRYP VertexAttrib2dvARB)(GLuint index, const GLdouble * v); /* 471 */
-   void (GLAPIENTRYP VertexAttrib2fARB)(GLuint index, GLfloat x, GLfloat y); /* 472 */
-   void (GLAPIENTRYP VertexAttrib2fvARB)(GLuint index, const GLfloat * v); /* 473 */
-   void (GLAPIENTRYP VertexAttrib2sARB)(GLuint index, GLshort x, GLshort y); /* 474 */
-   void (GLAPIENTRYP VertexAttrib2svARB)(GLuint index, const GLshort * v); /* 475 */
-   void (GLAPIENTRYP VertexAttrib3dARB)(GLuint index, GLdouble x, GLdouble y, GLdouble z); /* 476 */
-   void (GLAPIENTRYP VertexAttrib3dvARB)(GLuint index, const GLdouble * v); /* 477 */
-   void (GLAPIENTRYP VertexAttrib3fARB)(GLuint index, GLfloat x, GLfloat y, GLfloat z); /* 478 */
-   void (GLAPIENTRYP VertexAttrib3fvARB)(GLuint index, const GLfloat * v); /* 479 */
-   void (GLAPIENTRYP VertexAttrib3sARB)(GLuint index, GLshort x, GLshort y, GLshort z); /* 480 */
-   void (GLAPIENTRYP VertexAttrib3svARB)(GLuint index, const GLshort * v); /* 481 */
-   void (GLAPIENTRYP VertexAttrib4NbvARB)(GLuint index, const GLbyte * v); /* 482 */
-   void (GLAPIENTRYP VertexAttrib4NivARB)(GLuint index, const GLint * v); /* 483 */
-   void (GLAPIENTRYP VertexAttrib4NsvARB)(GLuint index, const GLshort * v); /* 484 */
-   void (GLAPIENTRYP VertexAttrib4NubARB)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); /* 485 */
-   void (GLAPIENTRYP VertexAttrib4NubvARB)(GLuint index, const GLubyte * v); /* 486 */
-   void (GLAPIENTRYP VertexAttrib4NuivARB)(GLuint index, const GLuint * v); /* 487 */
-   void (GLAPIENTRYP VertexAttrib4NusvARB)(GLuint index, const GLushort * v); /* 488 */
-   void (GLAPIENTRYP VertexAttrib4bvARB)(GLuint index, const GLbyte * v); /* 489 */
-   void (GLAPIENTRYP VertexAttrib4dARB)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 490 */
-   void (GLAPIENTRYP VertexAttrib4dvARB)(GLuint index, const GLdouble * v); /* 491 */
-   void (GLAPIENTRYP VertexAttrib4fARB)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 492 */
-   void (GLAPIENTRYP VertexAttrib4fvARB)(GLuint index, const GLfloat * v); /* 493 */
-   void (GLAPIENTRYP VertexAttrib4ivARB)(GLuint index, const GLint * v); /* 494 */
-   void (GLAPIENTRYP VertexAttrib4sARB)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); /* 495 */
-   void (GLAPIENTRYP VertexAttrib4svARB)(GLuint index, const GLshort * v); /* 496 */
-   void (GLAPIENTRYP VertexAttrib4ubvARB)(GLuint index, const GLubyte * v); /* 497 */
-   void (GLAPIENTRYP VertexAttrib4uivARB)(GLuint index, const GLuint * v); /* 498 */
-   void (GLAPIENTRYP VertexAttrib4usvARB)(GLuint index, const GLushort * v); /* 499 */
-   void (GLAPIENTRYP VertexAttribPointerARB)(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid * pointer); /* 500 */
-   void (GLAPIENTRYP BindBufferARB)(GLenum target, GLuint buffer); /* 501 */
-   void (GLAPIENTRYP BufferDataARB)(GLenum target, GLsizeiptrARB size, const GLvoid * data, GLenum usage); /* 502 */
-   void (GLAPIENTRYP BufferSubDataARB)(GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid * data); /* 503 */
-   void (GLAPIENTRYP DeleteBuffersARB)(GLsizei n, const GLuint * buffer); /* 504 */
-   void (GLAPIENTRYP GenBuffersARB)(GLsizei n, GLuint * buffer); /* 505 */
-   void (GLAPIENTRYP GetBufferParameterivARB)(GLenum target, GLenum pname, GLint * params); /* 506 */
-   void (GLAPIENTRYP GetBufferPointervARB)(GLenum target, GLenum pname, GLvoid ** params); /* 507 */
-   void (GLAPIENTRYP GetBufferSubDataARB)(GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid * data); /* 508 */
-   GLboolean (GLAPIENTRYP IsBufferARB)(GLuint buffer); /* 509 */
-   GLvoid * (GLAPIENTRYP MapBufferARB)(GLenum target, GLenum access); /* 510 */
-   GLboolean (GLAPIENTRYP UnmapBufferARB)(GLenum target); /* 511 */
-   void (GLAPIENTRYP BeginQueryARB)(GLenum target, GLuint id); /* 512 */
-   void (GLAPIENTRYP DeleteQueriesARB)(GLsizei n, const GLuint * ids); /* 513 */
-   void (GLAPIENTRYP EndQueryARB)(GLenum target); /* 514 */
-   void (GLAPIENTRYP GenQueriesARB)(GLsizei n, GLuint * ids); /* 515 */
-   void (GLAPIENTRYP GetQueryObjectivARB)(GLuint id, GLenum pname, GLint * params); /* 516 */
-   void (GLAPIENTRYP GetQueryObjectuivARB)(GLuint id, GLenum pname, GLuint * params); /* 517 */
-   void (GLAPIENTRYP GetQueryivARB)(GLenum target, GLenum pname, GLint * params); /* 518 */
-   GLboolean (GLAPIENTRYP IsQueryARB)(GLuint id); /* 519 */
-   void (GLAPIENTRYP AttachObjectARB)(GLhandleARB containerObj, GLhandleARB obj); /* 520 */
-   void (GLAPIENTRYP CompileShaderARB)(GLhandleARB shader); /* 521 */
-   GLhandleARB (GLAPIENTRYP CreateProgramObjectARB)(void); /* 522 */
-   GLhandleARB (GLAPIENTRYP CreateShaderObjectARB)(GLenum shaderType); /* 523 */
-   void (GLAPIENTRYP DeleteObjectARB)(GLhandleARB obj); /* 524 */
-   void (GLAPIENTRYP DetachObjectARB)(GLhandleARB containerObj, GLhandleARB attachedObj); /* 525 */
-   void (GLAPIENTRYP GetActiveUniformARB)(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, GLcharARB * name); /* 526 */
-   void (GLAPIENTRYP GetAttachedObjectsARB)(GLhandleARB containerObj, GLsizei maxLength, GLsizei * length, GLhandleARB * infoLog); /* 527 */
-   GLhandleARB (GLAPIENTRYP GetHandleARB)(GLenum pname); /* 528 */
-   void (GLAPIENTRYP GetInfoLogARB)(GLhandleARB obj, GLsizei maxLength, GLsizei * length, GLcharARB * infoLog); /* 529 */
-   void (GLAPIENTRYP GetObjectParameterfvARB)(GLhandleARB obj, GLenum pname, GLfloat * params); /* 530 */
-   void (GLAPIENTRYP GetObjectParameterivARB)(GLhandleARB obj, GLenum pname, GLint * params); /* 531 */
-   void (GLAPIENTRYP GetShaderSourceARB)(GLhandleARB shader, GLsizei bufSize, GLsizei * length, GLcharARB * source); /* 532 */
-   GLint (GLAPIENTRYP GetUniformLocationARB)(GLhandleARB program, const GLcharARB * name); /* 533 */
-   void (GLAPIENTRYP GetUniformfvARB)(GLhandleARB program, GLint location, GLfloat * params); /* 534 */
-   void (GLAPIENTRYP GetUniformivARB)(GLhandleARB program, GLint location, GLint * params); /* 535 */
-   void (GLAPIENTRYP LinkProgramARB)(GLhandleARB program); /* 536 */
-   void (GLAPIENTRYP ShaderSourceARB)(GLhandleARB shader, GLsizei count, const GLcharARB ** string, const GLint * length); /* 537 */
-   void (GLAPIENTRYP Uniform1fARB)(GLint location, GLfloat v0); /* 538 */
-   void (GLAPIENTRYP Uniform1fvARB)(GLint location, GLsizei count, const GLfloat * value); /* 539 */
-   void (GLAPIENTRYP Uniform1iARB)(GLint location, GLint v0); /* 540 */
-   void (GLAPIENTRYP Uniform1ivARB)(GLint location, GLsizei count, const GLint * value); /* 541 */
-   void (GLAPIENTRYP Uniform2fARB)(GLint location, GLfloat v0, GLfloat v1); /* 542 */
-   void (GLAPIENTRYP Uniform2fvARB)(GLint location, GLsizei count, const GLfloat * value); /* 543 */
-   void (GLAPIENTRYP Uniform2iARB)(GLint location, GLint v0, GLint v1); /* 544 */
-   void (GLAPIENTRYP Uniform2ivARB)(GLint location, GLsizei count, const GLint * value); /* 545 */
-   void (GLAPIENTRYP Uniform3fARB)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2); /* 546 */
-   void (GLAPIENTRYP Uniform3fvARB)(GLint location, GLsizei count, const GLfloat * value); /* 547 */
-   void (GLAPIENTRYP Uniform3iARB)(GLint location, GLint v0, GLint v1, GLint v2); /* 548 */
-   void (GLAPIENTRYP Uniform3ivARB)(GLint location, GLsizei count, const GLint * value); /* 549 */
-   void (GLAPIENTRYP Uniform4fARB)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3); /* 550 */
-   void (GLAPIENTRYP Uniform4fvARB)(GLint location, GLsizei count, const GLfloat * value); /* 551 */
-   void (GLAPIENTRYP Uniform4iARB)(GLint location, GLint v0, GLint v1, GLint v2, GLint v3); /* 552 */
-   void (GLAPIENTRYP Uniform4ivARB)(GLint location, GLsizei count, const GLint * value); /* 553 */
-   void (GLAPIENTRYP UniformMatrix2fvARB)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 554 */
-   void (GLAPIENTRYP UniformMatrix3fvARB)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 555 */
-   void (GLAPIENTRYP UniformMatrix4fvARB)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value); /* 556 */
-   void (GLAPIENTRYP UseProgramObjectARB)(GLhandleARB program); /* 557 */
-   void (GLAPIENTRYP ValidateProgramARB)(GLhandleARB program); /* 558 */
-   void (GLAPIENTRYP BindAttribLocationARB)(GLhandleARB program, GLuint index, const GLcharARB * name); /* 559 */
-   void (GLAPIENTRYP GetActiveAttribARB)(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, GLcharARB * name); /* 560 */
-   GLint (GLAPIENTRYP GetAttribLocationARB)(GLhandleARB program, const GLcharARB * name); /* 561 */
-   void (GLAPIENTRYP DrawBuffersARB)(GLsizei n, const GLenum * bufs); /* 562 */
-   void (GLAPIENTRYP RenderbufferStorageMultisample)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); /* 563 */
-   void (GLAPIENTRYP FlushMappedBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length); /* 564 */
-   GLvoid * (GLAPIENTRYP MapBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); /* 565 */
-   void (GLAPIENTRYP BindVertexArray)(GLuint array); /* 566 */
-   void (GLAPIENTRYP GenVertexArrays)(GLsizei n, GLuint * arrays); /* 567 */
-   void (GLAPIENTRYP CopyBufferSubData)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); /* 568 */
-   GLenum (GLAPIENTRYP ClientWaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout); /* 569 */
-   void (GLAPIENTRYP DeleteSync)(GLsync sync); /* 570 */
-   GLsync (GLAPIENTRYP FenceSync)(GLenum condition, GLbitfield flags); /* 571 */
-   void (GLAPIENTRYP GetInteger64v)(GLenum pname, GLint64 * params); /* 572 */
-   void (GLAPIENTRYP GetSynciv)(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei * length, GLint * values); /* 573 */
-   GLboolean (GLAPIENTRYP IsSync)(GLsync sync); /* 574 */
-   void (GLAPIENTRYP WaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout); /* 575 */
-   void (GLAPIENTRYP DrawElementsBaseVertex)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices, GLint basevertex); /* 576 */
-   void (GLAPIENTRYP DrawRangeElementsBaseVertex)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid * indices, GLint basevertex); /* 577 */
-   void (GLAPIENTRYP MultiDrawElementsBaseVertex)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount, const GLint * basevertex); /* 578 */
-   void (GLAPIENTRYP PolygonOffsetEXT)(GLfloat factor, GLfloat bias); /* 579 */
-   void (GLAPIENTRYP GetPixelTexGenParameterfvSGIS)(GLenum pname, GLfloat * params); /* 580 */
-   void (GLAPIENTRYP GetPixelTexGenParameterivSGIS)(GLenum pname, GLint * params); /* 581 */
-   void (GLAPIENTRYP PixelTexGenParameterfSGIS)(GLenum pname, GLfloat param); /* 582 */
-   void (GLAPIENTRYP PixelTexGenParameterfvSGIS)(GLenum pname, const GLfloat * params); /* 583 */
-   void (GLAPIENTRYP PixelTexGenParameteriSGIS)(GLenum pname, GLint param); /* 584 */
-   void (GLAPIENTRYP PixelTexGenParameterivSGIS)(GLenum pname, const GLint * params); /* 585 */
-   void (GLAPIENTRYP SampleMaskSGIS)(GLclampf value, GLboolean invert); /* 586 */
-   void (GLAPIENTRYP SamplePatternSGIS)(GLenum pattern); /* 587 */
-   void (GLAPIENTRYP ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 588 */
-   void (GLAPIENTRYP EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean * pointer); /* 589 */
-   void (GLAPIENTRYP IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 590 */
-   void (GLAPIENTRYP NormalPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 591 */
-   void (GLAPIENTRYP TexCoordPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 592 */
-   void (GLAPIENTRYP VertexPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer); /* 593 */
-   void (GLAPIENTRYP PointParameterfEXT)(GLenum pname, GLfloat param); /* 594 */
-   void (GLAPIENTRYP PointParameterfvEXT)(GLenum pname, const GLfloat * params); /* 595 */
-   void (GLAPIENTRYP LockArraysEXT)(GLint first, GLsizei count); /* 596 */
-   void (GLAPIENTRYP UnlockArraysEXT)(void); /* 597 */
-   void (GLAPIENTRYP CullParameterdvEXT)(GLenum pname, GLdouble * params); /* 598 */
-   void (GLAPIENTRYP CullParameterfvEXT)(GLenum pname, GLfloat * params); /* 599 */
-   void (GLAPIENTRYP SecondaryColor3bEXT)(GLbyte red, GLbyte green, GLbyte blue); /* 600 */
-   void (GLAPIENTRYP SecondaryColor3bvEXT)(const GLbyte * v); /* 601 */
-   void (GLAPIENTRYP SecondaryColor3dEXT)(GLdouble red, GLdouble green, GLdouble blue); /* 602 */
-   void (GLAPIENTRYP SecondaryColor3dvEXT)(const GLdouble * v); /* 603 */
-   void (GLAPIENTRYP SecondaryColor3fEXT)(GLfloat red, GLfloat green, GLfloat blue); /* 604 */
-   void (GLAPIENTRYP SecondaryColor3fvEXT)(const GLfloat * v); /* 605 */
-   void (GLAPIENTRYP SecondaryColor3iEXT)(GLint red, GLint green, GLint blue); /* 606 */
-   void (GLAPIENTRYP SecondaryColor3ivEXT)(const GLint * v); /* 607 */
-   void (GLAPIENTRYP SecondaryColor3sEXT)(GLshort red, GLshort green, GLshort blue); /* 608 */
-   void (GLAPIENTRYP SecondaryColor3svEXT)(const GLshort * v); /* 609 */
-   void (GLAPIENTRYP SecondaryColor3ubEXT)(GLubyte red, GLubyte green, GLubyte blue); /* 610 */
-   void (GLAPIENTRYP SecondaryColor3ubvEXT)(const GLubyte * v); /* 611 */
-   void (GLAPIENTRYP SecondaryColor3uiEXT)(GLuint red, GLuint green, GLuint blue); /* 612 */
-   void (GLAPIENTRYP SecondaryColor3uivEXT)(const GLuint * v); /* 613 */
-   void (GLAPIENTRYP SecondaryColor3usEXT)(GLushort red, GLushort green, GLushort blue); /* 614 */
-   void (GLAPIENTRYP SecondaryColor3usvEXT)(const GLushort * v); /* 615 */
-   void (GLAPIENTRYP SecondaryColorPointerEXT)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 616 */
-   void (GLAPIENTRYP MultiDrawArraysEXT)(GLenum mode, GLint * first, GLsizei * count, GLsizei primcount); /* 617 */
-   void (GLAPIENTRYP MultiDrawElementsEXT)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount); /* 618 */
-   void (GLAPIENTRYP FogCoordPointerEXT)(GLenum type, GLsizei stride, const GLvoid * pointer); /* 619 */
-   void (GLAPIENTRYP FogCoorddEXT)(GLdouble coord); /* 620 */
-   void (GLAPIENTRYP FogCoorddvEXT)(const GLdouble * coord); /* 621 */
-   void (GLAPIENTRYP FogCoordfEXT)(GLfloat coord); /* 622 */
-   void (GLAPIENTRYP FogCoordfvEXT)(const GLfloat * coord); /* 623 */
-   void (GLAPIENTRYP PixelTexGenSGIX)(GLenum mode); /* 624 */
-   void (GLAPIENTRYP BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); /* 625 */
-   void (GLAPIENTRYP FlushVertexArrayRangeNV)(void); /* 626 */
-   void (GLAPIENTRYP VertexArrayRangeNV)(GLsizei length, const GLvoid * pointer); /* 627 */
-   void (GLAPIENTRYP CombinerInputNV)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 628 */
-   void (GLAPIENTRYP CombinerOutputNV)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum); /* 629 */
-   void (GLAPIENTRYP CombinerParameterfNV)(GLenum pname, GLfloat param); /* 630 */
-   void (GLAPIENTRYP CombinerParameterfvNV)(GLenum pname, const GLfloat * params); /* 631 */
-   void (GLAPIENTRYP CombinerParameteriNV)(GLenum pname, GLint param); /* 632 */
-   void (GLAPIENTRYP CombinerParameterivNV)(GLenum pname, const GLint * params); /* 633 */
-   void (GLAPIENTRYP FinalCombinerInputNV)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage); /* 634 */
-   void (GLAPIENTRYP GetCombinerInputParameterfvNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat * params); /* 635 */
-   void (GLAPIENTRYP GetCombinerInputParameterivNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint * params); /* 636 */
-   void (GLAPIENTRYP GetCombinerOutputParameterfvNV)(GLenum stage, GLenum portion, GLenum pname, GLfloat * params); /* 637 */
-   void (GLAPIENTRYP GetCombinerOutputParameterivNV)(GLenum stage, GLenum portion, GLenum pname, GLint * params); /* 638 */
-   void (GLAPIENTRYP GetFinalCombinerInputParameterfvNV)(GLenum variable, GLenum pname, GLfloat * params); /* 639 */
-   void (GLAPIENTRYP GetFinalCombinerInputParameterivNV)(GLenum variable, GLenum pname, GLint * params); /* 640 */
-   void (GLAPIENTRYP ResizeBuffersMESA)(void); /* 641 */
-   void (GLAPIENTRYP WindowPos2dMESA)(GLdouble x, GLdouble y); /* 642 */
-   void (GLAPIENTRYP WindowPos2dvMESA)(const GLdouble * v); /* 643 */
-   void (GLAPIENTRYP WindowPos2fMESA)(GLfloat x, GLfloat y); /* 644 */
-   void (GLAPIENTRYP WindowPos2fvMESA)(const GLfloat * v); /* 645 */
-   void (GLAPIENTRYP WindowPos2iMESA)(GLint x, GLint y); /* 646 */
-   void (GLAPIENTRYP WindowPos2ivMESA)(const GLint * v); /* 647 */
-   void (GLAPIENTRYP WindowPos2sMESA)(GLshort x, GLshort y); /* 648 */
-   void (GLAPIENTRYP WindowPos2svMESA)(const GLshort * v); /* 649 */
-   void (GLAPIENTRYP WindowPos3dMESA)(GLdouble x, GLdouble y, GLdouble z); /* 650 */
-   void (GLAPIENTRYP WindowPos3dvMESA)(const GLdouble * v); /* 651 */
-   void (GLAPIENTRYP WindowPos3fMESA)(GLfloat x, GLfloat y, GLfloat z); /* 652 */
-   void (GLAPIENTRYP WindowPos3fvMESA)(const GLfloat * v); /* 653 */
-   void (GLAPIENTRYP WindowPos3iMESA)(GLint x, GLint y, GLint z); /* 654 */
-   void (GLAPIENTRYP WindowPos3ivMESA)(const GLint * v); /* 655 */
-   void (GLAPIENTRYP WindowPos3sMESA)(GLshort x, GLshort y, GLshort z); /* 656 */
-   void (GLAPIENTRYP WindowPos3svMESA)(const GLshort * v); /* 657 */
-   void (GLAPIENTRYP WindowPos4dMESA)(GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 658 */
-   void (GLAPIENTRYP WindowPos4dvMESA)(const GLdouble * v); /* 659 */
-   void (GLAPIENTRYP WindowPos4fMESA)(GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 660 */
-   void (GLAPIENTRYP WindowPos4fvMESA)(const GLfloat * v); /* 661 */
-   void (GLAPIENTRYP WindowPos4iMESA)(GLint x, GLint y, GLint z, GLint w); /* 662 */
-   void (GLAPIENTRYP WindowPos4ivMESA)(const GLint * v); /* 663 */
-   void (GLAPIENTRYP WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w); /* 664 */
-   void (GLAPIENTRYP WindowPos4svMESA)(const GLshort * v); /* 665 */
-   void (GLAPIENTRYP MultiModeDrawArraysIBM)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride); /* 666 */
-   void (GLAPIENTRYP MultiModeDrawElementsIBM)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride); /* 667 */
-   void (GLAPIENTRYP DeleteFencesNV)(GLsizei n, const GLuint * fences); /* 668 */
-   void (GLAPIENTRYP FinishFenceNV)(GLuint fence); /* 669 */
-   void (GLAPIENTRYP GenFencesNV)(GLsizei n, GLuint * fences); /* 670 */
-   void (GLAPIENTRYP GetFenceivNV)(GLuint fence, GLenum pname, GLint * params); /* 671 */
-   GLboolean (GLAPIENTRYP IsFenceNV)(GLuint fence); /* 672 */
-   void (GLAPIENTRYP SetFenceNV)(GLuint fence, GLenum condition); /* 673 */
-   GLboolean (GLAPIENTRYP TestFenceNV)(GLuint fence); /* 674 */
-   GLboolean (GLAPIENTRYP AreProgramsResidentNV)(GLsizei n, const GLuint * ids, GLboolean * residences); /* 675 */
-   void (GLAPIENTRYP BindProgramNV)(GLenum target, GLuint program); /* 676 */
-   void (GLAPIENTRYP DeleteProgramsNV)(GLsizei n, const GLuint * programs); /* 677 */
-   void (GLAPIENTRYP ExecuteProgramNV)(GLenum target, GLuint id, const GLfloat * params); /* 678 */
-   void (GLAPIENTRYP GenProgramsNV)(GLsizei n, GLuint * programs); /* 679 */
-   void (GLAPIENTRYP GetProgramParameterdvNV)(GLenum target, GLuint index, GLenum pname, GLdouble * params); /* 680 */
-   void (GLAPIENTRYP GetProgramParameterfvNV)(GLenum target, GLuint index, GLenum pname, GLfloat * params); /* 681 */
-   void (GLAPIENTRYP GetProgramStringNV)(GLuint id, GLenum pname, GLubyte * program); /* 682 */
-   void (GLAPIENTRYP GetProgramivNV)(GLuint id, GLenum pname, GLint * params); /* 683 */
-   void (GLAPIENTRYP GetTrackMatrixivNV)(GLenum target, GLuint address, GLenum pname, GLint * params); /* 684 */
-   void (GLAPIENTRYP GetVertexAttribPointervNV)(GLuint index, GLenum pname, GLvoid ** pointer); /* 685 */
-   void (GLAPIENTRYP GetVertexAttribdvNV)(GLuint index, GLenum pname, GLdouble * params); /* 686 */
-   void (GLAPIENTRYP GetVertexAttribfvNV)(GLuint index, GLenum pname, GLfloat * params); /* 687 */
-   void (GLAPIENTRYP GetVertexAttribivNV)(GLuint index, GLenum pname, GLint * params); /* 688 */
-   GLboolean (GLAPIENTRYP IsProgramNV)(GLuint program); /* 689 */
-   void (GLAPIENTRYP LoadProgramNV)(GLenum target, GLuint id, GLsizei len, const GLubyte * program); /* 690 */
-   void (GLAPIENTRYP ProgramParameters4dvNV)(GLenum target, GLuint index, GLuint num, const GLdouble * params); /* 691 */
-   void (GLAPIENTRYP ProgramParameters4fvNV)(GLenum target, GLuint index, GLuint num, const GLfloat * params); /* 692 */
-   void (GLAPIENTRYP RequestResidentProgramsNV)(GLsizei n, const GLuint * ids); /* 693 */
-   void (GLAPIENTRYP TrackMatrixNV)(GLenum target, GLuint address, GLenum matrix, GLenum transform); /* 694 */
-   void (GLAPIENTRYP VertexAttrib1dNV)(GLuint index, GLdouble x); /* 695 */
-   void (GLAPIENTRYP VertexAttrib1dvNV)(GLuint index, const GLdouble * v); /* 696 */
-   void (GLAPIENTRYP VertexAttrib1fNV)(GLuint index, GLfloat x); /* 697 */
-   void (GLAPIENTRYP VertexAttrib1fvNV)(GLuint index, const GLfloat * v); /* 698 */
-   void (GLAPIENTRYP VertexAttrib1sNV)(GLuint index, GLshort x); /* 699 */
-   void (GLAPIENTRYP VertexAttrib1svNV)(GLuint index, const GLshort * v); /* 700 */
-   void (GLAPIENTRYP VertexAttrib2dNV)(GLuint index, GLdouble x, GLdouble y); /* 701 */
-   void (GLAPIENTRYP VertexAttrib2dvNV)(GLuint index, const GLdouble * v); /* 702 */
-   void (GLAPIENTRYP VertexAttrib2fNV)(GLuint index, GLfloat x, GLfloat y); /* 703 */
-   void (GLAPIENTRYP VertexAttrib2fvNV)(GLuint index, const GLfloat * v); /* 704 */
-   void (GLAPIENTRYP VertexAttrib2sNV)(GLuint index, GLshort x, GLshort y); /* 705 */
-   void (GLAPIENTRYP VertexAttrib2svNV)(GLuint index, const GLshort * v); /* 706 */
-   void (GLAPIENTRYP VertexAttrib3dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z); /* 707 */
-   void (GLAPIENTRYP VertexAttrib3dvNV)(GLuint index, const GLdouble * v); /* 708 */
-   void (GLAPIENTRYP VertexAttrib3fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z); /* 709 */
-   void (GLAPIENTRYP VertexAttrib3fvNV)(GLuint index, const GLfloat * v); /* 710 */
-   void (GLAPIENTRYP VertexAttrib3sNV)(GLuint index, GLshort x, GLshort y, GLshort z); /* 711 */
-   void (GLAPIENTRYP VertexAttrib3svNV)(GLuint index, const GLshort * v); /* 712 */
-   void (GLAPIENTRYP VertexAttrib4dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 713 */
-   void (GLAPIENTRYP VertexAttrib4dvNV)(GLuint index, const GLdouble * v); /* 714 */
-   void (GLAPIENTRYP VertexAttrib4fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 715 */
-   void (GLAPIENTRYP VertexAttrib4fvNV)(GLuint index, const GLfloat * v); /* 716 */
-   void (GLAPIENTRYP VertexAttrib4sNV)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); /* 717 */
-   void (GLAPIENTRYP VertexAttrib4svNV)(GLuint index, const GLshort * v); /* 718 */
-   void (GLAPIENTRYP VertexAttrib4ubNV)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); /* 719 */
-   void (GLAPIENTRYP VertexAttrib4ubvNV)(GLuint index, const GLubyte * v); /* 720 */
-   void (GLAPIENTRYP VertexAttribPointerNV)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer); /* 721 */
-   void (GLAPIENTRYP VertexAttribs1dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 722 */
-   void (GLAPIENTRYP VertexAttribs1fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 723 */
-   void (GLAPIENTRYP VertexAttribs1svNV)(GLuint index, GLsizei n, const GLshort * v); /* 724 */
-   void (GLAPIENTRYP VertexAttribs2dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 725 */
-   void (GLAPIENTRYP VertexAttribs2fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 726 */
-   void (GLAPIENTRYP VertexAttribs2svNV)(GLuint index, GLsizei n, const GLshort * v); /* 727 */
-   void (GLAPIENTRYP VertexAttribs3dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 728 */
-   void (GLAPIENTRYP VertexAttribs3fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 729 */
-   void (GLAPIENTRYP VertexAttribs3svNV)(GLuint index, GLsizei n, const GLshort * v); /* 730 */
-   void (GLAPIENTRYP VertexAttribs4dvNV)(GLuint index, GLsizei n, const GLdouble * v); /* 731 */
-   void (GLAPIENTRYP VertexAttribs4fvNV)(GLuint index, GLsizei n, const GLfloat * v); /* 732 */
-   void (GLAPIENTRYP VertexAttribs4svNV)(GLuint index, GLsizei n, const GLshort * v); /* 733 */
-   void (GLAPIENTRYP VertexAttribs4ubvNV)(GLuint index, GLsizei n, const GLubyte * v); /* 734 */
-   void (GLAPIENTRYP GetTexBumpParameterfvATI)(GLenum pname, GLfloat * param); /* 735 */
-   void (GLAPIENTRYP GetTexBumpParameterivATI)(GLenum pname, GLint * param); /* 736 */
-   void (GLAPIENTRYP TexBumpParameterfvATI)(GLenum pname, const GLfloat * param); /* 737 */
-   void (GLAPIENTRYP TexBumpParameterivATI)(GLenum pname, const GLint * param); /* 738 */
-   void (GLAPIENTRYP AlphaFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 739 */
-   void (GLAPIENTRYP AlphaFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 740 */
-   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); /* 741 */
-   void (GLAPIENTRYP BeginFragmentShaderATI)(void); /* 742 */
-   void (GLAPIENTRYP BindFragmentShaderATI)(GLuint id); /* 743 */
-   void (GLAPIENTRYP ColorFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod); /* 744 */
-   void (GLAPIENTRYP ColorFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod); /* 745 */
-   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); /* 746 */
-   void (GLAPIENTRYP DeleteFragmentShaderATI)(GLuint id); /* 747 */
-   void (GLAPIENTRYP EndFragmentShaderATI)(void); /* 748 */
-   GLuint (GLAPIENTRYP GenFragmentShadersATI)(GLuint range); /* 749 */
-   void (GLAPIENTRYP PassTexCoordATI)(GLuint dst, GLuint coord, GLenum swizzle); /* 750 */
-   void (GLAPIENTRYP SampleMapATI)(GLuint dst, GLuint interp, GLenum swizzle); /* 751 */
-   void (GLAPIENTRYP SetFragmentShaderConstantATI)(GLuint dst, const GLfloat * value); /* 752 */
-   void (GLAPIENTRYP PointParameteriNV)(GLenum pname, GLint param); /* 753 */
-   void (GLAPIENTRYP PointParameterivNV)(GLenum pname, const GLint * params); /* 754 */
-   void (GLAPIENTRYP ActiveStencilFaceEXT)(GLenum face); /* 755 */
-   void (GLAPIENTRYP BindVertexArrayAPPLE)(GLuint array); /* 756 */
-   void (GLAPIENTRYP DeleteVertexArraysAPPLE)(GLsizei n, const GLuint * arrays); /* 757 */
-   void (GLAPIENTRYP GenVertexArraysAPPLE)(GLsizei n, GLuint * arrays); /* 758 */
-   GLboolean (GLAPIENTRYP IsVertexArrayAPPLE)(GLuint array); /* 759 */
-   void (GLAPIENTRYP GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble * params); /* 760 */
-   void (GLAPIENTRYP GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat * params); /* 761 */
-   void (GLAPIENTRYP ProgramNamedParameter4dNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble x, GLdouble y, GLdouble z, GLdouble w); /* 762 */
-   void (GLAPIENTRYP ProgramNamedParameter4dvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLdouble * v); /* 763 */
-   void (GLAPIENTRYP ProgramNamedParameter4fNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat x, GLfloat y, GLfloat z, GLfloat w); /* 764 */
-   void (GLAPIENTRYP ProgramNamedParameter4fvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLfloat * v); /* 765 */
-   void (GLAPIENTRYP DepthBoundsEXT)(GLclampd zmin, GLclampd zmax); /* 766 */
-   void (GLAPIENTRYP BlendEquationSeparateEXT)(GLenum modeRGB, GLenum modeA); /* 767 */
-   void (GLAPIENTRYP BindFramebufferEXT)(GLenum target, GLuint framebuffer); /* 768 */
-   void (GLAPIENTRYP BindRenderbufferEXT)(GLenum target, GLuint renderbuffer); /* 769 */
-   GLenum (GLAPIENTRYP CheckFramebufferStatusEXT)(GLenum target); /* 770 */
-   void (GLAPIENTRYP DeleteFramebuffersEXT)(GLsizei n, const GLuint * framebuffers); /* 771 */
-   void (GLAPIENTRYP DeleteRenderbuffersEXT)(GLsizei n, const GLuint * renderbuffers); /* 772 */
-   void (GLAPIENTRYP FramebufferRenderbufferEXT)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); /* 773 */
-   void (GLAPIENTRYP FramebufferTexture1DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 774 */
-   void (GLAPIENTRYP FramebufferTexture2DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); /* 775 */
-   void (GLAPIENTRYP FramebufferTexture3DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); /* 776 */
-   void (GLAPIENTRYP GenFramebuffersEXT)(GLsizei n, GLuint * framebuffers); /* 777 */
-   void (GLAPIENTRYP GenRenderbuffersEXT)(GLsizei n, GLuint * renderbuffers); /* 778 */
-   void (GLAPIENTRYP GenerateMipmapEXT)(GLenum target); /* 779 */
-   void (GLAPIENTRYP GetFramebufferAttachmentParameterivEXT)(GLenum target, GLenum attachment, GLenum pname, GLint * params); /* 780 */
-   void (GLAPIENTRYP GetRenderbufferParameterivEXT)(GLenum target, GLenum pname, GLint * params); /* 781 */
-   GLboolean (GLAPIENTRYP IsFramebufferEXT)(GLuint framebuffer); /* 782 */
-   GLboolean (GLAPIENTRYP IsRenderbufferEXT)(GLuint renderbuffer); /* 783 */
-   void (GLAPIENTRYP RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); /* 784 */
-   void (GLAPIENTRYP BlitFramebufferEXT)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); /* 785 */
-   void (GLAPIENTRYP BufferParameteriAPPLE)(GLenum target, GLenum pname, GLint param); /* 786 */
-   void (GLAPIENTRYP FlushMappedBufferRangeAPPLE)(GLenum target, GLintptr offset, GLsizeiptr size); /* 787 */
-   void (GLAPIENTRYP FramebufferTextureLayerEXT)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer); /* 788 */
-   void (GLAPIENTRYP ColorMaskIndexedEXT)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a); /* 789 */
-   void (GLAPIENTRYP DisableIndexedEXT)(GLenum target, GLuint index); /* 790 */
-   void (GLAPIENTRYP EnableIndexedEXT)(GLenum target, GLuint index); /* 791 */
-   void (GLAPIENTRYP GetBooleanIndexedvEXT)(GLenum value, GLuint index, GLboolean * data); /* 792 */
-   void (GLAPIENTRYP GetIntegerIndexedvEXT)(GLenum value, GLuint index, GLint * data); /* 793 */
-   GLboolean (GLAPIENTRYP IsEnabledIndexedEXT)(GLenum target, GLuint index); /* 794 */
-   void (GLAPIENTRYP BeginConditionalRenderNV)(GLuint query, GLenum mode); /* 795 */
-   void (GLAPIENTRYP EndConditionalRenderNV)(void); /* 796 */
-   void (GLAPIENTRYP BeginTransformFeedbackEXT)(GLenum mode); /* 797 */
-   void (GLAPIENTRYP BindBufferBaseEXT)(GLenum target, GLuint index, GLuint buffer); /* 798 */
-   void (GLAPIENTRYP BindBufferOffsetEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset); /* 799 */
-   void (GLAPIENTRYP BindBufferRangeEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); /* 800 */
-   void (GLAPIENTRYP EndTransformFeedbackEXT)(void); /* 801 */
-   void (GLAPIENTRYP GetTransformFeedbackVaryingEXT)(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name); /* 802 */
-   void (GLAPIENTRYP TransformFeedbackVaryingsEXT)(GLuint program, GLsizei count, const char ** varyings, GLenum bufferMode); /* 803 */
-   void (GLAPIENTRYP ProvokingVertexEXT)(GLenum mode); /* 804 */
-   void (GLAPIENTRYP GetTexParameterPointervAPPLE)(GLenum target, GLenum pname, GLvoid ** params); /* 805 */
-   void (GLAPIENTRYP TextureRangeAPPLE)(GLenum target, GLsizei length, GLvoid * pointer); /* 806 */
-   void (GLAPIENTRYP GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint * value); /* 807 */
-   GLenum (GLAPIENTRYP ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 808 */
-   GLenum (GLAPIENTRYP ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option); /* 809 */
-   void (GLAPIENTRYP StencilFuncSeparateATI)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask); /* 810 */
-   void (GLAPIENTRYP ProgramEnvParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 811 */
-   void (GLAPIENTRYP ProgramLocalParameters4fvEXT)(GLenum target, GLuint index, GLsizei count, const GLfloat * params); /* 812 */
-   void (GLAPIENTRYP GetQueryObjecti64vEXT)(GLuint id, GLenum pname, GLint64EXT * params); /* 813 */
-   void (GLAPIENTRYP GetQueryObjectui64vEXT)(GLuint id, GLenum pname, GLuint64EXT * params); /* 814 */
-   void (GLAPIENTRYP EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid * writeOffset); /* 815 */
-   void (GLAPIENTRYP EGLImageTargetTexture2DOES)(GLenum target, GLvoid * writeOffset); /* 816 */
-};
-
-#endif /* !defined( _GLAPI_TABLE_H_ ) */
diff --git a/src/mesa/glapi/glapitemp.h b/src/mesa/glapi/glapitemp.h
deleted file mode 100644 (file)
index 3ed337f..0000000
+++ /dev/null
@@ -1,7144 +0,0 @@
-/* DO NOT EDIT - This file generated automatically by gl_apitemp.py (from Mesa) script */
-
-/*
- * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
- * (C) Copyright IBM Corporation 2004
- * 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
- * BRIAN PAUL, IBM,
- * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
- * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-
-#  if defined(__GNUC__) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590)) && defined(__ELF__)
-#    define HIDDEN  __attribute__((visibility("hidden")))
-#  else
-#    define HIDDEN
-#  endif
-
-/*
- * This file is a template which generates the OpenGL API entry point
- * functions.  It should be included by a .c file which first defines
- * the following macros:
- *   KEYWORD1 - usually nothing, but might be __declspec(dllexport) on Win32
- *   KEYWORD2 - usually nothing, but might be __stdcall on Win32
- *   NAME(n)  - builds the final function name (usually add "gl" prefix)
- *   DISPATCH(func, args, msg) - code to do dispatch of named function.
- *                               msg is a printf-style debug message.
- *   RETURN_DISPATCH(func, args, msg) - code to do dispatch with a return value
- *
- * Here is an example which generates the usual OpenGL functions:
- *   #define KEYWORD1
- *   #define KEYWORD2
- *   #define NAME(func)  gl##func
- *   #define DISPATCH(func, args, msg)                           \
- *          struct _glapi_table *dispatch = CurrentDispatch;     \
- *          (*dispatch->func) args
- *   #define RETURN DISPATCH(func, args, msg)                    \
- *          struct _glapi_table *dispatch = CurrentDispatch;     \
- *          return (*dispatch->func) args
- *
- */
-
-
-#if defined( NAME )
-#ifndef KEYWORD1
-#define KEYWORD1
-#endif
-
-#ifndef KEYWORD1_ALT
-#define KEYWORD1_ALT HIDDEN
-#endif
-
-#ifndef KEYWORD2
-#define KEYWORD2
-#endif
-
-#ifndef DISPATCH
-#error DISPATCH must be defined
-#endif
-
-#ifndef RETURN_DISPATCH
-#error RETURN_DISPATCH must be defined
-#endif
-
-
-#ifndef _GLAPI_SKIP_NORMAL_ENTRY_POINTS
-
-KEYWORD1 void KEYWORD2 NAME(NewList)(GLuint list, GLenum mode)
-{
-   DISPATCH(NewList, (list, mode), (F, "glNewList(%d, 0x%x);\n", list, mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EndList)(void)
-{
-   DISPATCH(EndList, (), (F, "glEndList();\n"));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CallList)(GLuint list)
-{
-   DISPATCH(CallList, (list), (F, "glCallList(%d);\n", list));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CallLists)(GLsizei n, GLenum type, const GLvoid * lists)
-{
-   DISPATCH(CallLists, (n, type, lists), (F, "glCallLists(%d, 0x%x, %p);\n", n, type, (const void *) lists));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DeleteLists)(GLuint list, GLsizei range)
-{
-   DISPATCH(DeleteLists, (list, range), (F, "glDeleteLists(%d, %d);\n", list, range));
-}
-
-KEYWORD1 GLuint KEYWORD2 NAME(GenLists)(GLsizei range)
-{
-   RETURN_DISPATCH(GenLists, (range), (F, "glGenLists(%d);\n", range));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ListBase)(GLuint base)
-{
-   DISPATCH(ListBase, (base), (F, "glListBase(%d);\n", base));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Begin)(GLenum mode)
-{
-   DISPATCH(Begin, (mode), (F, "glBegin(0x%x);\n", mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Bitmap)(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte * bitmap)
-{
-   DISPATCH(Bitmap, (width, height, xorig, yorig, xmove, ymove, bitmap), (F, "glBitmap(%d, %d, %f, %f, %f, %f, %p);\n", width, height, xorig, yorig, xmove, ymove, (const void *) bitmap));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color3b)(GLbyte red, GLbyte green, GLbyte blue)
-{
-   DISPATCH(Color3b, (red, green, blue), (F, "glColor3b(%d, %d, %d);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color3bv)(const GLbyte * v)
-{
-   DISPATCH(Color3bv, (v), (F, "glColor3bv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color3d)(GLdouble red, GLdouble green, GLdouble blue)
-{
-   DISPATCH(Color3d, (red, green, blue), (F, "glColor3d(%f, %f, %f);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color3dv)(const GLdouble * v)
-{
-   DISPATCH(Color3dv, (v), (F, "glColor3dv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color3f)(GLfloat red, GLfloat green, GLfloat blue)
-{
-   DISPATCH(Color3f, (red, green, blue), (F, "glColor3f(%f, %f, %f);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color3fv)(const GLfloat * v)
-{
-   DISPATCH(Color3fv, (v), (F, "glColor3fv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color3i)(GLint red, GLint green, GLint blue)
-{
-   DISPATCH(Color3i, (red, green, blue), (F, "glColor3i(%d, %d, %d);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color3iv)(const GLint * v)
-{
-   DISPATCH(Color3iv, (v), (F, "glColor3iv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color3s)(GLshort red, GLshort green, GLshort blue)
-{
-   DISPATCH(Color3s, (red, green, blue), (F, "glColor3s(%d, %d, %d);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color3sv)(const GLshort * v)
-{
-   DISPATCH(Color3sv, (v), (F, "glColor3sv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color3ub)(GLubyte red, GLubyte green, GLubyte blue)
-{
-   DISPATCH(Color3ub, (red, green, blue), (F, "glColor3ub(%d, %d, %d);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color3ubv)(const GLubyte * v)
-{
-   DISPATCH(Color3ubv, (v), (F, "glColor3ubv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color3ui)(GLuint red, GLuint green, GLuint blue)
-{
-   DISPATCH(Color3ui, (red, green, blue), (F, "glColor3ui(%d, %d, %d);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color3uiv)(const GLuint * v)
-{
-   DISPATCH(Color3uiv, (v), (F, "glColor3uiv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color3us)(GLushort red, GLushort green, GLushort blue)
-{
-   DISPATCH(Color3us, (red, green, blue), (F, "glColor3us(%d, %d, %d);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color3usv)(const GLushort * v)
-{
-   DISPATCH(Color3usv, (v), (F, "glColor3usv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color4b)(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha)
-{
-   DISPATCH(Color4b, (red, green, blue, alpha), (F, "glColor4b(%d, %d, %d, %d);\n", red, green, blue, alpha));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color4bv)(const GLbyte * v)
-{
-   DISPATCH(Color4bv, (v), (F, "glColor4bv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color4d)(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha)
-{
-   DISPATCH(Color4d, (red, green, blue, alpha), (F, "glColor4d(%f, %f, %f, %f);\n", red, green, blue, alpha));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color4dv)(const GLdouble * v)
-{
-   DISPATCH(Color4dv, (v), (F, "glColor4dv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color4f)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
-{
-   DISPATCH(Color4f, (red, green, blue, alpha), (F, "glColor4f(%f, %f, %f, %f);\n", red, green, blue, alpha));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color4fv)(const GLfloat * v)
-{
-   DISPATCH(Color4fv, (v), (F, "glColor4fv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color4i)(GLint red, GLint green, GLint blue, GLint alpha)
-{
-   DISPATCH(Color4i, (red, green, blue, alpha), (F, "glColor4i(%d, %d, %d, %d);\n", red, green, blue, alpha));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color4iv)(const GLint * v)
-{
-   DISPATCH(Color4iv, (v), (F, "glColor4iv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color4s)(GLshort red, GLshort green, GLshort blue, GLshort alpha)
-{
-   DISPATCH(Color4s, (red, green, blue, alpha), (F, "glColor4s(%d, %d, %d, %d);\n", red, green, blue, alpha));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color4sv)(const GLshort * v)
-{
-   DISPATCH(Color4sv, (v), (F, "glColor4sv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color4ub)(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha)
-{
-   DISPATCH(Color4ub, (red, green, blue, alpha), (F, "glColor4ub(%d, %d, %d, %d);\n", red, green, blue, alpha));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color4ubv)(const GLubyte * v)
-{
-   DISPATCH(Color4ubv, (v), (F, "glColor4ubv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color4ui)(GLuint red, GLuint green, GLuint blue, GLuint alpha)
-{
-   DISPATCH(Color4ui, (red, green, blue, alpha), (F, "glColor4ui(%d, %d, %d, %d);\n", red, green, blue, alpha));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color4uiv)(const GLuint * v)
-{
-   DISPATCH(Color4uiv, (v), (F, "glColor4uiv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color4us)(GLushort red, GLushort green, GLushort blue, GLushort alpha)
-{
-   DISPATCH(Color4us, (red, green, blue, alpha), (F, "glColor4us(%d, %d, %d, %d);\n", red, green, blue, alpha));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Color4usv)(const GLushort * v)
-{
-   DISPATCH(Color4usv, (v), (F, "glColor4usv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EdgeFlag)(GLboolean flag)
-{
-   DISPATCH(EdgeFlag, (flag), (F, "glEdgeFlag(%d);\n", flag));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EdgeFlagv)(const GLboolean * flag)
-{
-   DISPATCH(EdgeFlagv, (flag), (F, "glEdgeFlagv(%p);\n", (const void *) flag));
-}
-
-KEYWORD1 void KEYWORD2 NAME(End)(void)
-{
-   DISPATCH(End, (), (F, "glEnd();\n"));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Indexd)(GLdouble c)
-{
-   DISPATCH(Indexd, (c), (F, "glIndexd(%f);\n", c));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Indexdv)(const GLdouble * c)
-{
-   DISPATCH(Indexdv, (c), (F, "glIndexdv(%p);\n", (const void *) c));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Indexf)(GLfloat c)
-{
-   DISPATCH(Indexf, (c), (F, "glIndexf(%f);\n", c));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Indexfv)(const GLfloat * c)
-{
-   DISPATCH(Indexfv, (c), (F, "glIndexfv(%p);\n", (const void *) c));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Indexi)(GLint c)
-{
-   DISPATCH(Indexi, (c), (F, "glIndexi(%d);\n", c));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Indexiv)(const GLint * c)
-{
-   DISPATCH(Indexiv, (c), (F, "glIndexiv(%p);\n", (const void *) c));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Indexs)(GLshort c)
-{
-   DISPATCH(Indexs, (c), (F, "glIndexs(%d);\n", c));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Indexsv)(const GLshort * c)
-{
-   DISPATCH(Indexsv, (c), (F, "glIndexsv(%p);\n", (const void *) c));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Normal3b)(GLbyte nx, GLbyte ny, GLbyte nz)
-{
-   DISPATCH(Normal3b, (nx, ny, nz), (F, "glNormal3b(%d, %d, %d);\n", nx, ny, nz));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Normal3bv)(const GLbyte * v)
-{
-   DISPATCH(Normal3bv, (v), (F, "glNormal3bv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Normal3d)(GLdouble nx, GLdouble ny, GLdouble nz)
-{
-   DISPATCH(Normal3d, (nx, ny, nz), (F, "glNormal3d(%f, %f, %f);\n", nx, ny, nz));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Normal3dv)(const GLdouble * v)
-{
-   DISPATCH(Normal3dv, (v), (F, "glNormal3dv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Normal3f)(GLfloat nx, GLfloat ny, GLfloat nz)
-{
-   DISPATCH(Normal3f, (nx, ny, nz), (F, "glNormal3f(%f, %f, %f);\n", nx, ny, nz));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Normal3fv)(const GLfloat * v)
-{
-   DISPATCH(Normal3fv, (v), (F, "glNormal3fv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Normal3i)(GLint nx, GLint ny, GLint nz)
-{
-   DISPATCH(Normal3i, (nx, ny, nz), (F, "glNormal3i(%d, %d, %d);\n", nx, ny, nz));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Normal3iv)(const GLint * v)
-{
-   DISPATCH(Normal3iv, (v), (F, "glNormal3iv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Normal3s)(GLshort nx, GLshort ny, GLshort nz)
-{
-   DISPATCH(Normal3s, (nx, ny, nz), (F, "glNormal3s(%d, %d, %d);\n", nx, ny, nz));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Normal3sv)(const GLshort * v)
-{
-   DISPATCH(Normal3sv, (v), (F, "glNormal3sv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos2d)(GLdouble x, GLdouble y)
-{
-   DISPATCH(RasterPos2d, (x, y), (F, "glRasterPos2d(%f, %f);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos2dv)(const GLdouble * v)
-{
-   DISPATCH(RasterPos2dv, (v), (F, "glRasterPos2dv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos2f)(GLfloat x, GLfloat y)
-{
-   DISPATCH(RasterPos2f, (x, y), (F, "glRasterPos2f(%f, %f);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos2fv)(const GLfloat * v)
-{
-   DISPATCH(RasterPos2fv, (v), (F, "glRasterPos2fv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos2i)(GLint x, GLint y)
-{
-   DISPATCH(RasterPos2i, (x, y), (F, "glRasterPos2i(%d, %d);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos2iv)(const GLint * v)
-{
-   DISPATCH(RasterPos2iv, (v), (F, "glRasterPos2iv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos2s)(GLshort x, GLshort y)
-{
-   DISPATCH(RasterPos2s, (x, y), (F, "glRasterPos2s(%d, %d);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos2sv)(const GLshort * v)
-{
-   DISPATCH(RasterPos2sv, (v), (F, "glRasterPos2sv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos3d)(GLdouble x, GLdouble y, GLdouble z)
-{
-   DISPATCH(RasterPos3d, (x, y, z), (F, "glRasterPos3d(%f, %f, %f);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos3dv)(const GLdouble * v)
-{
-   DISPATCH(RasterPos3dv, (v), (F, "glRasterPos3dv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos3f)(GLfloat x, GLfloat y, GLfloat z)
-{
-   DISPATCH(RasterPos3f, (x, y, z), (F, "glRasterPos3f(%f, %f, %f);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos3fv)(const GLfloat * v)
-{
-   DISPATCH(RasterPos3fv, (v), (F, "glRasterPos3fv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos3i)(GLint x, GLint y, GLint z)
-{
-   DISPATCH(RasterPos3i, (x, y, z), (F, "glRasterPos3i(%d, %d, %d);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos3iv)(const GLint * v)
-{
-   DISPATCH(RasterPos3iv, (v), (F, "glRasterPos3iv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos3s)(GLshort x, GLshort y, GLshort z)
-{
-   DISPATCH(RasterPos3s, (x, y, z), (F, "glRasterPos3s(%d, %d, %d);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos3sv)(const GLshort * v)
-{
-   DISPATCH(RasterPos3sv, (v), (F, "glRasterPos3sv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos4d)(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-{
-   DISPATCH(RasterPos4d, (x, y, z, w), (F, "glRasterPos4d(%f, %f, %f, %f);\n", x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos4dv)(const GLdouble * v)
-{
-   DISPATCH(RasterPos4dv, (v), (F, "glRasterPos4dv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos4f)(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-{
-   DISPATCH(RasterPos4f, (x, y, z, w), (F, "glRasterPos4f(%f, %f, %f, %f);\n", x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos4fv)(const GLfloat * v)
-{
-   DISPATCH(RasterPos4fv, (v), (F, "glRasterPos4fv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos4i)(GLint x, GLint y, GLint z, GLint w)
-{
-   DISPATCH(RasterPos4i, (x, y, z, w), (F, "glRasterPos4i(%d, %d, %d, %d);\n", x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos4iv)(const GLint * v)
-{
-   DISPATCH(RasterPos4iv, (v), (F, "glRasterPos4iv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos4s)(GLshort x, GLshort y, GLshort z, GLshort w)
-{
-   DISPATCH(RasterPos4s, (x, y, z, w), (F, "glRasterPos4s(%d, %d, %d, %d);\n", x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RasterPos4sv)(const GLshort * v)
-{
-   DISPATCH(RasterPos4sv, (v), (F, "glRasterPos4sv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Rectd)(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2)
-{
-   DISPATCH(Rectd, (x1, y1, x2, y2), (F, "glRectd(%f, %f, %f, %f);\n", x1, y1, x2, y2));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Rectdv)(const GLdouble * v1, const GLdouble * v2)
-{
-   DISPATCH(Rectdv, (v1, v2), (F, "glRectdv(%p, %p);\n", (const void *) v1, (const void *) v2));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Rectf)(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
-{
-   DISPATCH(Rectf, (x1, y1, x2, y2), (F, "glRectf(%f, %f, %f, %f);\n", x1, y1, x2, y2));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Rectfv)(const GLfloat * v1, const GLfloat * v2)
-{
-   DISPATCH(Rectfv, (v1, v2), (F, "glRectfv(%p, %p);\n", (const void *) v1, (const void *) v2));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Recti)(GLint x1, GLint y1, GLint x2, GLint y2)
-{
-   DISPATCH(Recti, (x1, y1, x2, y2), (F, "glRecti(%d, %d, %d, %d);\n", x1, y1, x2, y2));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Rectiv)(const GLint * v1, const GLint * v2)
-{
-   DISPATCH(Rectiv, (v1, v2), (F, "glRectiv(%p, %p);\n", (const void *) v1, (const void *) v2));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Rects)(GLshort x1, GLshort y1, GLshort x2, GLshort y2)
-{
-   DISPATCH(Rects, (x1, y1, x2, y2), (F, "glRects(%d, %d, %d, %d);\n", x1, y1, x2, y2));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Rectsv)(const GLshort * v1, const GLshort * v2)
-{
-   DISPATCH(Rectsv, (v1, v2), (F, "glRectsv(%p, %p);\n", (const void *) v1, (const void *) v2));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord1d)(GLdouble s)
-{
-   DISPATCH(TexCoord1d, (s), (F, "glTexCoord1d(%f);\n", s));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord1dv)(const GLdouble * v)
-{
-   DISPATCH(TexCoord1dv, (v), (F, "glTexCoord1dv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord1f)(GLfloat s)
-{
-   DISPATCH(TexCoord1f, (s), (F, "glTexCoord1f(%f);\n", s));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord1fv)(const GLfloat * v)
-{
-   DISPATCH(TexCoord1fv, (v), (F, "glTexCoord1fv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord1i)(GLint s)
-{
-   DISPATCH(TexCoord1i, (s), (F, "glTexCoord1i(%d);\n", s));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord1iv)(const GLint * v)
-{
-   DISPATCH(TexCoord1iv, (v), (F, "glTexCoord1iv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord1s)(GLshort s)
-{
-   DISPATCH(TexCoord1s, (s), (F, "glTexCoord1s(%d);\n", s));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord1sv)(const GLshort * v)
-{
-   DISPATCH(TexCoord1sv, (v), (F, "glTexCoord1sv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord2d)(GLdouble s, GLdouble t)
-{
-   DISPATCH(TexCoord2d, (s, t), (F, "glTexCoord2d(%f, %f);\n", s, t));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord2dv)(const GLdouble * v)
-{
-   DISPATCH(TexCoord2dv, (v), (F, "glTexCoord2dv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord2f)(GLfloat s, GLfloat t)
-{
-   DISPATCH(TexCoord2f, (s, t), (F, "glTexCoord2f(%f, %f);\n", s, t));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord2fv)(const GLfloat * v)
-{
-   DISPATCH(TexCoord2fv, (v), (F, "glTexCoord2fv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord2i)(GLint s, GLint t)
-{
-   DISPATCH(TexCoord2i, (s, t), (F, "glTexCoord2i(%d, %d);\n", s, t));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord2iv)(const GLint * v)
-{
-   DISPATCH(TexCoord2iv, (v), (F, "glTexCoord2iv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord2s)(GLshort s, GLshort t)
-{
-   DISPATCH(TexCoord2s, (s, t), (F, "glTexCoord2s(%d, %d);\n", s, t));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord2sv)(const GLshort * v)
-{
-   DISPATCH(TexCoord2sv, (v), (F, "glTexCoord2sv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord3d)(GLdouble s, GLdouble t, GLdouble r)
-{
-   DISPATCH(TexCoord3d, (s, t, r), (F, "glTexCoord3d(%f, %f, %f);\n", s, t, r));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord3dv)(const GLdouble * v)
-{
-   DISPATCH(TexCoord3dv, (v), (F, "glTexCoord3dv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord3f)(GLfloat s, GLfloat t, GLfloat r)
-{
-   DISPATCH(TexCoord3f, (s, t, r), (F, "glTexCoord3f(%f, %f, %f);\n", s, t, r));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord3fv)(const GLfloat * v)
-{
-   DISPATCH(TexCoord3fv, (v), (F, "glTexCoord3fv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord3i)(GLint s, GLint t, GLint r)
-{
-   DISPATCH(TexCoord3i, (s, t, r), (F, "glTexCoord3i(%d, %d, %d);\n", s, t, r));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord3iv)(const GLint * v)
-{
-   DISPATCH(TexCoord3iv, (v), (F, "glTexCoord3iv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord3s)(GLshort s, GLshort t, GLshort r)
-{
-   DISPATCH(TexCoord3s, (s, t, r), (F, "glTexCoord3s(%d, %d, %d);\n", s, t, r));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord3sv)(const GLshort * v)
-{
-   DISPATCH(TexCoord3sv, (v), (F, "glTexCoord3sv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord4d)(GLdouble s, GLdouble t, GLdouble r, GLdouble q)
-{
-   DISPATCH(TexCoord4d, (s, t, r, q), (F, "glTexCoord4d(%f, %f, %f, %f);\n", s, t, r, q));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord4dv)(const GLdouble * v)
-{
-   DISPATCH(TexCoord4dv, (v), (F, "glTexCoord4dv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord4f)(GLfloat s, GLfloat t, GLfloat r, GLfloat q)
-{
-   DISPATCH(TexCoord4f, (s, t, r, q), (F, "glTexCoord4f(%f, %f, %f, %f);\n", s, t, r, q));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord4fv)(const GLfloat * v)
-{
-   DISPATCH(TexCoord4fv, (v), (F, "glTexCoord4fv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord4i)(GLint s, GLint t, GLint r, GLint q)
-{
-   DISPATCH(TexCoord4i, (s, t, r, q), (F, "glTexCoord4i(%d, %d, %d, %d);\n", s, t, r, q));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord4iv)(const GLint * v)
-{
-   DISPATCH(TexCoord4iv, (v), (F, "glTexCoord4iv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord4s)(GLshort s, GLshort t, GLshort r, GLshort q)
-{
-   DISPATCH(TexCoord4s, (s, t, r, q), (F, "glTexCoord4s(%d, %d, %d, %d);\n", s, t, r, q));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoord4sv)(const GLshort * v)
-{
-   DISPATCH(TexCoord4sv, (v), (F, "glTexCoord4sv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex2d)(GLdouble x, GLdouble y)
-{
-   DISPATCH(Vertex2d, (x, y), (F, "glVertex2d(%f, %f);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex2dv)(const GLdouble * v)
-{
-   DISPATCH(Vertex2dv, (v), (F, "glVertex2dv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex2f)(GLfloat x, GLfloat y)
-{
-   DISPATCH(Vertex2f, (x, y), (F, "glVertex2f(%f, %f);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex2fv)(const GLfloat * v)
-{
-   DISPATCH(Vertex2fv, (v), (F, "glVertex2fv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex2i)(GLint x, GLint y)
-{
-   DISPATCH(Vertex2i, (x, y), (F, "glVertex2i(%d, %d);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex2iv)(const GLint * v)
-{
-   DISPATCH(Vertex2iv, (v), (F, "glVertex2iv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex2s)(GLshort x, GLshort y)
-{
-   DISPATCH(Vertex2s, (x, y), (F, "glVertex2s(%d, %d);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex2sv)(const GLshort * v)
-{
-   DISPATCH(Vertex2sv, (v), (F, "glVertex2sv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex3d)(GLdouble x, GLdouble y, GLdouble z)
-{
-   DISPATCH(Vertex3d, (x, y, z), (F, "glVertex3d(%f, %f, %f);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex3dv)(const GLdouble * v)
-{
-   DISPATCH(Vertex3dv, (v), (F, "glVertex3dv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex3f)(GLfloat x, GLfloat y, GLfloat z)
-{
-   DISPATCH(Vertex3f, (x, y, z), (F, "glVertex3f(%f, %f, %f);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex3fv)(const GLfloat * v)
-{
-   DISPATCH(Vertex3fv, (v), (F, "glVertex3fv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex3i)(GLint x, GLint y, GLint z)
-{
-   DISPATCH(Vertex3i, (x, y, z), (F, "glVertex3i(%d, %d, %d);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex3iv)(const GLint * v)
-{
-   DISPATCH(Vertex3iv, (v), (F, "glVertex3iv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex3s)(GLshort x, GLshort y, GLshort z)
-{
-   DISPATCH(Vertex3s, (x, y, z), (F, "glVertex3s(%d, %d, %d);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex3sv)(const GLshort * v)
-{
-   DISPATCH(Vertex3sv, (v), (F, "glVertex3sv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex4d)(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-{
-   DISPATCH(Vertex4d, (x, y, z, w), (F, "glVertex4d(%f, %f, %f, %f);\n", x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex4dv)(const GLdouble * v)
-{
-   DISPATCH(Vertex4dv, (v), (F, "glVertex4dv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex4f)(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-{
-   DISPATCH(Vertex4f, (x, y, z, w), (F, "glVertex4f(%f, %f, %f, %f);\n", x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex4fv)(const GLfloat * v)
-{
-   DISPATCH(Vertex4fv, (v), (F, "glVertex4fv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex4i)(GLint x, GLint y, GLint z, GLint w)
-{
-   DISPATCH(Vertex4i, (x, y, z, w), (F, "glVertex4i(%d, %d, %d, %d);\n", x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex4iv)(const GLint * v)
-{
-   DISPATCH(Vertex4iv, (v), (F, "glVertex4iv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex4s)(GLshort x, GLshort y, GLshort z, GLshort w)
-{
-   DISPATCH(Vertex4s, (x, y, z, w), (F, "glVertex4s(%d, %d, %d, %d);\n", x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Vertex4sv)(const GLshort * v)
-{
-   DISPATCH(Vertex4sv, (v), (F, "glVertex4sv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ClipPlane)(GLenum plane, const GLdouble * equation)
-{
-   DISPATCH(ClipPlane, (plane, equation), (F, "glClipPlane(0x%x, %p);\n", plane, (const void *) equation));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ColorMaterial)(GLenum face, GLenum mode)
-{
-   DISPATCH(ColorMaterial, (face, mode), (F, "glColorMaterial(0x%x, 0x%x);\n", face, mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CullFace)(GLenum mode)
-{
-   DISPATCH(CullFace, (mode), (F, "glCullFace(0x%x);\n", mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Fogf)(GLenum pname, GLfloat param)
-{
-   DISPATCH(Fogf, (pname, param), (F, "glFogf(0x%x, %f);\n", pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Fogfv)(GLenum pname, const GLfloat * params)
-{
-   DISPATCH(Fogfv, (pname, params), (F, "glFogfv(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Fogi)(GLenum pname, GLint param)
-{
-   DISPATCH(Fogi, (pname, param), (F, "glFogi(0x%x, %d);\n", pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Fogiv)(GLenum pname, const GLint * params)
-{
-   DISPATCH(Fogiv, (pname, params), (F, "glFogiv(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FrontFace)(GLenum mode)
-{
-   DISPATCH(FrontFace, (mode), (F, "glFrontFace(0x%x);\n", mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Hint)(GLenum target, GLenum mode)
-{
-   DISPATCH(Hint, (target, mode), (F, "glHint(0x%x, 0x%x);\n", target, mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Lightf)(GLenum light, GLenum pname, GLfloat param)
-{
-   DISPATCH(Lightf, (light, pname, param), (F, "glLightf(0x%x, 0x%x, %f);\n", light, pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Lightfv)(GLenum light, GLenum pname, const GLfloat * params)
-{
-   DISPATCH(Lightfv, (light, pname, params), (F, "glLightfv(0x%x, 0x%x, %p);\n", light, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Lighti)(GLenum light, GLenum pname, GLint param)
-{
-   DISPATCH(Lighti, (light, pname, param), (F, "glLighti(0x%x, 0x%x, %d);\n", light, pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Lightiv)(GLenum light, GLenum pname, const GLint * params)
-{
-   DISPATCH(Lightiv, (light, pname, params), (F, "glLightiv(0x%x, 0x%x, %p);\n", light, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LightModelf)(GLenum pname, GLfloat param)
-{
-   DISPATCH(LightModelf, (pname, param), (F, "glLightModelf(0x%x, %f);\n", pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LightModelfv)(GLenum pname, const GLfloat * params)
-{
-   DISPATCH(LightModelfv, (pname, params), (F, "glLightModelfv(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LightModeli)(GLenum pname, GLint param)
-{
-   DISPATCH(LightModeli, (pname, param), (F, "glLightModeli(0x%x, %d);\n", pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LightModeliv)(GLenum pname, const GLint * params)
-{
-   DISPATCH(LightModeliv, (pname, params), (F, "glLightModeliv(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LineStipple)(GLint factor, GLushort pattern)
-{
-   DISPATCH(LineStipple, (factor, pattern), (F, "glLineStipple(%d, %d);\n", factor, pattern));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LineWidth)(GLfloat width)
-{
-   DISPATCH(LineWidth, (width), (F, "glLineWidth(%f);\n", width));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Materialf)(GLenum face, GLenum pname, GLfloat param)
-{
-   DISPATCH(Materialf, (face, pname, param), (F, "glMaterialf(0x%x, 0x%x, %f);\n", face, pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Materialfv)(GLenum face, GLenum pname, const GLfloat * params)
-{
-   DISPATCH(Materialfv, (face, pname, params), (F, "glMaterialfv(0x%x, 0x%x, %p);\n", face, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Materiali)(GLenum face, GLenum pname, GLint param)
-{
-   DISPATCH(Materiali, (face, pname, param), (F, "glMateriali(0x%x, 0x%x, %d);\n", face, pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Materialiv)(GLenum face, GLenum pname, const GLint * params)
-{
-   DISPATCH(Materialiv, (face, pname, params), (F, "glMaterialiv(0x%x, 0x%x, %p);\n", face, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PointSize)(GLfloat size)
-{
-   DISPATCH(PointSize, (size), (F, "glPointSize(%f);\n", size));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PolygonMode)(GLenum face, GLenum mode)
-{
-   DISPATCH(PolygonMode, (face, mode), (F, "glPolygonMode(0x%x, 0x%x);\n", face, mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PolygonStipple)(const GLubyte * mask)
-{
-   DISPATCH(PolygonStipple, (mask), (F, "glPolygonStipple(%p);\n", (const void *) mask));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Scissor)(GLint x, GLint y, GLsizei width, GLsizei height)
-{
-   DISPATCH(Scissor, (x, y, width, height), (F, "glScissor(%d, %d, %d, %d);\n", x, y, width, height));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ShadeModel)(GLenum mode)
-{
-   DISPATCH(ShadeModel, (mode), (F, "glShadeModel(0x%x);\n", mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexParameterf)(GLenum target, GLenum pname, GLfloat param)
-{
-   DISPATCH(TexParameterf, (target, pname, param), (F, "glTexParameterf(0x%x, 0x%x, %f);\n", target, pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexParameterfv)(GLenum target, GLenum pname, const GLfloat * params)
-{
-   DISPATCH(TexParameterfv, (target, pname, params), (F, "glTexParameterfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexParameteri)(GLenum target, GLenum pname, GLint param)
-{
-   DISPATCH(TexParameteri, (target, pname, param), (F, "glTexParameteri(0x%x, 0x%x, %d);\n", target, pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexParameteriv)(GLenum target, GLenum pname, const GLint * params)
-{
-   DISPATCH(TexParameteriv, (target, pname, params), (F, "glTexParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexImage1D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid * pixels)
-{
-   DISPATCH(TexImage1D, (target, level, internalformat, width, border, format, type, pixels), (F, "glTexImage1D(0x%x, %d, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, internalformat, width, border, format, type, (const void *) pixels));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexImage2D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid * pixels)
-{
-   DISPATCH(TexImage2D, (target, level, internalformat, width, height, border, format, type, pixels), (F, "glTexImage2D(0x%x, %d, %d, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, internalformat, width, height, border, format, type, (const void *) pixels));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexEnvf)(GLenum target, GLenum pname, GLfloat param)
-{
-   DISPATCH(TexEnvf, (target, pname, param), (F, "glTexEnvf(0x%x, 0x%x, %f);\n", target, pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexEnvfv)(GLenum target, GLenum pname, const GLfloat * params)
-{
-   DISPATCH(TexEnvfv, (target, pname, params), (F, "glTexEnvfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexEnvi)(GLenum target, GLenum pname, GLint param)
-{
-   DISPATCH(TexEnvi, (target, pname, param), (F, "glTexEnvi(0x%x, 0x%x, %d);\n", target, pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexEnviv)(GLenum target, GLenum pname, const GLint * params)
-{
-   DISPATCH(TexEnviv, (target, pname, params), (F, "glTexEnviv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexGend)(GLenum coord, GLenum pname, GLdouble param)
-{
-   DISPATCH(TexGend, (coord, pname, param), (F, "glTexGend(0x%x, 0x%x, %f);\n", coord, pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexGendv)(GLenum coord, GLenum pname, const GLdouble * params)
-{
-   DISPATCH(TexGendv, (coord, pname, params), (F, "glTexGendv(0x%x, 0x%x, %p);\n", coord, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexGenf)(GLenum coord, GLenum pname, GLfloat param)
-{
-   DISPATCH(TexGenf, (coord, pname, param), (F, "glTexGenf(0x%x, 0x%x, %f);\n", coord, pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexGenfv)(GLenum coord, GLenum pname, const GLfloat * params)
-{
-   DISPATCH(TexGenfv, (coord, pname, params), (F, "glTexGenfv(0x%x, 0x%x, %p);\n", coord, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexGeni)(GLenum coord, GLenum pname, GLint param)
-{
-   DISPATCH(TexGeni, (coord, pname, param), (F, "glTexGeni(0x%x, 0x%x, %d);\n", coord, pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexGeniv)(GLenum coord, GLenum pname, const GLint * params)
-{
-   DISPATCH(TexGeniv, (coord, pname, params), (F, "glTexGeniv(0x%x, 0x%x, %p);\n", coord, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FeedbackBuffer)(GLsizei size, GLenum type, GLfloat * buffer)
-{
-   DISPATCH(FeedbackBuffer, (size, type, buffer), (F, "glFeedbackBuffer(%d, 0x%x, %p);\n", size, type, (const void *) buffer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SelectBuffer)(GLsizei size, GLuint * buffer)
-{
-   DISPATCH(SelectBuffer, (size, buffer), (F, "glSelectBuffer(%d, %p);\n", size, (const void *) buffer));
-}
-
-KEYWORD1 GLint KEYWORD2 NAME(RenderMode)(GLenum mode)
-{
-   RETURN_DISPATCH(RenderMode, (mode), (F, "glRenderMode(0x%x);\n", mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(InitNames)(void)
-{
-   DISPATCH(InitNames, (), (F, "glInitNames();\n"));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LoadName)(GLuint name)
-{
-   DISPATCH(LoadName, (name), (F, "glLoadName(%d);\n", name));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PassThrough)(GLfloat token)
-{
-   DISPATCH(PassThrough, (token), (F, "glPassThrough(%f);\n", token));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PopName)(void)
-{
-   DISPATCH(PopName, (), (F, "glPopName();\n"));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PushName)(GLuint name)
-{
-   DISPATCH(PushName, (name), (F, "glPushName(%d);\n", name));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DrawBuffer)(GLenum mode)
-{
-   DISPATCH(DrawBuffer, (mode), (F, "glDrawBuffer(0x%x);\n", mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Clear)(GLbitfield mask)
-{
-   DISPATCH(Clear, (mask), (F, "glClear(%d);\n", mask));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ClearAccum)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha)
-{
-   DISPATCH(ClearAccum, (red, green, blue, alpha), (F, "glClearAccum(%f, %f, %f, %f);\n", red, green, blue, alpha));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ClearIndex)(GLfloat c)
-{
-   DISPATCH(ClearIndex, (c), (F, "glClearIndex(%f);\n", c));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ClearColor)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
-{
-   DISPATCH(ClearColor, (red, green, blue, alpha), (F, "glClearColor(%f, %f, %f, %f);\n", red, green, blue, alpha));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ClearStencil)(GLint s)
-{
-   DISPATCH(ClearStencil, (s), (F, "glClearStencil(%d);\n", s));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ClearDepth)(GLclampd depth)
-{
-   DISPATCH(ClearDepth, (depth), (F, "glClearDepth(%f);\n", depth));
-}
-
-KEYWORD1 void KEYWORD2 NAME(StencilMask)(GLuint mask)
-{
-   DISPATCH(StencilMask, (mask), (F, "glStencilMask(%d);\n", mask));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ColorMask)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha)
-{
-   DISPATCH(ColorMask, (red, green, blue, alpha), (F, "glColorMask(%d, %d, %d, %d);\n", red, green, blue, alpha));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DepthMask)(GLboolean flag)
-{
-   DISPATCH(DepthMask, (flag), (F, "glDepthMask(%d);\n", flag));
-}
-
-KEYWORD1 void KEYWORD2 NAME(IndexMask)(GLuint mask)
-{
-   DISPATCH(IndexMask, (mask), (F, "glIndexMask(%d);\n", mask));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Accum)(GLenum op, GLfloat value)
-{
-   DISPATCH(Accum, (op, value), (F, "glAccum(0x%x, %f);\n", op, value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Disable)(GLenum cap)
-{
-   DISPATCH(Disable, (cap), (F, "glDisable(0x%x);\n", cap));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Enable)(GLenum cap)
-{
-   DISPATCH(Enable, (cap), (F, "glEnable(0x%x);\n", cap));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Finish)(void)
-{
-   DISPATCH(Finish, (), (F, "glFinish();\n"));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Flush)(void)
-{
-   DISPATCH(Flush, (), (F, "glFlush();\n"));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PopAttrib)(void)
-{
-   DISPATCH(PopAttrib, (), (F, "glPopAttrib();\n"));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PushAttrib)(GLbitfield mask)
-{
-   DISPATCH(PushAttrib, (mask), (F, "glPushAttrib(%d);\n", mask));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Map1d)(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble * points)
-{
-   DISPATCH(Map1d, (target, u1, u2, stride, order, points), (F, "glMap1d(0x%x, %f, %f, %d, %d, %p);\n", target, u1, u2, stride, order, (const void *) points));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Map1f)(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat * points)
-{
-   DISPATCH(Map1f, (target, u1, u2, stride, order, points), (F, "glMap1f(0x%x, %f, %f, %d, %d, %p);\n", target, u1, u2, stride, order, (const void *) points));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Map2d)(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble * points)
-{
-   DISPATCH(Map2d, (target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points), (F, "glMap2d(0x%x, %f, %f, %d, %d, %f, %f, %d, %d, %p);\n", target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, (const void *) points));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Map2f)(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat * points)
-{
-   DISPATCH(Map2f, (target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points), (F, "glMap2f(0x%x, %f, %f, %d, %d, %f, %f, %d, %d, %p);\n", target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, (const void *) points));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MapGrid1d)(GLint un, GLdouble u1, GLdouble u2)
-{
-   DISPATCH(MapGrid1d, (un, u1, u2), (F, "glMapGrid1d(%d, %f, %f);\n", un, u1, u2));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MapGrid1f)(GLint un, GLfloat u1, GLfloat u2)
-{
-   DISPATCH(MapGrid1f, (un, u1, u2), (F, "glMapGrid1f(%d, %f, %f);\n", un, u1, u2));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MapGrid2d)(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2)
-{
-   DISPATCH(MapGrid2d, (un, u1, u2, vn, v1, v2), (F, "glMapGrid2d(%d, %f, %f, %d, %f, %f);\n", un, u1, u2, vn, v1, v2));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MapGrid2f)(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2)
-{
-   DISPATCH(MapGrid2f, (un, u1, u2, vn, v1, v2), (F, "glMapGrid2f(%d, %f, %f, %d, %f, %f);\n", un, u1, u2, vn, v1, v2));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EvalCoord1d)(GLdouble u)
-{
-   DISPATCH(EvalCoord1d, (u), (F, "glEvalCoord1d(%f);\n", u));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EvalCoord1dv)(const GLdouble * u)
-{
-   DISPATCH(EvalCoord1dv, (u), (F, "glEvalCoord1dv(%p);\n", (const void *) u));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EvalCoord1f)(GLfloat u)
-{
-   DISPATCH(EvalCoord1f, (u), (F, "glEvalCoord1f(%f);\n", u));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EvalCoord1fv)(const GLfloat * u)
-{
-   DISPATCH(EvalCoord1fv, (u), (F, "glEvalCoord1fv(%p);\n", (const void *) u));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EvalCoord2d)(GLdouble u, GLdouble v)
-{
-   DISPATCH(EvalCoord2d, (u, v), (F, "glEvalCoord2d(%f, %f);\n", u, v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EvalCoord2dv)(const GLdouble * u)
-{
-   DISPATCH(EvalCoord2dv, (u), (F, "glEvalCoord2dv(%p);\n", (const void *) u));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EvalCoord2f)(GLfloat u, GLfloat v)
-{
-   DISPATCH(EvalCoord2f, (u, v), (F, "glEvalCoord2f(%f, %f);\n", u, v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EvalCoord2fv)(const GLfloat * u)
-{
-   DISPATCH(EvalCoord2fv, (u), (F, "glEvalCoord2fv(%p);\n", (const void *) u));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EvalMesh1)(GLenum mode, GLint i1, GLint i2)
-{
-   DISPATCH(EvalMesh1, (mode, i1, i2), (F, "glEvalMesh1(0x%x, %d, %d);\n", mode, i1, i2));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EvalPoint1)(GLint i)
-{
-   DISPATCH(EvalPoint1, (i), (F, "glEvalPoint1(%d);\n", i));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EvalMesh2)(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
-{
-   DISPATCH(EvalMesh2, (mode, i1, i2, j1, j2), (F, "glEvalMesh2(0x%x, %d, %d, %d, %d);\n", mode, i1, i2, j1, j2));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EvalPoint2)(GLint i, GLint j)
-{
-   DISPATCH(EvalPoint2, (i, j), (F, "glEvalPoint2(%d, %d);\n", i, j));
-}
-
-KEYWORD1 void KEYWORD2 NAME(AlphaFunc)(GLenum func, GLclampf ref)
-{
-   DISPATCH(AlphaFunc, (func, ref), (F, "glAlphaFunc(0x%x, %f);\n", func, ref));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BlendFunc)(GLenum sfactor, GLenum dfactor)
-{
-   DISPATCH(BlendFunc, (sfactor, dfactor), (F, "glBlendFunc(0x%x, 0x%x);\n", sfactor, dfactor));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LogicOp)(GLenum opcode)
-{
-   DISPATCH(LogicOp, (opcode), (F, "glLogicOp(0x%x);\n", opcode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(StencilFunc)(GLenum func, GLint ref, GLuint mask)
-{
-   DISPATCH(StencilFunc, (func, ref, mask), (F, "glStencilFunc(0x%x, %d, %d);\n", func, ref, mask));
-}
-
-KEYWORD1 void KEYWORD2 NAME(StencilOp)(GLenum fail, GLenum zfail, GLenum zpass)
-{
-   DISPATCH(StencilOp, (fail, zfail, zpass), (F, "glStencilOp(0x%x, 0x%x, 0x%x);\n", fail, zfail, zpass));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DepthFunc)(GLenum func)
-{
-   DISPATCH(DepthFunc, (func), (F, "glDepthFunc(0x%x);\n", func));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PixelZoom)(GLfloat xfactor, GLfloat yfactor)
-{
-   DISPATCH(PixelZoom, (xfactor, yfactor), (F, "glPixelZoom(%f, %f);\n", xfactor, yfactor));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PixelTransferf)(GLenum pname, GLfloat param)
-{
-   DISPATCH(PixelTransferf, (pname, param), (F, "glPixelTransferf(0x%x, %f);\n", pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PixelTransferi)(GLenum pname, GLint param)
-{
-   DISPATCH(PixelTransferi, (pname, param), (F, "glPixelTransferi(0x%x, %d);\n", pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PixelStoref)(GLenum pname, GLfloat param)
-{
-   DISPATCH(PixelStoref, (pname, param), (F, "glPixelStoref(0x%x, %f);\n", pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PixelStorei)(GLenum pname, GLint param)
-{
-   DISPATCH(PixelStorei, (pname, param), (F, "glPixelStorei(0x%x, %d);\n", pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PixelMapfv)(GLenum map, GLsizei mapsize, const GLfloat * values)
-{
-   DISPATCH(PixelMapfv, (map, mapsize, values), (F, "glPixelMapfv(0x%x, %d, %p);\n", map, mapsize, (const void *) values));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PixelMapuiv)(GLenum map, GLsizei mapsize, const GLuint * values)
-{
-   DISPATCH(PixelMapuiv, (map, mapsize, values), (F, "glPixelMapuiv(0x%x, %d, %p);\n", map, mapsize, (const void *) values));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PixelMapusv)(GLenum map, GLsizei mapsize, const GLushort * values)
-{
-   DISPATCH(PixelMapusv, (map, mapsize, values), (F, "glPixelMapusv(0x%x, %d, %p);\n", map, mapsize, (const void *) values));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ReadBuffer)(GLenum mode)
-{
-   DISPATCH(ReadBuffer, (mode), (F, "glReadBuffer(0x%x);\n", mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CopyPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type)
-{
-   DISPATCH(CopyPixels, (x, y, width, height, type), (F, "glCopyPixels(%d, %d, %d, %d, 0x%x);\n", x, y, width, height, type));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ReadPixels)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid * pixels)
-{
-   DISPATCH(ReadPixels, (x, y, width, height, format, type, pixels), (F, "glReadPixels(%d, %d, %d, %d, 0x%x, 0x%x, %p);\n", x, y, width, height, format, type, (const void *) pixels));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DrawPixels)(GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels)
-{
-   DISPATCH(DrawPixels, (width, height, format, type, pixels), (F, "glDrawPixels(%d, %d, 0x%x, 0x%x, %p);\n", width, height, format, type, (const void *) pixels));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetBooleanv)(GLenum pname, GLboolean * params)
-{
-   DISPATCH(GetBooleanv, (pname, params), (F, "glGetBooleanv(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetClipPlane)(GLenum plane, GLdouble * equation)
-{
-   DISPATCH(GetClipPlane, (plane, equation), (F, "glGetClipPlane(0x%x, %p);\n", plane, (const void *) equation));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetDoublev)(GLenum pname, GLdouble * params)
-{
-   DISPATCH(GetDoublev, (pname, params), (F, "glGetDoublev(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1 GLenum KEYWORD2 NAME(GetError)(void)
-{
-   RETURN_DISPATCH(GetError, (), (F, "glGetError();\n"));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetFloatv)(GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetFloatv, (pname, params), (F, "glGetFloatv(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetIntegerv)(GLenum pname, GLint * params)
-{
-   DISPATCH(GetIntegerv, (pname, params), (F, "glGetIntegerv(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetLightfv)(GLenum light, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetLightfv, (light, pname, params), (F, "glGetLightfv(0x%x, 0x%x, %p);\n", light, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetLightiv)(GLenum light, GLenum pname, GLint * params)
-{
-   DISPATCH(GetLightiv, (light, pname, params), (F, "glGetLightiv(0x%x, 0x%x, %p);\n", light, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetMapdv)(GLenum target, GLenum query, GLdouble * v)
-{
-   DISPATCH(GetMapdv, (target, query, v), (F, "glGetMapdv(0x%x, 0x%x, %p);\n", target, query, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetMapfv)(GLenum target, GLenum query, GLfloat * v)
-{
-   DISPATCH(GetMapfv, (target, query, v), (F, "glGetMapfv(0x%x, 0x%x, %p);\n", target, query, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetMapiv)(GLenum target, GLenum query, GLint * v)
-{
-   DISPATCH(GetMapiv, (target, query, v), (F, "glGetMapiv(0x%x, 0x%x, %p);\n", target, query, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetMaterialfv)(GLenum face, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetMaterialfv, (face, pname, params), (F, "glGetMaterialfv(0x%x, 0x%x, %p);\n", face, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetMaterialiv)(GLenum face, GLenum pname, GLint * params)
-{
-   DISPATCH(GetMaterialiv, (face, pname, params), (F, "glGetMaterialiv(0x%x, 0x%x, %p);\n", face, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetPixelMapfv)(GLenum map, GLfloat * values)
-{
-   DISPATCH(GetPixelMapfv, (map, values), (F, "glGetPixelMapfv(0x%x, %p);\n", map, (const void *) values));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetPixelMapuiv)(GLenum map, GLuint * values)
-{
-   DISPATCH(GetPixelMapuiv, (map, values), (F, "glGetPixelMapuiv(0x%x, %p);\n", map, (const void *) values));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetPixelMapusv)(GLenum map, GLushort * values)
-{
-   DISPATCH(GetPixelMapusv, (map, values), (F, "glGetPixelMapusv(0x%x, %p);\n", map, (const void *) values));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetPolygonStipple)(GLubyte * mask)
-{
-   DISPATCH(GetPolygonStipple, (mask), (F, "glGetPolygonStipple(%p);\n", (const void *) mask));
-}
-
-KEYWORD1 const GLubyte * KEYWORD2 NAME(GetString)(GLenum name)
-{
-   RETURN_DISPATCH(GetString, (name), (F, "glGetString(0x%x);\n", name));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetTexEnvfv)(GLenum target, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetTexEnvfv, (target, pname, params), (F, "glGetTexEnvfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetTexEnviv)(GLenum target, GLenum pname, GLint * params)
-{
-   DISPATCH(GetTexEnviv, (target, pname, params), (F, "glGetTexEnviv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetTexGendv)(GLenum coord, GLenum pname, GLdouble * params)
-{
-   DISPATCH(GetTexGendv, (coord, pname, params), (F, "glGetTexGendv(0x%x, 0x%x, %p);\n", coord, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetTexGenfv)(GLenum coord, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetTexGenfv, (coord, pname, params), (F, "glGetTexGenfv(0x%x, 0x%x, %p);\n", coord, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetTexGeniv)(GLenum coord, GLenum pname, GLint * params)
-{
-   DISPATCH(GetTexGeniv, (coord, pname, params), (F, "glGetTexGeniv(0x%x, 0x%x, %p);\n", coord, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetTexImage)(GLenum target, GLint level, GLenum format, GLenum type, GLvoid * pixels)
-{
-   DISPATCH(GetTexImage, (target, level, format, type, pixels), (F, "glGetTexImage(0x%x, %d, 0x%x, 0x%x, %p);\n", target, level, format, type, (const void *) pixels));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetTexParameterfv)(GLenum target, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetTexParameterfv, (target, pname, params), (F, "glGetTexParameterfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetTexParameteriv)(GLenum target, GLenum pname, GLint * params)
-{
-   DISPATCH(GetTexParameteriv, (target, pname, params), (F, "glGetTexParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetTexLevelParameterfv)(GLenum target, GLint level, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetTexLevelParameterfv, (target, level, pname, params), (F, "glGetTexLevelParameterfv(0x%x, %d, 0x%x, %p);\n", target, level, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetTexLevelParameteriv)(GLenum target, GLint level, GLenum pname, GLint * params)
-{
-   DISPATCH(GetTexLevelParameteriv, (target, level, pname, params), (F, "glGetTexLevelParameteriv(0x%x, %d, 0x%x, %p);\n", target, level, pname, (const void *) params));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsEnabled)(GLenum cap)
-{
-   RETURN_DISPATCH(IsEnabled, (cap), (F, "glIsEnabled(0x%x);\n", cap));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsList)(GLuint list)
-{
-   RETURN_DISPATCH(IsList, (list), (F, "glIsList(%d);\n", list));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DepthRange)(GLclampd zNear, GLclampd zFar)
-{
-   DISPATCH(DepthRange, (zNear, zFar), (F, "glDepthRange(%f, %f);\n", zNear, zFar));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Frustum)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
-{
-   DISPATCH(Frustum, (left, right, bottom, top, zNear, zFar), (F, "glFrustum(%f, %f, %f, %f, %f, %f);\n", left, right, bottom, top, zNear, zFar));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LoadIdentity)(void)
-{
-   DISPATCH(LoadIdentity, (), (F, "glLoadIdentity();\n"));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LoadMatrixf)(const GLfloat * m)
-{
-   DISPATCH(LoadMatrixf, (m), (F, "glLoadMatrixf(%p);\n", (const void *) m));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LoadMatrixd)(const GLdouble * m)
-{
-   DISPATCH(LoadMatrixd, (m), (F, "glLoadMatrixd(%p);\n", (const void *) m));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MatrixMode)(GLenum mode)
-{
-   DISPATCH(MatrixMode, (mode), (F, "glMatrixMode(0x%x);\n", mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultMatrixf)(const GLfloat * m)
-{
-   DISPATCH(MultMatrixf, (m), (F, "glMultMatrixf(%p);\n", (const void *) m));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultMatrixd)(const GLdouble * m)
-{
-   DISPATCH(MultMatrixd, (m), (F, "glMultMatrixd(%p);\n", (const void *) m));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Ortho)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar)
-{
-   DISPATCH(Ortho, (left, right, bottom, top, zNear, zFar), (F, "glOrtho(%f, %f, %f, %f, %f, %f);\n", left, right, bottom, top, zNear, zFar));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PopMatrix)(void)
-{
-   DISPATCH(PopMatrix, (), (F, "glPopMatrix();\n"));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PushMatrix)(void)
-{
-   DISPATCH(PushMatrix, (), (F, "glPushMatrix();\n"));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Rotated)(GLdouble angle, GLdouble x, GLdouble y, GLdouble z)
-{
-   DISPATCH(Rotated, (angle, x, y, z), (F, "glRotated(%f, %f, %f, %f);\n", angle, x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Rotatef)(GLfloat angle, GLfloat x, GLfloat y, GLfloat z)
-{
-   DISPATCH(Rotatef, (angle, x, y, z), (F, "glRotatef(%f, %f, %f, %f);\n", angle, x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Scaled)(GLdouble x, GLdouble y, GLdouble z)
-{
-   DISPATCH(Scaled, (x, y, z), (F, "glScaled(%f, %f, %f);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Scalef)(GLfloat x, GLfloat y, GLfloat z)
-{
-   DISPATCH(Scalef, (x, y, z), (F, "glScalef(%f, %f, %f);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Translated)(GLdouble x, GLdouble y, GLdouble z)
-{
-   DISPATCH(Translated, (x, y, z), (F, "glTranslated(%f, %f, %f);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Translatef)(GLfloat x, GLfloat y, GLfloat z)
-{
-   DISPATCH(Translatef, (x, y, z), (F, "glTranslatef(%f, %f, %f);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Viewport)(GLint x, GLint y, GLsizei width, GLsizei height)
-{
-   DISPATCH(Viewport, (x, y, width, height), (F, "glViewport(%d, %d, %d, %d);\n", x, y, width, height));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ArrayElement)(GLint i)
-{
-   DISPATCH(ArrayElement, (i), (F, "glArrayElement(%d);\n", i));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ArrayElementEXT)(GLint i)
-{
-   DISPATCH(ArrayElement, (i), (F, "glArrayElementEXT(%d);\n", i));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindTexture)(GLenum target, GLuint texture)
-{
-   DISPATCH(BindTexture, (target, texture), (F, "glBindTexture(0x%x, %d);\n", target, texture));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindTextureEXT)(GLenum target, GLuint texture)
-{
-   DISPATCH(BindTexture, (target, texture), (F, "glBindTextureEXT(0x%x, %d);\n", target, texture));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ColorPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer)
-{
-   DISPATCH(ColorPointer, (size, type, stride, pointer), (F, "glColorPointer(%d, 0x%x, %d, %p);\n", size, type, stride, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DisableClientState)(GLenum array)
-{
-   DISPATCH(DisableClientState, (array), (F, "glDisableClientState(0x%x);\n", array));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DrawArrays)(GLenum mode, GLint first, GLsizei count)
-{
-   DISPATCH(DrawArrays, (mode, first, count), (F, "glDrawArrays(0x%x, %d, %d);\n", mode, first, count));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DrawArraysEXT)(GLenum mode, GLint first, GLsizei count)
-{
-   DISPATCH(DrawArrays, (mode, first, count), (F, "glDrawArraysEXT(0x%x, %d, %d);\n", mode, first, count));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DrawElements)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices)
-{
-   DISPATCH(DrawElements, (mode, count, type, indices), (F, "glDrawElements(0x%x, %d, 0x%x, %p);\n", mode, count, type, (const void *) indices));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EdgeFlagPointer)(GLsizei stride, const GLvoid * pointer)
-{
-   DISPATCH(EdgeFlagPointer, (stride, pointer), (F, "glEdgeFlagPointer(%d, %p);\n", stride, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EnableClientState)(GLenum array)
-{
-   DISPATCH(EnableClientState, (array), (F, "glEnableClientState(0x%x);\n", array));
-}
-
-KEYWORD1 void KEYWORD2 NAME(IndexPointer)(GLenum type, GLsizei stride, const GLvoid * pointer)
-{
-   DISPATCH(IndexPointer, (type, stride, pointer), (F, "glIndexPointer(0x%x, %d, %p);\n", type, stride, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Indexub)(GLubyte c)
-{
-   DISPATCH(Indexub, (c), (F, "glIndexub(%d);\n", c));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Indexubv)(const GLubyte * c)
-{
-   DISPATCH(Indexubv, (c), (F, "glIndexubv(%p);\n", (const void *) c));
-}
-
-KEYWORD1 void KEYWORD2 NAME(InterleavedArrays)(GLenum format, GLsizei stride, const GLvoid * pointer)
-{
-   DISPATCH(InterleavedArrays, (format, stride, pointer), (F, "glInterleavedArrays(0x%x, %d, %p);\n", format, stride, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(NormalPointer)(GLenum type, GLsizei stride, const GLvoid * pointer)
-{
-   DISPATCH(NormalPointer, (type, stride, pointer), (F, "glNormalPointer(0x%x, %d, %p);\n", type, stride, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PolygonOffset)(GLfloat factor, GLfloat units)
-{
-   DISPATCH(PolygonOffset, (factor, units), (F, "glPolygonOffset(%f, %f);\n", factor, units));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoordPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer)
-{
-   DISPATCH(TexCoordPointer, (size, type, stride, pointer), (F, "glTexCoordPointer(%d, 0x%x, %d, %p);\n", size, type, stride, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer)
-{
-   DISPATCH(VertexPointer, (size, type, stride, pointer), (F, "glVertexPointer(%d, 0x%x, %d, %p);\n", size, type, stride, (const void *) pointer));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(AreTexturesResident)(GLsizei n, const GLuint * textures, GLboolean * residences)
-{
-   RETURN_DISPATCH(AreTexturesResident, (n, textures, residences), (F, "glAreTexturesResident(%d, %p, %p);\n", n, (const void *) textures, (const void *) residences));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CopyTexImage1D)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
-{
-   DISPATCH(CopyTexImage1D, (target, level, internalformat, x, y, width, border), (F, "glCopyTexImage1D(0x%x, %d, 0x%x, %d, %d, %d, %d);\n", target, level, internalformat, x, y, width, border));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CopyTexImage1DEXT)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border)
-{
-   DISPATCH(CopyTexImage1D, (target, level, internalformat, x, y, width, border), (F, "glCopyTexImage1DEXT(0x%x, %d, 0x%x, %d, %d, %d, %d);\n", target, level, internalformat, x, y, width, border));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CopyTexImage2D)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
-{
-   DISPATCH(CopyTexImage2D, (target, level, internalformat, x, y, width, height, border), (F, "glCopyTexImage2D(0x%x, %d, 0x%x, %d, %d, %d, %d, %d);\n", target, level, internalformat, x, y, width, height, border));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CopyTexImage2DEXT)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border)
-{
-   DISPATCH(CopyTexImage2D, (target, level, internalformat, x, y, width, height, border), (F, "glCopyTexImage2DEXT(0x%x, %d, 0x%x, %d, %d, %d, %d, %d);\n", target, level, internalformat, x, y, width, height, border));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CopyTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
-{
-   DISPATCH(CopyTexSubImage1D, (target, level, xoffset, x, y, width), (F, "glCopyTexSubImage1D(0x%x, %d, %d, %d, %d, %d);\n", target, level, xoffset, x, y, width));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CopyTexSubImage1DEXT)(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width)
-{
-   DISPATCH(CopyTexSubImage1D, (target, level, xoffset, x, y, width), (F, "glCopyTexSubImage1DEXT(0x%x, %d, %d, %d, %d, %d);\n", target, level, xoffset, x, y, width));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CopyTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
-{
-   DISPATCH(CopyTexSubImage2D, (target, level, xoffset, yoffset, x, y, width, height), (F, "glCopyTexSubImage2D(0x%x, %d, %d, %d, %d, %d, %d, %d);\n", target, level, xoffset, yoffset, x, y, width, height));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CopyTexSubImage2DEXT)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height)
-{
-   DISPATCH(CopyTexSubImage2D, (target, level, xoffset, yoffset, x, y, width, height), (F, "glCopyTexSubImage2DEXT(0x%x, %d, %d, %d, %d, %d, %d, %d);\n", target, level, xoffset, yoffset, x, y, width, height));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DeleteTextures)(GLsizei n, const GLuint * textures)
-{
-   DISPATCH(DeleteTextures, (n, textures), (F, "glDeleteTextures(%d, %p);\n", n, (const void *) textures));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GenTextures)(GLsizei n, GLuint * textures)
-{
-   DISPATCH(GenTextures, (n, textures), (F, "glGenTextures(%d, %p);\n", n, (const void *) textures));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetPointerv)(GLenum pname, GLvoid ** params)
-{
-   DISPATCH(GetPointerv, (pname, params), (F, "glGetPointerv(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetPointervEXT)(GLenum pname, GLvoid ** params)
-{
-   DISPATCH(GetPointerv, (pname, params), (F, "glGetPointervEXT(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsTexture)(GLuint texture)
-{
-   RETURN_DISPATCH(IsTexture, (texture), (F, "glIsTexture(%d);\n", texture));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PrioritizeTextures)(GLsizei n, const GLuint * textures, const GLclampf * priorities)
-{
-   DISPATCH(PrioritizeTextures, (n, textures, priorities), (F, "glPrioritizeTextures(%d, %p, %p);\n", n, (const void *) textures, (const void *) priorities));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PrioritizeTexturesEXT)(GLsizei n, const GLuint * textures, const GLclampf * priorities)
-{
-   DISPATCH(PrioritizeTextures, (n, textures, priorities), (F, "glPrioritizeTexturesEXT(%d, %p, %p);\n", n, (const void *) textures, (const void *) priorities));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid * pixels)
-{
-   DISPATCH(TexSubImage1D, (target, level, xoffset, width, format, type, pixels), (F, "glTexSubImage1D(0x%x, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, xoffset, width, format, type, (const void *) pixels));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexSubImage1DEXT)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const GLvoid * pixels)
-{
-   DISPATCH(TexSubImage1D, (target, level, xoffset, width, format, type, pixels), (F, "glTexSubImage1DEXT(0x%x, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, xoffset, width, format, type, (const void *) pixels));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels)
-{
-   DISPATCH(TexSubImage2D, (target, level, xoffset, yoffset, width, height, format, type, pixels), (F, "glTexSubImage2D(0x%x, %d, %d, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, xoffset, yoffset, width, height, format, type, (const void *) pixels));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexSubImage2DEXT)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * pixels)
-{
-   DISPATCH(TexSubImage2D, (target, level, xoffset, yoffset, width, height, format, type, pixels), (F, "glTexSubImage2DEXT(0x%x, %d, %d, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, xoffset, yoffset, width, height, format, type, (const void *) pixels));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PopClientAttrib)(void)
-{
-   DISPATCH(PopClientAttrib, (), (F, "glPopClientAttrib();\n"));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PushClientAttrib)(GLbitfield mask)
-{
-   DISPATCH(PushClientAttrib, (mask), (F, "glPushClientAttrib(%d);\n", mask));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BlendColor)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
-{
-   DISPATCH(BlendColor, (red, green, blue, alpha), (F, "glBlendColor(%f, %f, %f, %f);\n", red, green, blue, alpha));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BlendColorEXT)(GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha)
-{
-   DISPATCH(BlendColor, (red, green, blue, alpha), (F, "glBlendColorEXT(%f, %f, %f, %f);\n", red, green, blue, alpha));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BlendEquation)(GLenum mode)
-{
-   DISPATCH(BlendEquation, (mode), (F, "glBlendEquation(0x%x);\n", mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BlendEquationEXT)(GLenum mode)
-{
-   DISPATCH(BlendEquation, (mode), (F, "glBlendEquationEXT(0x%x);\n", mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DrawRangeElements)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid * indices)
-{
-   DISPATCH(DrawRangeElements, (mode, start, end, count, type, indices), (F, "glDrawRangeElements(0x%x, %d, %d, %d, 0x%x, %p);\n", mode, start, end, count, type, (const void *) indices));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DrawRangeElementsEXT)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid * indices)
-{
-   DISPATCH(DrawRangeElements, (mode, start, end, count, type, indices), (F, "glDrawRangeElementsEXT(0x%x, %d, %d, %d, 0x%x, %p);\n", mode, start, end, count, type, (const void *) indices));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ColorTable)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid * table)
-{
-   DISPATCH(ColorTable, (target, internalformat, width, format, type, table), (F, "glColorTable(0x%x, 0x%x, %d, 0x%x, 0x%x, %p);\n", target, internalformat, width, format, type, (const void *) table));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ColorTableEXT)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid * table)
-{
-   DISPATCH(ColorTable, (target, internalformat, width, format, type, table), (F, "glColorTableEXT(0x%x, 0x%x, %d, 0x%x, 0x%x, %p);\n", target, internalformat, width, format, type, (const void *) table));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_339)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid * table);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_339)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid * table)
-{
-   DISPATCH(ColorTable, (target, internalformat, width, format, type, table), (F, "glColorTableSGI(0x%x, 0x%x, %d, 0x%x, 0x%x, %p);\n", target, internalformat, width, format, type, (const void *) table));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ColorTableParameterfv)(GLenum target, GLenum pname, const GLfloat * params)
-{
-   DISPATCH(ColorTableParameterfv, (target, pname, params), (F, "glColorTableParameterfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_340)(GLenum target, GLenum pname, const GLfloat * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_340)(GLenum target, GLenum pname, const GLfloat * params)
-{
-   DISPATCH(ColorTableParameterfv, (target, pname, params), (F, "glColorTableParameterfvSGI(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ColorTableParameteriv)(GLenum target, GLenum pname, const GLint * params)
-{
-   DISPATCH(ColorTableParameteriv, (target, pname, params), (F, "glColorTableParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_341)(GLenum target, GLenum pname, const GLint * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_341)(GLenum target, GLenum pname, const GLint * params)
-{
-   DISPATCH(ColorTableParameteriv, (target, pname, params), (F, "glColorTableParameterivSGI(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CopyColorTable)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
-{
-   DISPATCH(CopyColorTable, (target, internalformat, x, y, width), (F, "glCopyColorTable(0x%x, 0x%x, %d, %d, %d);\n", target, internalformat, x, y, width));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_342)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_342)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
-{
-   DISPATCH(CopyColorTable, (target, internalformat, x, y, width), (F, "glCopyColorTableSGI(0x%x, 0x%x, %d, %d, %d);\n", target, internalformat, x, y, width));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetColorTable)(GLenum target, GLenum format, GLenum type, GLvoid * table)
-{
-   DISPATCH(GetColorTable, (target, format, type, table), (F, "glGetColorTable(0x%x, 0x%x, 0x%x, %p);\n", target, format, type, (const void *) table));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetColorTableParameterfv)(GLenum target, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetColorTableParameterfv, (target, pname, params), (F, "glGetColorTableParameterfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetColorTableParameteriv)(GLenum target, GLenum pname, GLint * params)
-{
-   DISPATCH(GetColorTableParameteriv, (target, pname, params), (F, "glGetColorTableParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ColorSubTable)(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid * data)
-{
-   DISPATCH(ColorSubTable, (target, start, count, format, type, data), (F, "glColorSubTable(0x%x, %d, %d, 0x%x, 0x%x, %p);\n", target, start, count, format, type, (const void *) data));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_346)(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid * data);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_346)(GLenum target, GLsizei start, GLsizei count, GLenum format, GLenum type, const GLvoid * data)
-{
-   DISPATCH(ColorSubTable, (target, start, count, format, type, data), (F, "glColorSubTableEXT(0x%x, %d, %d, 0x%x, 0x%x, %p);\n", target, start, count, format, type, (const void *) data));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CopyColorSubTable)(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
-{
-   DISPATCH(CopyColorSubTable, (target, start, x, y, width), (F, "glCopyColorSubTable(0x%x, %d, %d, %d, %d);\n", target, start, x, y, width));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_347)(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_347)(GLenum target, GLsizei start, GLint x, GLint y, GLsizei width)
-{
-   DISPATCH(CopyColorSubTable, (target, start, x, y, width), (F, "glCopyColorSubTableEXT(0x%x, %d, %d, %d, %d);\n", target, start, x, y, width));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ConvolutionFilter1D)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid * image)
-{
-   DISPATCH(ConvolutionFilter1D, (target, internalformat, width, format, type, image), (F, "glConvolutionFilter1D(0x%x, 0x%x, %d, 0x%x, 0x%x, %p);\n", target, internalformat, width, format, type, (const void *) image));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_348)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid * image);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_348)(GLenum target, GLenum internalformat, GLsizei width, GLenum format, GLenum type, const GLvoid * image)
-{
-   DISPATCH(ConvolutionFilter1D, (target, internalformat, width, format, type, image), (F, "glConvolutionFilter1DEXT(0x%x, 0x%x, %d, 0x%x, 0x%x, %p);\n", target, internalformat, width, format, type, (const void *) image));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ConvolutionFilter2D)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * image)
-{
-   DISPATCH(ConvolutionFilter2D, (target, internalformat, width, height, format, type, image), (F, "glConvolutionFilter2D(0x%x, 0x%x, %d, %d, 0x%x, 0x%x, %p);\n", target, internalformat, width, height, format, type, (const void *) image));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_349)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * image);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_349)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * image)
-{
-   DISPATCH(ConvolutionFilter2D, (target, internalformat, width, height, format, type, image), (F, "glConvolutionFilter2DEXT(0x%x, 0x%x, %d, %d, 0x%x, 0x%x, %p);\n", target, internalformat, width, height, format, type, (const void *) image));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ConvolutionParameterf)(GLenum target, GLenum pname, GLfloat params)
-{
-   DISPATCH(ConvolutionParameterf, (target, pname, params), (F, "glConvolutionParameterf(0x%x, 0x%x, %f);\n", target, pname, params));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_350)(GLenum target, GLenum pname, GLfloat params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_350)(GLenum target, GLenum pname, GLfloat params)
-{
-   DISPATCH(ConvolutionParameterf, (target, pname, params), (F, "glConvolutionParameterfEXT(0x%x, 0x%x, %f);\n", target, pname, params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ConvolutionParameterfv)(GLenum target, GLenum pname, const GLfloat * params)
-{
-   DISPATCH(ConvolutionParameterfv, (target, pname, params), (F, "glConvolutionParameterfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_351)(GLenum target, GLenum pname, const GLfloat * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_351)(GLenum target, GLenum pname, const GLfloat * params)
-{
-   DISPATCH(ConvolutionParameterfv, (target, pname, params), (F, "glConvolutionParameterfvEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ConvolutionParameteri)(GLenum target, GLenum pname, GLint params)
-{
-   DISPATCH(ConvolutionParameteri, (target, pname, params), (F, "glConvolutionParameteri(0x%x, 0x%x, %d);\n", target, pname, params));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_352)(GLenum target, GLenum pname, GLint params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_352)(GLenum target, GLenum pname, GLint params)
-{
-   DISPATCH(ConvolutionParameteri, (target, pname, params), (F, "glConvolutionParameteriEXT(0x%x, 0x%x, %d);\n", target, pname, params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ConvolutionParameteriv)(GLenum target, GLenum pname, const GLint * params)
-{
-   DISPATCH(ConvolutionParameteriv, (target, pname, params), (F, "glConvolutionParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_353)(GLenum target, GLenum pname, const GLint * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_353)(GLenum target, GLenum pname, const GLint * params)
-{
-   DISPATCH(ConvolutionParameteriv, (target, pname, params), (F, "glConvolutionParameterivEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CopyConvolutionFilter1D)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
-{
-   DISPATCH(CopyConvolutionFilter1D, (target, internalformat, x, y, width), (F, "glCopyConvolutionFilter1D(0x%x, 0x%x, %d, %d, %d);\n", target, internalformat, x, y, width));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_354)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_354)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width)
-{
-   DISPATCH(CopyConvolutionFilter1D, (target, internalformat, x, y, width), (F, "glCopyConvolutionFilter1DEXT(0x%x, 0x%x, %d, %d, %d);\n", target, internalformat, x, y, width));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CopyConvolutionFilter2D)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
-{
-   DISPATCH(CopyConvolutionFilter2D, (target, internalformat, x, y, width, height), (F, "glCopyConvolutionFilter2D(0x%x, 0x%x, %d, %d, %d, %d);\n", target, internalformat, x, y, width, height));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_355)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_355)(GLenum target, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height)
-{
-   DISPATCH(CopyConvolutionFilter2D, (target, internalformat, x, y, width, height), (F, "glCopyConvolutionFilter2DEXT(0x%x, 0x%x, %d, %d, %d, %d);\n", target, internalformat, x, y, width, height));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetConvolutionFilter)(GLenum target, GLenum format, GLenum type, GLvoid * image)
-{
-   DISPATCH(GetConvolutionFilter, (target, format, type, image), (F, "glGetConvolutionFilter(0x%x, 0x%x, 0x%x, %p);\n", target, format, type, (const void *) image));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetConvolutionParameterfv)(GLenum target, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetConvolutionParameterfv, (target, pname, params), (F, "glGetConvolutionParameterfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetConvolutionParameteriv)(GLenum target, GLenum pname, GLint * params)
-{
-   DISPATCH(GetConvolutionParameteriv, (target, pname, params), (F, "glGetConvolutionParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetSeparableFilter)(GLenum target, GLenum format, GLenum type, GLvoid * row, GLvoid * column, GLvoid * span)
-{
-   DISPATCH(GetSeparableFilter, (target, format, type, row, column, span), (F, "glGetSeparableFilter(0x%x, 0x%x, 0x%x, %p, %p, %p);\n", target, format, type, (const void *) row, (const void *) column, (const void *) span));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SeparableFilter2D)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * row, const GLvoid * column)
-{
-   DISPATCH(SeparableFilter2D, (target, internalformat, width, height, format, type, row, column), (F, "glSeparableFilter2D(0x%x, 0x%x, %d, %d, 0x%x, 0x%x, %p, %p);\n", target, internalformat, width, height, format, type, (const void *) row, (const void *) column));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_360)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * row, const GLvoid * column);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_360)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid * row, const GLvoid * column)
-{
-   DISPATCH(SeparableFilter2D, (target, internalformat, width, height, format, type, row, column), (F, "glSeparableFilter2DEXT(0x%x, 0x%x, %d, %d, 0x%x, 0x%x, %p, %p);\n", target, internalformat, width, height, format, type, (const void *) row, (const void *) column));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetHistogram)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values)
-{
-   DISPATCH(GetHistogram, (target, reset, format, type, values), (F, "glGetHistogram(0x%x, %d, 0x%x, 0x%x, %p);\n", target, reset, format, type, (const void *) values));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetHistogramParameterfv)(GLenum target, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetHistogramParameterfv, (target, pname, params), (F, "glGetHistogramParameterfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetHistogramParameteriv)(GLenum target, GLenum pname, GLint * params)
-{
-   DISPATCH(GetHistogramParameteriv, (target, pname, params), (F, "glGetHistogramParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetMinmax)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values)
-{
-   DISPATCH(GetMinmax, (target, reset, format, type, values), (F, "glGetMinmax(0x%x, %d, 0x%x, 0x%x, %p);\n", target, reset, format, type, (const void *) values));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetMinmaxParameterfv)(GLenum target, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetMinmaxParameterfv, (target, pname, params), (F, "glGetMinmaxParameterfv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetMinmaxParameteriv)(GLenum target, GLenum pname, GLint * params)
-{
-   DISPATCH(GetMinmaxParameteriv, (target, pname, params), (F, "glGetMinmaxParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Histogram)(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
-{
-   DISPATCH(Histogram, (target, width, internalformat, sink), (F, "glHistogram(0x%x, %d, 0x%x, %d);\n", target, width, internalformat, sink));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_367)(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_367)(GLenum target, GLsizei width, GLenum internalformat, GLboolean sink)
-{
-   DISPATCH(Histogram, (target, width, internalformat, sink), (F, "glHistogramEXT(0x%x, %d, 0x%x, %d);\n", target, width, internalformat, sink));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Minmax)(GLenum target, GLenum internalformat, GLboolean sink)
-{
-   DISPATCH(Minmax, (target, internalformat, sink), (F, "glMinmax(0x%x, 0x%x, %d);\n", target, internalformat, sink));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_368)(GLenum target, GLenum internalformat, GLboolean sink);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_368)(GLenum target, GLenum internalformat, GLboolean sink)
-{
-   DISPATCH(Minmax, (target, internalformat, sink), (F, "glMinmaxEXT(0x%x, 0x%x, %d);\n", target, internalformat, sink));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ResetHistogram)(GLenum target)
-{
-   DISPATCH(ResetHistogram, (target), (F, "glResetHistogram(0x%x);\n", target));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_369)(GLenum target);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_369)(GLenum target)
-{
-   DISPATCH(ResetHistogram, (target), (F, "glResetHistogramEXT(0x%x);\n", target));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ResetMinmax)(GLenum target)
-{
-   DISPATCH(ResetMinmax, (target), (F, "glResetMinmax(0x%x);\n", target));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_370)(GLenum target);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_370)(GLenum target)
-{
-   DISPATCH(ResetMinmax, (target), (F, "glResetMinmaxEXT(0x%x);\n", target));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexImage3D)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid * pixels)
-{
-   DISPATCH(TexImage3D, (target, level, internalformat, width, height, depth, border, format, type, pixels), (F, "glTexImage3D(0x%x, %d, %d, %d, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, internalformat, width, height, depth, border, format, type, (const void *) pixels));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexImage3DEXT)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid * pixels)
-{
-   DISPATCH(TexImage3D, (target, level, internalformat, width, height, depth, border, format, type, pixels), (F, "glTexImage3DEXT(0x%x, %d, %d, %d, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, internalformat, width, height, depth, border, format, type, (const void *) pixels));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid * pixels)
-{
-   DISPATCH(TexSubImage3D, (target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels), (F, "glTexSubImage3D(0x%x, %d, %d, %d, %d, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, (const void *) pixels));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexSubImage3DEXT)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid * pixels)
-{
-   DISPATCH(TexSubImage3D, (target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels), (F, "glTexSubImage3DEXT(0x%x, %d, %d, %d, %d, %d, %d, %d, 0x%x, 0x%x, %p);\n", target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, (const void *) pixels));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CopyTexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
-{
-   DISPATCH(CopyTexSubImage3D, (target, level, xoffset, yoffset, zoffset, x, y, width, height), (F, "glCopyTexSubImage3D(0x%x, %d, %d, %d, %d, %d, %d, %d, %d);\n", target, level, xoffset, yoffset, zoffset, x, y, width, height));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CopyTexSubImage3DEXT)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height)
-{
-   DISPATCH(CopyTexSubImage3D, (target, level, xoffset, yoffset, zoffset, x, y, width, height), (F, "glCopyTexSubImage3DEXT(0x%x, %d, %d, %d, %d, %d, %d, %d, %d);\n", target, level, xoffset, yoffset, zoffset, x, y, width, height));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ActiveTexture)(GLenum texture)
-{
-   DISPATCH(ActiveTextureARB, (texture), (F, "glActiveTexture(0x%x);\n", texture));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ActiveTextureARB)(GLenum texture)
-{
-   DISPATCH(ActiveTextureARB, (texture), (F, "glActiveTextureARB(0x%x);\n", texture));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ClientActiveTexture)(GLenum texture)
-{
-   DISPATCH(ClientActiveTextureARB, (texture), (F, "glClientActiveTexture(0x%x);\n", texture));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ClientActiveTextureARB)(GLenum texture)
-{
-   DISPATCH(ClientActiveTextureARB, (texture), (F, "glClientActiveTextureARB(0x%x);\n", texture));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1d)(GLenum target, GLdouble s)
-{
-   DISPATCH(MultiTexCoord1dARB, (target, s), (F, "glMultiTexCoord1d(0x%x, %f);\n", target, s));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1dARB)(GLenum target, GLdouble s)
-{
-   DISPATCH(MultiTexCoord1dARB, (target, s), (F, "glMultiTexCoord1dARB(0x%x, %f);\n", target, s));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1dv)(GLenum target, const GLdouble * v)
-{
-   DISPATCH(MultiTexCoord1dvARB, (target, v), (F, "glMultiTexCoord1dv(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1dvARB)(GLenum target, const GLdouble * v)
-{
-   DISPATCH(MultiTexCoord1dvARB, (target, v), (F, "glMultiTexCoord1dvARB(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1f)(GLenum target, GLfloat s)
-{
-   DISPATCH(MultiTexCoord1fARB, (target, s), (F, "glMultiTexCoord1f(0x%x, %f);\n", target, s));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1fARB)(GLenum target, GLfloat s)
-{
-   DISPATCH(MultiTexCoord1fARB, (target, s), (F, "glMultiTexCoord1fARB(0x%x, %f);\n", target, s));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1fv)(GLenum target, const GLfloat * v)
-{
-   DISPATCH(MultiTexCoord1fvARB, (target, v), (F, "glMultiTexCoord1fv(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1fvARB)(GLenum target, const GLfloat * v)
-{
-   DISPATCH(MultiTexCoord1fvARB, (target, v), (F, "glMultiTexCoord1fvARB(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1i)(GLenum target, GLint s)
-{
-   DISPATCH(MultiTexCoord1iARB, (target, s), (F, "glMultiTexCoord1i(0x%x, %d);\n", target, s));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1iARB)(GLenum target, GLint s)
-{
-   DISPATCH(MultiTexCoord1iARB, (target, s), (F, "glMultiTexCoord1iARB(0x%x, %d);\n", target, s));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1iv)(GLenum target, const GLint * v)
-{
-   DISPATCH(MultiTexCoord1ivARB, (target, v), (F, "glMultiTexCoord1iv(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1ivARB)(GLenum target, const GLint * v)
-{
-   DISPATCH(MultiTexCoord1ivARB, (target, v), (F, "glMultiTexCoord1ivARB(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1s)(GLenum target, GLshort s)
-{
-   DISPATCH(MultiTexCoord1sARB, (target, s), (F, "glMultiTexCoord1s(0x%x, %d);\n", target, s));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1sARB)(GLenum target, GLshort s)
-{
-   DISPATCH(MultiTexCoord1sARB, (target, s), (F, "glMultiTexCoord1sARB(0x%x, %d);\n", target, s));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1sv)(GLenum target, const GLshort * v)
-{
-   DISPATCH(MultiTexCoord1svARB, (target, v), (F, "glMultiTexCoord1sv(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord1svARB)(GLenum target, const GLshort * v)
-{
-   DISPATCH(MultiTexCoord1svARB, (target, v), (F, "glMultiTexCoord1svARB(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2d)(GLenum target, GLdouble s, GLdouble t)
-{
-   DISPATCH(MultiTexCoord2dARB, (target, s, t), (F, "glMultiTexCoord2d(0x%x, %f, %f);\n", target, s, t));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2dARB)(GLenum target, GLdouble s, GLdouble t)
-{
-   DISPATCH(MultiTexCoord2dARB, (target, s, t), (F, "glMultiTexCoord2dARB(0x%x, %f, %f);\n", target, s, t));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2dv)(GLenum target, const GLdouble * v)
-{
-   DISPATCH(MultiTexCoord2dvARB, (target, v), (F, "glMultiTexCoord2dv(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2dvARB)(GLenum target, const GLdouble * v)
-{
-   DISPATCH(MultiTexCoord2dvARB, (target, v), (F, "glMultiTexCoord2dvARB(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2f)(GLenum target, GLfloat s, GLfloat t)
-{
-   DISPATCH(MultiTexCoord2fARB, (target, s, t), (F, "glMultiTexCoord2f(0x%x, %f, %f);\n", target, s, t));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2fARB)(GLenum target, GLfloat s, GLfloat t)
-{
-   DISPATCH(MultiTexCoord2fARB, (target, s, t), (F, "glMultiTexCoord2fARB(0x%x, %f, %f);\n", target, s, t));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2fv)(GLenum target, const GLfloat * v)
-{
-   DISPATCH(MultiTexCoord2fvARB, (target, v), (F, "glMultiTexCoord2fv(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2fvARB)(GLenum target, const GLfloat * v)
-{
-   DISPATCH(MultiTexCoord2fvARB, (target, v), (F, "glMultiTexCoord2fvARB(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2i)(GLenum target, GLint s, GLint t)
-{
-   DISPATCH(MultiTexCoord2iARB, (target, s, t), (F, "glMultiTexCoord2i(0x%x, %d, %d);\n", target, s, t));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2iARB)(GLenum target, GLint s, GLint t)
-{
-   DISPATCH(MultiTexCoord2iARB, (target, s, t), (F, "glMultiTexCoord2iARB(0x%x, %d, %d);\n", target, s, t));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2iv)(GLenum target, const GLint * v)
-{
-   DISPATCH(MultiTexCoord2ivARB, (target, v), (F, "glMultiTexCoord2iv(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2ivARB)(GLenum target, const GLint * v)
-{
-   DISPATCH(MultiTexCoord2ivARB, (target, v), (F, "glMultiTexCoord2ivARB(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2s)(GLenum target, GLshort s, GLshort t)
-{
-   DISPATCH(MultiTexCoord2sARB, (target, s, t), (F, "glMultiTexCoord2s(0x%x, %d, %d);\n", target, s, t));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2sARB)(GLenum target, GLshort s, GLshort t)
-{
-   DISPATCH(MultiTexCoord2sARB, (target, s, t), (F, "glMultiTexCoord2sARB(0x%x, %d, %d);\n", target, s, t));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2sv)(GLenum target, const GLshort * v)
-{
-   DISPATCH(MultiTexCoord2svARB, (target, v), (F, "glMultiTexCoord2sv(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord2svARB)(GLenum target, const GLshort * v)
-{
-   DISPATCH(MultiTexCoord2svARB, (target, v), (F, "glMultiTexCoord2svARB(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3d)(GLenum target, GLdouble s, GLdouble t, GLdouble r)
-{
-   DISPATCH(MultiTexCoord3dARB, (target, s, t, r), (F, "glMultiTexCoord3d(0x%x, %f, %f, %f);\n", target, s, t, r));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3dARB)(GLenum target, GLdouble s, GLdouble t, GLdouble r)
-{
-   DISPATCH(MultiTexCoord3dARB, (target, s, t, r), (F, "glMultiTexCoord3dARB(0x%x, %f, %f, %f);\n", target, s, t, r));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3dv)(GLenum target, const GLdouble * v)
-{
-   DISPATCH(MultiTexCoord3dvARB, (target, v), (F, "glMultiTexCoord3dv(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3dvARB)(GLenum target, const GLdouble * v)
-{
-   DISPATCH(MultiTexCoord3dvARB, (target, v), (F, "glMultiTexCoord3dvARB(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3f)(GLenum target, GLfloat s, GLfloat t, GLfloat r)
-{
-   DISPATCH(MultiTexCoord3fARB, (target, s, t, r), (F, "glMultiTexCoord3f(0x%x, %f, %f, %f);\n", target, s, t, r));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3fARB)(GLenum target, GLfloat s, GLfloat t, GLfloat r)
-{
-   DISPATCH(MultiTexCoord3fARB, (target, s, t, r), (F, "glMultiTexCoord3fARB(0x%x, %f, %f, %f);\n", target, s, t, r));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3fv)(GLenum target, const GLfloat * v)
-{
-   DISPATCH(MultiTexCoord3fvARB, (target, v), (F, "glMultiTexCoord3fv(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3fvARB)(GLenum target, const GLfloat * v)
-{
-   DISPATCH(MultiTexCoord3fvARB, (target, v), (F, "glMultiTexCoord3fvARB(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3i)(GLenum target, GLint s, GLint t, GLint r)
-{
-   DISPATCH(MultiTexCoord3iARB, (target, s, t, r), (F, "glMultiTexCoord3i(0x%x, %d, %d, %d);\n", target, s, t, r));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3iARB)(GLenum target, GLint s, GLint t, GLint r)
-{
-   DISPATCH(MultiTexCoord3iARB, (target, s, t, r), (F, "glMultiTexCoord3iARB(0x%x, %d, %d, %d);\n", target, s, t, r));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3iv)(GLenum target, const GLint * v)
-{
-   DISPATCH(MultiTexCoord3ivARB, (target, v), (F, "glMultiTexCoord3iv(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3ivARB)(GLenum target, const GLint * v)
-{
-   DISPATCH(MultiTexCoord3ivARB, (target, v), (F, "glMultiTexCoord3ivARB(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3s)(GLenum target, GLshort s, GLshort t, GLshort r)
-{
-   DISPATCH(MultiTexCoord3sARB, (target, s, t, r), (F, "glMultiTexCoord3s(0x%x, %d, %d, %d);\n", target, s, t, r));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3sARB)(GLenum target, GLshort s, GLshort t, GLshort r)
-{
-   DISPATCH(MultiTexCoord3sARB, (target, s, t, r), (F, "glMultiTexCoord3sARB(0x%x, %d, %d, %d);\n", target, s, t, r));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3sv)(GLenum target, const GLshort * v)
-{
-   DISPATCH(MultiTexCoord3svARB, (target, v), (F, "glMultiTexCoord3sv(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord3svARB)(GLenum target, const GLshort * v)
-{
-   DISPATCH(MultiTexCoord3svARB, (target, v), (F, "glMultiTexCoord3svARB(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4d)(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
-{
-   DISPATCH(MultiTexCoord4dARB, (target, s, t, r, q), (F, "glMultiTexCoord4d(0x%x, %f, %f, %f, %f);\n", target, s, t, r, q));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4dARB)(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q)
-{
-   DISPATCH(MultiTexCoord4dARB, (target, s, t, r, q), (F, "glMultiTexCoord4dARB(0x%x, %f, %f, %f, %f);\n", target, s, t, r, q));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4dv)(GLenum target, const GLdouble * v)
-{
-   DISPATCH(MultiTexCoord4dvARB, (target, v), (F, "glMultiTexCoord4dv(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4dvARB)(GLenum target, const GLdouble * v)
-{
-   DISPATCH(MultiTexCoord4dvARB, (target, v), (F, "glMultiTexCoord4dvARB(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4f)(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
-{
-   DISPATCH(MultiTexCoord4fARB, (target, s, t, r, q), (F, "glMultiTexCoord4f(0x%x, %f, %f, %f, %f);\n", target, s, t, r, q));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4fARB)(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q)
-{
-   DISPATCH(MultiTexCoord4fARB, (target, s, t, r, q), (F, "glMultiTexCoord4fARB(0x%x, %f, %f, %f, %f);\n", target, s, t, r, q));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4fv)(GLenum target, const GLfloat * v)
-{
-   DISPATCH(MultiTexCoord4fvARB, (target, v), (F, "glMultiTexCoord4fv(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4fvARB)(GLenum target, const GLfloat * v)
-{
-   DISPATCH(MultiTexCoord4fvARB, (target, v), (F, "glMultiTexCoord4fvARB(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4i)(GLenum target, GLint s, GLint t, GLint r, GLint q)
-{
-   DISPATCH(MultiTexCoord4iARB, (target, s, t, r, q), (F, "glMultiTexCoord4i(0x%x, %d, %d, %d, %d);\n", target, s, t, r, q));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4iARB)(GLenum target, GLint s, GLint t, GLint r, GLint q)
-{
-   DISPATCH(MultiTexCoord4iARB, (target, s, t, r, q), (F, "glMultiTexCoord4iARB(0x%x, %d, %d, %d, %d);\n", target, s, t, r, q));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4iv)(GLenum target, const GLint * v)
-{
-   DISPATCH(MultiTexCoord4ivARB, (target, v), (F, "glMultiTexCoord4iv(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4ivARB)(GLenum target, const GLint * v)
-{
-   DISPATCH(MultiTexCoord4ivARB, (target, v), (F, "glMultiTexCoord4ivARB(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4s)(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
-{
-   DISPATCH(MultiTexCoord4sARB, (target, s, t, r, q), (F, "glMultiTexCoord4s(0x%x, %d, %d, %d, %d);\n", target, s, t, r, q));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4sARB)(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q)
-{
-   DISPATCH(MultiTexCoord4sARB, (target, s, t, r, q), (F, "glMultiTexCoord4sARB(0x%x, %d, %d, %d, %d);\n", target, s, t, r, q));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4sv)(GLenum target, const GLshort * v)
-{
-   DISPATCH(MultiTexCoord4svARB, (target, v), (F, "glMultiTexCoord4sv(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiTexCoord4svARB)(GLenum target, const GLshort * v)
-{
-   DISPATCH(MultiTexCoord4svARB, (target, v), (F, "glMultiTexCoord4svARB(0x%x, %p);\n", target, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(AttachShader)(GLuint program, GLuint shader)
-{
-   DISPATCH(AttachShader, (program, shader), (F, "glAttachShader(%d, %d);\n", program, shader));
-}
-
-KEYWORD1 GLuint KEYWORD2 NAME(CreateProgram)(void)
-{
-   RETURN_DISPATCH(CreateProgram, (), (F, "glCreateProgram();\n"));
-}
-
-KEYWORD1 GLuint KEYWORD2 NAME(CreateShader)(GLenum type)
-{
-   RETURN_DISPATCH(CreateShader, (type), (F, "glCreateShader(0x%x);\n", type));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DeleteProgram)(GLuint program)
-{
-   DISPATCH(DeleteProgram, (program), (F, "glDeleteProgram(%d);\n", program));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DeleteShader)(GLuint program)
-{
-   DISPATCH(DeleteShader, (program), (F, "glDeleteShader(%d);\n", program));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DetachShader)(GLuint program, GLuint shader)
-{
-   DISPATCH(DetachShader, (program, shader), (F, "glDetachShader(%d, %d);\n", program, shader));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetAttachedShaders)(GLuint program, GLsizei maxCount, GLsizei * count, GLuint * obj)
-{
-   DISPATCH(GetAttachedShaders, (program, maxCount, count, obj), (F, "glGetAttachedShaders(%d, %d, %p, %p);\n", program, maxCount, (const void *) count, (const void *) obj));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetProgramInfoLog)(GLuint program, GLsizei bufSize, GLsizei * length, GLchar * infoLog)
-{
-   DISPATCH(GetProgramInfoLog, (program, bufSize, length, infoLog), (F, "glGetProgramInfoLog(%d, %d, %p, %p);\n", program, bufSize, (const void *) length, (const void *) infoLog));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetProgramiv)(GLuint program, GLenum pname, GLint * params)
-{
-   DISPATCH(GetProgramiv, (program, pname, params), (F, "glGetProgramiv(%d, 0x%x, %p);\n", program, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetShaderInfoLog)(GLuint shader, GLsizei bufSize, GLsizei * length, GLchar * infoLog)
-{
-   DISPATCH(GetShaderInfoLog, (shader, bufSize, length, infoLog), (F, "glGetShaderInfoLog(%d, %d, %p, %p);\n", shader, bufSize, (const void *) length, (const void *) infoLog));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetShaderiv)(GLuint shader, GLenum pname, GLint * params)
-{
-   DISPATCH(GetShaderiv, (shader, pname, params), (F, "glGetShaderiv(%d, 0x%x, %p);\n", shader, pname, (const void *) params));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsProgram)(GLuint program)
-{
-   RETURN_DISPATCH(IsProgram, (program), (F, "glIsProgram(%d);\n", program));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsShader)(GLuint shader)
-{
-   RETURN_DISPATCH(IsShader, (shader), (F, "glIsShader(%d);\n", shader));
-}
-
-KEYWORD1 void KEYWORD2 NAME(StencilFuncSeparate)(GLenum face, GLenum func, GLint ref, GLuint mask)
-{
-   DISPATCH(StencilFuncSeparate, (face, func, ref, mask), (F, "glStencilFuncSeparate(0x%x, 0x%x, %d, %d);\n", face, func, ref, mask));
-}
-
-KEYWORD1 void KEYWORD2 NAME(StencilMaskSeparate)(GLenum face, GLuint mask)
-{
-   DISPATCH(StencilMaskSeparate, (face, mask), (F, "glStencilMaskSeparate(0x%x, %d);\n", face, mask));
-}
-
-KEYWORD1 void KEYWORD2 NAME(StencilOpSeparate)(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass)
-{
-   DISPATCH(StencilOpSeparate, (face, sfail, zfail, zpass), (F, "glStencilOpSeparate(0x%x, 0x%x, 0x%x, 0x%x);\n", face, sfail, zfail, zpass));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_423)(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_423)(GLenum face, GLenum sfail, GLenum zfail, GLenum zpass)
-{
-   DISPATCH(StencilOpSeparate, (face, sfail, zfail, zpass), (F, "glStencilOpSeparateATI(0x%x, 0x%x, 0x%x, 0x%x);\n", face, sfail, zfail, zpass));
-}
-
-KEYWORD1 void KEYWORD2 NAME(UniformMatrix2x3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
-{
-   DISPATCH(UniformMatrix2x3fv, (location, count, transpose, value), (F, "glUniformMatrix2x3fv(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(UniformMatrix2x4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
-{
-   DISPATCH(UniformMatrix2x4fv, (location, count, transpose, value), (F, "glUniformMatrix2x4fv(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(UniformMatrix3x2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
-{
-   DISPATCH(UniformMatrix3x2fv, (location, count, transpose, value), (F, "glUniformMatrix3x2fv(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(UniformMatrix3x4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
-{
-   DISPATCH(UniformMatrix3x4fv, (location, count, transpose, value), (F, "glUniformMatrix3x4fv(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(UniformMatrix4x2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
-{
-   DISPATCH(UniformMatrix4x2fv, (location, count, transpose, value), (F, "glUniformMatrix4x2fv(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(UniformMatrix4x3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
-{
-   DISPATCH(UniformMatrix4x3fv, (location, count, transpose, value), (F, "glUniformMatrix4x3fv(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DrawArraysInstanced)(GLenum mode, GLint first, GLsizei count, GLsizei primcount)
-{
-   DISPATCH(DrawArraysInstanced, (mode, first, count, primcount), (F, "glDrawArraysInstanced(0x%x, %d, %d, %d);\n", mode, first, count, primcount));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DrawArraysInstancedARB)(GLenum mode, GLint first, GLsizei count, GLsizei primcount)
-{
-   DISPATCH(DrawArraysInstanced, (mode, first, count, primcount), (F, "glDrawArraysInstancedARB(0x%x, %d, %d, %d);\n", mode, first, count, primcount));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DrawArraysInstancedEXT)(GLenum mode, GLint first, GLsizei count, GLsizei primcount)
-{
-   DISPATCH(DrawArraysInstanced, (mode, first, count, primcount), (F, "glDrawArraysInstancedEXT(0x%x, %d, %d, %d);\n", mode, first, count, primcount));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DrawElementsInstanced)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices, GLsizei primcount)
-{
-   DISPATCH(DrawElementsInstanced, (mode, count, type, indices, primcount), (F, "glDrawElementsInstanced(0x%x, %d, 0x%x, %p, %d);\n", mode, count, type, (const void *) indices, primcount));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DrawElementsInstancedARB)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices, GLsizei primcount)
-{
-   DISPATCH(DrawElementsInstanced, (mode, count, type, indices, primcount), (F, "glDrawElementsInstancedARB(0x%x, %d, 0x%x, %p, %d);\n", mode, count, type, (const void *) indices, primcount));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DrawElementsInstancedEXT)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices, GLsizei primcount)
-{
-   DISPATCH(DrawElementsInstanced, (mode, count, type, indices, primcount), (F, "glDrawElementsInstancedEXT(0x%x, %d, 0x%x, %p, %d);\n", mode, count, type, (const void *) indices, primcount));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LoadTransposeMatrixd)(const GLdouble * m)
-{
-   DISPATCH(LoadTransposeMatrixdARB, (m), (F, "glLoadTransposeMatrixd(%p);\n", (const void *) m));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LoadTransposeMatrixdARB)(const GLdouble * m)
-{
-   DISPATCH(LoadTransposeMatrixdARB, (m), (F, "glLoadTransposeMatrixdARB(%p);\n", (const void *) m));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LoadTransposeMatrixf)(const GLfloat * m)
-{
-   DISPATCH(LoadTransposeMatrixfARB, (m), (F, "glLoadTransposeMatrixf(%p);\n", (const void *) m));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LoadTransposeMatrixfARB)(const GLfloat * m)
-{
-   DISPATCH(LoadTransposeMatrixfARB, (m), (F, "glLoadTransposeMatrixfARB(%p);\n", (const void *) m));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultTransposeMatrixd)(const GLdouble * m)
-{
-   DISPATCH(MultTransposeMatrixdARB, (m), (F, "glMultTransposeMatrixd(%p);\n", (const void *) m));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultTransposeMatrixdARB)(const GLdouble * m)
-{
-   DISPATCH(MultTransposeMatrixdARB, (m), (F, "glMultTransposeMatrixdARB(%p);\n", (const void *) m));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultTransposeMatrixf)(const GLfloat * m)
-{
-   DISPATCH(MultTransposeMatrixfARB, (m), (F, "glMultTransposeMatrixf(%p);\n", (const void *) m));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultTransposeMatrixfARB)(const GLfloat * m)
-{
-   DISPATCH(MultTransposeMatrixfARB, (m), (F, "glMultTransposeMatrixfARB(%p);\n", (const void *) m));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SampleCoverage)(GLclampf value, GLboolean invert)
-{
-   DISPATCH(SampleCoverageARB, (value, invert), (F, "glSampleCoverage(%f, %d);\n", value, invert));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SampleCoverageARB)(GLclampf value, GLboolean invert)
-{
-   DISPATCH(SampleCoverageARB, (value, invert), (F, "glSampleCoverageARB(%f, %d);\n", value, invert));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CompressedTexImage1D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid * data)
-{
-   DISPATCH(CompressedTexImage1DARB, (target, level, internalformat, width, border, imageSize, data), (F, "glCompressedTexImage1D(0x%x, %d, 0x%x, %d, %d, %d, %p);\n", target, level, internalformat, width, border, imageSize, (const void *) data));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CompressedTexImage1DARB)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid * data)
-{
-   DISPATCH(CompressedTexImage1DARB, (target, level, internalformat, width, border, imageSize, data), (F, "glCompressedTexImage1DARB(0x%x, %d, 0x%x, %d, %d, %d, %p);\n", target, level, internalformat, width, border, imageSize, (const void *) data));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CompressedTexImage2D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid * data)
-{
-   DISPATCH(CompressedTexImage2DARB, (target, level, internalformat, width, height, border, imageSize, data), (F, "glCompressedTexImage2D(0x%x, %d, 0x%x, %d, %d, %d, %d, %p);\n", target, level, internalformat, width, height, border, imageSize, (const void *) data));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CompressedTexImage2DARB)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid * data)
-{
-   DISPATCH(CompressedTexImage2DARB, (target, level, internalformat, width, height, border, imageSize, data), (F, "glCompressedTexImage2DARB(0x%x, %d, 0x%x, %d, %d, %d, %d, %p);\n", target, level, internalformat, width, height, border, imageSize, (const void *) data));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CompressedTexImage3D)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid * data)
-{
-   DISPATCH(CompressedTexImage3DARB, (target, level, internalformat, width, height, depth, border, imageSize, data), (F, "glCompressedTexImage3D(0x%x, %d, 0x%x, %d, %d, %d, %d, %d, %p);\n", target, level, internalformat, width, height, depth, border, imageSize, (const void *) data));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CompressedTexImage3DARB)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid * data)
-{
-   DISPATCH(CompressedTexImage3DARB, (target, level, internalformat, width, height, depth, border, imageSize, data), (F, "glCompressedTexImage3DARB(0x%x, %d, 0x%x, %d, %d, %d, %d, %d, %p);\n", target, level, internalformat, width, height, depth, border, imageSize, (const void *) data));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CompressedTexSubImage1D)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid * data)
-{
-   DISPATCH(CompressedTexSubImage1DARB, (target, level, xoffset, width, format, imageSize, data), (F, "glCompressedTexSubImage1D(0x%x, %d, %d, %d, 0x%x, %d, %p);\n", target, level, xoffset, width, format, imageSize, (const void *) data));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CompressedTexSubImage1DARB)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const GLvoid * data)
-{
-   DISPATCH(CompressedTexSubImage1DARB, (target, level, xoffset, width, format, imageSize, data), (F, "glCompressedTexSubImage1DARB(0x%x, %d, %d, %d, 0x%x, %d, %p);\n", target, level, xoffset, width, format, imageSize, (const void *) data));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CompressedTexSubImage2D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid * data)
-{
-   DISPATCH(CompressedTexSubImage2DARB, (target, level, xoffset, yoffset, width, height, format, imageSize, data), (F, "glCompressedTexSubImage2D(0x%x, %d, %d, %d, %d, %d, 0x%x, %d, %p);\n", target, level, xoffset, yoffset, width, height, format, imageSize, (const void *) data));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CompressedTexSubImage2DARB)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid * data)
-{
-   DISPATCH(CompressedTexSubImage2DARB, (target, level, xoffset, yoffset, width, height, format, imageSize, data), (F, "glCompressedTexSubImage2DARB(0x%x, %d, %d, %d, %d, %d, 0x%x, %d, %p);\n", target, level, xoffset, yoffset, width, height, format, imageSize, (const void *) data));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CompressedTexSubImage3D)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid * data)
-{
-   DISPATCH(CompressedTexSubImage3DARB, (target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data), (F, "glCompressedTexSubImage3D(0x%x, %d, %d, %d, %d, %d, %d, %d, 0x%x, %d, %p);\n", target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, (const void *) data));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CompressedTexSubImage3DARB)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid * data)
-{
-   DISPATCH(CompressedTexSubImage3DARB, (target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data), (F, "glCompressedTexSubImage3DARB(0x%x, %d, %d, %d, %d, %d, %d, %d, 0x%x, %d, %p);\n", target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, (const void *) data));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetCompressedTexImage)(GLenum target, GLint level, GLvoid * img)
-{
-   DISPATCH(GetCompressedTexImageARB, (target, level, img), (F, "glGetCompressedTexImage(0x%x, %d, %p);\n", target, level, (const void *) img));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetCompressedTexImageARB)(GLenum target, GLint level, GLvoid * img)
-{
-   DISPATCH(GetCompressedTexImageARB, (target, level, img), (F, "glGetCompressedTexImageARB(0x%x, %d, %p);\n", target, level, (const void *) img));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DisableVertexAttribArray)(GLuint index)
-{
-   DISPATCH(DisableVertexAttribArrayARB, (index), (F, "glDisableVertexAttribArray(%d);\n", index));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DisableVertexAttribArrayARB)(GLuint index)
-{
-   DISPATCH(DisableVertexAttribArrayARB, (index), (F, "glDisableVertexAttribArrayARB(%d);\n", index));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EnableVertexAttribArray)(GLuint index)
-{
-   DISPATCH(EnableVertexAttribArrayARB, (index), (F, "glEnableVertexAttribArray(%d);\n", index));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EnableVertexAttribArrayARB)(GLuint index)
-{
-   DISPATCH(EnableVertexAttribArrayARB, (index), (F, "glEnableVertexAttribArrayARB(%d);\n", index));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetProgramEnvParameterdvARB)(GLenum target, GLuint index, GLdouble * params)
-{
-   DISPATCH(GetProgramEnvParameterdvARB, (target, index, params), (F, "glGetProgramEnvParameterdvARB(0x%x, %d, %p);\n", target, index, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetProgramEnvParameterfvARB)(GLenum target, GLuint index, GLfloat * params)
-{
-   DISPATCH(GetProgramEnvParameterfvARB, (target, index, params), (F, "glGetProgramEnvParameterfvARB(0x%x, %d, %p);\n", target, index, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetProgramLocalParameterdvARB)(GLenum target, GLuint index, GLdouble * params)
-{
-   DISPATCH(GetProgramLocalParameterdvARB, (target, index, params), (F, "glGetProgramLocalParameterdvARB(0x%x, %d, %p);\n", target, index, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetProgramLocalParameterfvARB)(GLenum target, GLuint index, GLfloat * params)
-{
-   DISPATCH(GetProgramLocalParameterfvARB, (target, index, params), (F, "glGetProgramLocalParameterfvARB(0x%x, %d, %p);\n", target, index, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetProgramStringARB)(GLenum target, GLenum pname, GLvoid * string)
-{
-   DISPATCH(GetProgramStringARB, (target, pname, string), (F, "glGetProgramStringARB(0x%x, 0x%x, %p);\n", target, pname, (const void *) string));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetProgramivARB)(GLenum target, GLenum pname, GLint * params)
-{
-   DISPATCH(GetProgramivARB, (target, pname, params), (F, "glGetProgramivARB(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetVertexAttribdv)(GLuint index, GLenum pname, GLdouble * params)
-{
-   DISPATCH(GetVertexAttribdvARB, (index, pname, params), (F, "glGetVertexAttribdv(%d, 0x%x, %p);\n", index, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetVertexAttribdvARB)(GLuint index, GLenum pname, GLdouble * params)
-{
-   DISPATCH(GetVertexAttribdvARB, (index, pname, params), (F, "glGetVertexAttribdvARB(%d, 0x%x, %p);\n", index, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetVertexAttribfv)(GLuint index, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetVertexAttribfvARB, (index, pname, params), (F, "glGetVertexAttribfv(%d, 0x%x, %p);\n", index, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetVertexAttribfvARB)(GLuint index, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetVertexAttribfvARB, (index, pname, params), (F, "glGetVertexAttribfvARB(%d, 0x%x, %p);\n", index, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetVertexAttribiv)(GLuint index, GLenum pname, GLint * params)
-{
-   DISPATCH(GetVertexAttribivARB, (index, pname, params), (F, "glGetVertexAttribiv(%d, 0x%x, %p);\n", index, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetVertexAttribivARB)(GLuint index, GLenum pname, GLint * params)
-{
-   DISPATCH(GetVertexAttribivARB, (index, pname, params), (F, "glGetVertexAttribivARB(%d, 0x%x, %p);\n", index, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramEnvParameter4dARB)(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-{
-   DISPATCH(ProgramEnvParameter4dARB, (target, index, x, y, z, w), (F, "glProgramEnvParameter4dARB(0x%x, %d, %f, %f, %f, %f);\n", target, index, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramParameter4dNV)(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-{
-   DISPATCH(ProgramEnvParameter4dARB, (target, index, x, y, z, w), (F, "glProgramParameter4dNV(0x%x, %d, %f, %f, %f, %f);\n", target, index, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramEnvParameter4dvARB)(GLenum target, GLuint index, const GLdouble * params)
-{
-   DISPATCH(ProgramEnvParameter4dvARB, (target, index, params), (F, "glProgramEnvParameter4dvARB(0x%x, %d, %p);\n", target, index, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramParameter4dvNV)(GLenum target, GLuint index, const GLdouble * params)
-{
-   DISPATCH(ProgramEnvParameter4dvARB, (target, index, params), (F, "glProgramParameter4dvNV(0x%x, %d, %p);\n", target, index, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramEnvParameter4fARB)(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-{
-   DISPATCH(ProgramEnvParameter4fARB, (target, index, x, y, z, w), (F, "glProgramEnvParameter4fARB(0x%x, %d, %f, %f, %f, %f);\n", target, index, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramParameter4fNV)(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-{
-   DISPATCH(ProgramEnvParameter4fARB, (target, index, x, y, z, w), (F, "glProgramParameter4fNV(0x%x, %d, %f, %f, %f, %f);\n", target, index, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramEnvParameter4fvARB)(GLenum target, GLuint index, const GLfloat * params)
-{
-   DISPATCH(ProgramEnvParameter4fvARB, (target, index, params), (F, "glProgramEnvParameter4fvARB(0x%x, %d, %p);\n", target, index, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramParameter4fvNV)(GLenum target, GLuint index, const GLfloat * params)
-{
-   DISPATCH(ProgramEnvParameter4fvARB, (target, index, params), (F, "glProgramParameter4fvNV(0x%x, %d, %p);\n", target, index, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramLocalParameter4dARB)(GLenum target, GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-{
-   DISPATCH(ProgramLocalParameter4dARB, (target, index, x, y, z, w), (F, "glProgramLocalParameter4dARB(0x%x, %d, %f, %f, %f, %f);\n", target, index, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramLocalParameter4dvARB)(GLenum target, GLuint index, const GLdouble * params)
-{
-   DISPATCH(ProgramLocalParameter4dvARB, (target, index, params), (F, "glProgramLocalParameter4dvARB(0x%x, %d, %p);\n", target, index, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramLocalParameter4fARB)(GLenum target, GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-{
-   DISPATCH(ProgramLocalParameter4fARB, (target, index, x, y, z, w), (F, "glProgramLocalParameter4fARB(0x%x, %d, %f, %f, %f, %f);\n", target, index, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramLocalParameter4fvARB)(GLenum target, GLuint index, const GLfloat * params)
-{
-   DISPATCH(ProgramLocalParameter4fvARB, (target, index, params), (F, "glProgramLocalParameter4fvARB(0x%x, %d, %p);\n", target, index, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramStringARB)(GLenum target, GLenum format, GLsizei len, const GLvoid * string)
-{
-   DISPATCH(ProgramStringARB, (target, format, len, string), (F, "glProgramStringARB(0x%x, 0x%x, %d, %p);\n", target, format, len, (const void *) string));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib1d)(GLuint index, GLdouble x)
-{
-   DISPATCH(VertexAttrib1dARB, (index, x), (F, "glVertexAttrib1d(%d, %f);\n", index, x));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib1dARB)(GLuint index, GLdouble x)
-{
-   DISPATCH(VertexAttrib1dARB, (index, x), (F, "glVertexAttrib1dARB(%d, %f);\n", index, x));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib1dv)(GLuint index, const GLdouble * v)
-{
-   DISPATCH(VertexAttrib1dvARB, (index, v), (F, "glVertexAttrib1dv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib1dvARB)(GLuint index, const GLdouble * v)
-{
-   DISPATCH(VertexAttrib1dvARB, (index, v), (F, "glVertexAttrib1dvARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib1f)(GLuint index, GLfloat x)
-{
-   DISPATCH(VertexAttrib1fARB, (index, x), (F, "glVertexAttrib1f(%d, %f);\n", index, x));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib1fARB)(GLuint index, GLfloat x)
-{
-   DISPATCH(VertexAttrib1fARB, (index, x), (F, "glVertexAttrib1fARB(%d, %f);\n", index, x));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib1fv)(GLuint index, const GLfloat * v)
-{
-   DISPATCH(VertexAttrib1fvARB, (index, v), (F, "glVertexAttrib1fv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib1fvARB)(GLuint index, const GLfloat * v)
-{
-   DISPATCH(VertexAttrib1fvARB, (index, v), (F, "glVertexAttrib1fvARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib1s)(GLuint index, GLshort x)
-{
-   DISPATCH(VertexAttrib1sARB, (index, x), (F, "glVertexAttrib1s(%d, %d);\n", index, x));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib1sARB)(GLuint index, GLshort x)
-{
-   DISPATCH(VertexAttrib1sARB, (index, x), (F, "glVertexAttrib1sARB(%d, %d);\n", index, x));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib1sv)(GLuint index, const GLshort * v)
-{
-   DISPATCH(VertexAttrib1svARB, (index, v), (F, "glVertexAttrib1sv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib1svARB)(GLuint index, const GLshort * v)
-{
-   DISPATCH(VertexAttrib1svARB, (index, v), (F, "glVertexAttrib1svARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib2d)(GLuint index, GLdouble x, GLdouble y)
-{
-   DISPATCH(VertexAttrib2dARB, (index, x, y), (F, "glVertexAttrib2d(%d, %f, %f);\n", index, x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib2dARB)(GLuint index, GLdouble x, GLdouble y)
-{
-   DISPATCH(VertexAttrib2dARB, (index, x, y), (F, "glVertexAttrib2dARB(%d, %f, %f);\n", index, x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib2dv)(GLuint index, const GLdouble * v)
-{
-   DISPATCH(VertexAttrib2dvARB, (index, v), (F, "glVertexAttrib2dv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib2dvARB)(GLuint index, const GLdouble * v)
-{
-   DISPATCH(VertexAttrib2dvARB, (index, v), (F, "glVertexAttrib2dvARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib2f)(GLuint index, GLfloat x, GLfloat y)
-{
-   DISPATCH(VertexAttrib2fARB, (index, x, y), (F, "glVertexAttrib2f(%d, %f, %f);\n", index, x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib2fARB)(GLuint index, GLfloat x, GLfloat y)
-{
-   DISPATCH(VertexAttrib2fARB, (index, x, y), (F, "glVertexAttrib2fARB(%d, %f, %f);\n", index, x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib2fv)(GLuint index, const GLfloat * v)
-{
-   DISPATCH(VertexAttrib2fvARB, (index, v), (F, "glVertexAttrib2fv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib2fvARB)(GLuint index, const GLfloat * v)
-{
-   DISPATCH(VertexAttrib2fvARB, (index, v), (F, "glVertexAttrib2fvARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib2s)(GLuint index, GLshort x, GLshort y)
-{
-   DISPATCH(VertexAttrib2sARB, (index, x, y), (F, "glVertexAttrib2s(%d, %d, %d);\n", index, x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib2sARB)(GLuint index, GLshort x, GLshort y)
-{
-   DISPATCH(VertexAttrib2sARB, (index, x, y), (F, "glVertexAttrib2sARB(%d, %d, %d);\n", index, x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib2sv)(GLuint index, const GLshort * v)
-{
-   DISPATCH(VertexAttrib2svARB, (index, v), (F, "glVertexAttrib2sv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib2svARB)(GLuint index, const GLshort * v)
-{
-   DISPATCH(VertexAttrib2svARB, (index, v), (F, "glVertexAttrib2svARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib3d)(GLuint index, GLdouble x, GLdouble y, GLdouble z)
-{
-   DISPATCH(VertexAttrib3dARB, (index, x, y, z), (F, "glVertexAttrib3d(%d, %f, %f, %f);\n", index, x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib3dARB)(GLuint index, GLdouble x, GLdouble y, GLdouble z)
-{
-   DISPATCH(VertexAttrib3dARB, (index, x, y, z), (F, "glVertexAttrib3dARB(%d, %f, %f, %f);\n", index, x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib3dv)(GLuint index, const GLdouble * v)
-{
-   DISPATCH(VertexAttrib3dvARB, (index, v), (F, "glVertexAttrib3dv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib3dvARB)(GLuint index, const GLdouble * v)
-{
-   DISPATCH(VertexAttrib3dvARB, (index, v), (F, "glVertexAttrib3dvARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib3f)(GLuint index, GLfloat x, GLfloat y, GLfloat z)
-{
-   DISPATCH(VertexAttrib3fARB, (index, x, y, z), (F, "glVertexAttrib3f(%d, %f, %f, %f);\n", index, x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib3fARB)(GLuint index, GLfloat x, GLfloat y, GLfloat z)
-{
-   DISPATCH(VertexAttrib3fARB, (index, x, y, z), (F, "glVertexAttrib3fARB(%d, %f, %f, %f);\n", index, x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib3fv)(GLuint index, const GLfloat * v)
-{
-   DISPATCH(VertexAttrib3fvARB, (index, v), (F, "glVertexAttrib3fv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib3fvARB)(GLuint index, const GLfloat * v)
-{
-   DISPATCH(VertexAttrib3fvARB, (index, v), (F, "glVertexAttrib3fvARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib3s)(GLuint index, GLshort x, GLshort y, GLshort z)
-{
-   DISPATCH(VertexAttrib3sARB, (index, x, y, z), (F, "glVertexAttrib3s(%d, %d, %d, %d);\n", index, x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib3sARB)(GLuint index, GLshort x, GLshort y, GLshort z)
-{
-   DISPATCH(VertexAttrib3sARB, (index, x, y, z), (F, "glVertexAttrib3sARB(%d, %d, %d, %d);\n", index, x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib3sv)(GLuint index, const GLshort * v)
-{
-   DISPATCH(VertexAttrib3svARB, (index, v), (F, "glVertexAttrib3sv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib3svARB)(GLuint index, const GLshort * v)
-{
-   DISPATCH(VertexAttrib3svARB, (index, v), (F, "glVertexAttrib3svARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4Nbv)(GLuint index, const GLbyte * v)
-{
-   DISPATCH(VertexAttrib4NbvARB, (index, v), (F, "glVertexAttrib4Nbv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4NbvARB)(GLuint index, const GLbyte * v)
-{
-   DISPATCH(VertexAttrib4NbvARB, (index, v), (F, "glVertexAttrib4NbvARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4Niv)(GLuint index, const GLint * v)
-{
-   DISPATCH(VertexAttrib4NivARB, (index, v), (F, "glVertexAttrib4Niv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4NivARB)(GLuint index, const GLint * v)
-{
-   DISPATCH(VertexAttrib4NivARB, (index, v), (F, "glVertexAttrib4NivARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4Nsv)(GLuint index, const GLshort * v)
-{
-   DISPATCH(VertexAttrib4NsvARB, (index, v), (F, "glVertexAttrib4Nsv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4NsvARB)(GLuint index, const GLshort * v)
-{
-   DISPATCH(VertexAttrib4NsvARB, (index, v), (F, "glVertexAttrib4NsvARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4Nub)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
-{
-   DISPATCH(VertexAttrib4NubARB, (index, x, y, z, w), (F, "glVertexAttrib4Nub(%d, %d, %d, %d, %d);\n", index, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4NubARB)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
-{
-   DISPATCH(VertexAttrib4NubARB, (index, x, y, z, w), (F, "glVertexAttrib4NubARB(%d, %d, %d, %d, %d);\n", index, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4Nubv)(GLuint index, const GLubyte * v)
-{
-   DISPATCH(VertexAttrib4NubvARB, (index, v), (F, "glVertexAttrib4Nubv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4NubvARB)(GLuint index, const GLubyte * v)
-{
-   DISPATCH(VertexAttrib4NubvARB, (index, v), (F, "glVertexAttrib4NubvARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4Nuiv)(GLuint index, const GLuint * v)
-{
-   DISPATCH(VertexAttrib4NuivARB, (index, v), (F, "glVertexAttrib4Nuiv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4NuivARB)(GLuint index, const GLuint * v)
-{
-   DISPATCH(VertexAttrib4NuivARB, (index, v), (F, "glVertexAttrib4NuivARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4Nusv)(GLuint index, const GLushort * v)
-{
-   DISPATCH(VertexAttrib4NusvARB, (index, v), (F, "glVertexAttrib4Nusv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4NusvARB)(GLuint index, const GLushort * v)
-{
-   DISPATCH(VertexAttrib4NusvARB, (index, v), (F, "glVertexAttrib4NusvARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4bv)(GLuint index, const GLbyte * v)
-{
-   DISPATCH(VertexAttrib4bvARB, (index, v), (F, "glVertexAttrib4bv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4bvARB)(GLuint index, const GLbyte * v)
-{
-   DISPATCH(VertexAttrib4bvARB, (index, v), (F, "glVertexAttrib4bvARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4d)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-{
-   DISPATCH(VertexAttrib4dARB, (index, x, y, z, w), (F, "glVertexAttrib4d(%d, %f, %f, %f, %f);\n", index, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4dARB)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-{
-   DISPATCH(VertexAttrib4dARB, (index, x, y, z, w), (F, "glVertexAttrib4dARB(%d, %f, %f, %f, %f);\n", index, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4dv)(GLuint index, const GLdouble * v)
-{
-   DISPATCH(VertexAttrib4dvARB, (index, v), (F, "glVertexAttrib4dv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4dvARB)(GLuint index, const GLdouble * v)
-{
-   DISPATCH(VertexAttrib4dvARB, (index, v), (F, "glVertexAttrib4dvARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4f)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-{
-   DISPATCH(VertexAttrib4fARB, (index, x, y, z, w), (F, "glVertexAttrib4f(%d, %f, %f, %f, %f);\n", index, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4fARB)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-{
-   DISPATCH(VertexAttrib4fARB, (index, x, y, z, w), (F, "glVertexAttrib4fARB(%d, %f, %f, %f, %f);\n", index, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4fv)(GLuint index, const GLfloat * v)
-{
-   DISPATCH(VertexAttrib4fvARB, (index, v), (F, "glVertexAttrib4fv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4fvARB)(GLuint index, const GLfloat * v)
-{
-   DISPATCH(VertexAttrib4fvARB, (index, v), (F, "glVertexAttrib4fvARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4iv)(GLuint index, const GLint * v)
-{
-   DISPATCH(VertexAttrib4ivARB, (index, v), (F, "glVertexAttrib4iv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4ivARB)(GLuint index, const GLint * v)
-{
-   DISPATCH(VertexAttrib4ivARB, (index, v), (F, "glVertexAttrib4ivARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4s)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
-{
-   DISPATCH(VertexAttrib4sARB, (index, x, y, z, w), (F, "glVertexAttrib4s(%d, %d, %d, %d, %d);\n", index, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4sARB)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
-{
-   DISPATCH(VertexAttrib4sARB, (index, x, y, z, w), (F, "glVertexAttrib4sARB(%d, %d, %d, %d, %d);\n", index, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4sv)(GLuint index, const GLshort * v)
-{
-   DISPATCH(VertexAttrib4svARB, (index, v), (F, "glVertexAttrib4sv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4svARB)(GLuint index, const GLshort * v)
-{
-   DISPATCH(VertexAttrib4svARB, (index, v), (F, "glVertexAttrib4svARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4ubv)(GLuint index, const GLubyte * v)
-{
-   DISPATCH(VertexAttrib4ubvARB, (index, v), (F, "glVertexAttrib4ubv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4ubvARB)(GLuint index, const GLubyte * v)
-{
-   DISPATCH(VertexAttrib4ubvARB, (index, v), (F, "glVertexAttrib4ubvARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4uiv)(GLuint index, const GLuint * v)
-{
-   DISPATCH(VertexAttrib4uivARB, (index, v), (F, "glVertexAttrib4uiv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4uivARB)(GLuint index, const GLuint * v)
-{
-   DISPATCH(VertexAttrib4uivARB, (index, v), (F, "glVertexAttrib4uivARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4usv)(GLuint index, const GLushort * v)
-{
-   DISPATCH(VertexAttrib4usvARB, (index, v), (F, "glVertexAttrib4usv(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4usvARB)(GLuint index, const GLushort * v)
-{
-   DISPATCH(VertexAttrib4usvARB, (index, v), (F, "glVertexAttrib4usvARB(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttribPointer)(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid * pointer)
-{
-   DISPATCH(VertexAttribPointerARB, (index, size, type, normalized, stride, pointer), (F, "glVertexAttribPointer(%d, %d, 0x%x, %d, %d, %p);\n", index, size, type, normalized, stride, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttribPointerARB)(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid * pointer)
-{
-   DISPATCH(VertexAttribPointerARB, (index, size, type, normalized, stride, pointer), (F, "glVertexAttribPointerARB(%d, %d, 0x%x, %d, %d, %p);\n", index, size, type, normalized, stride, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindBuffer)(GLenum target, GLuint buffer)
-{
-   DISPATCH(BindBufferARB, (target, buffer), (F, "glBindBuffer(0x%x, %d);\n", target, buffer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindBufferARB)(GLenum target, GLuint buffer)
-{
-   DISPATCH(BindBufferARB, (target, buffer), (F, "glBindBufferARB(0x%x, %d);\n", target, buffer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BufferData)(GLenum target, GLsizeiptr size, const GLvoid * data, GLenum usage)
-{
-   DISPATCH(BufferDataARB, (target, size, data, usage), (F, "glBufferData(0x%x, %d, %p, 0x%x);\n", target, size, (const void *) data, usage));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BufferDataARB)(GLenum target, GLsizeiptrARB size, const GLvoid * data, GLenum usage)
-{
-   DISPATCH(BufferDataARB, (target, size, data, usage), (F, "glBufferDataARB(0x%x, %d, %p, 0x%x);\n", target, size, (const void *) data, usage));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BufferSubData)(GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid * data)
-{
-   DISPATCH(BufferSubDataARB, (target, offset, size, data), (F, "glBufferSubData(0x%x, %d, %d, %p);\n", target, offset, size, (const void *) data));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BufferSubDataARB)(GLenum target, GLintptrARB offset, GLsizeiptrARB size, const GLvoid * data)
-{
-   DISPATCH(BufferSubDataARB, (target, offset, size, data), (F, "glBufferSubDataARB(0x%x, %d, %d, %p);\n", target, offset, size, (const void *) data));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DeleteBuffers)(GLsizei n, const GLuint * buffer)
-{
-   DISPATCH(DeleteBuffersARB, (n, buffer), (F, "glDeleteBuffers(%d, %p);\n", n, (const void *) buffer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DeleteBuffersARB)(GLsizei n, const GLuint * buffer)
-{
-   DISPATCH(DeleteBuffersARB, (n, buffer), (F, "glDeleteBuffersARB(%d, %p);\n", n, (const void *) buffer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GenBuffers)(GLsizei n, GLuint * buffer)
-{
-   DISPATCH(GenBuffersARB, (n, buffer), (F, "glGenBuffers(%d, %p);\n", n, (const void *) buffer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GenBuffersARB)(GLsizei n, GLuint * buffer)
-{
-   DISPATCH(GenBuffersARB, (n, buffer), (F, "glGenBuffersARB(%d, %p);\n", n, (const void *) buffer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetBufferParameteriv)(GLenum target, GLenum pname, GLint * params)
-{
-   DISPATCH(GetBufferParameterivARB, (target, pname, params), (F, "glGetBufferParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetBufferParameterivARB)(GLenum target, GLenum pname, GLint * params)
-{
-   DISPATCH(GetBufferParameterivARB, (target, pname, params), (F, "glGetBufferParameterivARB(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetBufferPointerv)(GLenum target, GLenum pname, GLvoid ** params)
-{
-   DISPATCH(GetBufferPointervARB, (target, pname, params), (F, "glGetBufferPointerv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetBufferPointervARB)(GLenum target, GLenum pname, GLvoid ** params)
-{
-   DISPATCH(GetBufferPointervARB, (target, pname, params), (F, "glGetBufferPointervARB(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetBufferSubData)(GLenum target, GLintptr offset, GLsizeiptr size, GLvoid * data)
-{
-   DISPATCH(GetBufferSubDataARB, (target, offset, size, data), (F, "glGetBufferSubData(0x%x, %d, %d, %p);\n", target, offset, size, (const void *) data));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetBufferSubDataARB)(GLenum target, GLintptrARB offset, GLsizeiptrARB size, GLvoid * data)
-{
-   DISPATCH(GetBufferSubDataARB, (target, offset, size, data), (F, "glGetBufferSubDataARB(0x%x, %d, %d, %p);\n", target, offset, size, (const void *) data));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsBuffer)(GLuint buffer)
-{
-   RETURN_DISPATCH(IsBufferARB, (buffer), (F, "glIsBuffer(%d);\n", buffer));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsBufferARB)(GLuint buffer)
-{
-   RETURN_DISPATCH(IsBufferARB, (buffer), (F, "glIsBufferARB(%d);\n", buffer));
-}
-
-KEYWORD1 GLvoid * KEYWORD2 NAME(MapBuffer)(GLenum target, GLenum access)
-{
-   RETURN_DISPATCH(MapBufferARB, (target, access), (F, "glMapBuffer(0x%x, 0x%x);\n", target, access));
-}
-
-KEYWORD1 GLvoid * KEYWORD2 NAME(MapBufferARB)(GLenum target, GLenum access)
-{
-   RETURN_DISPATCH(MapBufferARB, (target, access), (F, "glMapBufferARB(0x%x, 0x%x);\n", target, access));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(UnmapBuffer)(GLenum target)
-{
-   RETURN_DISPATCH(UnmapBufferARB, (target), (F, "glUnmapBuffer(0x%x);\n", target));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(UnmapBufferARB)(GLenum target)
-{
-   RETURN_DISPATCH(UnmapBufferARB, (target), (F, "glUnmapBufferARB(0x%x);\n", target));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BeginQuery)(GLenum target, GLuint id)
-{
-   DISPATCH(BeginQueryARB, (target, id), (F, "glBeginQuery(0x%x, %d);\n", target, id));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BeginQueryARB)(GLenum target, GLuint id)
-{
-   DISPATCH(BeginQueryARB, (target, id), (F, "glBeginQueryARB(0x%x, %d);\n", target, id));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DeleteQueries)(GLsizei n, const GLuint * ids)
-{
-   DISPATCH(DeleteQueriesARB, (n, ids), (F, "glDeleteQueries(%d, %p);\n", n, (const void *) ids));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DeleteQueriesARB)(GLsizei n, const GLuint * ids)
-{
-   DISPATCH(DeleteQueriesARB, (n, ids), (F, "glDeleteQueriesARB(%d, %p);\n", n, (const void *) ids));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EndQuery)(GLenum target)
-{
-   DISPATCH(EndQueryARB, (target), (F, "glEndQuery(0x%x);\n", target));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EndQueryARB)(GLenum target)
-{
-   DISPATCH(EndQueryARB, (target), (F, "glEndQueryARB(0x%x);\n", target));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GenQueries)(GLsizei n, GLuint * ids)
-{
-   DISPATCH(GenQueriesARB, (n, ids), (F, "glGenQueries(%d, %p);\n", n, (const void *) ids));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GenQueriesARB)(GLsizei n, GLuint * ids)
-{
-   DISPATCH(GenQueriesARB, (n, ids), (F, "glGenQueriesARB(%d, %p);\n", n, (const void *) ids));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetQueryObjectiv)(GLuint id, GLenum pname, GLint * params)
-{
-   DISPATCH(GetQueryObjectivARB, (id, pname, params), (F, "glGetQueryObjectiv(%d, 0x%x, %p);\n", id, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetQueryObjectivARB)(GLuint id, GLenum pname, GLint * params)
-{
-   DISPATCH(GetQueryObjectivARB, (id, pname, params), (F, "glGetQueryObjectivARB(%d, 0x%x, %p);\n", id, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetQueryObjectuiv)(GLuint id, GLenum pname, GLuint * params)
-{
-   DISPATCH(GetQueryObjectuivARB, (id, pname, params), (F, "glGetQueryObjectuiv(%d, 0x%x, %p);\n", id, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetQueryObjectuivARB)(GLuint id, GLenum pname, GLuint * params)
-{
-   DISPATCH(GetQueryObjectuivARB, (id, pname, params), (F, "glGetQueryObjectuivARB(%d, 0x%x, %p);\n", id, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetQueryiv)(GLenum target, GLenum pname, GLint * params)
-{
-   DISPATCH(GetQueryivARB, (target, pname, params), (F, "glGetQueryiv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetQueryivARB)(GLenum target, GLenum pname, GLint * params)
-{
-   DISPATCH(GetQueryivARB, (target, pname, params), (F, "glGetQueryivARB(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsQuery)(GLuint id)
-{
-   RETURN_DISPATCH(IsQueryARB, (id), (F, "glIsQuery(%d);\n", id));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsQueryARB)(GLuint id)
-{
-   RETURN_DISPATCH(IsQueryARB, (id), (F, "glIsQueryARB(%d);\n", id));
-}
-
-KEYWORD1 void KEYWORD2 NAME(AttachObjectARB)(GLhandleARB containerObj, GLhandleARB obj)
-{
-   DISPATCH(AttachObjectARB, (containerObj, obj), (F, "glAttachObjectARB(%d, %d);\n", containerObj, obj));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CompileShader)(GLuint shader)
-{
-   DISPATCH(CompileShaderARB, (shader), (F, "glCompileShader(%d);\n", shader));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CompileShaderARB)(GLhandleARB shader)
-{
-   DISPATCH(CompileShaderARB, (shader), (F, "glCompileShaderARB(%d);\n", shader));
-}
-
-KEYWORD1 GLhandleARB KEYWORD2 NAME(CreateProgramObjectARB)(void)
-{
-   RETURN_DISPATCH(CreateProgramObjectARB, (), (F, "glCreateProgramObjectARB();\n"));
-}
-
-KEYWORD1 GLhandleARB KEYWORD2 NAME(CreateShaderObjectARB)(GLenum shaderType)
-{
-   RETURN_DISPATCH(CreateShaderObjectARB, (shaderType), (F, "glCreateShaderObjectARB(0x%x);\n", shaderType));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DeleteObjectARB)(GLhandleARB obj)
-{
-   DISPATCH(DeleteObjectARB, (obj), (F, "glDeleteObjectARB(%d);\n", obj));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DetachObjectARB)(GLhandleARB containerObj, GLhandleARB attachedObj)
-{
-   DISPATCH(DetachObjectARB, (containerObj, attachedObj), (F, "glDetachObjectARB(%d, %d);\n", containerObj, attachedObj));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetActiveUniform)(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, GLchar * name)
-{
-   DISPATCH(GetActiveUniformARB, (program, index, bufSize, length, size, type, name), (F, "glGetActiveUniform(%d, %d, %d, %p, %p, %p, %p);\n", program, index, bufSize, (const void *) length, (const void *) size, (const void *) type, (const void *) name));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetActiveUniformARB)(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, GLcharARB * name)
-{
-   DISPATCH(GetActiveUniformARB, (program, index, bufSize, length, size, type, name), (F, "glGetActiveUniformARB(%d, %d, %d, %p, %p, %p, %p);\n", program, index, bufSize, (const void *) length, (const void *) size, (const void *) type, (const void *) name));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetAttachedObjectsARB)(GLhandleARB containerObj, GLsizei maxLength, GLsizei * length, GLhandleARB * infoLog)
-{
-   DISPATCH(GetAttachedObjectsARB, (containerObj, maxLength, length, infoLog), (F, "glGetAttachedObjectsARB(%d, %d, %p, %p);\n", containerObj, maxLength, (const void *) length, (const void *) infoLog));
-}
-
-KEYWORD1 GLhandleARB KEYWORD2 NAME(GetHandleARB)(GLenum pname)
-{
-   RETURN_DISPATCH(GetHandleARB, (pname), (F, "glGetHandleARB(0x%x);\n", pname));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetInfoLogARB)(GLhandleARB obj, GLsizei maxLength, GLsizei * length, GLcharARB * infoLog)
-{
-   DISPATCH(GetInfoLogARB, (obj, maxLength, length, infoLog), (F, "glGetInfoLogARB(%d, %d, %p, %p);\n", obj, maxLength, (const void *) length, (const void *) infoLog));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetObjectParameterfvARB)(GLhandleARB obj, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetObjectParameterfvARB, (obj, pname, params), (F, "glGetObjectParameterfvARB(%d, 0x%x, %p);\n", obj, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetObjectParameterivARB)(GLhandleARB obj, GLenum pname, GLint * params)
-{
-   DISPATCH(GetObjectParameterivARB, (obj, pname, params), (F, "glGetObjectParameterivARB(%d, 0x%x, %p);\n", obj, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetShaderSource)(GLuint shader, GLsizei bufSize, GLsizei * length, GLchar * source)
-{
-   DISPATCH(GetShaderSourceARB, (shader, bufSize, length, source), (F, "glGetShaderSource(%d, %d, %p, %p);\n", shader, bufSize, (const void *) length, (const void *) source));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetShaderSourceARB)(GLhandleARB shader, GLsizei bufSize, GLsizei * length, GLcharARB * source)
-{
-   DISPATCH(GetShaderSourceARB, (shader, bufSize, length, source), (F, "glGetShaderSourceARB(%d, %d, %p, %p);\n", shader, bufSize, (const void *) length, (const void *) source));
-}
-
-KEYWORD1 GLint KEYWORD2 NAME(GetUniformLocation)(GLuint program, const GLchar * name)
-{
-   RETURN_DISPATCH(GetUniformLocationARB, (program, name), (F, "glGetUniformLocation(%d, %p);\n", program, (const void *) name));
-}
-
-KEYWORD1 GLint KEYWORD2 NAME(GetUniformLocationARB)(GLhandleARB program, const GLcharARB * name)
-{
-   RETURN_DISPATCH(GetUniformLocationARB, (program, name), (F, "glGetUniformLocationARB(%d, %p);\n", program, (const void *) name));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetUniformfv)(GLuint program, GLint location, GLfloat * params)
-{
-   DISPATCH(GetUniformfvARB, (program, location, params), (F, "glGetUniformfv(%d, %d, %p);\n", program, location, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetUniformfvARB)(GLhandleARB program, GLint location, GLfloat * params)
-{
-   DISPATCH(GetUniformfvARB, (program, location, params), (F, "glGetUniformfvARB(%d, %d, %p);\n", program, location, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetUniformiv)(GLuint program, GLint location, GLint * params)
-{
-   DISPATCH(GetUniformivARB, (program, location, params), (F, "glGetUniformiv(%d, %d, %p);\n", program, location, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetUniformivARB)(GLhandleARB program, GLint location, GLint * params)
-{
-   DISPATCH(GetUniformivARB, (program, location, params), (F, "glGetUniformivARB(%d, %d, %p);\n", program, location, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LinkProgram)(GLuint program)
-{
-   DISPATCH(LinkProgramARB, (program), (F, "glLinkProgram(%d);\n", program));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LinkProgramARB)(GLhandleARB program)
-{
-   DISPATCH(LinkProgramARB, (program), (F, "glLinkProgramARB(%d);\n", program));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ShaderSource)(GLuint shader, GLsizei count, const GLchar ** string, const GLint * length)
-{
-   DISPATCH(ShaderSourceARB, (shader, count, string, length), (F, "glShaderSource(%d, %d, %p, %p);\n", shader, count, (const void *) string, (const void *) length));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ShaderSourceARB)(GLhandleARB shader, GLsizei count, const GLcharARB ** string, const GLint * length)
-{
-   DISPATCH(ShaderSourceARB, (shader, count, string, length), (F, "glShaderSourceARB(%d, %d, %p, %p);\n", shader, count, (const void *) string, (const void *) length));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform1f)(GLint location, GLfloat v0)
-{
-   DISPATCH(Uniform1fARB, (location, v0), (F, "glUniform1f(%d, %f);\n", location, v0));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform1fARB)(GLint location, GLfloat v0)
-{
-   DISPATCH(Uniform1fARB, (location, v0), (F, "glUniform1fARB(%d, %f);\n", location, v0));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform1fv)(GLint location, GLsizei count, const GLfloat * value)
-{
-   DISPATCH(Uniform1fvARB, (location, count, value), (F, "glUniform1fv(%d, %d, %p);\n", location, count, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform1fvARB)(GLint location, GLsizei count, const GLfloat * value)
-{
-   DISPATCH(Uniform1fvARB, (location, count, value), (F, "glUniform1fvARB(%d, %d, %p);\n", location, count, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform1i)(GLint location, GLint v0)
-{
-   DISPATCH(Uniform1iARB, (location, v0), (F, "glUniform1i(%d, %d);\n", location, v0));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform1iARB)(GLint location, GLint v0)
-{
-   DISPATCH(Uniform1iARB, (location, v0), (F, "glUniform1iARB(%d, %d);\n", location, v0));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform1iv)(GLint location, GLsizei count, const GLint * value)
-{
-   DISPATCH(Uniform1ivARB, (location, count, value), (F, "glUniform1iv(%d, %d, %p);\n", location, count, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform1ivARB)(GLint location, GLsizei count, const GLint * value)
-{
-   DISPATCH(Uniform1ivARB, (location, count, value), (F, "glUniform1ivARB(%d, %d, %p);\n", location, count, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform2f)(GLint location, GLfloat v0, GLfloat v1)
-{
-   DISPATCH(Uniform2fARB, (location, v0, v1), (F, "glUniform2f(%d, %f, %f);\n", location, v0, v1));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform2fARB)(GLint location, GLfloat v0, GLfloat v1)
-{
-   DISPATCH(Uniform2fARB, (location, v0, v1), (F, "glUniform2fARB(%d, %f, %f);\n", location, v0, v1));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform2fv)(GLint location, GLsizei count, const GLfloat * value)
-{
-   DISPATCH(Uniform2fvARB, (location, count, value), (F, "glUniform2fv(%d, %d, %p);\n", location, count, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform2fvARB)(GLint location, GLsizei count, const GLfloat * value)
-{
-   DISPATCH(Uniform2fvARB, (location, count, value), (F, "glUniform2fvARB(%d, %d, %p);\n", location, count, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform2i)(GLint location, GLint v0, GLint v1)
-{
-   DISPATCH(Uniform2iARB, (location, v0, v1), (F, "glUniform2i(%d, %d, %d);\n", location, v0, v1));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform2iARB)(GLint location, GLint v0, GLint v1)
-{
-   DISPATCH(Uniform2iARB, (location, v0, v1), (F, "glUniform2iARB(%d, %d, %d);\n", location, v0, v1));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform2iv)(GLint location, GLsizei count, const GLint * value)
-{
-   DISPATCH(Uniform2ivARB, (location, count, value), (F, "glUniform2iv(%d, %d, %p);\n", location, count, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform2ivARB)(GLint location, GLsizei count, const GLint * value)
-{
-   DISPATCH(Uniform2ivARB, (location, count, value), (F, "glUniform2ivARB(%d, %d, %p);\n", location, count, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform3f)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
-{
-   DISPATCH(Uniform3fARB, (location, v0, v1, v2), (F, "glUniform3f(%d, %f, %f, %f);\n", location, v0, v1, v2));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform3fARB)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2)
-{
-   DISPATCH(Uniform3fARB, (location, v0, v1, v2), (F, "glUniform3fARB(%d, %f, %f, %f);\n", location, v0, v1, v2));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform3fv)(GLint location, GLsizei count, const GLfloat * value)
-{
-   DISPATCH(Uniform3fvARB, (location, count, value), (F, "glUniform3fv(%d, %d, %p);\n", location, count, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform3fvARB)(GLint location, GLsizei count, const GLfloat * value)
-{
-   DISPATCH(Uniform3fvARB, (location, count, value), (F, "glUniform3fvARB(%d, %d, %p);\n", location, count, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform3i)(GLint location, GLint v0, GLint v1, GLint v2)
-{
-   DISPATCH(Uniform3iARB, (location, v0, v1, v2), (F, "glUniform3i(%d, %d, %d, %d);\n", location, v0, v1, v2));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform3iARB)(GLint location, GLint v0, GLint v1, GLint v2)
-{
-   DISPATCH(Uniform3iARB, (location, v0, v1, v2), (F, "glUniform3iARB(%d, %d, %d, %d);\n", location, v0, v1, v2));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform3iv)(GLint location, GLsizei count, const GLint * value)
-{
-   DISPATCH(Uniform3ivARB, (location, count, value), (F, "glUniform3iv(%d, %d, %p);\n", location, count, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform3ivARB)(GLint location, GLsizei count, const GLint * value)
-{
-   DISPATCH(Uniform3ivARB, (location, count, value), (F, "glUniform3ivARB(%d, %d, %p);\n", location, count, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform4f)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
-{
-   DISPATCH(Uniform4fARB, (location, v0, v1, v2, v3), (F, "glUniform4f(%d, %f, %f, %f, %f);\n", location, v0, v1, v2, v3));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform4fARB)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3)
-{
-   DISPATCH(Uniform4fARB, (location, v0, v1, v2, v3), (F, "glUniform4fARB(%d, %f, %f, %f, %f);\n", location, v0, v1, v2, v3));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform4fv)(GLint location, GLsizei count, const GLfloat * value)
-{
-   DISPATCH(Uniform4fvARB, (location, count, value), (F, "glUniform4fv(%d, %d, %p);\n", location, count, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform4fvARB)(GLint location, GLsizei count, const GLfloat * value)
-{
-   DISPATCH(Uniform4fvARB, (location, count, value), (F, "glUniform4fvARB(%d, %d, %p);\n", location, count, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform4i)(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
-{
-   DISPATCH(Uniform4iARB, (location, v0, v1, v2, v3), (F, "glUniform4i(%d, %d, %d, %d, %d);\n", location, v0, v1, v2, v3));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform4iARB)(GLint location, GLint v0, GLint v1, GLint v2, GLint v3)
-{
-   DISPATCH(Uniform4iARB, (location, v0, v1, v2, v3), (F, "glUniform4iARB(%d, %d, %d, %d, %d);\n", location, v0, v1, v2, v3));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform4iv)(GLint location, GLsizei count, const GLint * value)
-{
-   DISPATCH(Uniform4ivARB, (location, count, value), (F, "glUniform4iv(%d, %d, %p);\n", location, count, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(Uniform4ivARB)(GLint location, GLsizei count, const GLint * value)
-{
-   DISPATCH(Uniform4ivARB, (location, count, value), (F, "glUniform4ivARB(%d, %d, %p);\n", location, count, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(UniformMatrix2fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
-{
-   DISPATCH(UniformMatrix2fvARB, (location, count, transpose, value), (F, "glUniformMatrix2fv(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(UniformMatrix2fvARB)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
-{
-   DISPATCH(UniformMatrix2fvARB, (location, count, transpose, value), (F, "glUniformMatrix2fvARB(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(UniformMatrix3fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
-{
-   DISPATCH(UniformMatrix3fvARB, (location, count, transpose, value), (F, "glUniformMatrix3fv(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(UniformMatrix3fvARB)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
-{
-   DISPATCH(UniformMatrix3fvARB, (location, count, transpose, value), (F, "glUniformMatrix3fvARB(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(UniformMatrix4fv)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
-{
-   DISPATCH(UniformMatrix4fvARB, (location, count, transpose, value), (F, "glUniformMatrix4fv(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(UniformMatrix4fvARB)(GLint location, GLsizei count, GLboolean transpose, const GLfloat * value)
-{
-   DISPATCH(UniformMatrix4fvARB, (location, count, transpose, value), (F, "glUniformMatrix4fvARB(%d, %d, %d, %p);\n", location, count, transpose, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(UseProgram)(GLuint program)
-{
-   DISPATCH(UseProgramObjectARB, (program), (F, "glUseProgram(%d);\n", program));
-}
-
-KEYWORD1 void KEYWORD2 NAME(UseProgramObjectARB)(GLhandleARB program)
-{
-   DISPATCH(UseProgramObjectARB, (program), (F, "glUseProgramObjectARB(%d);\n", program));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ValidateProgram)(GLuint program)
-{
-   DISPATCH(ValidateProgramARB, (program), (F, "glValidateProgram(%d);\n", program));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ValidateProgramARB)(GLhandleARB program)
-{
-   DISPATCH(ValidateProgramARB, (program), (F, "glValidateProgramARB(%d);\n", program));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindAttribLocation)(GLuint program, GLuint index, const GLchar * name)
-{
-   DISPATCH(BindAttribLocationARB, (program, index, name), (F, "glBindAttribLocation(%d, %d, %p);\n", program, index, (const void *) name));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindAttribLocationARB)(GLhandleARB program, GLuint index, const GLcharARB * name)
-{
-   DISPATCH(BindAttribLocationARB, (program, index, name), (F, "glBindAttribLocationARB(%d, %d, %p);\n", program, index, (const void *) name));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetActiveAttrib)(GLuint program, GLuint index, GLsizei  bufSize, GLsizei * length, GLint * size, GLenum * type, GLchar * name)
-{
-   DISPATCH(GetActiveAttribARB, (program, index, bufSize, length, size, type, name), (F, "glGetActiveAttrib(%d, %d, %d, %p, %p, %p, %p);\n", program, index, bufSize, (const void *) length, (const void *) size, (const void *) type, (const void *) name));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetActiveAttribARB)(GLhandleARB program, GLuint index, GLsizei bufSize, GLsizei * length, GLint * size, GLenum * type, GLcharARB * name)
-{
-   DISPATCH(GetActiveAttribARB, (program, index, bufSize, length, size, type, name), (F, "glGetActiveAttribARB(%d, %d, %d, %p, %p, %p, %p);\n", program, index, bufSize, (const void *) length, (const void *) size, (const void *) type, (const void *) name));
-}
-
-KEYWORD1 GLint KEYWORD2 NAME(GetAttribLocation)(GLuint program, const GLchar * name)
-{
-   RETURN_DISPATCH(GetAttribLocationARB, (program, name), (F, "glGetAttribLocation(%d, %p);\n", program, (const void *) name));
-}
-
-KEYWORD1 GLint KEYWORD2 NAME(GetAttribLocationARB)(GLhandleARB program, const GLcharARB * name)
-{
-   RETURN_DISPATCH(GetAttribLocationARB, (program, name), (F, "glGetAttribLocationARB(%d, %p);\n", program, (const void *) name));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DrawBuffers)(GLsizei n, const GLenum * bufs)
-{
-   DISPATCH(DrawBuffersARB, (n, bufs), (F, "glDrawBuffers(%d, %p);\n", n, (const void *) bufs));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DrawBuffersARB)(GLsizei n, const GLenum * bufs)
-{
-   DISPATCH(DrawBuffersARB, (n, bufs), (F, "glDrawBuffersARB(%d, %p);\n", n, (const void *) bufs));
-}
-
-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(RenderbufferStorageMultisample)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
-{
-   DISPATCH(RenderbufferStorageMultisample, (target, samples, internalformat, width, height), (F, "glRenderbufferStorageMultisample(0x%x, %d, 0x%x, %d, %d);\n", target, samples, internalformat, width, height));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RenderbufferStorageMultisampleEXT)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height)
-{
-   DISPATCH(RenderbufferStorageMultisample, (target, samples, internalformat, width, height), (F, "glRenderbufferStorageMultisampleEXT(0x%x, %d, 0x%x, %d, %d);\n", target, samples, internalformat, width, height));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FlushMappedBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length)
-{
-   DISPATCH(FlushMappedBufferRange, (target, offset, length), (F, "glFlushMappedBufferRange(0x%x, %d, %d);\n", target, offset, length));
-}
-
-KEYWORD1 GLvoid * KEYWORD2 NAME(MapBufferRange)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
-{
-   RETURN_DISPATCH(MapBufferRange, (target, offset, length, access), (F, "glMapBufferRange(0x%x, %d, %d, %d);\n", target, offset, length, access));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindVertexArray)(GLuint array)
-{
-   DISPATCH(BindVertexArray, (array), (F, "glBindVertexArray(%d);\n", array));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GenVertexArrays)(GLsizei n, GLuint * arrays)
-{
-   DISPATCH(GenVertexArrays, (n, arrays), (F, "glGenVertexArrays(%d, %p);\n", n, (const void *) arrays));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CopyBufferSubData)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size)
-{
-   DISPATCH(CopyBufferSubData, (readTarget, writeTarget, readOffset, writeOffset, size), (F, "glCopyBufferSubData(0x%x, 0x%x, %d, %d, %d);\n", readTarget, writeTarget, readOffset, writeOffset, size));
-}
-
-KEYWORD1 GLenum KEYWORD2 NAME(ClientWaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout)
-{
-   RETURN_DISPATCH(ClientWaitSync, (sync, flags, timeout), (F, "glClientWaitSync(%d, %d, %d);\n", sync, flags, timeout));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DeleteSync)(GLsync sync)
-{
-   DISPATCH(DeleteSync, (sync), (F, "glDeleteSync(%d);\n", sync));
-}
-
-KEYWORD1 GLsync KEYWORD2 NAME(FenceSync)(GLenum condition, GLbitfield flags)
-{
-   RETURN_DISPATCH(FenceSync, (condition, flags), (F, "glFenceSync(0x%x, %d);\n", condition, flags));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetInteger64v)(GLenum pname, GLint64 * params)
-{
-   DISPATCH(GetInteger64v, (pname, params), (F, "glGetInteger64v(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetSynciv)(GLsync sync, GLenum pname, GLsizei bufSize, GLsizei * length, GLint * values)
-{
-   DISPATCH(GetSynciv, (sync, pname, bufSize, length, values), (F, "glGetSynciv(%d, 0x%x, %d, %p, %p);\n", sync, pname, bufSize, (const void *) length, (const void *) values));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsSync)(GLsync sync)
-{
-   RETURN_DISPATCH(IsSync, (sync), (F, "glIsSync(%d);\n", sync));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WaitSync)(GLsync sync, GLbitfield flags, GLuint64 timeout)
-{
-   DISPATCH(WaitSync, (sync, flags, timeout), (F, "glWaitSync(%d, %d, %d);\n", sync, flags, timeout));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DrawElementsBaseVertex)(GLenum mode, GLsizei count, GLenum type, const GLvoid * indices, GLint basevertex)
-{
-   DISPATCH(DrawElementsBaseVertex, (mode, count, type, indices, basevertex), (F, "glDrawElementsBaseVertex(0x%x, %d, 0x%x, %p, %d);\n", mode, count, type, (const void *) indices, basevertex));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DrawRangeElementsBaseVertex)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid * indices, GLint basevertex)
-{
-   DISPATCH(DrawRangeElementsBaseVertex, (mode, start, end, count, type, indices, basevertex), (F, "glDrawRangeElementsBaseVertex(0x%x, %d, %d, %d, 0x%x, %p, %d);\n", mode, start, end, count, type, (const void *) indices, basevertex));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiDrawElementsBaseVertex)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount, const GLint * basevertex)
-{
-   DISPATCH(MultiDrawElementsBaseVertex, (mode, count, type, indices, primcount, basevertex), (F, "glMultiDrawElementsBaseVertex(0x%x, %p, 0x%x, %p, %d, %p);\n", mode, (const void *) count, type, (const void *) indices, primcount, (const void *) basevertex));
-}
-
-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_580)(GLenum pname, GLfloat * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_580)(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_581)(GLenum pname, GLint * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_581)(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_582)(GLenum pname, GLfloat param);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_582)(GLenum pname, GLfloat param)
-{
-   DISPATCH(PixelTexGenParameterfSGIS, (pname, param), (F, "glPixelTexGenParameterfSGIS(0x%x, %f);\n", pname, param));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_583)(GLenum pname, const GLfloat * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_583)(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_584)(GLenum pname, GLint param);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_584)(GLenum pname, GLint param)
-{
-   DISPATCH(PixelTexGenParameteriSGIS, (pname, param), (F, "glPixelTexGenParameteriSGIS(0x%x, %d);\n", pname, param));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_585)(GLenum pname, const GLint * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_585)(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_586)(GLclampf value, GLboolean invert);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_586)(GLclampf value, GLboolean invert)
-{
-   DISPATCH(SampleMaskSGIS, (value, invert), (F, "glSampleMaskSGIS(%f, %d);\n", value, invert));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_587)(GLenum pattern);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_587)(GLenum pattern)
-{
-   DISPATCH(SamplePatternSGIS, (pattern), (F, "glSamplePatternSGIS(0x%x);\n", pattern));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ColorPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer)
-{
-   DISPATCH(ColorPointerEXT, (size, type, stride, count, pointer), (F, "glColorPointerEXT(%d, 0x%x, %d, %d, %p);\n", size, type, stride, count, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EdgeFlagPointerEXT)(GLsizei stride, GLsizei count, const GLboolean * pointer)
-{
-   DISPATCH(EdgeFlagPointerEXT, (stride, count, pointer), (F, "glEdgeFlagPointerEXT(%d, %d, %p);\n", stride, count, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(IndexPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer)
-{
-   DISPATCH(IndexPointerEXT, (type, stride, count, pointer), (F, "glIndexPointerEXT(0x%x, %d, %d, %p);\n", type, stride, count, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(NormalPointerEXT)(GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer)
-{
-   DISPATCH(NormalPointerEXT, (type, stride, count, pointer), (F, "glNormalPointerEXT(0x%x, %d, %d, %p);\n", type, stride, count, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexCoordPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer)
-{
-   DISPATCH(TexCoordPointerEXT, (size, type, stride, count, pointer), (F, "glTexCoordPointerEXT(%d, 0x%x, %d, %d, %p);\n", size, type, stride, count, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexPointerEXT)(GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid * pointer)
-{
-   DISPATCH(VertexPointerEXT, (size, type, stride, count, pointer), (F, "glVertexPointerEXT(%d, 0x%x, %d, %d, %p);\n", size, type, stride, count, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PointParameterf)(GLenum pname, GLfloat param)
-{
-   DISPATCH(PointParameterfEXT, (pname, param), (F, "glPointParameterf(0x%x, %f);\n", pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PointParameterfARB)(GLenum pname, GLfloat param)
-{
-   DISPATCH(PointParameterfEXT, (pname, param), (F, "glPointParameterfARB(0x%x, %f);\n", pname, param));
-}
-
-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_594)(GLenum pname, GLfloat param);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_594)(GLenum pname, GLfloat param)
-{
-   DISPATCH(PointParameterfEXT, (pname, param), (F, "glPointParameterfSGIS(0x%x, %f);\n", pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PointParameterfv)(GLenum pname, const GLfloat * params)
-{
-   DISPATCH(PointParameterfvEXT, (pname, params), (F, "glPointParameterfv(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PointParameterfvARB)(GLenum pname, const GLfloat * params)
-{
-   DISPATCH(PointParameterfvEXT, (pname, params), (F, "glPointParameterfvARB(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PointParameterfvEXT)(GLenum pname, const GLfloat * params)
-{
-   DISPATCH(PointParameterfvEXT, (pname, params), (F, "glPointParameterfvEXT(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_595)(GLenum pname, const GLfloat * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_595)(GLenum pname, const GLfloat * params)
-{
-   DISPATCH(PointParameterfvEXT, (pname, params), (F, "glPointParameterfvSGIS(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LockArraysEXT)(GLint first, GLsizei count)
-{
-   DISPATCH(LockArraysEXT, (first, count), (F, "glLockArraysEXT(%d, %d);\n", first, count));
-}
-
-KEYWORD1 void KEYWORD2 NAME(UnlockArraysEXT)(void)
-{
-   DISPATCH(UnlockArraysEXT, (), (F, "glUnlockArraysEXT();\n"));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_598)(GLenum pname, GLdouble * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_598)(GLenum pname, GLdouble * params)
-{
-   DISPATCH(CullParameterdvEXT, (pname, params), (F, "glCullParameterdvEXT(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_599)(GLenum pname, GLfloat * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_599)(GLenum pname, GLfloat * params)
-{
-   DISPATCH(CullParameterfvEXT, (pname, params), (F, "glCullParameterfvEXT(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3b)(GLbyte red, GLbyte green, GLbyte blue)
-{
-   DISPATCH(SecondaryColor3bEXT, (red, green, blue), (F, "glSecondaryColor3b(%d, %d, %d);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3bEXT)(GLbyte red, GLbyte green, GLbyte blue)
-{
-   DISPATCH(SecondaryColor3bEXT, (red, green, blue), (F, "glSecondaryColor3bEXT(%d, %d, %d);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3bv)(const GLbyte * v)
-{
-   DISPATCH(SecondaryColor3bvEXT, (v), (F, "glSecondaryColor3bv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3bvEXT)(const GLbyte * v)
-{
-   DISPATCH(SecondaryColor3bvEXT, (v), (F, "glSecondaryColor3bvEXT(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3d)(GLdouble red, GLdouble green, GLdouble blue)
-{
-   DISPATCH(SecondaryColor3dEXT, (red, green, blue), (F, "glSecondaryColor3d(%f, %f, %f);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3dEXT)(GLdouble red, GLdouble green, GLdouble blue)
-{
-   DISPATCH(SecondaryColor3dEXT, (red, green, blue), (F, "glSecondaryColor3dEXT(%f, %f, %f);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3dv)(const GLdouble * v)
-{
-   DISPATCH(SecondaryColor3dvEXT, (v), (F, "glSecondaryColor3dv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3dvEXT)(const GLdouble * v)
-{
-   DISPATCH(SecondaryColor3dvEXT, (v), (F, "glSecondaryColor3dvEXT(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3f)(GLfloat red, GLfloat green, GLfloat blue)
-{
-   DISPATCH(SecondaryColor3fEXT, (red, green, blue), (F, "glSecondaryColor3f(%f, %f, %f);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3fEXT)(GLfloat red, GLfloat green, GLfloat blue)
-{
-   DISPATCH(SecondaryColor3fEXT, (red, green, blue), (F, "glSecondaryColor3fEXT(%f, %f, %f);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3fv)(const GLfloat * v)
-{
-   DISPATCH(SecondaryColor3fvEXT, (v), (F, "glSecondaryColor3fv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3fvEXT)(const GLfloat * v)
-{
-   DISPATCH(SecondaryColor3fvEXT, (v), (F, "glSecondaryColor3fvEXT(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3i)(GLint red, GLint green, GLint blue)
-{
-   DISPATCH(SecondaryColor3iEXT, (red, green, blue), (F, "glSecondaryColor3i(%d, %d, %d);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3iEXT)(GLint red, GLint green, GLint blue)
-{
-   DISPATCH(SecondaryColor3iEXT, (red, green, blue), (F, "glSecondaryColor3iEXT(%d, %d, %d);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3iv)(const GLint * v)
-{
-   DISPATCH(SecondaryColor3ivEXT, (v), (F, "glSecondaryColor3iv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3ivEXT)(const GLint * v)
-{
-   DISPATCH(SecondaryColor3ivEXT, (v), (F, "glSecondaryColor3ivEXT(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3s)(GLshort red, GLshort green, GLshort blue)
-{
-   DISPATCH(SecondaryColor3sEXT, (red, green, blue), (F, "glSecondaryColor3s(%d, %d, %d);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3sEXT)(GLshort red, GLshort green, GLshort blue)
-{
-   DISPATCH(SecondaryColor3sEXT, (red, green, blue), (F, "glSecondaryColor3sEXT(%d, %d, %d);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3sv)(const GLshort * v)
-{
-   DISPATCH(SecondaryColor3svEXT, (v), (F, "glSecondaryColor3sv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3svEXT)(const GLshort * v)
-{
-   DISPATCH(SecondaryColor3svEXT, (v), (F, "glSecondaryColor3svEXT(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3ub)(GLubyte red, GLubyte green, GLubyte blue)
-{
-   DISPATCH(SecondaryColor3ubEXT, (red, green, blue), (F, "glSecondaryColor3ub(%d, %d, %d);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3ubEXT)(GLubyte red, GLubyte green, GLubyte blue)
-{
-   DISPATCH(SecondaryColor3ubEXT, (red, green, blue), (F, "glSecondaryColor3ubEXT(%d, %d, %d);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3ubv)(const GLubyte * v)
-{
-   DISPATCH(SecondaryColor3ubvEXT, (v), (F, "glSecondaryColor3ubv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3ubvEXT)(const GLubyte * v)
-{
-   DISPATCH(SecondaryColor3ubvEXT, (v), (F, "glSecondaryColor3ubvEXT(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3ui)(GLuint red, GLuint green, GLuint blue)
-{
-   DISPATCH(SecondaryColor3uiEXT, (red, green, blue), (F, "glSecondaryColor3ui(%d, %d, %d);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3uiEXT)(GLuint red, GLuint green, GLuint blue)
-{
-   DISPATCH(SecondaryColor3uiEXT, (red, green, blue), (F, "glSecondaryColor3uiEXT(%d, %d, %d);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3uiv)(const GLuint * v)
-{
-   DISPATCH(SecondaryColor3uivEXT, (v), (F, "glSecondaryColor3uiv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3uivEXT)(const GLuint * v)
-{
-   DISPATCH(SecondaryColor3uivEXT, (v), (F, "glSecondaryColor3uivEXT(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3us)(GLushort red, GLushort green, GLushort blue)
-{
-   DISPATCH(SecondaryColor3usEXT, (red, green, blue), (F, "glSecondaryColor3us(%d, %d, %d);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3usEXT)(GLushort red, GLushort green, GLushort blue)
-{
-   DISPATCH(SecondaryColor3usEXT, (red, green, blue), (F, "glSecondaryColor3usEXT(%d, %d, %d);\n", red, green, blue));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3usv)(const GLushort * v)
-{
-   DISPATCH(SecondaryColor3usvEXT, (v), (F, "glSecondaryColor3usv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColor3usvEXT)(const GLushort * v)
-{
-   DISPATCH(SecondaryColor3usvEXT, (v), (F, "glSecondaryColor3usvEXT(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColorPointer)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer)
-{
-   DISPATCH(SecondaryColorPointerEXT, (size, type, stride, pointer), (F, "glSecondaryColorPointer(%d, 0x%x, %d, %p);\n", size, type, stride, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SecondaryColorPointerEXT)(GLint size, GLenum type, GLsizei stride, const GLvoid * pointer)
-{
-   DISPATCH(SecondaryColorPointerEXT, (size, type, stride, pointer), (F, "glSecondaryColorPointerEXT(%d, 0x%x, %d, %p);\n", size, type, stride, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiDrawArrays)(GLenum mode, GLint * first, GLsizei * count, GLsizei primcount)
-{
-   DISPATCH(MultiDrawArraysEXT, (mode, first, count, primcount), (F, "glMultiDrawArrays(0x%x, %p, %p, %d);\n", mode, (const void *) first, (const void *) count, primcount));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiDrawArraysEXT)(GLenum mode, GLint * first, GLsizei * count, GLsizei primcount)
-{
-   DISPATCH(MultiDrawArraysEXT, (mode, first, count, primcount), (F, "glMultiDrawArraysEXT(0x%x, %p, %p, %d);\n", mode, (const void *) first, (const void *) count, primcount));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiDrawElements)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount)
-{
-   DISPATCH(MultiDrawElementsEXT, (mode, count, type, indices, primcount), (F, "glMultiDrawElements(0x%x, %p, 0x%x, %p, %d);\n", mode, (const void *) count, type, (const void *) indices, primcount));
-}
-
-KEYWORD1 void KEYWORD2 NAME(MultiDrawElementsEXT)(GLenum mode, const GLsizei * count, GLenum type, const GLvoid ** indices, GLsizei primcount)
-{
-   DISPATCH(MultiDrawElementsEXT, (mode, count, type, indices, primcount), (F, "glMultiDrawElementsEXT(0x%x, %p, 0x%x, %p, %d);\n", mode, (const void *) count, type, (const void *) indices, primcount));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FogCoordPointer)(GLenum type, GLsizei stride, const GLvoid * pointer)
-{
-   DISPATCH(FogCoordPointerEXT, (type, stride, pointer), (F, "glFogCoordPointer(0x%x, %d, %p);\n", type, stride, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FogCoordPointerEXT)(GLenum type, GLsizei stride, const GLvoid * pointer)
-{
-   DISPATCH(FogCoordPointerEXT, (type, stride, pointer), (F, "glFogCoordPointerEXT(0x%x, %d, %p);\n", type, stride, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FogCoordd)(GLdouble coord)
-{
-   DISPATCH(FogCoorddEXT, (coord), (F, "glFogCoordd(%f);\n", coord));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FogCoorddEXT)(GLdouble coord)
-{
-   DISPATCH(FogCoorddEXT, (coord), (F, "glFogCoorddEXT(%f);\n", coord));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FogCoorddv)(const GLdouble * coord)
-{
-   DISPATCH(FogCoorddvEXT, (coord), (F, "glFogCoorddv(%p);\n", (const void *) coord));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FogCoorddvEXT)(const GLdouble * coord)
-{
-   DISPATCH(FogCoorddvEXT, (coord), (F, "glFogCoorddvEXT(%p);\n", (const void *) coord));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FogCoordf)(GLfloat coord)
-{
-   DISPATCH(FogCoordfEXT, (coord), (F, "glFogCoordf(%f);\n", coord));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FogCoordfEXT)(GLfloat coord)
-{
-   DISPATCH(FogCoordfEXT, (coord), (F, "glFogCoordfEXT(%f);\n", coord));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FogCoordfv)(const GLfloat * coord)
-{
-   DISPATCH(FogCoordfvEXT, (coord), (F, "glFogCoordfv(%p);\n", (const void *) coord));
-}
-
-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_624)(GLenum mode);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_624)(GLenum mode)
-{
-   DISPATCH(PixelTexGenSGIX, (mode), (F, "glPixelTexGenSGIX(0x%x);\n", mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BlendFuncSeparate)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
-{
-   DISPATCH(BlendFuncSeparateEXT, (sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha), (F, "glBlendFuncSeparate(0x%x, 0x%x, 0x%x, 0x%x);\n", sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BlendFuncSeparateEXT)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha)
-{
-   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_625)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_625)(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));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FlushVertexArrayRangeNV)(void)
-{
-   DISPATCH(FlushVertexArrayRangeNV, (), (F, "glFlushVertexArrayRangeNV();\n"));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexArrayRangeNV)(GLsizei length, const GLvoid * pointer)
-{
-   DISPATCH(VertexArrayRangeNV, (length, pointer), (F, "glVertexArrayRangeNV(%d, %p);\n", length, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CombinerInputNV)(GLenum stage, GLenum portion, GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)
-{
-   DISPATCH(CombinerInputNV, (stage, portion, variable, input, mapping, componentUsage), (F, "glCombinerInputNV(0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x);\n", stage, portion, variable, input, mapping, componentUsage));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CombinerOutputNV)(GLenum stage, GLenum portion, GLenum abOutput, GLenum cdOutput, GLenum sumOutput, GLenum scale, GLenum bias, GLboolean abDotProduct, GLboolean cdDotProduct, GLboolean muxSum)
-{
-   DISPATCH(CombinerOutputNV, (stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum), (F, "glCombinerOutputNV(0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, 0x%x, %d, %d, %d);\n", stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CombinerParameterfNV)(GLenum pname, GLfloat param)
-{
-   DISPATCH(CombinerParameterfNV, (pname, param), (F, "glCombinerParameterfNV(0x%x, %f);\n", pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CombinerParameterfvNV)(GLenum pname, const GLfloat * params)
-{
-   DISPATCH(CombinerParameterfvNV, (pname, params), (F, "glCombinerParameterfvNV(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CombinerParameteriNV)(GLenum pname, GLint param)
-{
-   DISPATCH(CombinerParameteriNV, (pname, param), (F, "glCombinerParameteriNV(0x%x, %d);\n", pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(CombinerParameterivNV)(GLenum pname, const GLint * params)
-{
-   DISPATCH(CombinerParameterivNV, (pname, params), (F, "glCombinerParameterivNV(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FinalCombinerInputNV)(GLenum variable, GLenum input, GLenum mapping, GLenum componentUsage)
-{
-   DISPATCH(FinalCombinerInputNV, (variable, input, mapping, componentUsage), (F, "glFinalCombinerInputNV(0x%x, 0x%x, 0x%x, 0x%x);\n", variable, input, mapping, componentUsage));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetCombinerInputParameterfvNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetCombinerInputParameterfvNV, (stage, portion, variable, pname, params), (F, "glGetCombinerInputParameterfvNV(0x%x, 0x%x, 0x%x, 0x%x, %p);\n", stage, portion, variable, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetCombinerInputParameterivNV)(GLenum stage, GLenum portion, GLenum variable, GLenum pname, GLint * params)
-{
-   DISPATCH(GetCombinerInputParameterivNV, (stage, portion, variable, pname, params), (F, "glGetCombinerInputParameterivNV(0x%x, 0x%x, 0x%x, 0x%x, %p);\n", stage, portion, variable, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetCombinerOutputParameterfvNV)(GLenum stage, GLenum portion, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetCombinerOutputParameterfvNV, (stage, portion, pname, params), (F, "glGetCombinerOutputParameterfvNV(0x%x, 0x%x, 0x%x, %p);\n", stage, portion, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetCombinerOutputParameterivNV)(GLenum stage, GLenum portion, GLenum pname, GLint * params)
-{
-   DISPATCH(GetCombinerOutputParameterivNV, (stage, portion, pname, params), (F, "glGetCombinerOutputParameterivNV(0x%x, 0x%x, 0x%x, %p);\n", stage, portion, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetFinalCombinerInputParameterfvNV)(GLenum variable, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetFinalCombinerInputParameterfvNV, (variable, pname, params), (F, "glGetFinalCombinerInputParameterfvNV(0x%x, 0x%x, %p);\n", variable, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetFinalCombinerInputParameterivNV)(GLenum variable, GLenum pname, GLint * params)
-{
-   DISPATCH(GetFinalCombinerInputParameterivNV, (variable, pname, params), (F, "glGetFinalCombinerInputParameterivNV(0x%x, 0x%x, %p);\n", variable, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ResizeBuffersMESA)(void)
-{
-   DISPATCH(ResizeBuffersMESA, (), (F, "glResizeBuffersMESA();\n"));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2d)(GLdouble x, GLdouble y)
-{
-   DISPATCH(WindowPos2dMESA, (x, y), (F, "glWindowPos2d(%f, %f);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2dARB)(GLdouble x, GLdouble y)
-{
-   DISPATCH(WindowPos2dMESA, (x, y), (F, "glWindowPos2dARB(%f, %f);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2dMESA)(GLdouble x, GLdouble y)
-{
-   DISPATCH(WindowPos2dMESA, (x, y), (F, "glWindowPos2dMESA(%f, %f);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2dv)(const GLdouble * v)
-{
-   DISPATCH(WindowPos2dvMESA, (v), (F, "glWindowPos2dv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2dvARB)(const GLdouble * v)
-{
-   DISPATCH(WindowPos2dvMESA, (v), (F, "glWindowPos2dvARB(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2dvMESA)(const GLdouble * v)
-{
-   DISPATCH(WindowPos2dvMESA, (v), (F, "glWindowPos2dvMESA(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2f)(GLfloat x, GLfloat y)
-{
-   DISPATCH(WindowPos2fMESA, (x, y), (F, "glWindowPos2f(%f, %f);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2fARB)(GLfloat x, GLfloat y)
-{
-   DISPATCH(WindowPos2fMESA, (x, y), (F, "glWindowPos2fARB(%f, %f);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2fMESA)(GLfloat x, GLfloat y)
-{
-   DISPATCH(WindowPos2fMESA, (x, y), (F, "glWindowPos2fMESA(%f, %f);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2fv)(const GLfloat * v)
-{
-   DISPATCH(WindowPos2fvMESA, (v), (F, "glWindowPos2fv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2fvARB)(const GLfloat * v)
-{
-   DISPATCH(WindowPos2fvMESA, (v), (F, "glWindowPos2fvARB(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2fvMESA)(const GLfloat * v)
-{
-   DISPATCH(WindowPos2fvMESA, (v), (F, "glWindowPos2fvMESA(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2i)(GLint x, GLint y)
-{
-   DISPATCH(WindowPos2iMESA, (x, y), (F, "glWindowPos2i(%d, %d);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2iARB)(GLint x, GLint y)
-{
-   DISPATCH(WindowPos2iMESA, (x, y), (F, "glWindowPos2iARB(%d, %d);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2iMESA)(GLint x, GLint y)
-{
-   DISPATCH(WindowPos2iMESA, (x, y), (F, "glWindowPos2iMESA(%d, %d);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2iv)(const GLint * v)
-{
-   DISPATCH(WindowPos2ivMESA, (v), (F, "glWindowPos2iv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2ivARB)(const GLint * v)
-{
-   DISPATCH(WindowPos2ivMESA, (v), (F, "glWindowPos2ivARB(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2ivMESA)(const GLint * v)
-{
-   DISPATCH(WindowPos2ivMESA, (v), (F, "glWindowPos2ivMESA(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2s)(GLshort x, GLshort y)
-{
-   DISPATCH(WindowPos2sMESA, (x, y), (F, "glWindowPos2s(%d, %d);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2sARB)(GLshort x, GLshort y)
-{
-   DISPATCH(WindowPos2sMESA, (x, y), (F, "glWindowPos2sARB(%d, %d);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2sMESA)(GLshort x, GLshort y)
-{
-   DISPATCH(WindowPos2sMESA, (x, y), (F, "glWindowPos2sMESA(%d, %d);\n", x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2sv)(const GLshort * v)
-{
-   DISPATCH(WindowPos2svMESA, (v), (F, "glWindowPos2sv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2svARB)(const GLshort * v)
-{
-   DISPATCH(WindowPos2svMESA, (v), (F, "glWindowPos2svARB(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos2svMESA)(const GLshort * v)
-{
-   DISPATCH(WindowPos2svMESA, (v), (F, "glWindowPos2svMESA(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3d)(GLdouble x, GLdouble y, GLdouble z)
-{
-   DISPATCH(WindowPos3dMESA, (x, y, z), (F, "glWindowPos3d(%f, %f, %f);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3dARB)(GLdouble x, GLdouble y, GLdouble z)
-{
-   DISPATCH(WindowPos3dMESA, (x, y, z), (F, "glWindowPos3dARB(%f, %f, %f);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3dMESA)(GLdouble x, GLdouble y, GLdouble z)
-{
-   DISPATCH(WindowPos3dMESA, (x, y, z), (F, "glWindowPos3dMESA(%f, %f, %f);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3dv)(const GLdouble * v)
-{
-   DISPATCH(WindowPos3dvMESA, (v), (F, "glWindowPos3dv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3dvARB)(const GLdouble * v)
-{
-   DISPATCH(WindowPos3dvMESA, (v), (F, "glWindowPos3dvARB(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3dvMESA)(const GLdouble * v)
-{
-   DISPATCH(WindowPos3dvMESA, (v), (F, "glWindowPos3dvMESA(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3f)(GLfloat x, GLfloat y, GLfloat z)
-{
-   DISPATCH(WindowPos3fMESA, (x, y, z), (F, "glWindowPos3f(%f, %f, %f);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3fARB)(GLfloat x, GLfloat y, GLfloat z)
-{
-   DISPATCH(WindowPos3fMESA, (x, y, z), (F, "glWindowPos3fARB(%f, %f, %f);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3fMESA)(GLfloat x, GLfloat y, GLfloat z)
-{
-   DISPATCH(WindowPos3fMESA, (x, y, z), (F, "glWindowPos3fMESA(%f, %f, %f);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3fv)(const GLfloat * v)
-{
-   DISPATCH(WindowPos3fvMESA, (v), (F, "glWindowPos3fv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3fvARB)(const GLfloat * v)
-{
-   DISPATCH(WindowPos3fvMESA, (v), (F, "glWindowPos3fvARB(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3fvMESA)(const GLfloat * v)
-{
-   DISPATCH(WindowPos3fvMESA, (v), (F, "glWindowPos3fvMESA(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3i)(GLint x, GLint y, GLint z)
-{
-   DISPATCH(WindowPos3iMESA, (x, y, z), (F, "glWindowPos3i(%d, %d, %d);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3iARB)(GLint x, GLint y, GLint z)
-{
-   DISPATCH(WindowPos3iMESA, (x, y, z), (F, "glWindowPos3iARB(%d, %d, %d);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3iMESA)(GLint x, GLint y, GLint z)
-{
-   DISPATCH(WindowPos3iMESA, (x, y, z), (F, "glWindowPos3iMESA(%d, %d, %d);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3iv)(const GLint * v)
-{
-   DISPATCH(WindowPos3ivMESA, (v), (F, "glWindowPos3iv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3ivARB)(const GLint * v)
-{
-   DISPATCH(WindowPos3ivMESA, (v), (F, "glWindowPos3ivARB(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3ivMESA)(const GLint * v)
-{
-   DISPATCH(WindowPos3ivMESA, (v), (F, "glWindowPos3ivMESA(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3s)(GLshort x, GLshort y, GLshort z)
-{
-   DISPATCH(WindowPos3sMESA, (x, y, z), (F, "glWindowPos3s(%d, %d, %d);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3sARB)(GLshort x, GLshort y, GLshort z)
-{
-   DISPATCH(WindowPos3sMESA, (x, y, z), (F, "glWindowPos3sARB(%d, %d, %d);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3sMESA)(GLshort x, GLshort y, GLshort z)
-{
-   DISPATCH(WindowPos3sMESA, (x, y, z), (F, "glWindowPos3sMESA(%d, %d, %d);\n", x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3sv)(const GLshort * v)
-{
-   DISPATCH(WindowPos3svMESA, (v), (F, "glWindowPos3sv(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3svARB)(const GLshort * v)
-{
-   DISPATCH(WindowPos3svMESA, (v), (F, "glWindowPos3svARB(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos3svMESA)(const GLshort * v)
-{
-   DISPATCH(WindowPos3svMESA, (v), (F, "glWindowPos3svMESA(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos4dMESA)(GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-{
-   DISPATCH(WindowPos4dMESA, (x, y, z, w), (F, "glWindowPos4dMESA(%f, %f, %f, %f);\n", x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos4dvMESA)(const GLdouble * v)
-{
-   DISPATCH(WindowPos4dvMESA, (v), (F, "glWindowPos4dvMESA(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos4fMESA)(GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-{
-   DISPATCH(WindowPos4fMESA, (x, y, z, w), (F, "glWindowPos4fMESA(%f, %f, %f, %f);\n", x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos4fvMESA)(const GLfloat * v)
-{
-   DISPATCH(WindowPos4fvMESA, (v), (F, "glWindowPos4fvMESA(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos4iMESA)(GLint x, GLint y, GLint z, GLint w)
-{
-   DISPATCH(WindowPos4iMESA, (x, y, z, w), (F, "glWindowPos4iMESA(%d, %d, %d, %d);\n", x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos4ivMESA)(const GLint * v)
-{
-   DISPATCH(WindowPos4ivMESA, (v), (F, "glWindowPos4ivMESA(%p);\n", (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(WindowPos4sMESA)(GLshort x, GLshort y, GLshort z, GLshort w)
-{
-   DISPATCH(WindowPos4sMESA, (x, y, z, w), (F, "glWindowPos4sMESA(%d, %d, %d, %d);\n", x, y, z, w));
-}
-
-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_666)(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_666)(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_667)(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_667)(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_668)(GLsizei n, const GLuint * fences);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_668)(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_669)(GLuint fence);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_669)(GLuint fence)
-{
-   DISPATCH(FinishFenceNV, (fence), (F, "glFinishFenceNV(%d);\n", fence));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_670)(GLsizei n, GLuint * fences);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_670)(GLsizei n, GLuint * fences)
-{
-   DISPATCH(GenFencesNV, (n, fences), (F, "glGenFencesNV(%d, %p);\n", n, (const void *) fences));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_671)(GLuint fence, GLenum pname, GLint * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_671)(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_672)(GLuint fence);
-
-KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_672)(GLuint fence)
-{
-   RETURN_DISPATCH(IsFenceNV, (fence), (F, "glIsFenceNV(%d);\n", fence));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_673)(GLuint fence, GLenum condition);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_673)(GLuint fence, GLenum condition)
-{
-   DISPATCH(SetFenceNV, (fence, condition), (F, "glSetFenceNV(%d, 0x%x);\n", fence, condition));
-}
-
-KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_674)(GLuint fence);
-
-KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_674)(GLuint fence)
-{
-   RETURN_DISPATCH(TestFenceNV, (fence), (F, "glTestFenceNV(%d);\n", fence));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(AreProgramsResidentNV)(GLsizei n, const GLuint * ids, GLboolean * residences)
-{
-   RETURN_DISPATCH(AreProgramsResidentNV, (n, ids, residences), (F, "glAreProgramsResidentNV(%d, %p, %p);\n", n, (const void *) ids, (const void *) residences));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindProgramARB)(GLenum target, GLuint program)
-{
-   DISPATCH(BindProgramNV, (target, program), (F, "glBindProgramARB(0x%x, %d);\n", target, program));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindProgramNV)(GLenum target, GLuint program)
-{
-   DISPATCH(BindProgramNV, (target, program), (F, "glBindProgramNV(0x%x, %d);\n", target, program));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DeleteProgramsARB)(GLsizei n, const GLuint * programs)
-{
-   DISPATCH(DeleteProgramsNV, (n, programs), (F, "glDeleteProgramsARB(%d, %p);\n", n, (const void *) programs));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DeleteProgramsNV)(GLsizei n, const GLuint * programs)
-{
-   DISPATCH(DeleteProgramsNV, (n, programs), (F, "glDeleteProgramsNV(%d, %p);\n", n, (const void *) programs));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ExecuteProgramNV)(GLenum target, GLuint id, const GLfloat * params)
-{
-   DISPATCH(ExecuteProgramNV, (target, id, params), (F, "glExecuteProgramNV(0x%x, %d, %p);\n", target, id, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GenProgramsARB)(GLsizei n, GLuint * programs)
-{
-   DISPATCH(GenProgramsNV, (n, programs), (F, "glGenProgramsARB(%d, %p);\n", n, (const void *) programs));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GenProgramsNV)(GLsizei n, GLuint * programs)
-{
-   DISPATCH(GenProgramsNV, (n, programs), (F, "glGenProgramsNV(%d, %p);\n", n, (const void *) programs));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetProgramParameterdvNV)(GLenum target, GLuint index, GLenum pname, GLdouble * params)
-{
-   DISPATCH(GetProgramParameterdvNV, (target, index, pname, params), (F, "glGetProgramParameterdvNV(0x%x, %d, 0x%x, %p);\n", target, index, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetProgramParameterfvNV)(GLenum target, GLuint index, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetProgramParameterfvNV, (target, index, pname, params), (F, "glGetProgramParameterfvNV(0x%x, %d, 0x%x, %p);\n", target, index, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetProgramStringNV)(GLuint id, GLenum pname, GLubyte * program)
-{
-   DISPATCH(GetProgramStringNV, (id, pname, program), (F, "glGetProgramStringNV(%d, 0x%x, %p);\n", id, pname, (const void *) program));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetProgramivNV)(GLuint id, GLenum pname, GLint * params)
-{
-   DISPATCH(GetProgramivNV, (id, pname, params), (F, "glGetProgramivNV(%d, 0x%x, %p);\n", id, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetTrackMatrixivNV)(GLenum target, GLuint address, GLenum pname, GLint * params)
-{
-   DISPATCH(GetTrackMatrixivNV, (target, address, pname, params), (F, "glGetTrackMatrixivNV(0x%x, %d, 0x%x, %p);\n", target, address, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetVertexAttribPointerv)(GLuint index, GLenum pname, GLvoid ** pointer)
-{
-   DISPATCH(GetVertexAttribPointervNV, (index, pname, pointer), (F, "glGetVertexAttribPointerv(%d, 0x%x, %p);\n", index, pname, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetVertexAttribPointervARB)(GLuint index, GLenum pname, GLvoid ** pointer)
-{
-   DISPATCH(GetVertexAttribPointervNV, (index, pname, pointer), (F, "glGetVertexAttribPointervARB(%d, 0x%x, %p);\n", index, pname, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetVertexAttribPointervNV)(GLuint index, GLenum pname, GLvoid ** pointer)
-{
-   DISPATCH(GetVertexAttribPointervNV, (index, pname, pointer), (F, "glGetVertexAttribPointervNV(%d, 0x%x, %p);\n", index, pname, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetVertexAttribdvNV)(GLuint index, GLenum pname, GLdouble * params)
-{
-   DISPATCH(GetVertexAttribdvNV, (index, pname, params), (F, "glGetVertexAttribdvNV(%d, 0x%x, %p);\n", index, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetVertexAttribfvNV)(GLuint index, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetVertexAttribfvNV, (index, pname, params), (F, "glGetVertexAttribfvNV(%d, 0x%x, %p);\n", index, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetVertexAttribivNV)(GLuint index, GLenum pname, GLint * params)
-{
-   DISPATCH(GetVertexAttribivNV, (index, pname, params), (F, "glGetVertexAttribivNV(%d, 0x%x, %p);\n", index, pname, (const void *) params));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsProgramARB)(GLuint program)
-{
-   RETURN_DISPATCH(IsProgramNV, (program), (F, "glIsProgramARB(%d);\n", program));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsProgramNV)(GLuint program)
-{
-   RETURN_DISPATCH(IsProgramNV, (program), (F, "glIsProgramNV(%d);\n", program));
-}
-
-KEYWORD1 void KEYWORD2 NAME(LoadProgramNV)(GLenum target, GLuint id, GLsizei len, const GLubyte * program)
-{
-   DISPATCH(LoadProgramNV, (target, id, len, program), (F, "glLoadProgramNV(0x%x, %d, %d, %p);\n", target, id, len, (const void *) program));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramParameters4dvNV)(GLenum target, GLuint index, GLuint num, const GLdouble * params)
-{
-   DISPATCH(ProgramParameters4dvNV, (target, index, num, params), (F, "glProgramParameters4dvNV(0x%x, %d, %d, %p);\n", target, index, num, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramParameters4fvNV)(GLenum target, GLuint index, GLuint num, const GLfloat * params)
-{
-   DISPATCH(ProgramParameters4fvNV, (target, index, num, params), (F, "glProgramParameters4fvNV(0x%x, %d, %d, %p);\n", target, index, num, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RequestResidentProgramsNV)(GLsizei n, const GLuint * ids)
-{
-   DISPATCH(RequestResidentProgramsNV, (n, ids), (F, "glRequestResidentProgramsNV(%d, %p);\n", n, (const void *) ids));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TrackMatrixNV)(GLenum target, GLuint address, GLenum matrix, GLenum transform)
-{
-   DISPATCH(TrackMatrixNV, (target, address, matrix, transform), (F, "glTrackMatrixNV(0x%x, %d, 0x%x, 0x%x);\n", target, address, matrix, transform));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib1dNV)(GLuint index, GLdouble x)
-{
-   DISPATCH(VertexAttrib1dNV, (index, x), (F, "glVertexAttrib1dNV(%d, %f);\n", index, x));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib1dvNV)(GLuint index, const GLdouble * v)
-{
-   DISPATCH(VertexAttrib1dvNV, (index, v), (F, "glVertexAttrib1dvNV(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib1fNV)(GLuint index, GLfloat x)
-{
-   DISPATCH(VertexAttrib1fNV, (index, x), (F, "glVertexAttrib1fNV(%d, %f);\n", index, x));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib1fvNV)(GLuint index, const GLfloat * v)
-{
-   DISPATCH(VertexAttrib1fvNV, (index, v), (F, "glVertexAttrib1fvNV(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib1sNV)(GLuint index, GLshort x)
-{
-   DISPATCH(VertexAttrib1sNV, (index, x), (F, "glVertexAttrib1sNV(%d, %d);\n", index, x));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib1svNV)(GLuint index, const GLshort * v)
-{
-   DISPATCH(VertexAttrib1svNV, (index, v), (F, "glVertexAttrib1svNV(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib2dNV)(GLuint index, GLdouble x, GLdouble y)
-{
-   DISPATCH(VertexAttrib2dNV, (index, x, y), (F, "glVertexAttrib2dNV(%d, %f, %f);\n", index, x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib2dvNV)(GLuint index, const GLdouble * v)
-{
-   DISPATCH(VertexAttrib2dvNV, (index, v), (F, "glVertexAttrib2dvNV(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib2fNV)(GLuint index, GLfloat x, GLfloat y)
-{
-   DISPATCH(VertexAttrib2fNV, (index, x, y), (F, "glVertexAttrib2fNV(%d, %f, %f);\n", index, x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib2fvNV)(GLuint index, const GLfloat * v)
-{
-   DISPATCH(VertexAttrib2fvNV, (index, v), (F, "glVertexAttrib2fvNV(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib2sNV)(GLuint index, GLshort x, GLshort y)
-{
-   DISPATCH(VertexAttrib2sNV, (index, x, y), (F, "glVertexAttrib2sNV(%d, %d, %d);\n", index, x, y));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib2svNV)(GLuint index, const GLshort * v)
-{
-   DISPATCH(VertexAttrib2svNV, (index, v), (F, "glVertexAttrib2svNV(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib3dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z)
-{
-   DISPATCH(VertexAttrib3dNV, (index, x, y, z), (F, "glVertexAttrib3dNV(%d, %f, %f, %f);\n", index, x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib3dvNV)(GLuint index, const GLdouble * v)
-{
-   DISPATCH(VertexAttrib3dvNV, (index, v), (F, "glVertexAttrib3dvNV(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib3fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z)
-{
-   DISPATCH(VertexAttrib3fNV, (index, x, y, z), (F, "glVertexAttrib3fNV(%d, %f, %f, %f);\n", index, x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib3fvNV)(GLuint index, const GLfloat * v)
-{
-   DISPATCH(VertexAttrib3fvNV, (index, v), (F, "glVertexAttrib3fvNV(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib3sNV)(GLuint index, GLshort x, GLshort y, GLshort z)
-{
-   DISPATCH(VertexAttrib3sNV, (index, x, y, z), (F, "glVertexAttrib3sNV(%d, %d, %d, %d);\n", index, x, y, z));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib3svNV)(GLuint index, const GLshort * v)
-{
-   DISPATCH(VertexAttrib3svNV, (index, v), (F, "glVertexAttrib3svNV(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4dNV)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-{
-   DISPATCH(VertexAttrib4dNV, (index, x, y, z, w), (F, "glVertexAttrib4dNV(%d, %f, %f, %f, %f);\n", index, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4dvNV)(GLuint index, const GLdouble * v)
-{
-   DISPATCH(VertexAttrib4dvNV, (index, v), (F, "glVertexAttrib4dvNV(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4fNV)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-{
-   DISPATCH(VertexAttrib4fNV, (index, x, y, z, w), (F, "glVertexAttrib4fNV(%d, %f, %f, %f, %f);\n", index, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4fvNV)(GLuint index, const GLfloat * v)
-{
-   DISPATCH(VertexAttrib4fvNV, (index, v), (F, "glVertexAttrib4fvNV(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4sNV)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w)
-{
-   DISPATCH(VertexAttrib4sNV, (index, x, y, z, w), (F, "glVertexAttrib4sNV(%d, %d, %d, %d, %d);\n", index, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4svNV)(GLuint index, const GLshort * v)
-{
-   DISPATCH(VertexAttrib4svNV, (index, v), (F, "glVertexAttrib4svNV(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4ubNV)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w)
-{
-   DISPATCH(VertexAttrib4ubNV, (index, x, y, z, w), (F, "glVertexAttrib4ubNV(%d, %d, %d, %d, %d);\n", index, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttrib4ubvNV)(GLuint index, const GLubyte * v)
-{
-   DISPATCH(VertexAttrib4ubvNV, (index, v), (F, "glVertexAttrib4ubvNV(%d, %p);\n", index, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttribPointerNV)(GLuint index, GLint size, GLenum type, GLsizei stride, const GLvoid * pointer)
-{
-   DISPATCH(VertexAttribPointerNV, (index, size, type, stride, pointer), (F, "glVertexAttribPointerNV(%d, %d, 0x%x, %d, %p);\n", index, size, type, stride, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttribs1dvNV)(GLuint index, GLsizei n, const GLdouble * v)
-{
-   DISPATCH(VertexAttribs1dvNV, (index, n, v), (F, "glVertexAttribs1dvNV(%d, %d, %p);\n", index, n, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttribs1fvNV)(GLuint index, GLsizei n, const GLfloat * v)
-{
-   DISPATCH(VertexAttribs1fvNV, (index, n, v), (F, "glVertexAttribs1fvNV(%d, %d, %p);\n", index, n, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttribs1svNV)(GLuint index, GLsizei n, const GLshort * v)
-{
-   DISPATCH(VertexAttribs1svNV, (index, n, v), (F, "glVertexAttribs1svNV(%d, %d, %p);\n", index, n, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttribs2dvNV)(GLuint index, GLsizei n, const GLdouble * v)
-{
-   DISPATCH(VertexAttribs2dvNV, (index, n, v), (F, "glVertexAttribs2dvNV(%d, %d, %p);\n", index, n, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttribs2fvNV)(GLuint index, GLsizei n, const GLfloat * v)
-{
-   DISPATCH(VertexAttribs2fvNV, (index, n, v), (F, "glVertexAttribs2fvNV(%d, %d, %p);\n", index, n, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttribs2svNV)(GLuint index, GLsizei n, const GLshort * v)
-{
-   DISPATCH(VertexAttribs2svNV, (index, n, v), (F, "glVertexAttribs2svNV(%d, %d, %p);\n", index, n, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttribs3dvNV)(GLuint index, GLsizei n, const GLdouble * v)
-{
-   DISPATCH(VertexAttribs3dvNV, (index, n, v), (F, "glVertexAttribs3dvNV(%d, %d, %p);\n", index, n, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttribs3fvNV)(GLuint index, GLsizei n, const GLfloat * v)
-{
-   DISPATCH(VertexAttribs3fvNV, (index, n, v), (F, "glVertexAttribs3fvNV(%d, %d, %p);\n", index, n, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttribs3svNV)(GLuint index, GLsizei n, const GLshort * v)
-{
-   DISPATCH(VertexAttribs3svNV, (index, n, v), (F, "glVertexAttribs3svNV(%d, %d, %p);\n", index, n, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttribs4dvNV)(GLuint index, GLsizei n, const GLdouble * v)
-{
-   DISPATCH(VertexAttribs4dvNV, (index, n, v), (F, "glVertexAttribs4dvNV(%d, %d, %p);\n", index, n, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttribs4fvNV)(GLuint index, GLsizei n, const GLfloat * v)
-{
-   DISPATCH(VertexAttribs4fvNV, (index, n, v), (F, "glVertexAttribs4fvNV(%d, %d, %p);\n", index, n, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttribs4svNV)(GLuint index, GLsizei n, const GLshort * v)
-{
-   DISPATCH(VertexAttribs4svNV, (index, n, v), (F, "glVertexAttribs4svNV(%d, %d, %p);\n", index, n, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(VertexAttribs4ubvNV)(GLuint index, GLsizei n, const GLubyte * v)
-{
-   DISPATCH(VertexAttribs4ubvNV, (index, n, v), (F, "glVertexAttribs4ubvNV(%d, %d, %p);\n", index, n, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetTexBumpParameterfvATI)(GLenum pname, GLfloat * param)
-{
-   DISPATCH(GetTexBumpParameterfvATI, (pname, param), (F, "glGetTexBumpParameterfvATI(0x%x, %p);\n", pname, (const void *) param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetTexBumpParameterivATI)(GLenum pname, GLint * param)
-{
-   DISPATCH(GetTexBumpParameterivATI, (pname, param), (F, "glGetTexBumpParameterivATI(0x%x, %p);\n", pname, (const void *) param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexBumpParameterfvATI)(GLenum pname, const GLfloat * param)
-{
-   DISPATCH(TexBumpParameterfvATI, (pname, param), (F, "glTexBumpParameterfvATI(0x%x, %p);\n", pname, (const void *) param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TexBumpParameterivATI)(GLenum pname, const GLint * param)
-{
-   DISPATCH(TexBumpParameterivATI, (pname, param), (F, "glTexBumpParameterivATI(0x%x, %p);\n", pname, (const void *) param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(AlphaFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)
-{
-   DISPATCH(AlphaFragmentOp1ATI, (op, dst, dstMod, arg1, arg1Rep, arg1Mod), (F, "glAlphaFragmentOp1ATI(0x%x, %d, %d, %d, %d, %d);\n", op, dst, dstMod, arg1, arg1Rep, arg1Mod));
-}
-
-KEYWORD1 void KEYWORD2 NAME(AlphaFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)
-{
-   DISPATCH(AlphaFragmentOp2ATI, (op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod), (F, "glAlphaFragmentOp2ATI(0x%x, %d, %d, %d, %d, %d, %d, %d, %d);\n", op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod));
-}
-
-KEYWORD1 void KEYWORD2 NAME(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)
-{
-   DISPATCH(AlphaFragmentOp3ATI, (op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod), (F, "glAlphaFragmentOp3ATI(0x%x, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d);\n", op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BeginFragmentShaderATI)(void)
-{
-   DISPATCH(BeginFragmentShaderATI, (), (F, "glBeginFragmentShaderATI();\n"));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindFragmentShaderATI)(GLuint id)
-{
-   DISPATCH(BindFragmentShaderATI, (id), (F, "glBindFragmentShaderATI(%d);\n", id));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ColorFragmentOp1ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod)
-{
-   DISPATCH(ColorFragmentOp1ATI, (op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod), (F, "glColorFragmentOp1ATI(0x%x, %d, %d, %d, %d, %d, %d);\n", op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ColorFragmentOp2ATI)(GLenum op, GLuint dst, GLuint dstMask, GLuint dstMod, GLuint arg1, GLuint arg1Rep, GLuint arg1Mod, GLuint arg2, GLuint arg2Rep, GLuint arg2Mod)
-{
-   DISPATCH(ColorFragmentOp2ATI, (op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod), (F, "glColorFragmentOp2ATI(0x%x, %d, %d, %d, %d, %d, %d, %d, %d, %d);\n", op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod));
-}
-
-KEYWORD1 void KEYWORD2 NAME(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)
-{
-   DISPATCH(ColorFragmentOp3ATI, (op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod), (F, "glColorFragmentOp3ATI(0x%x, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d);\n", op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DeleteFragmentShaderATI)(GLuint id)
-{
-   DISPATCH(DeleteFragmentShaderATI, (id), (F, "glDeleteFragmentShaderATI(%d);\n", id));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EndFragmentShaderATI)(void)
-{
-   DISPATCH(EndFragmentShaderATI, (), (F, "glEndFragmentShaderATI();\n"));
-}
-
-KEYWORD1 GLuint KEYWORD2 NAME(GenFragmentShadersATI)(GLuint range)
-{
-   RETURN_DISPATCH(GenFragmentShadersATI, (range), (F, "glGenFragmentShadersATI(%d);\n", range));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PassTexCoordATI)(GLuint dst, GLuint coord, GLenum swizzle)
-{
-   DISPATCH(PassTexCoordATI, (dst, coord, swizzle), (F, "glPassTexCoordATI(%d, %d, 0x%x);\n", dst, coord, swizzle));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SampleMapATI)(GLuint dst, GLuint interp, GLenum swizzle)
-{
-   DISPATCH(SampleMapATI, (dst, interp, swizzle), (F, "glSampleMapATI(%d, %d, 0x%x);\n", dst, interp, swizzle));
-}
-
-KEYWORD1 void KEYWORD2 NAME(SetFragmentShaderConstantATI)(GLuint dst, const GLfloat * value)
-{
-   DISPATCH(SetFragmentShaderConstantATI, (dst, value), (F, "glSetFragmentShaderConstantATI(%d, %p);\n", dst, (const void *) value));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PointParameteri)(GLenum pname, GLint param)
-{
-   DISPATCH(PointParameteriNV, (pname, param), (F, "glPointParameteri(0x%x, %d);\n", pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PointParameteriNV)(GLenum pname, GLint param)
-{
-   DISPATCH(PointParameteriNV, (pname, param), (F, "glPointParameteriNV(0x%x, %d);\n", pname, param));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PointParameteriv)(GLenum pname, const GLint * params)
-{
-   DISPATCH(PointParameterivNV, (pname, params), (F, "glPointParameteriv(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(PointParameterivNV)(GLenum pname, const GLint * params)
-{
-   DISPATCH(PointParameterivNV, (pname, params), (F, "glPointParameterivNV(0x%x, %p);\n", pname, (const void *) params));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_755)(GLenum face);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_755)(GLenum face)
-{
-   DISPATCH(ActiveStencilFaceEXT, (face), (F, "glActiveStencilFaceEXT(0x%x);\n", face));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_756)(GLuint array);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_756)(GLuint array)
-{
-   DISPATCH(BindVertexArrayAPPLE, (array), (F, "glBindVertexArrayAPPLE(%d);\n", array));
-}
-
-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_757)(GLsizei n, const GLuint * arrays);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_757)(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_758)(GLsizei n, GLuint * arrays);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_758)(GLsizei n, GLuint * arrays)
-{
-   DISPATCH(GenVertexArraysAPPLE, (n, arrays), (F, "glGenVertexArraysAPPLE(%d, %p);\n", n, (const void *) arrays));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsVertexArray)(GLuint array)
-{
-   RETURN_DISPATCH(IsVertexArrayAPPLE, (array), (F, "glIsVertexArray(%d);\n", array));
-}
-
-KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_759)(GLuint array);
-
-KEYWORD1_ALT GLboolean KEYWORD2 NAME(_dispatch_stub_759)(GLuint array)
-{
-   RETURN_DISPATCH(IsVertexArrayAPPLE, (array), (F, "glIsVertexArrayAPPLE(%d);\n", array));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetProgramNamedParameterdvNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble * params)
-{
-   DISPATCH(GetProgramNamedParameterdvNV, (id, len, name, params), (F, "glGetProgramNamedParameterdvNV(%d, %d, %p, %p);\n", id, len, (const void *) name, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetProgramNamedParameterfvNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat * params)
-{
-   DISPATCH(GetProgramNamedParameterfvNV, (id, len, name, params), (F, "glGetProgramNamedParameterfvNV(%d, %d, %p, %p);\n", id, len, (const void *) name, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramNamedParameter4dNV)(GLuint id, GLsizei len, const GLubyte * name, GLdouble x, GLdouble y, GLdouble z, GLdouble w)
-{
-   DISPATCH(ProgramNamedParameter4dNV, (id, len, name, x, y, z, w), (F, "glProgramNamedParameter4dNV(%d, %d, %p, %f, %f, %f, %f);\n", id, len, (const void *) name, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramNamedParameter4dvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLdouble * v)
-{
-   DISPATCH(ProgramNamedParameter4dvNV, (id, len, name, v), (F, "glProgramNamedParameter4dvNV(%d, %d, %p, %p);\n", id, len, (const void *) name, (const void *) v));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramNamedParameter4fNV)(GLuint id, GLsizei len, const GLubyte * name, GLfloat x, GLfloat y, GLfloat z, GLfloat w)
-{
-   DISPATCH(ProgramNamedParameter4fNV, (id, len, name, x, y, z, w), (F, "glProgramNamedParameter4fNV(%d, %d, %p, %f, %f, %f, %f);\n", id, len, (const void *) name, x, y, z, w));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProgramNamedParameter4fvNV)(GLuint id, GLsizei len, const GLubyte * name, const GLfloat * v)
-{
-   DISPATCH(ProgramNamedParameter4fvNV, (id, len, name, v), (F, "glProgramNamedParameter4fvNV(%d, %d, %p, %p);\n", id, len, (const void *) name, (const void *) v));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_766)(GLclampd zmin, GLclampd zmax);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_766)(GLclampd zmin, GLclampd zmax)
-{
-   DISPATCH(DepthBoundsEXT, (zmin, zmax), (F, "glDepthBoundsEXT(%f, %f);\n", zmin, zmax));
-}
-
-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_767)(GLenum modeRGB, GLenum modeA);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_767)(GLenum modeRGB, GLenum modeA)
-{
-   DISPATCH(BlendEquationSeparateEXT, (modeRGB, modeA), (F, "glBlendEquationSeparateEXT(0x%x, 0x%x);\n", modeRGB, modeA));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindFramebuffer)(GLenum target, GLuint framebuffer)
-{
-   DISPATCH(BindFramebufferEXT, (target, framebuffer), (F, "glBindFramebuffer(0x%x, %d);\n", target, framebuffer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindFramebufferEXT)(GLenum target, GLuint framebuffer)
-{
-   DISPATCH(BindFramebufferEXT, (target, framebuffer), (F, "glBindFramebufferEXT(0x%x, %d);\n", target, framebuffer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindRenderbuffer)(GLenum target, GLuint renderbuffer)
-{
-   DISPATCH(BindRenderbufferEXT, (target, renderbuffer), (F, "glBindRenderbuffer(0x%x, %d);\n", target, renderbuffer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindRenderbufferEXT)(GLenum target, GLuint renderbuffer)
-{
-   DISPATCH(BindRenderbufferEXT, (target, renderbuffer), (F, "glBindRenderbufferEXT(0x%x, %d);\n", target, renderbuffer));
-}
-
-KEYWORD1 GLenum KEYWORD2 NAME(CheckFramebufferStatus)(GLenum target)
-{
-   RETURN_DISPATCH(CheckFramebufferStatusEXT, (target), (F, "glCheckFramebufferStatus(0x%x);\n", target));
-}
-
-KEYWORD1 GLenum KEYWORD2 NAME(CheckFramebufferStatusEXT)(GLenum target)
-{
-   RETURN_DISPATCH(CheckFramebufferStatusEXT, (target), (F, "glCheckFramebufferStatusEXT(0x%x);\n", target));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DeleteFramebuffers)(GLsizei n, const GLuint * framebuffers)
-{
-   DISPATCH(DeleteFramebuffersEXT, (n, framebuffers), (F, "glDeleteFramebuffers(%d, %p);\n", n, (const void *) framebuffers));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DeleteFramebuffersEXT)(GLsizei n, const GLuint * framebuffers)
-{
-   DISPATCH(DeleteFramebuffersEXT, (n, framebuffers), (F, "glDeleteFramebuffersEXT(%d, %p);\n", n, (const void *) framebuffers));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DeleteRenderbuffers)(GLsizei n, const GLuint * renderbuffers)
-{
-   DISPATCH(DeleteRenderbuffersEXT, (n, renderbuffers), (F, "glDeleteRenderbuffers(%d, %p);\n", n, (const void *) renderbuffers));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DeleteRenderbuffersEXT)(GLsizei n, const GLuint * renderbuffers)
-{
-   DISPATCH(DeleteRenderbuffersEXT, (n, renderbuffers), (F, "glDeleteRenderbuffersEXT(%d, %p);\n", n, (const void *) renderbuffers));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FramebufferRenderbuffer)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
-{
-   DISPATCH(FramebufferRenderbufferEXT, (target, attachment, renderbuffertarget, renderbuffer), (F, "glFramebufferRenderbuffer(0x%x, 0x%x, 0x%x, %d);\n", target, attachment, renderbuffertarget, renderbuffer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FramebufferRenderbufferEXT)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer)
-{
-   DISPATCH(FramebufferRenderbufferEXT, (target, attachment, renderbuffertarget, renderbuffer), (F, "glFramebufferRenderbufferEXT(0x%x, 0x%x, 0x%x, %d);\n", target, attachment, renderbuffertarget, renderbuffer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FramebufferTexture1D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
-{
-   DISPATCH(FramebufferTexture1DEXT, (target, attachment, textarget, texture, level), (F, "glFramebufferTexture1D(0x%x, 0x%x, 0x%x, %d, %d);\n", target, attachment, textarget, texture, level));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FramebufferTexture1DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
-{
-   DISPATCH(FramebufferTexture1DEXT, (target, attachment, textarget, texture, level), (F, "glFramebufferTexture1DEXT(0x%x, 0x%x, 0x%x, %d, %d);\n", target, attachment, textarget, texture, level));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FramebufferTexture2D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
-{
-   DISPATCH(FramebufferTexture2DEXT, (target, attachment, textarget, texture, level), (F, "glFramebufferTexture2D(0x%x, 0x%x, 0x%x, %d, %d);\n", target, attachment, textarget, texture, level));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FramebufferTexture2DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level)
-{
-   DISPATCH(FramebufferTexture2DEXT, (target, attachment, textarget, texture, level), (F, "glFramebufferTexture2DEXT(0x%x, 0x%x, 0x%x, %d, %d);\n", target, attachment, textarget, texture, level));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FramebufferTexture3D)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
-{
-   DISPATCH(FramebufferTexture3DEXT, (target, attachment, textarget, texture, level, zoffset), (F, "glFramebufferTexture3D(0x%x, 0x%x, 0x%x, %d, %d, %d);\n", target, attachment, textarget, texture, level, zoffset));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FramebufferTexture3DEXT)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset)
-{
-   DISPATCH(FramebufferTexture3DEXT, (target, attachment, textarget, texture, level, zoffset), (F, "glFramebufferTexture3DEXT(0x%x, 0x%x, 0x%x, %d, %d, %d);\n", target, attachment, textarget, texture, level, zoffset));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GenFramebuffers)(GLsizei n, GLuint * framebuffers)
-{
-   DISPATCH(GenFramebuffersEXT, (n, framebuffers), (F, "glGenFramebuffers(%d, %p);\n", n, (const void *) framebuffers));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GenFramebuffersEXT)(GLsizei n, GLuint * framebuffers)
-{
-   DISPATCH(GenFramebuffersEXT, (n, framebuffers), (F, "glGenFramebuffersEXT(%d, %p);\n", n, (const void *) framebuffers));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GenRenderbuffers)(GLsizei n, GLuint * renderbuffers)
-{
-   DISPATCH(GenRenderbuffersEXT, (n, renderbuffers), (F, "glGenRenderbuffers(%d, %p);\n", n, (const void *) renderbuffers));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GenRenderbuffersEXT)(GLsizei n, GLuint * renderbuffers)
-{
-   DISPATCH(GenRenderbuffersEXT, (n, renderbuffers), (F, "glGenRenderbuffersEXT(%d, %p);\n", n, (const void *) renderbuffers));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GenerateMipmap)(GLenum target)
-{
-   DISPATCH(GenerateMipmapEXT, (target), (F, "glGenerateMipmap(0x%x);\n", target));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GenerateMipmapEXT)(GLenum target)
-{
-   DISPATCH(GenerateMipmapEXT, (target), (F, "glGenerateMipmapEXT(0x%x);\n", target));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetFramebufferAttachmentParameteriv)(GLenum target, GLenum attachment, GLenum pname, GLint * params)
-{
-   DISPATCH(GetFramebufferAttachmentParameterivEXT, (target, attachment, pname, params), (F, "glGetFramebufferAttachmentParameteriv(0x%x, 0x%x, 0x%x, %p);\n", target, attachment, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetFramebufferAttachmentParameterivEXT)(GLenum target, GLenum attachment, GLenum pname, GLint * params)
-{
-   DISPATCH(GetFramebufferAttachmentParameterivEXT, (target, attachment, pname, params), (F, "glGetFramebufferAttachmentParameterivEXT(0x%x, 0x%x, 0x%x, %p);\n", target, attachment, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetRenderbufferParameteriv)(GLenum target, GLenum pname, GLint * params)
-{
-   DISPATCH(GetRenderbufferParameterivEXT, (target, pname, params), (F, "glGetRenderbufferParameteriv(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetRenderbufferParameterivEXT)(GLenum target, GLenum pname, GLint * params)
-{
-   DISPATCH(GetRenderbufferParameterivEXT, (target, pname, params), (F, "glGetRenderbufferParameterivEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsFramebuffer)(GLuint framebuffer)
-{
-   RETURN_DISPATCH(IsFramebufferEXT, (framebuffer), (F, "glIsFramebuffer(%d);\n", framebuffer));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsFramebufferEXT)(GLuint framebuffer)
-{
-   RETURN_DISPATCH(IsFramebufferEXT, (framebuffer), (F, "glIsFramebufferEXT(%d);\n", framebuffer));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsRenderbuffer)(GLuint renderbuffer)
-{
-   RETURN_DISPATCH(IsRenderbufferEXT, (renderbuffer), (F, "glIsRenderbuffer(%d);\n", renderbuffer));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsRenderbufferEXT)(GLuint renderbuffer)
-{
-   RETURN_DISPATCH(IsRenderbufferEXT, (renderbuffer), (F, "glIsRenderbufferEXT(%d);\n", renderbuffer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RenderbufferStorage)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
-{
-   DISPATCH(RenderbufferStorageEXT, (target, internalformat, width, height), (F, "glRenderbufferStorage(0x%x, 0x%x, %d, %d);\n", target, internalformat, width, height));
-}
-
-KEYWORD1 void KEYWORD2 NAME(RenderbufferStorageEXT)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height)
-{
-   DISPATCH(RenderbufferStorageEXT, (target, internalformat, width, height), (F, "glRenderbufferStorageEXT(0x%x, 0x%x, %d, %d);\n", target, internalformat, width, height));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BlitFramebuffer)(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, "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_785)(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_785)(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_786)(GLenum target, GLenum pname, GLint param);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_786)(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_787)(GLenum target, GLintptr offset, GLsizeiptr size);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_787)(GLenum target, GLintptr offset, GLsizeiptr size)
-{
-   DISPATCH(FlushMappedBufferRangeAPPLE, (target, offset, size), (F, "glFlushMappedBufferRangeAPPLE(0x%x, %d, %d);\n", target, offset, size));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FramebufferTextureLayer)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
-{
-   DISPATCH(FramebufferTextureLayerEXT, (target, attachment, texture, level, layer), (F, "glFramebufferTextureLayer(0x%x, 0x%x, %d, %d, %d);\n", target, attachment, texture, level, layer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(FramebufferTextureLayerEXT)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer)
-{
-   DISPATCH(FramebufferTextureLayerEXT, (target, attachment, texture, level, layer), (F, "glFramebufferTextureLayerEXT(0x%x, 0x%x, %d, %d, %d);\n", target, attachment, texture, level, layer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ColorMaskIndexedEXT)(GLuint buf, GLboolean r, GLboolean g, GLboolean b, GLboolean a)
-{
-   DISPATCH(ColorMaskIndexedEXT, (buf, r, g, b, a), (F, "glColorMaskIndexedEXT(%d, %d, %d, %d, %d);\n", buf, r, g, b, a));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DisableIndexedEXT)(GLenum target, GLuint index)
-{
-   DISPATCH(DisableIndexedEXT, (target, index), (F, "glDisableIndexedEXT(0x%x, %d);\n", target, index));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EnableIndexedEXT)(GLenum target, GLuint index)
-{
-   DISPATCH(EnableIndexedEXT, (target, index), (F, "glEnableIndexedEXT(0x%x, %d);\n", target, index));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetBooleanIndexedvEXT)(GLenum value, GLuint index, GLboolean * data)
-{
-   DISPATCH(GetBooleanIndexedvEXT, (value, index, data), (F, "glGetBooleanIndexedvEXT(0x%x, %d, %p);\n", value, index, (const void *) data));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetIntegerIndexedvEXT)(GLenum value, GLuint index, GLint * data)
-{
-   DISPATCH(GetIntegerIndexedvEXT, (value, index, data), (F, "glGetIntegerIndexedvEXT(0x%x, %d, %p);\n", value, index, (const void *) data));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsEnabledIndexedEXT)(GLenum target, GLuint index)
-{
-   RETURN_DISPATCH(IsEnabledIndexedEXT, (target, index), (F, "glIsEnabledIndexedEXT(0x%x, %d);\n", target, index));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BeginConditionalRenderNV)(GLuint query, GLenum mode)
-{
-   DISPATCH(BeginConditionalRenderNV, (query, mode), (F, "glBeginConditionalRenderNV(%d, 0x%x);\n", query, mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EndConditionalRenderNV)(void)
-{
-   DISPATCH(EndConditionalRenderNV, (), (F, "glEndConditionalRenderNV();\n"));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BeginTransformFeedbackEXT)(GLenum mode)
-{
-   DISPATCH(BeginTransformFeedbackEXT, (mode), (F, "glBeginTransformFeedbackEXT(0x%x);\n", mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BeginTransformFeedback)(GLenum mode)
-{
-   DISPATCH(BeginTransformFeedbackEXT, (mode), (F, "glBeginTransformFeedback(0x%x);\n", mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindBufferBaseEXT)(GLenum target, GLuint index, GLuint buffer)
-{
-   DISPATCH(BindBufferBaseEXT, (target, index, buffer), (F, "glBindBufferBaseEXT(0x%x, %d, %d);\n", target, index, buffer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindBufferBase)(GLenum target, GLuint index, GLuint buffer)
-{
-   DISPATCH(BindBufferBaseEXT, (target, index, buffer), (F, "glBindBufferBase(0x%x, %d, %d);\n", target, index, buffer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindBufferOffsetEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset)
-{
-   DISPATCH(BindBufferOffsetEXT, (target, index, buffer, offset), (F, "glBindBufferOffsetEXT(0x%x, %d, %d, %d);\n", target, index, buffer, offset));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindBufferRangeEXT)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
-{
-   DISPATCH(BindBufferRangeEXT, (target, index, buffer, offset, size), (F, "glBindBufferRangeEXT(0x%x, %d, %d, %d, %d);\n", target, index, buffer, offset, size));
-}
-
-KEYWORD1 void KEYWORD2 NAME(BindBufferRange)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size)
-{
-   DISPATCH(BindBufferRangeEXT, (target, index, buffer, offset, size), (F, "glBindBufferRange(0x%x, %d, %d, %d, %d);\n", target, index, buffer, offset, size));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EndTransformFeedbackEXT)(void)
-{
-   DISPATCH(EndTransformFeedbackEXT, (), (F, "glEndTransformFeedbackEXT();\n"));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EndTransformFeedback)(void)
-{
-   DISPATCH(EndTransformFeedbackEXT, (), (F, "glEndTransformFeedback();\n"));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetTransformFeedbackVaryingEXT)(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name)
-{
-   DISPATCH(GetTransformFeedbackVaryingEXT, (program, index, bufSize, length, size, type, name), (F, "glGetTransformFeedbackVaryingEXT(%d, %d, %d, %p, %p, %p, %p);\n", program, index, bufSize, (const void *) length, (const void *) size, (const void *) type, (const void *) name));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetTransformFeedbackVarying)(GLuint program, GLuint index, GLsizei bufSize, GLsizei * length, GLsizei * size, GLenum * type, GLchar * name)
-{
-   DISPATCH(GetTransformFeedbackVaryingEXT, (program, index, bufSize, length, size, type, name), (F, "glGetTransformFeedbackVarying(%d, %d, %d, %p, %p, %p, %p);\n", program, index, bufSize, (const void *) length, (const void *) size, (const void *) type, (const void *) name));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TransformFeedbackVaryingsEXT)(GLuint program, GLsizei count, const char ** varyings, GLenum bufferMode)
-{
-   DISPATCH(TransformFeedbackVaryingsEXT, (program, count, varyings, bufferMode), (F, "glTransformFeedbackVaryingsEXT(%d, %d, %p, 0x%x);\n", program, count, (const void *) varyings, bufferMode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(TransformFeedbackVaryings)(GLuint program, GLsizei count, const char ** varyings, GLenum bufferMode)
-{
-   DISPATCH(TransformFeedbackVaryingsEXT, (program, count, varyings, bufferMode), (F, "glTransformFeedbackVaryings(%d, %d, %p, 0x%x);\n", program, count, (const void *) varyings, bufferMode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProvokingVertexEXT)(GLenum mode)
-{
-   DISPATCH(ProvokingVertexEXT, (mode), (F, "glProvokingVertexEXT(0x%x);\n", mode));
-}
-
-KEYWORD1 void KEYWORD2 NAME(ProvokingVertex)(GLenum mode)
-{
-   DISPATCH(ProvokingVertexEXT, (mode), (F, "glProvokingVertex(0x%x);\n", mode));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_805)(GLenum target, GLenum pname, GLvoid ** params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_805)(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_806)(GLenum target, GLsizei length, GLvoid * pointer);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_806)(GLenum target, GLsizei length, GLvoid * pointer)
-{
-   DISPATCH(TextureRangeAPPLE, (target, length, pointer), (F, "glTextureRangeAPPLE(0x%x, %d, %p);\n", target, length, (const void *) pointer));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetObjectParameterivAPPLE)(GLenum objectType, GLuint name, GLenum pname, GLint * value)
-{
-   DISPATCH(GetObjectParameterivAPPLE, (objectType, name, pname, value), (F, "glGetObjectParameterivAPPLE(0x%x, %d, 0x%x, %p);\n", objectType, name, pname, (const void *) value));
-}
-
-KEYWORD1 GLenum KEYWORD2 NAME(ObjectPurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option)
-{
-   RETURN_DISPATCH(ObjectPurgeableAPPLE, (objectType, name, option), (F, "glObjectPurgeableAPPLE(0x%x, %d, 0x%x);\n", objectType, name, option));
-}
-
-KEYWORD1 GLenum KEYWORD2 NAME(ObjectUnpurgeableAPPLE)(GLenum objectType, GLuint name, GLenum option)
-{
-   RETURN_DISPATCH(ObjectUnpurgeableAPPLE, (objectType, name, option), (F, "glObjectUnpurgeableAPPLE(0x%x, %d, 0x%x);\n", objectType, name, option));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_810)(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_810)(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_811)(GLenum target, GLuint index, GLsizei count, const GLfloat * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_811)(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_812)(GLenum target, GLuint index, GLsizei count, const GLfloat * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_812)(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_813)(GLuint id, GLenum pname, GLint64EXT * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_813)(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_814)(GLuint id, GLenum pname, GLuint64EXT * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_814)(GLuint id, GLenum pname, GLuint64EXT * params)
-{
-   DISPATCH(GetQueryObjectui64vEXT, (id, pname, params), (F, "glGetQueryObjectui64vEXT(%d, 0x%x, %p);\n", id, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EGLImageTargetRenderbufferStorageOES)(GLenum target, GLvoid * writeOffset)
-{
-   DISPATCH(EGLImageTargetRenderbufferStorageOES, (target, writeOffset), (F, "glEGLImageTargetRenderbufferStorageOES(0x%x, %p);\n", target, (const void *) writeOffset));
-}
-
-KEYWORD1 void KEYWORD2 NAME(EGLImageTargetTexture2DOES)(GLenum target, GLvoid * writeOffset)
-{
-   DISPATCH(EGLImageTargetTexture2DOES, (target, writeOffset), (F, "glEGLImageTargetTexture2DOES(0x%x, %p);\n", target, (const void *) writeOffset));
-}
-
-
-#endif /* _GLAPI_SKIP_NORMAL_ENTRY_POINTS */
-
-/* these entry points might require different protocols */
-#ifndef _GLAPI_SKIP_PROTO_ENTRY_POINTS
-
-KEYWORD1 GLboolean KEYWORD2 NAME(AreTexturesResidentEXT)(GLsizei n, const GLuint * textures, GLboolean * residences)
-{
-   RETURN_DISPATCH(AreTexturesResident, (n, textures, residences), (F, "glAreTexturesResidentEXT(%d, %p, %p);\n", n, (const void *) textures, (const void *) residences));
-}
-
-KEYWORD1 void KEYWORD2 NAME(DeleteTexturesEXT)(GLsizei n, const GLuint * textures)
-{
-   DISPATCH(DeleteTextures, (n, textures), (F, "glDeleteTexturesEXT(%d, %p);\n", n, (const void *) textures));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GenTexturesEXT)(GLsizei n, GLuint * textures)
-{
-   DISPATCH(GenTextures, (n, textures), (F, "glGenTexturesEXT(%d, %p);\n", n, (const void *) textures));
-}
-
-KEYWORD1 GLboolean KEYWORD2 NAME(IsTextureEXT)(GLuint texture)
-{
-   RETURN_DISPATCH(IsTexture, (texture), (F, "glIsTextureEXT(%d);\n", texture));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetColorTableEXT)(GLenum target, GLenum format, GLenum type, GLvoid * table)
-{
-   DISPATCH(GetColorTable, (target, format, type, table), (F, "glGetColorTableEXT(0x%x, 0x%x, 0x%x, %p);\n", target, format, type, (const void *) table));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_343)(GLenum target, GLenum format, GLenum type, GLvoid * table);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_343)(GLenum target, GLenum format, GLenum type, GLvoid * table)
-{
-   DISPATCH(GetColorTable, (target, format, type, table), (F, "glGetColorTableSGI(0x%x, 0x%x, 0x%x, %p);\n", target, format, type, (const void *) table));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetColorTableParameterfvEXT)(GLenum target, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetColorTableParameterfv, (target, pname, params), (F, "glGetColorTableParameterfvEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_344)(GLenum target, GLenum pname, GLfloat * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_344)(GLenum target, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetColorTableParameterfv, (target, pname, params), (F, "glGetColorTableParameterfvSGI(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1 void KEYWORD2 NAME(GetColorTableParameterivEXT)(GLenum target, GLenum pname, GLint * params)
-{
-   DISPATCH(GetColorTableParameteriv, (target, pname, params), (F, "glGetColorTableParameterivEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_345)(GLenum target, GLenum pname, GLint * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_345)(GLenum target, GLenum pname, GLint * params)
-{
-   DISPATCH(GetColorTableParameteriv, (target, pname, params), (F, "glGetColorTableParameterivSGI(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_356)(GLenum target, GLenum format, GLenum type, GLvoid * image);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_356)(GLenum target, GLenum format, GLenum type, GLvoid * image)
-{
-   DISPATCH(GetConvolutionFilter, (target, format, type, image), (F, "glGetConvolutionFilterEXT(0x%x, 0x%x, 0x%x, %p);\n", target, format, type, (const void *) image));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_357)(GLenum target, GLenum pname, GLfloat * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_357)(GLenum target, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetConvolutionParameterfv, (target, pname, params), (F, "glGetConvolutionParameterfvEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_358)(GLenum target, GLenum pname, GLint * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_358)(GLenum target, GLenum pname, GLint * params)
-{
-   DISPATCH(GetConvolutionParameteriv, (target, pname, params), (F, "glGetConvolutionParameterivEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_359)(GLenum target, GLenum format, GLenum type, GLvoid * row, GLvoid * column, GLvoid * span);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_359)(GLenum target, GLenum format, GLenum type, GLvoid * row, GLvoid * column, GLvoid * span)
-{
-   DISPATCH(GetSeparableFilter, (target, format, type, row, column, span), (F, "glGetSeparableFilterEXT(0x%x, 0x%x, 0x%x, %p, %p, %p);\n", target, format, type, (const void *) row, (const void *) column, (const void *) span));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_361)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_361)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values)
-{
-   DISPATCH(GetHistogram, (target, reset, format, type, values), (F, "glGetHistogramEXT(0x%x, %d, 0x%x, 0x%x, %p);\n", target, reset, format, type, (const void *) values));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_362)(GLenum target, GLenum pname, GLfloat * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_362)(GLenum target, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetHistogramParameterfv, (target, pname, params), (F, "glGetHistogramParameterfvEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_363)(GLenum target, GLenum pname, GLint * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_363)(GLenum target, GLenum pname, GLint * params)
-{
-   DISPATCH(GetHistogramParameteriv, (target, pname, params), (F, "glGetHistogramParameterivEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_364)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_364)(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values)
-{
-   DISPATCH(GetMinmax, (target, reset, format, type, values), (F, "glGetMinmaxEXT(0x%x, %d, 0x%x, 0x%x, %p);\n", target, reset, format, type, (const void *) values));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_365)(GLenum target, GLenum pname, GLfloat * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_365)(GLenum target, GLenum pname, GLfloat * params)
-{
-   DISPATCH(GetMinmaxParameterfv, (target, pname, params), (F, "glGetMinmaxParameterfvEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_366)(GLenum target, GLenum pname, GLint * params);
-
-KEYWORD1_ALT void KEYWORD2 NAME(_dispatch_stub_366)(GLenum target, GLenum pname, GLint * params)
-{
-   DISPATCH(GetMinmaxParameteriv, (target, pname, params), (F, "glGetMinmaxParameterivEXT(0x%x, 0x%x, %p);\n", target, pname, (const void *) params));
-}
-
-
-#endif /* _GLAPI_SKIP_PROTO_ENTRY_POINTS */
-
-
-#endif /* defined( NAME ) */
-
-/*
- * This is how a dispatch table can be initialized with all the functions
- * we generated above.
- */
-#ifdef DISPATCH_TABLE_NAME
-
-#ifndef TABLE_ENTRY
-#error TABLE_ENTRY must be defined
-#endif
-
-#ifdef _GLAPI_SKIP_NORMAL_ENTRY_POINTS
-#error _GLAPI_SKIP_NORMAL_ENTRY_POINTS must not be defined
-#endif
-
-_glapi_proc DISPATCH_TABLE_NAME[] = {
-   TABLE_ENTRY(NewList),
-   TABLE_ENTRY(EndList),
-   TABLE_ENTRY(CallList),
-   TABLE_ENTRY(CallLists),
-   TABLE_ENTRY(DeleteLists),
-   TABLE_ENTRY(GenLists),
-   TABLE_ENTRY(ListBase),
-   TABLE_ENTRY(Begin),
-   TABLE_ENTRY(Bitmap),
-   TABLE_ENTRY(Color3b),
-   TABLE_ENTRY(Color3bv),
-   TABLE_ENTRY(Color3d),
-   TABLE_ENTRY(Color3dv),
-   TABLE_ENTRY(Color3f),
-   TABLE_ENTRY(Color3fv),
-   TABLE_ENTRY(Color3i),
-   TABLE_ENTRY(Color3iv),
-   TABLE_ENTRY(Color3s),
-   TABLE_ENTRY(Color3sv),
-   TABLE_ENTRY(Color3ub),
-   TABLE_ENTRY(Color3ubv),
-   TABLE_ENTRY(Color3ui),
-   TABLE_ENTRY(Color3uiv),
-   TABLE_ENTRY(Color3us),
-   TABLE_ENTRY(Color3usv),
-   TABLE_ENTRY(Color4b),
-   TABLE_ENTRY(Color4bv),
-   TABLE_ENTRY(Color4d),
-   TABLE_ENTRY(Color4dv),
-   TABLE_ENTRY(Color4f),
-   TABLE_ENTRY(Color4fv),
-   TABLE_ENTRY(Color4i),
-   TABLE_ENTRY(Color4iv),
-   TABLE_ENTRY(Color4s),
-   TABLE_ENTRY(Color4sv),
-   TABLE_ENTRY(Color4ub),
-   TABLE_ENTRY(Color4ubv),
-   TABLE_ENTRY(Color4ui),
-   TABLE_ENTRY(Color4uiv),
-   TABLE_ENTRY(Color4us),
-   TABLE_ENTRY(Color4usv),
-   TABLE_ENTRY(EdgeFlag),
-   TABLE_ENTRY(EdgeFlagv),
-   TABLE_ENTRY(End),
-   TABLE_ENTRY(Indexd),
-   TABLE_ENTRY(Indexdv),
-   TABLE_ENTRY(Indexf),
-   TABLE_ENTRY(Indexfv),
-   TABLE_ENTRY(Indexi),
-   TABLE_ENTRY(Indexiv),
-   TABLE_ENTRY(Indexs),
-   TABLE_ENTRY(Indexsv),
-   TABLE_ENTRY(Normal3b),
-   TABLE_ENTRY(Normal3bv),
-   TABLE_ENTRY(Normal3d),
-   TABLE_ENTRY(Normal3dv),
-   TABLE_ENTRY(Normal3f),
-   TABLE_ENTRY(Normal3fv),
-   TABLE_ENTRY(Normal3i),
-   TABLE_ENTRY(Normal3iv),
-   TABLE_ENTRY(Normal3s),
-   TABLE_ENTRY(Normal3sv),
-   TABLE_ENTRY(RasterPos2d),
-   TABLE_ENTRY(RasterPos2dv),
-   TABLE_ENTRY(RasterPos2f),
-   TABLE_ENTRY(RasterPos2fv),
-   TABLE_ENTRY(RasterPos2i),
-   TABLE_ENTRY(RasterPos2iv),
-   TABLE_ENTRY(RasterPos2s),
-   TABLE_ENTRY(RasterPos2sv),
-   TABLE_ENTRY(RasterPos3d),
-   TABLE_ENTRY(RasterPos3dv),
-   TABLE_ENTRY(RasterPos3f),
-   TABLE_ENTRY(RasterPos3fv),
-   TABLE_ENTRY(RasterPos3i),
-   TABLE_ENTRY(RasterPos3iv),
-   TABLE_ENTRY(RasterPos3s),
-   TABLE_ENTRY(RasterPos3sv),
-   TABLE_ENTRY(RasterPos4d),
-   TABLE_ENTRY(RasterPos4dv),
-   TABLE_ENTRY(RasterPos4f),
-   TABLE_ENTRY(RasterPos4fv),
-   TABLE_ENTRY(RasterPos4i),
-   TABLE_ENTRY(RasterPos4iv),
-   TABLE_ENTRY(RasterPos4s),
-   TABLE_ENTRY(RasterPos4sv),
-   TABLE_ENTRY(Rectd),
-   TABLE_ENTRY(Rectdv),
-   TABLE_ENTRY(Rectf),
-   TABLE_ENTRY(Rectfv),
-   TABLE_ENTRY(Recti),
-   TABLE_ENTRY(Rectiv),
-   TABLE_ENTRY(Rects),
-   TABLE_ENTRY(Rectsv),
-   TABLE_ENTRY(TexCoord1d),
-   TABLE_ENTRY(TexCoord1dv),
-   TABLE_ENTRY(TexCoord1f),
-   TABLE_ENTRY(TexCoord1fv),
-   TABLE_ENTRY(TexCoord1i),
-   TABLE_ENTRY(TexCoord1iv),
-   TABLE_ENTRY(TexCoord1s),
-   TABLE_ENTRY(TexCoord1sv),
-   TABLE_ENTRY(TexCoord2d),
-   TABLE_ENTRY(TexCoord2dv),
-   TABLE_ENTRY(TexCoord2f),
-   TABLE_ENTRY(TexCoord2fv),
-   TABLE_ENTRY(TexCoord2i),
-   TABLE_ENTRY(TexCoord2iv),
-   TABLE_ENTRY(TexCoord2s),
-   TABLE_ENTRY(TexCoord2sv),
-   TABLE_ENTRY(TexCoord3d),
-   TABLE_ENTRY(TexCoord3dv),
-   TABLE_ENTRY(TexCoord3f),
-   TABLE_ENTRY(TexCoord3fv),
-   TABLE_ENTRY(TexCoord3i),
-   TABLE_ENTRY(TexCoord3iv),
-   TABLE_ENTRY(TexCoord3s),
-   TABLE_ENTRY(TexCoord3sv),
-   TABLE_ENTRY(TexCoord4d),
-   TABLE_ENTRY(TexCoord4dv),
-   TABLE_ENTRY(TexCoord4f),
-   TABLE_ENTRY(TexCoord4fv),
-   TABLE_ENTRY(TexCoord4i),
-   TABLE_ENTRY(TexCoord4iv),
-   TABLE_ENTRY(TexCoord4s),
-   TABLE_ENTRY(TexCoord4sv),
-   TABLE_ENTRY(Vertex2d),
-   TABLE_ENTRY(Vertex2dv),
-   TABLE_ENTRY(Vertex2f),
-   TABLE_ENTRY(Vertex2fv),
-   TABLE_ENTRY(Vertex2i),
-   TABLE_ENTRY(Vertex2iv),
-   TABLE_ENTRY(Vertex2s),
-   TABLE_ENTRY(Vertex2sv),
-   TABLE_ENTRY(Vertex3d),
-   TABLE_ENTRY(Vertex3dv),
-   TABLE_ENTRY(Vertex3f),
-   TABLE_ENTRY(Vertex3fv),
-   TABLE_ENTRY(Vertex3i),
-   TABLE_ENTRY(Vertex3iv),
-   TABLE_ENTRY(Vertex3s),
-   TABLE_ENTRY(Vertex3sv),
-   TABLE_ENTRY(Vertex4d),
-   TABLE_ENTRY(Vertex4dv),
-   TABLE_ENTRY(Vertex4f),
-   TABLE_ENTRY(Vertex4fv),
-   TABLE_ENTRY(Vertex4i),
-   TABLE_ENTRY(Vertex4iv),
-   TABLE_ENTRY(Vertex4s),
-   TABLE_ENTRY(Vertex4sv),
-   TABLE_ENTRY(ClipPlane),
-   TABLE_ENTRY(ColorMaterial),
-   TABLE_ENTRY(CullFace),
-   TABLE_ENTRY(Fogf),
-   TABLE_ENTRY(Fogfv),
-   TABLE_ENTRY(Fogi),
-   TABLE_ENTRY(Fogiv),
-   TABLE_ENTRY(FrontFace),
-   TABLE_ENTRY(Hint),
-   TABLE_ENTRY(Lightf),
-   TABLE_ENTRY(Lightfv),
-   TABLE_ENTRY(Lighti),
-   TABLE_ENTRY(Lightiv),
-   TABLE_ENTRY(LightModelf),
-   TABLE_ENTRY(LightModelfv),
-   TABLE_ENTRY(LightModeli),
-   TABLE_ENTRY(LightModeliv),
-   TABLE_ENTRY(LineStipple),
-   TABLE_ENTRY(LineWidth),
-   TABLE_ENTRY(Materialf),
-   TABLE_ENTRY(Materialfv),
-   TABLE_ENTRY(Materiali),
-   TABLE_ENTRY(Materialiv),
-   TABLE_ENTRY(PointSize),
-   TABLE_ENTRY(PolygonMode),
-   TABLE_ENTRY(PolygonStipple),
-   TABLE_ENTRY(Scissor),
-   TABLE_ENTRY(ShadeModel),
-   TABLE_ENTRY(TexParameterf),
-   TABLE_ENTRY(TexParameterfv),
-   TABLE_ENTRY(TexParameteri),
-   TABLE_ENTRY(TexParameteriv),
-   TABLE_ENTRY(TexImage1D),
-   TABLE_ENTRY(TexImage2D),
-   TABLE_ENTRY(TexEnvf),
-   TABLE_ENTRY(TexEnvfv),
-   TABLE_ENTRY(TexEnvi),
-   TABLE_ENTRY(TexEnviv),
-   TABLE_ENTRY(TexGend),
-   TABLE_ENTRY(TexGendv),
-   TABLE_ENTRY(TexGenf),
-   TABLE_ENTRY(TexGenfv),
-   TABLE_ENTRY(TexGeni),
-   TABLE_ENTRY(TexGeniv),
-   TABLE_ENTRY(FeedbackBuffer),
-   TABLE_ENTRY(SelectBuffer),
-   TABLE_ENTRY(RenderMode),
-   TABLE_ENTRY(InitNames),
-   TABLE_ENTRY(LoadName),
-   TABLE_ENTRY(PassThrough),
-   TABLE_ENTRY(PopName),
-   TABLE_ENTRY(PushName),
-   TABLE_ENTRY(DrawBuffer),
-   TABLE_ENTRY(Clear),
-   TABLE_ENTRY(ClearAccum),
-   TABLE_ENTRY(ClearIndex),
-   TABLE_ENTRY(ClearColor),
-   TABLE_ENTRY(ClearStencil),
-   TABLE_ENTRY(ClearDepth),
-   TABLE_ENTRY(StencilMask),
-   TABLE_ENTRY(ColorMask),
-   TABLE_ENTRY(DepthMask),
-   TABLE_ENTRY(IndexMask),
-   TABLE_ENTRY(Accum),
-   TABLE_ENTRY(Disable),
-   TABLE_ENTRY(Enable),
-   TABLE_ENTRY(Finish),
-   TABLE_ENTRY(Flush),
-   TABLE_ENTRY(PopAttrib),
-   TABLE_ENTRY(PushAttrib),
-   TABLE_ENTRY(Map1d),
-   TABLE_ENTRY(Map1f),
-   TABLE_ENTRY(Map2d),
-   TABLE_ENTRY(Map2f),
-   TABLE_ENTRY(MapGrid1d),
-   TABLE_ENTRY(MapGrid1f),
-   TABLE_ENTRY(MapGrid2d),
-   TABLE_ENTRY(MapGrid2f),
-   TABLE_ENTRY(EvalCoord1d),
-   TABLE_ENTRY(EvalCoord1dv),
-   TABLE_ENTRY(EvalCoord1f),
-   TABLE_ENTRY(EvalCoord1fv),
-   TABLE_ENTRY(EvalCoord2d),
-   TABLE_ENTRY(EvalCoord2dv),
-   TABLE_ENTRY(EvalCoord2f),
-   TABLE_ENTRY(EvalCoord2fv),
-   TABLE_ENTRY(EvalMesh1),
-   TABLE_ENTRY(EvalPoint1),
-   TABLE_ENTRY(EvalMesh2),
-   TABLE_ENTRY(EvalPoint2),
-   TABLE_ENTRY(AlphaFunc),
-   TABLE_ENTRY(BlendFunc),
-   TABLE_ENTRY(LogicOp),
-   TABLE_ENTRY(StencilFunc),
-   TABLE_ENTRY(StencilOp),
-   TABLE_ENTRY(DepthFunc),
-   TABLE_ENTRY(PixelZoom),
-   TABLE_ENTRY(PixelTransferf),
-   TABLE_ENTRY(PixelTransferi),
-   TABLE_ENTRY(PixelStoref),
-   TABLE_ENTRY(PixelStorei),
-   TABLE_ENTRY(PixelMapfv),
-   TABLE_ENTRY(PixelMapuiv),
-   TABLE_ENTRY(PixelMapusv),
-   TABLE_ENTRY(ReadBuffer),
-   TABLE_ENTRY(CopyPixels),
-   TABLE_ENTRY(ReadPixels),
-   TABLE_ENTRY(DrawPixels),
-   TABLE_ENTRY(GetBooleanv),
-   TABLE_ENTRY(GetClipPlane),
-   TABLE_ENTRY(GetDoublev),
-   TABLE_ENTRY(GetError),
-   TABLE_ENTRY(GetFloatv),
-   TABLE_ENTRY(GetIntegerv),
-   TABLE_ENTRY(GetLightfv),
-   TABLE_ENTRY(GetLightiv),
-   TABLE_ENTRY(GetMapdv),
-   TABLE_ENTRY(GetMapfv),
-   TABLE_ENTRY(GetMapiv),
-   TABLE_ENTRY(GetMaterialfv),
-   TABLE_ENTRY(GetMaterialiv),
-   TABLE_ENTRY(GetPixelMapfv),
-   TABLE_ENTRY(GetPixelMapuiv),
-   TABLE_ENTRY(GetPixelMapusv),
-   TABLE_ENTRY(GetPolygonStipple),
-   TABLE_ENTRY(GetString),
-   TABLE_ENTRY(GetTexEnvfv),
-   TABLE_ENTRY(GetTexEnviv),
-   TABLE_ENTRY(GetTexGendv),
-   TABLE_ENTRY(GetTexGenfv),
-   TABLE_ENTRY(GetTexGeniv),
-   TABLE_ENTRY(GetTexImage),
-   TABLE_ENTRY(GetTexParameterfv),
-   TABLE_ENTRY(GetTexParameteriv),
-   TABLE_ENTRY(GetTexLevelParameterfv),
-   TABLE_ENTRY(GetTexLevelParameteriv),
-   TABLE_ENTRY(IsEnabled),
-   TABLE_ENTRY(IsList),
-   TABLE_ENTRY(DepthRange),
-   TABLE_ENTRY(Frustum),
-   TABLE_ENTRY(LoadIdentity),
-   TABLE_ENTRY(LoadMatrixf),
-   TABLE_ENTRY(LoadMatrixd),
-   TABLE_ENTRY(MatrixMode),
-   TABLE_ENTRY(MultMatrixf),
-   TABLE_ENTRY(MultMatrixd),
-   TABLE_ENTRY(Ortho),
-   TABLE_ENTRY(PopMatrix),
-   TABLE_ENTRY(PushMatrix),
-   TABLE_ENTRY(Rotated),
-   TABLE_ENTRY(Rotatef),
-   TABLE_ENTRY(Scaled),
-   TABLE_ENTRY(Scalef),
-   TABLE_ENTRY(Translated),
-   TABLE_ENTRY(Translatef),
-   TABLE_ENTRY(Viewport),
-   TABLE_ENTRY(ArrayElement),
-   TABLE_ENTRY(BindTexture),
-   TABLE_ENTRY(ColorPointer),
-   TABLE_ENTRY(DisableClientState),
-   TABLE_ENTRY(DrawArrays),
-   TABLE_ENTRY(DrawElements),
-   TABLE_ENTRY(EdgeFlagPointer),
-   TABLE_ENTRY(EnableClientState),
-   TABLE_ENTRY(IndexPointer),
-   TABLE_ENTRY(Indexub),
-   TABLE_ENTRY(Indexubv),
-   TABLE_ENTRY(InterleavedArrays),
-   TABLE_ENTRY(NormalPointer),
-   TABLE_ENTRY(PolygonOffset),
-   TABLE_ENTRY(TexCoordPointer),
-   TABLE_ENTRY(VertexPointer),
-   TABLE_ENTRY(AreTexturesResident),
-   TABLE_ENTRY(CopyTexImage1D),
-   TABLE_ENTRY(CopyTexImage2D),
-   TABLE_ENTRY(CopyTexSubImage1D),
-   TABLE_ENTRY(CopyTexSubImage2D),
-   TABLE_ENTRY(DeleteTextures),
-   TABLE_ENTRY(GenTextures),
-   TABLE_ENTRY(GetPointerv),
-   TABLE_ENTRY(IsTexture),
-   TABLE_ENTRY(PrioritizeTextures),
-   TABLE_ENTRY(TexSubImage1D),
-   TABLE_ENTRY(TexSubImage2D),
-   TABLE_ENTRY(PopClientAttrib),
-   TABLE_ENTRY(PushClientAttrib),
-   TABLE_ENTRY(BlendColor),
-   TABLE_ENTRY(BlendEquation),
-   TABLE_ENTRY(DrawRangeElements),
-   TABLE_ENTRY(ColorTable),
-   TABLE_ENTRY(ColorTableParameterfv),
-   TABLE_ENTRY(ColorTableParameteriv),
-   TABLE_ENTRY(CopyColorTable),
-   TABLE_ENTRY(GetColorTable),
-   TABLE_ENTRY(GetColorTableParameterfv),
-   TABLE_ENTRY(GetColorTableParameteriv),
-   TABLE_ENTRY(ColorSubTable),
-   TABLE_ENTRY(CopyColorSubTable),
-   TABLE_ENTRY(ConvolutionFilter1D),
-   TABLE_ENTRY(ConvolutionFilter2D),
-   TABLE_ENTRY(ConvolutionParameterf),
-   TABLE_ENTRY(ConvolutionParameterfv),
-   TABLE_ENTRY(ConvolutionParameteri),
-   TABLE_ENTRY(ConvolutionParameteriv),
-   TABLE_ENTRY(CopyConvolutionFilter1D),
-   TABLE_ENTRY(CopyConvolutionFilter2D),
-   TABLE_ENTRY(GetConvolutionFilter),
-   TABLE_ENTRY(GetConvolutionParameterfv),
-   TABLE_ENTRY(GetConvolutionParameteriv),
-   TABLE_ENTRY(GetSeparableFilter),
-   TABLE_ENTRY(SeparableFilter2D),
-   TABLE_ENTRY(GetHistogram),
-   TABLE_ENTRY(GetHistogramParameterfv),
-   TABLE_ENTRY(GetHistogramParameteriv),
-   TABLE_ENTRY(GetMinmax),
-   TABLE_ENTRY(GetMinmaxParameterfv),
-   TABLE_ENTRY(GetMinmaxParameteriv),
-   TABLE_ENTRY(Histogram),
-   TABLE_ENTRY(Minmax),
-   TABLE_ENTRY(ResetHistogram),
-   TABLE_ENTRY(ResetMinmax),
-   TABLE_ENTRY(TexImage3D),
-   TABLE_ENTRY(TexSubImage3D),
-   TABLE_ENTRY(CopyTexSubImage3D),
-   TABLE_ENTRY(ActiveTextureARB),
-   TABLE_ENTRY(ClientActiveTextureARB),
-   TABLE_ENTRY(MultiTexCoord1dARB),
-   TABLE_ENTRY(MultiTexCoord1dvARB),
-   TABLE_ENTRY(MultiTexCoord1fARB),
-   TABLE_ENTRY(MultiTexCoord1fvARB),
-   TABLE_ENTRY(MultiTexCoord1iARB),
-   TABLE_ENTRY(MultiTexCoord1ivARB),
-   TABLE_ENTRY(MultiTexCoord1sARB),
-   TABLE_ENTRY(MultiTexCoord1svARB),
-   TABLE_ENTRY(MultiTexCoord2dARB),
-   TABLE_ENTRY(MultiTexCoord2dvARB),
-   TABLE_ENTRY(MultiTexCoord2fARB),
-   TABLE_ENTRY(MultiTexCoord2fvARB),
-   TABLE_ENTRY(MultiTexCoord2iARB),
-   TABLE_ENTRY(MultiTexCoord2ivARB),
-   TABLE_ENTRY(MultiTexCoord2sARB),
-   TABLE_ENTRY(MultiTexCoord2svARB),
-   TABLE_ENTRY(MultiTexCoord3dARB),
-   TABLE_ENTRY(MultiTexCoord3dvARB),
-   TABLE_ENTRY(MultiTexCoord3fARB),
-   TABLE_ENTRY(MultiTexCoord3fvARB),
-   TABLE_ENTRY(MultiTexCoord3iARB),
-   TABLE_ENTRY(MultiTexCoord3ivARB),
-   TABLE_ENTRY(MultiTexCoord3sARB),
-   TABLE_ENTRY(MultiTexCoord3svARB),
-   TABLE_ENTRY(MultiTexCoord4dARB),
-   TABLE_ENTRY(MultiTexCoord4dvARB),
-   TABLE_ENTRY(MultiTexCoord4fARB),
-   TABLE_ENTRY(MultiTexCoord4fvARB),
-   TABLE_ENTRY(MultiTexCoord4iARB),
-   TABLE_ENTRY(MultiTexCoord4ivARB),
-   TABLE_ENTRY(MultiTexCoord4sARB),
-   TABLE_ENTRY(MultiTexCoord4svARB),
-   TABLE_ENTRY(AttachShader),
-   TABLE_ENTRY(CreateProgram),
-   TABLE_ENTRY(CreateShader),
-   TABLE_ENTRY(DeleteProgram),
-   TABLE_ENTRY(DeleteShader),
-   TABLE_ENTRY(DetachShader),
-   TABLE_ENTRY(GetAttachedShaders),
-   TABLE_ENTRY(GetProgramInfoLog),
-   TABLE_ENTRY(GetProgramiv),
-   TABLE_ENTRY(GetShaderInfoLog),
-   TABLE_ENTRY(GetShaderiv),
-   TABLE_ENTRY(IsProgram),
-   TABLE_ENTRY(IsShader),
-   TABLE_ENTRY(StencilFuncSeparate),
-   TABLE_ENTRY(StencilMaskSeparate),
-   TABLE_ENTRY(StencilOpSeparate),
-   TABLE_ENTRY(UniformMatrix2x3fv),
-   TABLE_ENTRY(UniformMatrix2x4fv),
-   TABLE_ENTRY(UniformMatrix3x2fv),
-   TABLE_ENTRY(UniformMatrix3x4fv),
-   TABLE_ENTRY(UniformMatrix4x2fv),
-   TABLE_ENTRY(UniformMatrix4x3fv),
-   TABLE_ENTRY(DrawArraysInstanced),
-   TABLE_ENTRY(DrawElementsInstanced),
-   TABLE_ENTRY(LoadTransposeMatrixdARB),
-   TABLE_ENTRY(LoadTransposeMatrixfARB),
-   TABLE_ENTRY(MultTransposeMatrixdARB),
-   TABLE_ENTRY(MultTransposeMatrixfARB),
-   TABLE_ENTRY(SampleCoverageARB),
-   TABLE_ENTRY(CompressedTexImage1DARB),
-   TABLE_ENTRY(CompressedTexImage2DARB),
-   TABLE_ENTRY(CompressedTexImage3DARB),
-   TABLE_ENTRY(CompressedTexSubImage1DARB),
-   TABLE_ENTRY(CompressedTexSubImage2DARB),
-   TABLE_ENTRY(CompressedTexSubImage3DARB),
-   TABLE_ENTRY(GetCompressedTexImageARB),
-   TABLE_ENTRY(DisableVertexAttribArrayARB),
-   TABLE_ENTRY(EnableVertexAttribArrayARB),
-   TABLE_ENTRY(GetProgramEnvParameterdvARB),
-   TABLE_ENTRY(GetProgramEnvParameterfvARB),
-   TABLE_ENTRY(GetProgramLocalParameterdvARB),
-   TABLE_ENTRY(GetProgramLocalParameterfvARB),
-   TABLE_ENTRY(GetProgramStringARB),
-   TABLE_ENTRY(GetProgramivARB),
-   TABLE_ENTRY(GetVertexAttribdvARB),
-   TABLE_ENTRY(GetVertexAttribfvARB),
-   TABLE_ENTRY(GetVertexAttribivARB),
-   TABLE_ENTRY(ProgramEnvParameter4dARB),
-   TABLE_ENTRY(ProgramEnvParameter4dvARB),
-   TABLE_ENTRY(ProgramEnvParameter4fARB),
-   TABLE_ENTRY(ProgramEnvParameter4fvARB),
-   TABLE_ENTRY(ProgramLocalParameter4dARB),
-   TABLE_ENTRY(ProgramLocalParameter4dvARB),
-   TABLE_ENTRY(ProgramLocalParameter4fARB),
-   TABLE_ENTRY(ProgramLocalParameter4fvARB),
-   TABLE_ENTRY(ProgramStringARB),
-   TABLE_ENTRY(VertexAttrib1dARB),
-   TABLE_ENTRY(VertexAttrib1dvARB),
-   TABLE_ENTRY(VertexAttrib1fARB),
-   TABLE_ENTRY(VertexAttrib1fvARB),
-   TABLE_ENTRY(VertexAttrib1sARB),
-   TABLE_ENTRY(VertexAttrib1svARB),
-   TABLE_ENTRY(VertexAttrib2dARB),
-   TABLE_ENTRY(VertexAttrib2dvARB),
-   TABLE_ENTRY(VertexAttrib2fARB),
-   TABLE_ENTRY(VertexAttrib2fvARB),
-   TABLE_ENTRY(VertexAttrib2sARB),
-   TABLE_ENTRY(VertexAttrib2svARB),
-   TABLE_ENTRY(VertexAttrib3dARB),
-   TABLE_ENTRY(VertexAttrib3dvARB),
-   TABLE_ENTRY(VertexAttrib3fARB),
-   TABLE_ENTRY(VertexAttrib3fvARB),
-   TABLE_ENTRY(VertexAttrib3sARB),
-   TABLE_ENTRY(VertexAttrib3svARB),
-   TABLE_ENTRY(VertexAttrib4NbvARB),
-   TABLE_ENTRY(VertexAttrib4NivARB),
-   TABLE_ENTRY(VertexAttrib4NsvARB),
-   TABLE_ENTRY(VertexAttrib4NubARB),
-   TABLE_ENTRY(VertexAttrib4NubvARB),
-   TABLE_ENTRY(VertexAttrib4NuivARB),
-   TABLE_ENTRY(VertexAttrib4NusvARB),
-   TABLE_ENTRY(VertexAttrib4bvARB),
-   TABLE_ENTRY(VertexAttrib4dARB),
-   TABLE_ENTRY(VertexAttrib4dvARB),
-   TABLE_ENTRY(VertexAttrib4fARB),
-   TABLE_ENTRY(VertexAttrib4fvARB),
-   TABLE_ENTRY(VertexAttrib4ivARB),
-   TABLE_ENTRY(VertexAttrib4sARB),
-   TABLE_ENTRY(VertexAttrib4svARB),
-   TABLE_ENTRY(VertexAttrib4ubvARB),
-   TABLE_ENTRY(VertexAttrib4uivARB),
-   TABLE_ENTRY(VertexAttrib4usvARB),
-   TABLE_ENTRY(VertexAttribPointerARB),
-   TABLE_ENTRY(BindBufferARB),
-   TABLE_ENTRY(BufferDataARB),
-   TABLE_ENTRY(BufferSubDataARB),
-   TABLE_ENTRY(DeleteBuffersARB),
-   TABLE_ENTRY(GenBuffersARB),
-   TABLE_ENTRY(GetBufferParameterivARB),
-   TABLE_ENTRY(GetBufferPointervARB),
-   TABLE_ENTRY(GetBufferSubDataARB),
-   TABLE_ENTRY(IsBufferARB),
-   TABLE_ENTRY(MapBufferARB),
-   TABLE_ENTRY(UnmapBufferARB),
-   TABLE_ENTRY(BeginQueryARB),
-   TABLE_ENTRY(DeleteQueriesARB),
-   TABLE_ENTRY(EndQueryARB),
-   TABLE_ENTRY(GenQueriesARB),
-   TABLE_ENTRY(GetQueryObjectivARB),
-   TABLE_ENTRY(GetQueryObjectuivARB),
-   TABLE_ENTRY(GetQueryivARB),
-   TABLE_ENTRY(IsQueryARB),
-   TABLE_ENTRY(AttachObjectARB),
-   TABLE_ENTRY(CompileShaderARB),
-   TABLE_ENTRY(CreateProgramObjectARB),
-   TABLE_ENTRY(CreateShaderObjectARB),
-   TABLE_ENTRY(DeleteObjectARB),
-   TABLE_ENTRY(DetachObjectARB),
-   TABLE_ENTRY(GetActiveUniformARB),
-   TABLE_ENTRY(GetAttachedObjectsARB),
-   TABLE_ENTRY(GetHandleARB),
-   TABLE_ENTRY(GetInfoLogARB),
-   TABLE_ENTRY(GetObjectParameterfvARB),
-   TABLE_ENTRY(GetObjectParameterivARB),
-   TABLE_ENTRY(GetShaderSourceARB),
-   TABLE_ENTRY(GetUniformLocationARB),
-   TABLE_ENTRY(GetUniformfvARB),
-   TABLE_ENTRY(GetUniformivARB),
-   TABLE_ENTRY(LinkProgramARB),
-   TABLE_ENTRY(ShaderSourceARB),
-   TABLE_ENTRY(Uniform1fARB),
-   TABLE_ENTRY(Uniform1fvARB),
-   TABLE_ENTRY(Uniform1iARB),
-   TABLE_ENTRY(Uniform1ivARB),
-   TABLE_ENTRY(Uniform2fARB),
-   TABLE_ENTRY(Uniform2fvARB),
-   TABLE_ENTRY(Uniform2iARB),
-   TABLE_ENTRY(Uniform2ivARB),
-   TABLE_ENTRY(Uniform3fARB),
-   TABLE_ENTRY(Uniform3fvARB),
-   TABLE_ENTRY(Uniform3iARB),
-   TABLE_ENTRY(Uniform3ivARB),
-   TABLE_ENTRY(Uniform4fARB),
-   TABLE_ENTRY(Uniform4fvARB),
-   TABLE_ENTRY(Uniform4iARB),
-   TABLE_ENTRY(Uniform4ivARB),
-   TABLE_ENTRY(UniformMatrix2fvARB),
-   TABLE_ENTRY(UniformMatrix3fvARB),
-   TABLE_ENTRY(UniformMatrix4fvARB),
-   TABLE_ENTRY(UseProgramObjectARB),
-   TABLE_ENTRY(ValidateProgramARB),
-   TABLE_ENTRY(BindAttribLocationARB),
-   TABLE_ENTRY(GetActiveAttribARB),
-   TABLE_ENTRY(GetAttribLocationARB),
-   TABLE_ENTRY(DrawBuffersARB),
-   TABLE_ENTRY(RenderbufferStorageMultisample),
-   TABLE_ENTRY(FlushMappedBufferRange),
-   TABLE_ENTRY(MapBufferRange),
-   TABLE_ENTRY(BindVertexArray),
-   TABLE_ENTRY(GenVertexArrays),
-   TABLE_ENTRY(CopyBufferSubData),
-   TABLE_ENTRY(ClientWaitSync),
-   TABLE_ENTRY(DeleteSync),
-   TABLE_ENTRY(FenceSync),
-   TABLE_ENTRY(GetInteger64v),
-   TABLE_ENTRY(GetSynciv),
-   TABLE_ENTRY(IsSync),
-   TABLE_ENTRY(WaitSync),
-   TABLE_ENTRY(DrawElementsBaseVertex),
-   TABLE_ENTRY(DrawRangeElementsBaseVertex),
-   TABLE_ENTRY(MultiDrawElementsBaseVertex),
-   TABLE_ENTRY(PolygonOffsetEXT),
-   TABLE_ENTRY(_dispatch_stub_580),
-   TABLE_ENTRY(_dispatch_stub_581),
-   TABLE_ENTRY(_dispatch_stub_582),
-   TABLE_ENTRY(_dispatch_stub_583),
-   TABLE_ENTRY(_dispatch_stub_584),
-   TABLE_ENTRY(_dispatch_stub_585),
-   TABLE_ENTRY(_dispatch_stub_586),
-   TABLE_ENTRY(_dispatch_stub_587),
-   TABLE_ENTRY(ColorPointerEXT),
-   TABLE_ENTRY(EdgeFlagPointerEXT),
-   TABLE_ENTRY(IndexPointerEXT),
-   TABLE_ENTRY(NormalPointerEXT),
-   TABLE_ENTRY(TexCoordPointerEXT),
-   TABLE_ENTRY(VertexPointerEXT),
-   TABLE_ENTRY(PointParameterfEXT),
-   TABLE_ENTRY(PointParameterfvEXT),
-   TABLE_ENTRY(LockArraysEXT),
-   TABLE_ENTRY(UnlockArraysEXT),
-   TABLE_ENTRY(_dispatch_stub_598),
-   TABLE_ENTRY(_dispatch_stub_599),
-   TABLE_ENTRY(SecondaryColor3bEXT),
-   TABLE_ENTRY(SecondaryColor3bvEXT),
-   TABLE_ENTRY(SecondaryColor3dEXT),
-   TABLE_ENTRY(SecondaryColor3dvEXT),
-   TABLE_ENTRY(SecondaryColor3fEXT),
-   TABLE_ENTRY(SecondaryColor3fvEXT),
-   TABLE_ENTRY(SecondaryColor3iEXT),
-   TABLE_ENTRY(SecondaryColor3ivEXT),
-   TABLE_ENTRY(SecondaryColor3sEXT),
-   TABLE_ENTRY(SecondaryColor3svEXT),
-   TABLE_ENTRY(SecondaryColor3ubEXT),
-   TABLE_ENTRY(SecondaryColor3ubvEXT),
-   TABLE_ENTRY(SecondaryColor3uiEXT),
-   TABLE_ENTRY(SecondaryColor3uivEXT),
-   TABLE_ENTRY(SecondaryColor3usEXT),
-   TABLE_ENTRY(SecondaryColor3usvEXT),
-   TABLE_ENTRY(SecondaryColorPointerEXT),
-   TABLE_ENTRY(MultiDrawArraysEXT),
-   TABLE_ENTRY(MultiDrawElementsEXT),
-   TABLE_ENTRY(FogCoordPointerEXT),
-   TABLE_ENTRY(FogCoorddEXT),
-   TABLE_ENTRY(FogCoorddvEXT),
-   TABLE_ENTRY(FogCoordfEXT),
-   TABLE_ENTRY(FogCoordfvEXT),
-   TABLE_ENTRY(_dispatch_stub_624),
-   TABLE_ENTRY(BlendFuncSeparateEXT),
-   TABLE_ENTRY(FlushVertexArrayRangeNV),
-   TABLE_ENTRY(VertexArrayRangeNV),
-   TABLE_ENTRY(CombinerInputNV),
-   TABLE_ENTRY(CombinerOutputNV),
-   TABLE_ENTRY(CombinerParameterfNV),
-   TABLE_ENTRY(CombinerParameterfvNV),
-   TABLE_ENTRY(CombinerParameteriNV),
-   TABLE_ENTRY(CombinerParameterivNV),
-   TABLE_ENTRY(FinalCombinerInputNV),
-   TABLE_ENTRY(GetCombinerInputParameterfvNV),
-   TABLE_ENTRY(GetCombinerInputParameterivNV),
-   TABLE_ENTRY(GetCombinerOutputParameterfvNV),
-   TABLE_ENTRY(GetCombinerOutputParameterivNV),
-   TABLE_ENTRY(GetFinalCombinerInputParameterfvNV),
-   TABLE_ENTRY(GetFinalCombinerInputParameterivNV),
-   TABLE_ENTRY(ResizeBuffersMESA),
-   TABLE_ENTRY(WindowPos2dMESA),
-   TABLE_ENTRY(WindowPos2dvMESA),
-   TABLE_ENTRY(WindowPos2fMESA),
-   TABLE_ENTRY(WindowPos2fvMESA),
-   TABLE_ENTRY(WindowPos2iMESA),
-   TABLE_ENTRY(WindowPos2ivMESA),
-   TABLE_ENTRY(WindowPos2sMESA),
-   TABLE_ENTRY(WindowPos2svMESA),
-   TABLE_ENTRY(WindowPos3dMESA),
-   TABLE_ENTRY(WindowPos3dvMESA),
-   TABLE_ENTRY(WindowPos3fMESA),
-   TABLE_ENTRY(WindowPos3fvMESA),
-   TABLE_ENTRY(WindowPos3iMESA),
-   TABLE_ENTRY(WindowPos3ivMESA),
-   TABLE_ENTRY(WindowPos3sMESA),
-   TABLE_ENTRY(WindowPos3svMESA),
-   TABLE_ENTRY(WindowPos4dMESA),
-   TABLE_ENTRY(WindowPos4dvMESA),
-   TABLE_ENTRY(WindowPos4fMESA),
-   TABLE_ENTRY(WindowPos4fvMESA),
-   TABLE_ENTRY(WindowPos4iMESA),
-   TABLE_ENTRY(WindowPos4ivMESA),
-   TABLE_ENTRY(WindowPos4sMESA),
-   TABLE_ENTRY(WindowPos4svMESA),
-   TABLE_ENTRY(_dispatch_stub_666),
-   TABLE_ENTRY(_dispatch_stub_667),
-   TABLE_ENTRY(_dispatch_stub_668),
-   TABLE_ENTRY(_dispatch_stub_669),
-   TABLE_ENTRY(_dispatch_stub_670),
-   TABLE_ENTRY(_dispatch_stub_671),
-   TABLE_ENTRY(_dispatch_stub_672),
-   TABLE_ENTRY(_dispatch_stub_673),
-   TABLE_ENTRY(_dispatch_stub_674),
-   TABLE_ENTRY(AreProgramsResidentNV),
-   TABLE_ENTRY(BindProgramNV),
-   TABLE_ENTRY(DeleteProgramsNV),
-   TABLE_ENTRY(ExecuteProgramNV),
-   TABLE_ENTRY(GenProgramsNV),
-   TABLE_ENTRY(GetProgramParameterdvNV),
-   TABLE_ENTRY(GetProgramParameterfvNV),
-   TABLE_ENTRY(GetProgramStringNV),
-   TABLE_ENTRY(GetProgramivNV),
-   TABLE_ENTRY(GetTrackMatrixivNV),
-   TABLE_ENTRY(GetVertexAttribPointervNV),
-   TABLE_ENTRY(GetVertexAttribdvNV),
-   TABLE_ENTRY(GetVertexAttribfvNV),
-   TABLE_ENTRY(GetVertexAttribivNV),
-   TABLE_ENTRY(IsProgramNV),
-   TABLE_ENTRY(LoadProgramNV),
-   TABLE_ENTRY(ProgramParameters4dvNV),
-   TABLE_ENTRY(ProgramParameters4fvNV),
-   TABLE_ENTRY(RequestResidentProgramsNV),
-   TABLE_ENTRY(TrackMatrixNV),
-   TABLE_ENTRY(VertexAttrib1dNV),
-   TABLE_ENTRY(VertexAttrib1dvNV),
-   TABLE_ENTRY(VertexAttrib1fNV),
-   TABLE_ENTRY(VertexAttrib1fvNV),
-   TABLE_ENTRY(VertexAttrib1sNV),
-   TABLE_ENTRY(VertexAttrib1svNV),
-   TABLE_ENTRY(VertexAttrib2dNV),
-   TABLE_ENTRY(VertexAttrib2dvNV),
-   TABLE_ENTRY(VertexAttrib2fNV),
-   TABLE_ENTRY(VertexAttrib2fvNV),
-   TABLE_ENTRY(VertexAttrib2sNV),
-   TABLE_ENTRY(VertexAttrib2svNV),
-   TABLE_ENTRY(VertexAttrib3dNV),
-   TABLE_ENTRY(VertexAttrib3dvNV),
-   TABLE_ENTRY(VertexAttrib3fNV),
-   TABLE_ENTRY(VertexAttrib3fvNV),
-   TABLE_ENTRY(VertexAttrib3sNV),
-   TABLE_ENTRY(VertexAttrib3svNV),
-   TABLE_ENTRY(VertexAttrib4dNV),
-   TABLE_ENTRY(VertexAttrib4dvNV),
-   TABLE_ENTRY(VertexAttrib4fNV),
-   TABLE_ENTRY(VertexAttrib4fvNV),
-   TABLE_ENTRY(VertexAttrib4sNV),
-   TABLE_ENTRY(VertexAttrib4svNV),
-   TABLE_ENTRY(VertexAttrib4ubNV),
-   TABLE_ENTRY(VertexAttrib4ubvNV),
-   TABLE_ENTRY(VertexAttribPointerNV),
-   TABLE_ENTRY(VertexAttribs1dvNV),
-   TABLE_ENTRY(VertexAttribs1fvNV),
-   TABLE_ENTRY(VertexAttribs1svNV),
-   TABLE_ENTRY(VertexAttribs2dvNV),
-   TABLE_ENTRY(VertexAttribs2fvNV),
-   TABLE_ENTRY(VertexAttribs2svNV),
-   TABLE_ENTRY(VertexAttribs3dvNV),
-   TABLE_ENTRY(VertexAttribs3fvNV),
-   TABLE_ENTRY(VertexAttribs3svNV),
-   TABLE_ENTRY(VertexAttribs4dvNV),
-   TABLE_ENTRY(VertexAttribs4fvNV),
-   TABLE_ENTRY(VertexAttribs4svNV),
-   TABLE_ENTRY(VertexAttribs4ubvNV),
-   TABLE_ENTRY(GetTexBumpParameterfvATI),
-   TABLE_ENTRY(GetTexBumpParameterivATI),
-   TABLE_ENTRY(TexBumpParameterfvATI),
-   TABLE_ENTRY(TexBumpParameterivATI),
-   TABLE_ENTRY(AlphaFragmentOp1ATI),
-   TABLE_ENTRY(AlphaFragmentOp2ATI),
-   TABLE_ENTRY(AlphaFragmentOp3ATI),
-   TABLE_ENTRY(BeginFragmentShaderATI),
-   TABLE_ENTRY(BindFragmentShaderATI),
-   TABLE_ENTRY(ColorFragmentOp1ATI),
-   TABLE_ENTRY(ColorFragmentOp2ATI),
-   TABLE_ENTRY(ColorFragmentOp3ATI),
-   TABLE_ENTRY(DeleteFragmentShaderATI),
-   TABLE_ENTRY(EndFragmentShaderATI),
-   TABLE_ENTRY(GenFragmentShadersATI),
-   TABLE_ENTRY(PassTexCoordATI),
-   TABLE_ENTRY(SampleMapATI),
-   TABLE_ENTRY(SetFragmentShaderConstantATI),
-   TABLE_ENTRY(PointParameteriNV),
-   TABLE_ENTRY(PointParameterivNV),
-   TABLE_ENTRY(_dispatch_stub_755),
-   TABLE_ENTRY(_dispatch_stub_756),
-   TABLE_ENTRY(_dispatch_stub_757),
-   TABLE_ENTRY(_dispatch_stub_758),
-   TABLE_ENTRY(_dispatch_stub_759),
-   TABLE_ENTRY(GetProgramNamedParameterdvNV),
-   TABLE_ENTRY(GetProgramNamedParameterfvNV),
-   TABLE_ENTRY(ProgramNamedParameter4dNV),
-   TABLE_ENTRY(ProgramNamedParameter4dvNV),
-   TABLE_ENTRY(ProgramNamedParameter4fNV),
-   TABLE_ENTRY(ProgramNamedParameter4fvNV),
-   TABLE_ENTRY(_dispatch_stub_766),
-   TABLE_ENTRY(_dispatch_stub_767),
-   TABLE_ENTRY(BindFramebufferEXT),
-   TABLE_ENTRY(BindRenderbufferEXT),
-   TABLE_ENTRY(CheckFramebufferStatusEXT),
-   TABLE_ENTRY(DeleteFramebuffersEXT),
-   TABLE_ENTRY(DeleteRenderbuffersEXT),
-   TABLE_ENTRY(FramebufferRenderbufferEXT),
-   TABLE_ENTRY(FramebufferTexture1DEXT),
-   TABLE_ENTRY(FramebufferTexture2DEXT),
-   TABLE_ENTRY(FramebufferTexture3DEXT),
-   TABLE_ENTRY(GenFramebuffersEXT),
-   TABLE_ENTRY(GenRenderbuffersEXT),
-   TABLE_ENTRY(GenerateMipmapEXT),
-   TABLE_ENTRY(GetFramebufferAttachmentParameterivEXT),
-   TABLE_ENTRY(GetRenderbufferParameterivEXT),
-   TABLE_ENTRY(IsFramebufferEXT),
-   TABLE_ENTRY(IsRenderbufferEXT),
-   TABLE_ENTRY(RenderbufferStorageEXT),
-   TABLE_ENTRY(_dispatch_stub_785),
-   TABLE_ENTRY(_dispatch_stub_786),
-   TABLE_ENTRY(_dispatch_stub_787),
-   TABLE_ENTRY(FramebufferTextureLayerEXT),
-   TABLE_ENTRY(ColorMaskIndexedEXT),
-   TABLE_ENTRY(DisableIndexedEXT),
-   TABLE_ENTRY(EnableIndexedEXT),
-   TABLE_ENTRY(GetBooleanIndexedvEXT),
-   TABLE_ENTRY(GetIntegerIndexedvEXT),
-   TABLE_ENTRY(IsEnabledIndexedEXT),
-   TABLE_ENTRY(BeginConditionalRenderNV),
-   TABLE_ENTRY(EndConditionalRenderNV),
-   TABLE_ENTRY(BeginTransformFeedbackEXT),
-   TABLE_ENTRY(BindBufferBaseEXT),
-   TABLE_ENTRY(BindBufferOffsetEXT),
-   TABLE_ENTRY(BindBufferRangeEXT),
-   TABLE_ENTRY(EndTransformFeedbackEXT),
-   TABLE_ENTRY(GetTransformFeedbackVaryingEXT),
-   TABLE_ENTRY(TransformFeedbackVaryingsEXT),
-   TABLE_ENTRY(ProvokingVertexEXT),
-   TABLE_ENTRY(_dispatch_stub_805),
-   TABLE_ENTRY(_dispatch_stub_806),
-   TABLE_ENTRY(GetObjectParameterivAPPLE),
-   TABLE_ENTRY(ObjectPurgeableAPPLE),
-   TABLE_ENTRY(ObjectUnpurgeableAPPLE),
-   TABLE_ENTRY(_dispatch_stub_810),
-   TABLE_ENTRY(_dispatch_stub_811),
-   TABLE_ENTRY(_dispatch_stub_812),
-   TABLE_ENTRY(_dispatch_stub_813),
-   TABLE_ENTRY(_dispatch_stub_814),
-   TABLE_ENTRY(EGLImageTargetRenderbufferStorageOES),
-   TABLE_ENTRY(EGLImageTargetTexture2DOES),
-   /* A whole bunch of no-op functions.  These might be called
-    * when someone tries to call a dynamically-registered
-    * extension function without a current rendering context.
-    */
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-   TABLE_ENTRY(Unused),
-};
-#endif /* DISPATCH_TABLE_NAME */
-
-
-/*
- * This is just used to silence compiler warnings.
- * We list the functions which are not otherwise used.
- */
-#ifdef UNUSED_TABLE_NAME
-_glapi_proc UNUSED_TABLE_NAME[] = {
-#ifndef _GLAPI_SKIP_NORMAL_ENTRY_POINTS
-   TABLE_ENTRY(ArrayElementEXT),
-   TABLE_ENTRY(BindTextureEXT),
-   TABLE_ENTRY(DrawArraysEXT),
-   TABLE_ENTRY(CopyTexImage1DEXT),
-   TABLE_ENTRY(CopyTexImage2DEXT),
-   TABLE_ENTRY(CopyTexSubImage1DEXT),
-   TABLE_ENTRY(CopyTexSubImage2DEXT),
-   TABLE_ENTRY(GetPointervEXT),
-   TABLE_ENTRY(PrioritizeTexturesEXT),
-   TABLE_ENTRY(TexSubImage1DEXT),
-   TABLE_ENTRY(TexSubImage2DEXT),
-   TABLE_ENTRY(BlendColorEXT),
-   TABLE_ENTRY(BlendEquationEXT),
-   TABLE_ENTRY(DrawRangeElementsEXT),
-   TABLE_ENTRY(ColorTableEXT),
-   TABLE_ENTRY(_dispatch_stub_339),
-   TABLE_ENTRY(_dispatch_stub_340),
-   TABLE_ENTRY(_dispatch_stub_341),
-   TABLE_ENTRY(_dispatch_stub_342),
-   TABLE_ENTRY(_dispatch_stub_346),
-   TABLE_ENTRY(_dispatch_stub_347),
-   TABLE_ENTRY(_dispatch_stub_348),
-   TABLE_ENTRY(_dispatch_stub_349),
-   TABLE_ENTRY(_dispatch_stub_350),
-   TABLE_ENTRY(_dispatch_stub_351),
-   TABLE_ENTRY(_dispatch_stub_352),
-   TABLE_ENTRY(_dispatch_stub_353),
-   TABLE_ENTRY(_dispatch_stub_354),
-   TABLE_ENTRY(_dispatch_stub_355),
-   TABLE_ENTRY(_dispatch_stub_360),
-   TABLE_ENTRY(_dispatch_stub_367),
-   TABLE_ENTRY(_dispatch_stub_368),
-   TABLE_ENTRY(_dispatch_stub_369),
-   TABLE_ENTRY(_dispatch_stub_370),
-   TABLE_ENTRY(TexImage3DEXT),
-   TABLE_ENTRY(TexSubImage3DEXT),
-   TABLE_ENTRY(CopyTexSubImage3DEXT),
-   TABLE_ENTRY(ActiveTexture),
-   TABLE_ENTRY(ClientActiveTexture),
-   TABLE_ENTRY(MultiTexCoord1d),
-   TABLE_ENTRY(MultiTexCoord1dv),
-   TABLE_ENTRY(MultiTexCoord1f),
-   TABLE_ENTRY(MultiTexCoord1fv),
-   TABLE_ENTRY(MultiTexCoord1i),
-   TABLE_ENTRY(MultiTexCoord1iv),
-   TABLE_ENTRY(MultiTexCoord1s),
-   TABLE_ENTRY(MultiTexCoord1sv),
-   TABLE_ENTRY(MultiTexCoord2d),
-   TABLE_ENTRY(MultiTexCoord2dv),
-   TABLE_ENTRY(MultiTexCoord2f),
-   TABLE_ENTRY(MultiTexCoord2fv),
-   TABLE_ENTRY(MultiTexCoord2i),
-   TABLE_ENTRY(MultiTexCoord2iv),
-   TABLE_ENTRY(MultiTexCoord2s),
-   TABLE_ENTRY(MultiTexCoord2sv),
-   TABLE_ENTRY(MultiTexCoord3d),
-   TABLE_ENTRY(MultiTexCoord3dv),
-   TABLE_ENTRY(MultiTexCoord3f),
-   TABLE_ENTRY(MultiTexCoord3fv),
-   TABLE_ENTRY(MultiTexCoord3i),
-   TABLE_ENTRY(MultiTexCoord3iv),
-   TABLE_ENTRY(MultiTexCoord3s),
-   TABLE_ENTRY(MultiTexCoord3sv),
-   TABLE_ENTRY(MultiTexCoord4d),
-   TABLE_ENTRY(MultiTexCoord4dv),
-   TABLE_ENTRY(MultiTexCoord4f),
-   TABLE_ENTRY(MultiTexCoord4fv),
-   TABLE_ENTRY(MultiTexCoord4i),
-   TABLE_ENTRY(MultiTexCoord4iv),
-   TABLE_ENTRY(MultiTexCoord4s),
-   TABLE_ENTRY(MultiTexCoord4sv),
-   TABLE_ENTRY(_dispatch_stub_423),
-   TABLE_ENTRY(DrawArraysInstancedARB),
-   TABLE_ENTRY(DrawArraysInstancedEXT),
-   TABLE_ENTRY(DrawElementsInstancedARB),
-   TABLE_ENTRY(DrawElementsInstancedEXT),
-   TABLE_ENTRY(LoadTransposeMatrixd),
-   TABLE_ENTRY(LoadTransposeMatrixf),
-   TABLE_ENTRY(MultTransposeMatrixd),
-   TABLE_ENTRY(MultTransposeMatrixf),
-   TABLE_ENTRY(SampleCoverage),
-   TABLE_ENTRY(CompressedTexImage1D),
-   TABLE_ENTRY(CompressedTexImage2D),
-   TABLE_ENTRY(CompressedTexImage3D),
-   TABLE_ENTRY(CompressedTexSubImage1D),
-   TABLE_ENTRY(CompressedTexSubImage2D),
-   TABLE_ENTRY(CompressedTexSubImage3D),
-   TABLE_ENTRY(GetCompressedTexImage),
-   TABLE_ENTRY(DisableVertexAttribArray),
-   TABLE_ENTRY(EnableVertexAttribArray),
-   TABLE_ENTRY(GetVertexAttribdv),
-   TABLE_ENTRY(GetVertexAttribfv),
-   TABLE_ENTRY(GetVertexAttribiv),
-   TABLE_ENTRY(ProgramParameter4dNV),
-   TABLE_ENTRY(ProgramParameter4dvNV),
-   TABLE_ENTRY(ProgramParameter4fNV),
-   TABLE_ENTRY(ProgramParameter4fvNV),
-   TABLE_ENTRY(VertexAttrib1d),
-   TABLE_ENTRY(VertexAttrib1dv),
-   TABLE_ENTRY(VertexAttrib1f),
-   TABLE_ENTRY(VertexAttrib1fv),
-   TABLE_ENTRY(VertexAttrib1s),
-   TABLE_ENTRY(VertexAttrib1sv),
-   TABLE_ENTRY(VertexAttrib2d),
-   TABLE_ENTRY(VertexAttrib2dv),
-   TABLE_ENTRY(VertexAttrib2f),
-   TABLE_ENTRY(VertexAttrib2fv),
-   TABLE_ENTRY(VertexAttrib2s),
-   TABLE_ENTRY(VertexAttrib2sv),
-   TABLE_ENTRY(VertexAttrib3d),
-   TABLE_ENTRY(VertexAttrib3dv),
-   TABLE_ENTRY(VertexAttrib3f),
-   TABLE_ENTRY(VertexAttrib3fv),
-   TABLE_ENTRY(VertexAttrib3s),
-   TABLE_ENTRY(VertexAttrib3sv),
-   TABLE_ENTRY(VertexAttrib4Nbv),
-   TABLE_ENTRY(VertexAttrib4Niv),
-   TABLE_ENTRY(VertexAttrib4Nsv),
-   TABLE_ENTRY(VertexAttrib4Nub),
-   TABLE_ENTRY(VertexAttrib4Nubv),
-   TABLE_ENTRY(VertexAttrib4Nuiv),
-   TABLE_ENTRY(VertexAttrib4Nusv),
-   TABLE_ENTRY(VertexAttrib4bv),
-   TABLE_ENTRY(VertexAttrib4d),
-   TABLE_ENTRY(VertexAttrib4dv),
-   TABLE_ENTRY(VertexAttrib4f),
-   TABLE_ENTRY(VertexAttrib4fv),
-   TABLE_ENTRY(VertexAttrib4iv),
-   TABLE_ENTRY(VertexAttrib4s),
-   TABLE_ENTRY(VertexAttrib4sv),
-   TABLE_ENTRY(VertexAttrib4ubv),
-   TABLE_ENTRY(VertexAttrib4uiv),
-   TABLE_ENTRY(VertexAttrib4usv),
-   TABLE_ENTRY(VertexAttribPointer),
-   TABLE_ENTRY(BindBuffer),
-   TABLE_ENTRY(BufferData),
-   TABLE_ENTRY(BufferSubData),
-   TABLE_ENTRY(DeleteBuffers),
-   TABLE_ENTRY(GenBuffers),
-   TABLE_ENTRY(GetBufferParameteriv),
-   TABLE_ENTRY(GetBufferPointerv),
-   TABLE_ENTRY(GetBufferSubData),
-   TABLE_ENTRY(IsBuffer),
-   TABLE_ENTRY(MapBuffer),
-   TABLE_ENTRY(UnmapBuffer),
-   TABLE_ENTRY(BeginQuery),
-   TABLE_ENTRY(DeleteQueries),
-   TABLE_ENTRY(EndQuery),
-   TABLE_ENTRY(GenQueries),
-   TABLE_ENTRY(GetQueryObjectiv),
-   TABLE_ENTRY(GetQueryObjectuiv),
-   TABLE_ENTRY(GetQueryiv),
-   TABLE_ENTRY(IsQuery),
-   TABLE_ENTRY(CompileShader),
-   TABLE_ENTRY(GetActiveUniform),
-   TABLE_ENTRY(GetShaderSource),
-   TABLE_ENTRY(GetUniformLocation),
-   TABLE_ENTRY(GetUniformfv),
-   TABLE_ENTRY(GetUniformiv),
-   TABLE_ENTRY(LinkProgram),
-   TABLE_ENTRY(ShaderSource),
-   TABLE_ENTRY(Uniform1f),
-   TABLE_ENTRY(Uniform1fv),
-   TABLE_ENTRY(Uniform1i),
-   TABLE_ENTRY(Uniform1iv),
-   TABLE_ENTRY(Uniform2f),
-   TABLE_ENTRY(Uniform2fv),
-   TABLE_ENTRY(Uniform2i),
-   TABLE_ENTRY(Uniform2iv),
-   TABLE_ENTRY(Uniform3f),
-   TABLE_ENTRY(Uniform3fv),
-   TABLE_ENTRY(Uniform3i),
-   TABLE_ENTRY(Uniform3iv),
-   TABLE_ENTRY(Uniform4f),
-   TABLE_ENTRY(Uniform4fv),
-   TABLE_ENTRY(Uniform4i),
-   TABLE_ENTRY(Uniform4iv),
-   TABLE_ENTRY(UniformMatrix2fv),
-   TABLE_ENTRY(UniformMatrix3fv),
-   TABLE_ENTRY(UniformMatrix4fv),
-   TABLE_ENTRY(UseProgram),
-   TABLE_ENTRY(ValidateProgram),
-   TABLE_ENTRY(BindAttribLocation),
-   TABLE_ENTRY(GetActiveAttrib),
-   TABLE_ENTRY(GetAttribLocation),
-   TABLE_ENTRY(DrawBuffers),
-   TABLE_ENTRY(DrawBuffersATI),
-   TABLE_ENTRY(RenderbufferStorageMultisampleEXT),
-   TABLE_ENTRY(PointParameterf),
-   TABLE_ENTRY(PointParameterfARB),
-   TABLE_ENTRY(_dispatch_stub_594),
-   TABLE_ENTRY(PointParameterfv),
-   TABLE_ENTRY(PointParameterfvARB),
-   TABLE_ENTRY(_dispatch_stub_595),
-   TABLE_ENTRY(SecondaryColor3b),
-   TABLE_ENTRY(SecondaryColor3bv),
-   TABLE_ENTRY(SecondaryColor3d),
-   TABLE_ENTRY(SecondaryColor3dv),
-   TABLE_ENTRY(SecondaryColor3f),
-   TABLE_ENTRY(SecondaryColor3fv),
-   TABLE_ENTRY(SecondaryColor3i),
-   TABLE_ENTRY(SecondaryColor3iv),
-   TABLE_ENTRY(SecondaryColor3s),
-   TABLE_ENTRY(SecondaryColor3sv),
-   TABLE_ENTRY(SecondaryColor3ub),
-   TABLE_ENTRY(SecondaryColor3ubv),
-   TABLE_ENTRY(SecondaryColor3ui),
-   TABLE_ENTRY(SecondaryColor3uiv),
-   TABLE_ENTRY(SecondaryColor3us),
-   TABLE_ENTRY(SecondaryColor3usv),
-   TABLE_ENTRY(SecondaryColorPointer),
-   TABLE_ENTRY(MultiDrawArrays),
-   TABLE_ENTRY(MultiDrawElements),
-   TABLE_ENTRY(FogCoordPointer),
-   TABLE_ENTRY(FogCoordd),
-   TABLE_ENTRY(FogCoorddv),
-   TABLE_ENTRY(FogCoordf),
-   TABLE_ENTRY(FogCoordfv),
-   TABLE_ENTRY(BlendFuncSeparate),
-   TABLE_ENTRY(_dispatch_stub_625),
-   TABLE_ENTRY(WindowPos2d),
-   TABLE_ENTRY(WindowPos2dARB),
-   TABLE_ENTRY(WindowPos2dv),
-   TABLE_ENTRY(WindowPos2dvARB),
-   TABLE_ENTRY(WindowPos2f),
-   TABLE_ENTRY(WindowPos2fARB),
-   TABLE_ENTRY(WindowPos2fv),
-   TABLE_ENTRY(WindowPos2fvARB),
-   TABLE_ENTRY(WindowPos2i),
-   TABLE_ENTRY(WindowPos2iARB),
-   TABLE_ENTRY(WindowPos2iv),
-   TABLE_ENTRY(WindowPos2ivARB),
-   TABLE_ENTRY(WindowPos2s),
-   TABLE_ENTRY(WindowPos2sARB),
-   TABLE_ENTRY(WindowPos2sv),
-   TABLE_ENTRY(WindowPos2svARB),
-   TABLE_ENTRY(WindowPos3d),
-   TABLE_ENTRY(WindowPos3dARB),
-   TABLE_ENTRY(WindowPos3dv),
-   TABLE_ENTRY(WindowPos3dvARB),
-   TABLE_ENTRY(WindowPos3f),
-   TABLE_ENTRY(WindowPos3fARB),
-   TABLE_ENTRY(WindowPos3fv),
-   TABLE_ENTRY(WindowPos3fvARB),
-   TABLE_ENTRY(WindowPos3i),
-   TABLE_ENTRY(WindowPos3iARB),
-   TABLE_ENTRY(WindowPos3iv),
-   TABLE_ENTRY(WindowPos3ivARB),
-   TABLE_ENTRY(WindowPos3s),
-   TABLE_ENTRY(WindowPos3sARB),
-   TABLE_ENTRY(WindowPos3sv),
-   TABLE_ENTRY(WindowPos3svARB),
-   TABLE_ENTRY(BindProgramARB),
-   TABLE_ENTRY(DeleteProgramsARB),
-   TABLE_ENTRY(GenProgramsARB),
-   TABLE_ENTRY(GetVertexAttribPointerv),
-   TABLE_ENTRY(GetVertexAttribPointervARB),
-   TABLE_ENTRY(IsProgramARB),
-   TABLE_ENTRY(PointParameteri),
-   TABLE_ENTRY(PointParameteriv),
-   TABLE_ENTRY(DeleteVertexArrays),
-   TABLE_ENTRY(IsVertexArray),
-   TABLE_ENTRY(BlendEquationSeparate),
-   TABLE_ENTRY(BindFramebuffer),
-   TABLE_ENTRY(BindRenderbuffer),
-   TABLE_ENTRY(CheckFramebufferStatus),
-   TABLE_ENTRY(DeleteFramebuffers),
-   TABLE_ENTRY(DeleteRenderbuffers),
-   TABLE_ENTRY(FramebufferRenderbuffer),
-   TABLE_ENTRY(FramebufferTexture1D),
-   TABLE_ENTRY(FramebufferTexture2D),
-   TABLE_ENTRY(FramebufferTexture3D),
-   TABLE_ENTRY(GenFramebuffers),
-   TABLE_ENTRY(GenRenderbuffers),
-   TABLE_ENTRY(GenerateMipmap),
-   TABLE_ENTRY(GetFramebufferAttachmentParameteriv),
-   TABLE_ENTRY(GetRenderbufferParameteriv),
-   TABLE_ENTRY(IsFramebuffer),
-   TABLE_ENTRY(IsRenderbuffer),
-   TABLE_ENTRY(RenderbufferStorage),
-   TABLE_ENTRY(BlitFramebuffer),
-   TABLE_ENTRY(FramebufferTextureLayer),
-   TABLE_ENTRY(BeginTransformFeedback),
-   TABLE_ENTRY(BindBufferBase),
-   TABLE_ENTRY(BindBufferRange),
-   TABLE_ENTRY(EndTransformFeedback),
-   TABLE_ENTRY(GetTransformFeedbackVarying),
-   TABLE_ENTRY(TransformFeedbackVaryings),
-   TABLE_ENTRY(ProvokingVertex),
-#endif /* _GLAPI_SKIP_NORMAL_ENTRY_POINTS */
-#ifndef _GLAPI_SKIP_PROTO_ENTRY_POINTS
-   TABLE_ENTRY(AreTexturesResidentEXT),
-   TABLE_ENTRY(DeleteTexturesEXT),
-   TABLE_ENTRY(GenTexturesEXT),
-   TABLE_ENTRY(IsTextureEXT),
-   TABLE_ENTRY(GetColorTableEXT),
-   TABLE_ENTRY(_dispatch_stub_343),
-   TABLE_ENTRY(GetColorTableParameterfvEXT),
-   TABLE_ENTRY(_dispatch_stub_344),
-   TABLE_ENTRY(GetColorTableParameterivEXT),
-   TABLE_ENTRY(_dispatch_stub_345),
-   TABLE_ENTRY(_dispatch_stub_356),
-   TABLE_ENTRY(_dispatch_stub_357),
-   TABLE_ENTRY(_dispatch_stub_358),
-   TABLE_ENTRY(_dispatch_stub_359),
-   TABLE_ENTRY(_dispatch_stub_361),
-   TABLE_ENTRY(_dispatch_stub_362),
-   TABLE_ENTRY(_dispatch_stub_363),
-   TABLE_ENTRY(_dispatch_stub_364),
-   TABLE_ENTRY(_dispatch_stub_365),
-   TABLE_ENTRY(_dispatch_stub_366),
-#endif /* _GLAPI_SKIP_PROTO_ENTRY_POINTS */
-};
-#endif /*UNUSED_TABLE_NAME*/
-
-
-#  undef KEYWORD1
-#  undef KEYWORD1_ALT
-#  undef KEYWORD2
-#  undef NAME
-#  undef DISPATCH
-#  undef RETURN_DISPATCH
-#  undef DISPATCH_TABLE_NAME
-#  undef UNUSED_TABLE_NAME
-#  undef TABLE_ENTRY
-#  undef HIDDEN
diff --git a/src/mesa/glapi/glprocs.h b/src/mesa/glapi/glprocs.h
deleted file mode 100644 (file)
index 8eb04ee..0000000
+++ /dev/null
@@ -1,2427 +0,0 @@
-/* DO NOT EDIT - This file generated automatically by gl_procs.py (from Mesa) script */
-
-/*
- * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
- * (C) Copyright IBM Corporation 2004, 2006
- * 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
- * BRIAN PAUL, IBM,
- * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
- * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- */
-
-
-/* This file is only included by glapi.c and is used for
- * the GetProcAddress() function
- */
-
-typedef struct {
-    GLint Name_offset;
-#if defined(NEED_FUNCTION_POINTER) || defined(GLX_INDIRECT_RENDERING)
-    _glapi_proc Address;
-#endif
-    GLuint Offset;
-} glprocs_table_t;
-
-#if   !defined(NEED_FUNCTION_POINTER) && !defined(GLX_INDIRECT_RENDERING)
-#  define NAME_FUNC_OFFSET(n,f1,f2,f3,o) { n , o }
-#elif  defined(NEED_FUNCTION_POINTER) && !defined(GLX_INDIRECT_RENDERING)
-#  define NAME_FUNC_OFFSET(n,f1,f2,f3,o) { n , (_glapi_proc) f1 , o }
-#elif  defined(NEED_FUNCTION_POINTER) &&  defined(GLX_INDIRECT_RENDERING)
-#  define NAME_FUNC_OFFSET(n,f1,f2,f3,o) { n , (_glapi_proc) f2 , o }
-#elif !defined(NEED_FUNCTION_POINTER) &&  defined(GLX_INDIRECT_RENDERING)
-#  define NAME_FUNC_OFFSET(n,f1,f2,f3,o) { n , (_glapi_proc) f3 , o }
-#endif
-
-
-
-static const char gl_string_table[] =
-    "glNewList\0"
-    "glEndList\0"
-    "glCallList\0"
-    "glCallLists\0"
-    "glDeleteLists\0"
-    "glGenLists\0"
-    "glListBase\0"
-    "glBegin\0"
-    "glBitmap\0"
-    "glColor3b\0"
-    "glColor3bv\0"
-    "glColor3d\0"
-    "glColor3dv\0"
-    "glColor3f\0"
-    "glColor3fv\0"
-    "glColor3i\0"
-    "glColor3iv\0"
-    "glColor3s\0"
-    "glColor3sv\0"
-    "glColor3ub\0"
-    "glColor3ubv\0"
-    "glColor3ui\0"
-    "glColor3uiv\0"
-    "glColor3us\0"
-    "glColor3usv\0"
-    "glColor4b\0"
-    "glColor4bv\0"
-    "glColor4d\0"
-    "glColor4dv\0"
-    "glColor4f\0"
-    "glColor4fv\0"
-    "glColor4i\0"
-    "glColor4iv\0"
-    "glColor4s\0"
-    "glColor4sv\0"
-    "glColor4ub\0"
-    "glColor4ubv\0"
-    "glColor4ui\0"
-    "glColor4uiv\0"
-    "glColor4us\0"
-    "glColor4usv\0"
-    "glEdgeFlag\0"
-    "glEdgeFlagv\0"
-    "glEnd\0"
-    "glIndexd\0"
-    "glIndexdv\0"
-    "glIndexf\0"
-    "glIndexfv\0"
-    "glIndexi\0"
-    "glIndexiv\0"
-    "glIndexs\0"
-    "glIndexsv\0"
-    "glNormal3b\0"
-    "glNormal3bv\0"
-    "glNormal3d\0"
-    "glNormal3dv\0"
-    "glNormal3f\0"
-    "glNormal3fv\0"
-    "glNormal3i\0"
-    "glNormal3iv\0"
-    "glNormal3s\0"
-    "glNormal3sv\0"
-    "glRasterPos2d\0"
-    "glRasterPos2dv\0"
-    "glRasterPos2f\0"
-    "glRasterPos2fv\0"
-    "glRasterPos2i\0"
-    "glRasterPos2iv\0"
-    "glRasterPos2s\0"
-    "glRasterPos2sv\0"
-    "glRasterPos3d\0"
-    "glRasterPos3dv\0"
-    "glRasterPos3f\0"
-    "glRasterPos3fv\0"
-    "glRasterPos3i\0"
-    "glRasterPos3iv\0"
-    "glRasterPos3s\0"
-    "glRasterPos3sv\0"
-    "glRasterPos4d\0"
-    "glRasterPos4dv\0"
-    "glRasterPos4f\0"
-    "glRasterPos4fv\0"
-    "glRasterPos4i\0"
-    "glRasterPos4iv\0"
-    "glRasterPos4s\0"
-    "glRasterPos4sv\0"
-    "glRectd\0"
-    "glRectdv\0"
-    "glRectf\0"
-    "glRectfv\0"
-    "glRecti\0"
-    "glRectiv\0"
-    "glRects\0"
-    "glRectsv\0"
-    "glTexCoord1d\0"
-    "glTexCoord1dv\0"
-    "glTexCoord1f\0"
-    "glTexCoord1fv\0"
-    "glTexCoord1i\0"
-    "glTexCoord1iv\0"
-    "glTexCoord1s\0"
-    "glTexCoord1sv\0"
-    "glTexCoord2d\0"
-    "glTexCoord2dv\0"
-    "glTexCoord2f\0"
-    "glTexCoord2fv\0"
-    "glTexCoord2i\0"
-    "glTexCoord2iv\0"
-    "glTexCoord2s\0"
-    "glTexCoord2sv\0"
-    "glTexCoord3d\0"
-    "glTexCoord3dv\0"
-    "glTexCoord3f\0"
-    "glTexCoord3fv\0"
-    "glTexCoord3i\0"
-    "glTexCoord3iv\0"
-    "glTexCoord3s\0"
-    "glTexCoord3sv\0"
-    "glTexCoord4d\0"
-    "glTexCoord4dv\0"
-    "glTexCoord4f\0"
-    "glTexCoord4fv\0"
-    "glTexCoord4i\0"
-    "glTexCoord4iv\0"
-    "glTexCoord4s\0"
-    "glTexCoord4sv\0"
-    "glVertex2d\0"
-    "glVertex2dv\0"
-    "glVertex2f\0"
-    "glVertex2fv\0"
-    "glVertex2i\0"
-    "glVertex2iv\0"
-    "glVertex2s\0"
-    "glVertex2sv\0"
-    "glVertex3d\0"
-    "glVertex3dv\0"
-    "glVertex3f\0"
-    "glVertex3fv\0"
-    "glVertex3i\0"
-    "glVertex3iv\0"
-    "glVertex3s\0"
-    "glVertex3sv\0"
-    "glVertex4d\0"
-    "glVertex4dv\0"
-    "glVertex4f\0"
-    "glVertex4fv\0"
-    "glVertex4i\0"
-    "glVertex4iv\0"
-    "glVertex4s\0"
-    "glVertex4sv\0"
-    "glClipPlane\0"
-    "glColorMaterial\0"
-    "glCullFace\0"
-    "glFogf\0"
-    "glFogfv\0"
-    "glFogi\0"
-    "glFogiv\0"
-    "glFrontFace\0"
-    "glHint\0"
-    "glLightf\0"
-    "glLightfv\0"
-    "glLighti\0"
-    "glLightiv\0"
-    "glLightModelf\0"
-    "glLightModelfv\0"
-    "glLightModeli\0"
-    "glLightModeliv\0"
-    "glLineStipple\0"
-    "glLineWidth\0"
-    "glMaterialf\0"
-    "glMaterialfv\0"
-    "glMateriali\0"
-    "glMaterialiv\0"
-    "glPointSize\0"
-    "glPolygonMode\0"
-    "glPolygonStipple\0"
-    "glScissor\0"
-    "glShadeModel\0"
-    "glTexParameterf\0"
-    "glTexParameterfv\0"
-    "glTexParameteri\0"
-    "glTexParameteriv\0"
-    "glTexImage1D\0"
-    "glTexImage2D\0"
-    "glTexEnvf\0"
-    "glTexEnvfv\0"
-    "glTexEnvi\0"
-    "glTexEnviv\0"
-    "glTexGend\0"
-    "glTexGendv\0"
-    "glTexGenf\0"
-    "glTexGenfv\0"
-    "glTexGeni\0"
-    "glTexGeniv\0"
-    "glFeedbackBuffer\0"
-    "glSelectBuffer\0"
-    "glRenderMode\0"
-    "glInitNames\0"
-    "glLoadName\0"
-    "glPassThrough\0"
-    "glPopName\0"
-    "glPushName\0"
-    "glDrawBuffer\0"
-    "glClear\0"
-    "glClearAccum\0"
-    "glClearIndex\0"
-    "glClearColor\0"
-    "glClearStencil\0"
-    "glClearDepth\0"
-    "glStencilMask\0"
-    "glColorMask\0"
-    "glDepthMask\0"
-    "glIndexMask\0"
-    "glAccum\0"
-    "glDisable\0"
-    "glEnable\0"
-    "glFinish\0"
-    "glFlush\0"
-    "glPopAttrib\0"
-    "glPushAttrib\0"
-    "glMap1d\0"
-    "glMap1f\0"
-    "glMap2d\0"
-    "glMap2f\0"
-    "glMapGrid1d\0"
-    "glMapGrid1f\0"
-    "glMapGrid2d\0"
-    "glMapGrid2f\0"
-    "glEvalCoord1d\0"
-    "glEvalCoord1dv\0"
-    "glEvalCoord1f\0"
-    "glEvalCoord1fv\0"
-    "glEvalCoord2d\0"
-    "glEvalCoord2dv\0"
-    "glEvalCoord2f\0"
-    "glEvalCoord2fv\0"
-    "glEvalMesh1\0"
-    "glEvalPoint1\0"
-    "glEvalMesh2\0"
-    "glEvalPoint2\0"
-    "glAlphaFunc\0"
-    "glBlendFunc\0"
-    "glLogicOp\0"
-    "glStencilFunc\0"
-    "glStencilOp\0"
-    "glDepthFunc\0"
-    "glPixelZoom\0"
-    "glPixelTransferf\0"
-    "glPixelTransferi\0"
-    "glPixelStoref\0"
-    "glPixelStorei\0"
-    "glPixelMapfv\0"
-    "glPixelMapuiv\0"
-    "glPixelMapusv\0"
-    "glReadBuffer\0"
-    "glCopyPixels\0"
-    "glReadPixels\0"
-    "glDrawPixels\0"
-    "glGetBooleanv\0"
-    "glGetClipPlane\0"
-    "glGetDoublev\0"
-    "glGetError\0"
-    "glGetFloatv\0"
-    "glGetIntegerv\0"
-    "glGetLightfv\0"
-    "glGetLightiv\0"
-    "glGetMapdv\0"
-    "glGetMapfv\0"
-    "glGetMapiv\0"
-    "glGetMaterialfv\0"
-    "glGetMaterialiv\0"
-    "glGetPixelMapfv\0"
-    "glGetPixelMapuiv\0"
-    "glGetPixelMapusv\0"
-    "glGetPolygonStipple\0"
-    "glGetString\0"
-    "glGetTexEnvfv\0"
-    "glGetTexEnviv\0"
-    "glGetTexGendv\0"
-    "glGetTexGenfv\0"
-    "glGetTexGeniv\0"
-    "glGetTexImage\0"
-    "glGetTexParameterfv\0"
-    "glGetTexParameteriv\0"
-    "glGetTexLevelParameterfv\0"
-    "glGetTexLevelParameteriv\0"
-    "glIsEnabled\0"
-    "glIsList\0"
-    "glDepthRange\0"
-    "glFrustum\0"
-    "glLoadIdentity\0"
-    "glLoadMatrixf\0"
-    "glLoadMatrixd\0"
-    "glMatrixMode\0"
-    "glMultMatrixf\0"
-    "glMultMatrixd\0"
-    "glOrtho\0"
-    "glPopMatrix\0"
-    "glPushMatrix\0"
-    "glRotated\0"
-    "glRotatef\0"
-    "glScaled\0"
-    "glScalef\0"
-    "glTranslated\0"
-    "glTranslatef\0"
-    "glViewport\0"
-    "glArrayElement\0"
-    "glBindTexture\0"
-    "glColorPointer\0"
-    "glDisableClientState\0"
-    "glDrawArrays\0"
-    "glDrawElements\0"
-    "glEdgeFlagPointer\0"
-    "glEnableClientState\0"
-    "glIndexPointer\0"
-    "glIndexub\0"
-    "glIndexubv\0"
-    "glInterleavedArrays\0"
-    "glNormalPointer\0"
-    "glPolygonOffset\0"
-    "glTexCoordPointer\0"
-    "glVertexPointer\0"
-    "glAreTexturesResident\0"
-    "glCopyTexImage1D\0"
-    "glCopyTexImage2D\0"
-    "glCopyTexSubImage1D\0"
-    "glCopyTexSubImage2D\0"
-    "glDeleteTextures\0"
-    "glGenTextures\0"
-    "glGetPointerv\0"
-    "glIsTexture\0"
-    "glPrioritizeTextures\0"
-    "glTexSubImage1D\0"
-    "glTexSubImage2D\0"
-    "glPopClientAttrib\0"
-    "glPushClientAttrib\0"
-    "glBlendColor\0"
-    "glBlendEquation\0"
-    "glDrawRangeElements\0"
-    "glColorTable\0"
-    "glColorTableParameterfv\0"
-    "glColorTableParameteriv\0"
-    "glCopyColorTable\0"
-    "glGetColorTable\0"
-    "glGetColorTableParameterfv\0"
-    "glGetColorTableParameteriv\0"
-    "glColorSubTable\0"
-    "glCopyColorSubTable\0"
-    "glConvolutionFilter1D\0"
-    "glConvolutionFilter2D\0"
-    "glConvolutionParameterf\0"
-    "glConvolutionParameterfv\0"
-    "glConvolutionParameteri\0"
-    "glConvolutionParameteriv\0"
-    "glCopyConvolutionFilter1D\0"
-    "glCopyConvolutionFilter2D\0"
-    "glGetConvolutionFilter\0"
-    "glGetConvolutionParameterfv\0"
-    "glGetConvolutionParameteriv\0"
-    "glGetSeparableFilter\0"
-    "glSeparableFilter2D\0"
-    "glGetHistogram\0"
-    "glGetHistogramParameterfv\0"
-    "glGetHistogramParameteriv\0"
-    "glGetMinmax\0"
-    "glGetMinmaxParameterfv\0"
-    "glGetMinmaxParameteriv\0"
-    "glHistogram\0"
-    "glMinmax\0"
-    "glResetHistogram\0"
-    "glResetMinmax\0"
-    "glTexImage3D\0"
-    "glTexSubImage3D\0"
-    "glCopyTexSubImage3D\0"
-    "glActiveTextureARB\0"
-    "glClientActiveTextureARB\0"
-    "glMultiTexCoord1dARB\0"
-    "glMultiTexCoord1dvARB\0"
-    "glMultiTexCoord1fARB\0"
-    "glMultiTexCoord1fvARB\0"
-    "glMultiTexCoord1iARB\0"
-    "glMultiTexCoord1ivARB\0"
-    "glMultiTexCoord1sARB\0"
-    "glMultiTexCoord1svARB\0"
-    "glMultiTexCoord2dARB\0"
-    "glMultiTexCoord2dvARB\0"
-    "glMultiTexCoord2fARB\0"
-    "glMultiTexCoord2fvARB\0"
-    "glMultiTexCoord2iARB\0"
-    "glMultiTexCoord2ivARB\0"
-    "glMultiTexCoord2sARB\0"
-    "glMultiTexCoord2svARB\0"
-    "glMultiTexCoord3dARB\0"
-    "glMultiTexCoord3dvARB\0"
-    "glMultiTexCoord3fARB\0"
-    "glMultiTexCoord3fvARB\0"
-    "glMultiTexCoord3iARB\0"
-    "glMultiTexCoord3ivARB\0"
-    "glMultiTexCoord3sARB\0"
-    "glMultiTexCoord3svARB\0"
-    "glMultiTexCoord4dARB\0"
-    "glMultiTexCoord4dvARB\0"
-    "glMultiTexCoord4fARB\0"
-    "glMultiTexCoord4fvARB\0"
-    "glMultiTexCoord4iARB\0"
-    "glMultiTexCoord4ivARB\0"
-    "glMultiTexCoord4sARB\0"
-    "glMultiTexCoord4svARB\0"
-    "glAttachShader\0"
-    "glCreateProgram\0"
-    "glCreateShader\0"
-    "glDeleteProgram\0"
-    "glDeleteShader\0"
-    "glDetachShader\0"
-    "glGetAttachedShaders\0"
-    "glGetProgramInfoLog\0"
-    "glGetProgramiv\0"
-    "glGetShaderInfoLog\0"
-    "glGetShaderiv\0"
-    "glIsProgram\0"
-    "glIsShader\0"
-    "glStencilFuncSeparate\0"
-    "glStencilMaskSeparate\0"
-    "glStencilOpSeparate\0"
-    "glUniformMatrix2x3fv\0"
-    "glUniformMatrix2x4fv\0"
-    "glUniformMatrix3x2fv\0"
-    "glUniformMatrix3x4fv\0"
-    "glUniformMatrix4x2fv\0"
-    "glUniformMatrix4x3fv\0"
-    "glDrawArraysInstanced\0"
-    "glDrawElementsInstanced\0"
-    "glLoadTransposeMatrixdARB\0"
-    "glLoadTransposeMatrixfARB\0"
-    "glMultTransposeMatrixdARB\0"
-    "glMultTransposeMatrixfARB\0"
-    "glSampleCoverageARB\0"
-    "glCompressedTexImage1DARB\0"
-    "glCompressedTexImage2DARB\0"
-    "glCompressedTexImage3DARB\0"
-    "glCompressedTexSubImage1DARB\0"
-    "glCompressedTexSubImage2DARB\0"
-    "glCompressedTexSubImage3DARB\0"
-    "glGetCompressedTexImageARB\0"
-    "glDisableVertexAttribArrayARB\0"
-    "glEnableVertexAttribArrayARB\0"
-    "glGetProgramEnvParameterdvARB\0"
-    "glGetProgramEnvParameterfvARB\0"
-    "glGetProgramLocalParameterdvARB\0"
-    "glGetProgramLocalParameterfvARB\0"
-    "glGetProgramStringARB\0"
-    "glGetProgramivARB\0"
-    "glGetVertexAttribdvARB\0"
-    "glGetVertexAttribfvARB\0"
-    "glGetVertexAttribivARB\0"
-    "glProgramEnvParameter4dARB\0"
-    "glProgramEnvParameter4dvARB\0"
-    "glProgramEnvParameter4fARB\0"
-    "glProgramEnvParameter4fvARB\0"
-    "glProgramLocalParameter4dARB\0"
-    "glProgramLocalParameter4dvARB\0"
-    "glProgramLocalParameter4fARB\0"
-    "glProgramLocalParameter4fvARB\0"
-    "glProgramStringARB\0"
-    "glVertexAttrib1dARB\0"
-    "glVertexAttrib1dvARB\0"
-    "glVertexAttrib1fARB\0"
-    "glVertexAttrib1fvARB\0"
-    "glVertexAttrib1sARB\0"
-    "glVertexAttrib1svARB\0"
-    "glVertexAttrib2dARB\0"
-    "glVertexAttrib2dvARB\0"
-    "glVertexAttrib2fARB\0"
-    "glVertexAttrib2fvARB\0"
-    "glVertexAttrib2sARB\0"
-    "glVertexAttrib2svARB\0"
-    "glVertexAttrib3dARB\0"
-    "glVertexAttrib3dvARB\0"
-    "glVertexAttrib3fARB\0"
-    "glVertexAttrib3fvARB\0"
-    "glVertexAttrib3sARB\0"
-    "glVertexAttrib3svARB\0"
-    "glVertexAttrib4NbvARB\0"
-    "glVertexAttrib4NivARB\0"
-    "glVertexAttrib4NsvARB\0"
-    "glVertexAttrib4NubARB\0"
-    "glVertexAttrib4NubvARB\0"
-    "glVertexAttrib4NuivARB\0"
-    "glVertexAttrib4NusvARB\0"
-    "glVertexAttrib4bvARB\0"
-    "glVertexAttrib4dARB\0"
-    "glVertexAttrib4dvARB\0"
-    "glVertexAttrib4fARB\0"
-    "glVertexAttrib4fvARB\0"
-    "glVertexAttrib4ivARB\0"
-    "glVertexAttrib4sARB\0"
-    "glVertexAttrib4svARB\0"
-    "glVertexAttrib4ubvARB\0"
-    "glVertexAttrib4uivARB\0"
-    "glVertexAttrib4usvARB\0"
-    "glVertexAttribPointerARB\0"
-    "glBindBufferARB\0"
-    "glBufferDataARB\0"
-    "glBufferSubDataARB\0"
-    "glDeleteBuffersARB\0"
-    "glGenBuffersARB\0"
-    "glGetBufferParameterivARB\0"
-    "glGetBufferPointervARB\0"
-    "glGetBufferSubDataARB\0"
-    "glIsBufferARB\0"
-    "glMapBufferARB\0"
-    "glUnmapBufferARB\0"
-    "glBeginQueryARB\0"
-    "glDeleteQueriesARB\0"
-    "glEndQueryARB\0"
-    "glGenQueriesARB\0"
-    "glGetQueryObjectivARB\0"
-    "glGetQueryObjectuivARB\0"
-    "glGetQueryivARB\0"
-    "glIsQueryARB\0"
-    "glAttachObjectARB\0"
-    "glCompileShaderARB\0"
-    "glCreateProgramObjectARB\0"
-    "glCreateShaderObjectARB\0"
-    "glDeleteObjectARB\0"
-    "glDetachObjectARB\0"
-    "glGetActiveUniformARB\0"
-    "glGetAttachedObjectsARB\0"
-    "glGetHandleARB\0"
-    "glGetInfoLogARB\0"
-    "glGetObjectParameterfvARB\0"
-    "glGetObjectParameterivARB\0"
-    "glGetShaderSourceARB\0"
-    "glGetUniformLocationARB\0"
-    "glGetUniformfvARB\0"
-    "glGetUniformivARB\0"
-    "glLinkProgramARB\0"
-    "glShaderSourceARB\0"
-    "glUniform1fARB\0"
-    "glUniform1fvARB\0"
-    "glUniform1iARB\0"
-    "glUniform1ivARB\0"
-    "glUniform2fARB\0"
-    "glUniform2fvARB\0"
-    "glUniform2iARB\0"
-    "glUniform2ivARB\0"
-    "glUniform3fARB\0"
-    "glUniform3fvARB\0"
-    "glUniform3iARB\0"
-    "glUniform3ivARB\0"
-    "glUniform4fARB\0"
-    "glUniform4fvARB\0"
-    "glUniform4iARB\0"
-    "glUniform4ivARB\0"
-    "glUniformMatrix2fvARB\0"
-    "glUniformMatrix3fvARB\0"
-    "glUniformMatrix4fvARB\0"
-    "glUseProgramObjectARB\0"
-    "glValidateProgramARB\0"
-    "glBindAttribLocationARB\0"
-    "glGetActiveAttribARB\0"
-    "glGetAttribLocationARB\0"
-    "glDrawBuffersARB\0"
-    "glRenderbufferStorageMultisample\0"
-    "glFlushMappedBufferRange\0"
-    "glMapBufferRange\0"
-    "glBindVertexArray\0"
-    "glGenVertexArrays\0"
-    "glCopyBufferSubData\0"
-    "glClientWaitSync\0"
-    "glDeleteSync\0"
-    "glFenceSync\0"
-    "glGetInteger64v\0"
-    "glGetSynciv\0"
-    "glIsSync\0"
-    "glWaitSync\0"
-    "glDrawElementsBaseVertex\0"
-    "glDrawRangeElementsBaseVertex\0"
-    "glMultiDrawElementsBaseVertex\0"
-    "glPolygonOffsetEXT\0"
-    "glGetPixelTexGenParameterfvSGIS\0"
-    "glGetPixelTexGenParameterivSGIS\0"
-    "glPixelTexGenParameterfSGIS\0"
-    "glPixelTexGenParameterfvSGIS\0"
-    "glPixelTexGenParameteriSGIS\0"
-    "glPixelTexGenParameterivSGIS\0"
-    "glSampleMaskSGIS\0"
-    "glSamplePatternSGIS\0"
-    "glColorPointerEXT\0"
-    "glEdgeFlagPointerEXT\0"
-    "glIndexPointerEXT\0"
-    "glNormalPointerEXT\0"
-    "glTexCoordPointerEXT\0"
-    "glVertexPointerEXT\0"
-    "glPointParameterfEXT\0"
-    "glPointParameterfvEXT\0"
-    "glLockArraysEXT\0"
-    "glUnlockArraysEXT\0"
-    "glCullParameterdvEXT\0"
-    "glCullParameterfvEXT\0"
-    "glSecondaryColor3bEXT\0"
-    "glSecondaryColor3bvEXT\0"
-    "glSecondaryColor3dEXT\0"
-    "glSecondaryColor3dvEXT\0"
-    "glSecondaryColor3fEXT\0"
-    "glSecondaryColor3fvEXT\0"
-    "glSecondaryColor3iEXT\0"
-    "glSecondaryColor3ivEXT\0"
-    "glSecondaryColor3sEXT\0"
-    "glSecondaryColor3svEXT\0"
-    "glSecondaryColor3ubEXT\0"
-    "glSecondaryColor3ubvEXT\0"
-    "glSecondaryColor3uiEXT\0"
-    "glSecondaryColor3uivEXT\0"
-    "glSecondaryColor3usEXT\0"
-    "glSecondaryColor3usvEXT\0"
-    "glSecondaryColorPointerEXT\0"
-    "glMultiDrawArraysEXT\0"
-    "glMultiDrawElementsEXT\0"
-    "glFogCoordPointerEXT\0"
-    "glFogCoorddEXT\0"
-    "glFogCoorddvEXT\0"
-    "glFogCoordfEXT\0"
-    "glFogCoordfvEXT\0"
-    "glPixelTexGenSGIX\0"
-    "glBlendFuncSeparateEXT\0"
-    "glFlushVertexArrayRangeNV\0"
-    "glVertexArrayRangeNV\0"
-    "glCombinerInputNV\0"
-    "glCombinerOutputNV\0"
-    "glCombinerParameterfNV\0"
-    "glCombinerParameterfvNV\0"
-    "glCombinerParameteriNV\0"
-    "glCombinerParameterivNV\0"
-    "glFinalCombinerInputNV\0"
-    "glGetCombinerInputParameterfvNV\0"
-    "glGetCombinerInputParameterivNV\0"
-    "glGetCombinerOutputParameterfvNV\0"
-    "glGetCombinerOutputParameterivNV\0"
-    "glGetFinalCombinerInputParameterfvNV\0"
-    "glGetFinalCombinerInputParameterivNV\0"
-    "glResizeBuffersMESA\0"
-    "glWindowPos2dMESA\0"
-    "glWindowPos2dvMESA\0"
-    "glWindowPos2fMESA\0"
-    "glWindowPos2fvMESA\0"
-    "glWindowPos2iMESA\0"
-    "glWindowPos2ivMESA\0"
-    "glWindowPos2sMESA\0"
-    "glWindowPos2svMESA\0"
-    "glWindowPos3dMESA\0"
-    "glWindowPos3dvMESA\0"
-    "glWindowPos3fMESA\0"
-    "glWindowPos3fvMESA\0"
-    "glWindowPos3iMESA\0"
-    "glWindowPos3ivMESA\0"
-    "glWindowPos3sMESA\0"
-    "glWindowPos3svMESA\0"
-    "glWindowPos4dMESA\0"
-    "glWindowPos4dvMESA\0"
-    "glWindowPos4fMESA\0"
-    "glWindowPos4fvMESA\0"
-    "glWindowPos4iMESA\0"
-    "glWindowPos4ivMESA\0"
-    "glWindowPos4sMESA\0"
-    "glWindowPos4svMESA\0"
-    "glMultiModeDrawArraysIBM\0"
-    "glMultiModeDrawElementsIBM\0"
-    "glDeleteFencesNV\0"
-    "glFinishFenceNV\0"
-    "glGenFencesNV\0"
-    "glGetFenceivNV\0"
-    "glIsFenceNV\0"
-    "glSetFenceNV\0"
-    "glTestFenceNV\0"
-    "glAreProgramsResidentNV\0"
-    "glBindProgramNV\0"
-    "glDeleteProgramsNV\0"
-    "glExecuteProgramNV\0"
-    "glGenProgramsNV\0"
-    "glGetProgramParameterdvNV\0"
-    "glGetProgramParameterfvNV\0"
-    "glGetProgramStringNV\0"
-    "glGetProgramivNV\0"
-    "glGetTrackMatrixivNV\0"
-    "glGetVertexAttribPointervNV\0"
-    "glGetVertexAttribdvNV\0"
-    "glGetVertexAttribfvNV\0"
-    "glGetVertexAttribivNV\0"
-    "glIsProgramNV\0"
-    "glLoadProgramNV\0"
-    "glProgramParameters4dvNV\0"
-    "glProgramParameters4fvNV\0"
-    "glRequestResidentProgramsNV\0"
-    "glTrackMatrixNV\0"
-    "glVertexAttrib1dNV\0"
-    "glVertexAttrib1dvNV\0"
-    "glVertexAttrib1fNV\0"
-    "glVertexAttrib1fvNV\0"
-    "glVertexAttrib1sNV\0"
-    "glVertexAttrib1svNV\0"
-    "glVertexAttrib2dNV\0"
-    "glVertexAttrib2dvNV\0"
-    "glVertexAttrib2fNV\0"
-    "glVertexAttrib2fvNV\0"
-    "glVertexAttrib2sNV\0"
-    "glVertexAttrib2svNV\0"
-    "glVertexAttrib3dNV\0"
-    "glVertexAttrib3dvNV\0"
-    "glVertexAttrib3fNV\0"
-    "glVertexAttrib3fvNV\0"
-    "glVertexAttrib3sNV\0"
-    "glVertexAttrib3svNV\0"
-    "glVertexAttrib4dNV\0"
-    "glVertexAttrib4dvNV\0"
-    "glVertexAttrib4fNV\0"
-    "glVertexAttrib4fvNV\0"
-    "glVertexAttrib4sNV\0"
-    "glVertexAttrib4svNV\0"
-    "glVertexAttrib4ubNV\0"
-    "glVertexAttrib4ubvNV\0"
-    "glVertexAttribPointerNV\0"
-    "glVertexAttribs1dvNV\0"
-    "glVertexAttribs1fvNV\0"
-    "glVertexAttribs1svNV\0"
-    "glVertexAttribs2dvNV\0"
-    "glVertexAttribs2fvNV\0"
-    "glVertexAttribs2svNV\0"
-    "glVertexAttribs3dvNV\0"
-    "glVertexAttribs3fvNV\0"
-    "glVertexAttribs3svNV\0"
-    "glVertexAttribs4dvNV\0"
-    "glVertexAttribs4fvNV\0"
-    "glVertexAttribs4svNV\0"
-    "glVertexAttribs4ubvNV\0"
-    "glGetTexBumpParameterfvATI\0"
-    "glGetTexBumpParameterivATI\0"
-    "glTexBumpParameterfvATI\0"
-    "glTexBumpParameterivATI\0"
-    "glAlphaFragmentOp1ATI\0"
-    "glAlphaFragmentOp2ATI\0"
-    "glAlphaFragmentOp3ATI\0"
-    "glBeginFragmentShaderATI\0"
-    "glBindFragmentShaderATI\0"
-    "glColorFragmentOp1ATI\0"
-    "glColorFragmentOp2ATI\0"
-    "glColorFragmentOp3ATI\0"
-    "glDeleteFragmentShaderATI\0"
-    "glEndFragmentShaderATI\0"
-    "glGenFragmentShadersATI\0"
-    "glPassTexCoordATI\0"
-    "glSampleMapATI\0"
-    "glSetFragmentShaderConstantATI\0"
-    "glPointParameteriNV\0"
-    "glPointParameterivNV\0"
-    "glActiveStencilFaceEXT\0"
-    "glBindVertexArrayAPPLE\0"
-    "glDeleteVertexArraysAPPLE\0"
-    "glGenVertexArraysAPPLE\0"
-    "glIsVertexArrayAPPLE\0"
-    "glGetProgramNamedParameterdvNV\0"
-    "glGetProgramNamedParameterfvNV\0"
-    "glProgramNamedParameter4dNV\0"
-    "glProgramNamedParameter4dvNV\0"
-    "glProgramNamedParameter4fNV\0"
-    "glProgramNamedParameter4fvNV\0"
-    "glDepthBoundsEXT\0"
-    "glBlendEquationSeparateEXT\0"
-    "glBindFramebufferEXT\0"
-    "glBindRenderbufferEXT\0"
-    "glCheckFramebufferStatusEXT\0"
-    "glDeleteFramebuffersEXT\0"
-    "glDeleteRenderbuffersEXT\0"
-    "glFramebufferRenderbufferEXT\0"
-    "glFramebufferTexture1DEXT\0"
-    "glFramebufferTexture2DEXT\0"
-    "glFramebufferTexture3DEXT\0"
-    "glGenFramebuffersEXT\0"
-    "glGenRenderbuffersEXT\0"
-    "glGenerateMipmapEXT\0"
-    "glGetFramebufferAttachmentParameterivEXT\0"
-    "glGetRenderbufferParameterivEXT\0"
-    "glIsFramebufferEXT\0"
-    "glIsRenderbufferEXT\0"
-    "glRenderbufferStorageEXT\0"
-    "glBlitFramebufferEXT\0"
-    "glBufferParameteriAPPLE\0"
-    "glFlushMappedBufferRangeAPPLE\0"
-    "glFramebufferTextureLayerEXT\0"
-    "glColorMaskIndexedEXT\0"
-    "glDisableIndexedEXT\0"
-    "glEnableIndexedEXT\0"
-    "glGetBooleanIndexedvEXT\0"
-    "glGetIntegerIndexedvEXT\0"
-    "glIsEnabledIndexedEXT\0"
-    "glBeginConditionalRenderNV\0"
-    "glEndConditionalRenderNV\0"
-    "glBeginTransformFeedbackEXT\0"
-    "glBindBufferBaseEXT\0"
-    "glBindBufferOffsetEXT\0"
-    "glBindBufferRangeEXT\0"
-    "glEndTransformFeedbackEXT\0"
-    "glGetTransformFeedbackVaryingEXT\0"
-    "glTransformFeedbackVaryingsEXT\0"
-    "glProvokingVertexEXT\0"
-    "glGetTexParameterPointervAPPLE\0"
-    "glTextureRangeAPPLE\0"
-    "glGetObjectParameterivAPPLE\0"
-    "glObjectPurgeableAPPLE\0"
-    "glObjectUnpurgeableAPPLE\0"
-    "glStencilFuncSeparateATI\0"
-    "glProgramEnvParameters4fvEXT\0"
-    "glProgramLocalParameters4fvEXT\0"
-    "glGetQueryObjecti64vEXT\0"
-    "glGetQueryObjectui64vEXT\0"
-    "glEGLImageTargetRenderbufferStorageOES\0"
-    "glEGLImageTargetTexture2DOES\0"
-    "glArrayElementEXT\0"
-    "glBindTextureEXT\0"
-    "glDrawArraysEXT\0"
-    "glAreTexturesResidentEXT\0"
-    "glCopyTexImage1DEXT\0"
-    "glCopyTexImage2DEXT\0"
-    "glCopyTexSubImage1DEXT\0"
-    "glCopyTexSubImage2DEXT\0"
-    "glDeleteTexturesEXT\0"
-    "glGenTexturesEXT\0"
-    "glGetPointervEXT\0"
-    "glIsTextureEXT\0"
-    "glPrioritizeTexturesEXT\0"
-    "glTexSubImage1DEXT\0"
-    "glTexSubImage2DEXT\0"
-    "glBlendColorEXT\0"
-    "glBlendEquationEXT\0"
-    "glDrawRangeElementsEXT\0"
-    "glColorTableSGI\0"
-    "glColorTableEXT\0"
-    "glColorTableParameterfvSGI\0"
-    "glColorTableParameterivSGI\0"
-    "glCopyColorTableSGI\0"
-    "glGetColorTableSGI\0"
-    "glGetColorTableEXT\0"
-    "glGetColorTableParameterfvSGI\0"
-    "glGetColorTableParameterfvEXT\0"
-    "glGetColorTableParameterivSGI\0"
-    "glGetColorTableParameterivEXT\0"
-    "glColorSubTableEXT\0"
-    "glCopyColorSubTableEXT\0"
-    "glConvolutionFilter1DEXT\0"
-    "glConvolutionFilter2DEXT\0"
-    "glConvolutionParameterfEXT\0"
-    "glConvolutionParameterfvEXT\0"
-    "glConvolutionParameteriEXT\0"
-    "glConvolutionParameterivEXT\0"
-    "glCopyConvolutionFilter1DEXT\0"
-    "glCopyConvolutionFilter2DEXT\0"
-    "glGetConvolutionFilterEXT\0"
-    "glGetConvolutionParameterfvEXT\0"
-    "glGetConvolutionParameterivEXT\0"
-    "glGetSeparableFilterEXT\0"
-    "glSeparableFilter2DEXT\0"
-    "glGetHistogramEXT\0"
-    "glGetHistogramParameterfvEXT\0"
-    "glGetHistogramParameterivEXT\0"
-    "glGetMinmaxEXT\0"
-    "glGetMinmaxParameterfvEXT\0"
-    "glGetMinmaxParameterivEXT\0"
-    "glHistogramEXT\0"
-    "glMinmaxEXT\0"
-    "glResetHistogramEXT\0"
-    "glResetMinmaxEXT\0"
-    "glTexImage3DEXT\0"
-    "glTexSubImage3DEXT\0"
-    "glCopyTexSubImage3DEXT\0"
-    "glActiveTexture\0"
-    "glClientActiveTexture\0"
-    "glMultiTexCoord1d\0"
-    "glMultiTexCoord1dv\0"
-    "glMultiTexCoord1f\0"
-    "glMultiTexCoord1fv\0"
-    "glMultiTexCoord1i\0"
-    "glMultiTexCoord1iv\0"
-    "glMultiTexCoord1s\0"
-    "glMultiTexCoord1sv\0"
-    "glMultiTexCoord2d\0"
-    "glMultiTexCoord2dv\0"
-    "glMultiTexCoord2f\0"
-    "glMultiTexCoord2fv\0"
-    "glMultiTexCoord2i\0"
-    "glMultiTexCoord2iv\0"
-    "glMultiTexCoord2s\0"
-    "glMultiTexCoord2sv\0"
-    "glMultiTexCoord3d\0"
-    "glMultiTexCoord3dv\0"
-    "glMultiTexCoord3f\0"
-    "glMultiTexCoord3fv\0"
-    "glMultiTexCoord3i\0"
-    "glMultiTexCoord3iv\0"
-    "glMultiTexCoord3s\0"
-    "glMultiTexCoord3sv\0"
-    "glMultiTexCoord4d\0"
-    "glMultiTexCoord4dv\0"
-    "glMultiTexCoord4f\0"
-    "glMultiTexCoord4fv\0"
-    "glMultiTexCoord4i\0"
-    "glMultiTexCoord4iv\0"
-    "glMultiTexCoord4s\0"
-    "glMultiTexCoord4sv\0"
-    "glStencilOpSeparateATI\0"
-    "glDrawArraysInstancedARB\0"
-    "glDrawArraysInstancedEXT\0"
-    "glDrawElementsInstancedARB\0"
-    "glDrawElementsInstancedEXT\0"
-    "glLoadTransposeMatrixd\0"
-    "glLoadTransposeMatrixf\0"
-    "glMultTransposeMatrixd\0"
-    "glMultTransposeMatrixf\0"
-    "glSampleCoverage\0"
-    "glCompressedTexImage1D\0"
-    "glCompressedTexImage2D\0"
-    "glCompressedTexImage3D\0"
-    "glCompressedTexSubImage1D\0"
-    "glCompressedTexSubImage2D\0"
-    "glCompressedTexSubImage3D\0"
-    "glGetCompressedTexImage\0"
-    "glDisableVertexAttribArray\0"
-    "glEnableVertexAttribArray\0"
-    "glGetVertexAttribdv\0"
-    "glGetVertexAttribfv\0"
-    "glGetVertexAttribiv\0"
-    "glProgramParameter4dNV\0"
-    "glProgramParameter4dvNV\0"
-    "glProgramParameter4fNV\0"
-    "glProgramParameter4fvNV\0"
-    "glVertexAttrib1d\0"
-    "glVertexAttrib1dv\0"
-    "glVertexAttrib1f\0"
-    "glVertexAttrib1fv\0"
-    "glVertexAttrib1s\0"
-    "glVertexAttrib1sv\0"
-    "glVertexAttrib2d\0"
-    "glVertexAttrib2dv\0"
-    "glVertexAttrib2f\0"
-    "glVertexAttrib2fv\0"
-    "glVertexAttrib2s\0"
-    "glVertexAttrib2sv\0"
-    "glVertexAttrib3d\0"
-    "glVertexAttrib3dv\0"
-    "glVertexAttrib3f\0"
-    "glVertexAttrib3fv\0"
-    "glVertexAttrib3s\0"
-    "glVertexAttrib3sv\0"
-    "glVertexAttrib4Nbv\0"
-    "glVertexAttrib4Niv\0"
-    "glVertexAttrib4Nsv\0"
-    "glVertexAttrib4Nub\0"
-    "glVertexAttrib4Nubv\0"
-    "glVertexAttrib4Nuiv\0"
-    "glVertexAttrib4Nusv\0"
-    "glVertexAttrib4bv\0"
-    "glVertexAttrib4d\0"
-    "glVertexAttrib4dv\0"
-    "glVertexAttrib4f\0"
-    "glVertexAttrib4fv\0"
-    "glVertexAttrib4iv\0"
-    "glVertexAttrib4s\0"
-    "glVertexAttrib4sv\0"
-    "glVertexAttrib4ubv\0"
-    "glVertexAttrib4uiv\0"
-    "glVertexAttrib4usv\0"
-    "glVertexAttribPointer\0"
-    "glBindBuffer\0"
-    "glBufferData\0"
-    "glBufferSubData\0"
-    "glDeleteBuffers\0"
-    "glGenBuffers\0"
-    "glGetBufferParameteriv\0"
-    "glGetBufferPointerv\0"
-    "glGetBufferSubData\0"
-    "glIsBuffer\0"
-    "glMapBuffer\0"
-    "glUnmapBuffer\0"
-    "glBeginQuery\0"
-    "glDeleteQueries\0"
-    "glEndQuery\0"
-    "glGenQueries\0"
-    "glGetQueryObjectiv\0"
-    "glGetQueryObjectuiv\0"
-    "glGetQueryiv\0"
-    "glIsQuery\0"
-    "glCompileShader\0"
-    "glGetActiveUniform\0"
-    "glGetShaderSource\0"
-    "glGetUniformLocation\0"
-    "glGetUniformfv\0"
-    "glGetUniformiv\0"
-    "glLinkProgram\0"
-    "glShaderSource\0"
-    "glUniform1f\0"
-    "glUniform1fv\0"
-    "glUniform1i\0"
-    "glUniform1iv\0"
-    "glUniform2f\0"
-    "glUniform2fv\0"
-    "glUniform2i\0"
-    "glUniform2iv\0"
-    "glUniform3f\0"
-    "glUniform3fv\0"
-    "glUniform3i\0"
-    "glUniform3iv\0"
-    "glUniform4f\0"
-    "glUniform4fv\0"
-    "glUniform4i\0"
-    "glUniform4iv\0"
-    "glUniformMatrix2fv\0"
-    "glUniformMatrix3fv\0"
-    "glUniformMatrix4fv\0"
-    "glUseProgram\0"
-    "glValidateProgram\0"
-    "glBindAttribLocation\0"
-    "glGetActiveAttrib\0"
-    "glGetAttribLocation\0"
-    "glDrawBuffers\0"
-    "glDrawBuffersATI\0"
-    "glRenderbufferStorageMultisampleEXT\0"
-    "glSampleMaskEXT\0"
-    "glSamplePatternEXT\0"
-    "glPointParameterf\0"
-    "glPointParameterfARB\0"
-    "glPointParameterfSGIS\0"
-    "glPointParameterfv\0"
-    "glPointParameterfvARB\0"
-    "glPointParameterfvSGIS\0"
-    "glSecondaryColor3b\0"
-    "glSecondaryColor3bv\0"
-    "glSecondaryColor3d\0"
-    "glSecondaryColor3dv\0"
-    "glSecondaryColor3f\0"
-    "glSecondaryColor3fv\0"
-    "glSecondaryColor3i\0"
-    "glSecondaryColor3iv\0"
-    "glSecondaryColor3s\0"
-    "glSecondaryColor3sv\0"
-    "glSecondaryColor3ub\0"
-    "glSecondaryColor3ubv\0"
-    "glSecondaryColor3ui\0"
-    "glSecondaryColor3uiv\0"
-    "glSecondaryColor3us\0"
-    "glSecondaryColor3usv\0"
-    "glSecondaryColorPointer\0"
-    "glMultiDrawArrays\0"
-    "glMultiDrawElements\0"
-    "glFogCoordPointer\0"
-    "glFogCoordd\0"
-    "glFogCoorddv\0"
-    "glFogCoordf\0"
-    "glFogCoordfv\0"
-    "glBlendFuncSeparate\0"
-    "glBlendFuncSeparateINGR\0"
-    "glWindowPos2d\0"
-    "glWindowPos2dARB\0"
-    "glWindowPos2dv\0"
-    "glWindowPos2dvARB\0"
-    "glWindowPos2f\0"
-    "glWindowPos2fARB\0"
-    "glWindowPos2fv\0"
-    "glWindowPos2fvARB\0"
-    "glWindowPos2i\0"
-    "glWindowPos2iARB\0"
-    "glWindowPos2iv\0"
-    "glWindowPos2ivARB\0"
-    "glWindowPos2s\0"
-    "glWindowPos2sARB\0"
-    "glWindowPos2sv\0"
-    "glWindowPos2svARB\0"
-    "glWindowPos3d\0"
-    "glWindowPos3dARB\0"
-    "glWindowPos3dv\0"
-    "glWindowPos3dvARB\0"
-    "glWindowPos3f\0"
-    "glWindowPos3fARB\0"
-    "glWindowPos3fv\0"
-    "glWindowPos3fvARB\0"
-    "glWindowPos3i\0"
-    "glWindowPos3iARB\0"
-    "glWindowPos3iv\0"
-    "glWindowPos3ivARB\0"
-    "glWindowPos3s\0"
-    "glWindowPos3sARB\0"
-    "glWindowPos3sv\0"
-    "glWindowPos3svARB\0"
-    "glBindProgramARB\0"
-    "glDeleteProgramsARB\0"
-    "glGenProgramsARB\0"
-    "glGetVertexAttribPointerv\0"
-    "glGetVertexAttribPointervARB\0"
-    "glIsProgramARB\0"
-    "glPointParameteri\0"
-    "glPointParameteriv\0"
-    "glDeleteVertexArrays\0"
-    "glIsVertexArray\0"
-    "glBlendEquationSeparate\0"
-    "glBlendEquationSeparateATI\0"
-    "glBindFramebuffer\0"
-    "glBindRenderbuffer\0"
-    "glCheckFramebufferStatus\0"
-    "glDeleteFramebuffers\0"
-    "glDeleteRenderbuffers\0"
-    "glFramebufferRenderbuffer\0"
-    "glFramebufferTexture1D\0"
-    "glFramebufferTexture2D\0"
-    "glFramebufferTexture3D\0"
-    "glGenFramebuffers\0"
-    "glGenRenderbuffers\0"
-    "glGenerateMipmap\0"
-    "glGetFramebufferAttachmentParameteriv\0"
-    "glGetRenderbufferParameteriv\0"
-    "glIsFramebuffer\0"
-    "glIsRenderbuffer\0"
-    "glRenderbufferStorage\0"
-    "glBlitFramebuffer\0"
-    "glFramebufferTextureLayer\0"
-    "glBeginTransformFeedback\0"
-    "glBindBufferBase\0"
-    "glBindBufferRange\0"
-    "glEndTransformFeedback\0"
-    "glGetTransformFeedbackVarying\0"
-    "glTransformFeedbackVaryings\0"
-    "glProvokingVertex\0"
-    ;
-
-
-#ifdef USE_MGL_NAMESPACE
-#define gl_dispatch_stub_343 mgl_dispatch_stub_343
-#define gl_dispatch_stub_344 mgl_dispatch_stub_344
-#define gl_dispatch_stub_345 mgl_dispatch_stub_345
-#define gl_dispatch_stub_356 mgl_dispatch_stub_356
-#define gl_dispatch_stub_357 mgl_dispatch_stub_357
-#define gl_dispatch_stub_358 mgl_dispatch_stub_358
-#define gl_dispatch_stub_359 mgl_dispatch_stub_359
-#define gl_dispatch_stub_361 mgl_dispatch_stub_361
-#define gl_dispatch_stub_362 mgl_dispatch_stub_362
-#define gl_dispatch_stub_363 mgl_dispatch_stub_363
-#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_580 mgl_dispatch_stub_580
-#define gl_dispatch_stub_581 mgl_dispatch_stub_581
-#define gl_dispatch_stub_582 mgl_dispatch_stub_582
-#define gl_dispatch_stub_583 mgl_dispatch_stub_583
-#define gl_dispatch_stub_584 mgl_dispatch_stub_584
-#define gl_dispatch_stub_585 mgl_dispatch_stub_585
-#define gl_dispatch_stub_586 mgl_dispatch_stub_586
-#define gl_dispatch_stub_587 mgl_dispatch_stub_587
-#define gl_dispatch_stub_598 mgl_dispatch_stub_598
-#define gl_dispatch_stub_599 mgl_dispatch_stub_599
-#define gl_dispatch_stub_624 mgl_dispatch_stub_624
-#define gl_dispatch_stub_666 mgl_dispatch_stub_666
-#define gl_dispatch_stub_667 mgl_dispatch_stub_667
-#define gl_dispatch_stub_668 mgl_dispatch_stub_668
-#define gl_dispatch_stub_669 mgl_dispatch_stub_669
-#define gl_dispatch_stub_670 mgl_dispatch_stub_670
-#define gl_dispatch_stub_671 mgl_dispatch_stub_671
-#define gl_dispatch_stub_672 mgl_dispatch_stub_672
-#define gl_dispatch_stub_673 mgl_dispatch_stub_673
-#define gl_dispatch_stub_674 mgl_dispatch_stub_674
-#define gl_dispatch_stub_755 mgl_dispatch_stub_755
-#define gl_dispatch_stub_756 mgl_dispatch_stub_756
-#define gl_dispatch_stub_757 mgl_dispatch_stub_757
-#define gl_dispatch_stub_758 mgl_dispatch_stub_758
-#define gl_dispatch_stub_759 mgl_dispatch_stub_759
-#define gl_dispatch_stub_766 mgl_dispatch_stub_766
-#define gl_dispatch_stub_767 mgl_dispatch_stub_767
-#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_805 mgl_dispatch_stub_805
-#define gl_dispatch_stub_806 mgl_dispatch_stub_806
-#define gl_dispatch_stub_810 mgl_dispatch_stub_810
-#define gl_dispatch_stub_811 mgl_dispatch_stub_811
-#define gl_dispatch_stub_812 mgl_dispatch_stub_812
-#define gl_dispatch_stub_813 mgl_dispatch_stub_813
-#define gl_dispatch_stub_814 mgl_dispatch_stub_814
-#endif /* USE_MGL_NAMESPACE */
-
-
-#if defined(NEED_FUNCTION_POINTER) || defined(GLX_INDIRECT_RENDERING)
-void GLAPIENTRY gl_dispatch_stub_343(GLenum target, GLenum format, GLenum type, GLvoid * table);
-void GLAPIENTRY gl_dispatch_stub_344(GLenum target, GLenum pname, GLfloat * params);
-void GLAPIENTRY gl_dispatch_stub_345(GLenum target, GLenum pname, GLint * params);
-void GLAPIENTRY gl_dispatch_stub_356(GLenum target, GLenum format, GLenum type, GLvoid * image);
-void GLAPIENTRY gl_dispatch_stub_357(GLenum target, GLenum pname, GLfloat * params);
-void GLAPIENTRY gl_dispatch_stub_358(GLenum target, GLenum pname, GLint * params);
-void GLAPIENTRY gl_dispatch_stub_359(GLenum target, GLenum format, GLenum type, GLvoid * row, GLvoid * column, GLvoid * span);
-void GLAPIENTRY gl_dispatch_stub_361(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values);
-void GLAPIENTRY gl_dispatch_stub_362(GLenum target, GLenum pname, GLfloat * params);
-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_580(GLenum pname, GLfloat * params);
-void GLAPIENTRY gl_dispatch_stub_581(GLenum pname, GLint * params);
-void GLAPIENTRY gl_dispatch_stub_582(GLenum pname, GLfloat param);
-void GLAPIENTRY gl_dispatch_stub_583(GLenum pname, const GLfloat * params);
-void GLAPIENTRY gl_dispatch_stub_584(GLenum pname, GLint param);
-void GLAPIENTRY gl_dispatch_stub_585(GLenum pname, const GLint * params);
-void GLAPIENTRY gl_dispatch_stub_586(GLclampf value, GLboolean invert);
-void GLAPIENTRY gl_dispatch_stub_587(GLenum pattern);
-void GLAPIENTRY gl_dispatch_stub_598(GLenum pname, GLdouble * params);
-void GLAPIENTRY gl_dispatch_stub_599(GLenum pname, GLfloat * params);
-void GLAPIENTRY gl_dispatch_stub_624(GLenum mode);
-void GLAPIENTRY gl_dispatch_stub_666(const GLenum * mode, const GLint * first, const GLsizei * count, GLsizei primcount, GLint modestride);
-void GLAPIENTRY gl_dispatch_stub_667(const GLenum * mode, const GLsizei * count, GLenum type, const GLvoid * const * indices, GLsizei primcount, GLint modestride);
-void GLAPIENTRY gl_dispatch_stub_668(GLsizei n, const GLuint * fences);
-void GLAPIENTRY gl_dispatch_stub_669(GLuint fence);
-void GLAPIENTRY gl_dispatch_stub_670(GLsizei n, GLuint * fences);
-void GLAPIENTRY gl_dispatch_stub_671(GLuint fence, GLenum pname, GLint * params);
-GLboolean GLAPIENTRY gl_dispatch_stub_672(GLuint fence);
-void GLAPIENTRY gl_dispatch_stub_673(GLuint fence, GLenum condition);
-GLboolean GLAPIENTRY gl_dispatch_stub_674(GLuint fence);
-void GLAPIENTRY gl_dispatch_stub_755(GLenum face);
-void GLAPIENTRY gl_dispatch_stub_756(GLuint array);
-void GLAPIENTRY gl_dispatch_stub_757(GLsizei n, const GLuint * arrays);
-void GLAPIENTRY gl_dispatch_stub_758(GLsizei n, GLuint * arrays);
-GLboolean GLAPIENTRY gl_dispatch_stub_759(GLuint array);
-void GLAPIENTRY gl_dispatch_stub_766(GLclampd zmin, GLclampd zmax);
-void GLAPIENTRY gl_dispatch_stub_767(GLenum modeRGB, GLenum modeA);
-void GLAPIENTRY gl_dispatch_stub_785(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_786(GLenum target, GLenum pname, GLint param);
-void GLAPIENTRY gl_dispatch_stub_787(GLenum target, GLintptr offset, GLsizeiptr size);
-void GLAPIENTRY gl_dispatch_stub_805(GLenum target, GLenum pname, GLvoid ** params);
-void GLAPIENTRY gl_dispatch_stub_806(GLenum target, GLsizei length, GLvoid * pointer);
-void GLAPIENTRY gl_dispatch_stub_810(GLenum frontfunc, GLenum backfunc, GLint ref, GLuint mask);
-void GLAPIENTRY gl_dispatch_stub_811(GLenum target, GLuint index, GLsizei count, const GLfloat * params);
-void GLAPIENTRY gl_dispatch_stub_812(GLenum target, GLuint index, GLsizei count, const GLfloat * params);
-void GLAPIENTRY gl_dispatch_stub_813(GLuint id, GLenum pname, GLint64EXT * params);
-void GLAPIENTRY gl_dispatch_stub_814(GLuint id, GLenum pname, GLuint64EXT * params);
-#endif /* defined(NEED_FUNCTION_POINTER) || defined(GLX_INDIRECT_RENDERING) */
-
-static const glprocs_table_t static_functions[] = {
-    NAME_FUNC_OFFSET(    0, glNewList, glNewList, NULL, _gloffset_NewList),
-    NAME_FUNC_OFFSET(   10, glEndList, glEndList, NULL, _gloffset_EndList),
-    NAME_FUNC_OFFSET(   20, glCallList, glCallList, NULL, _gloffset_CallList),
-    NAME_FUNC_OFFSET(   31, glCallLists, glCallLists, NULL, _gloffset_CallLists),
-    NAME_FUNC_OFFSET(   43, glDeleteLists, glDeleteLists, NULL, _gloffset_DeleteLists),
-    NAME_FUNC_OFFSET(   57, glGenLists, glGenLists, NULL, _gloffset_GenLists),
-    NAME_FUNC_OFFSET(   68, glListBase, glListBase, NULL, _gloffset_ListBase),
-    NAME_FUNC_OFFSET(   79, glBegin, glBegin, NULL, _gloffset_Begin),
-    NAME_FUNC_OFFSET(   87, glBitmap, glBitmap, NULL, _gloffset_Bitmap),
-    NAME_FUNC_OFFSET(   96, glColor3b, glColor3b, NULL, _gloffset_Color3b),
-    NAME_FUNC_OFFSET(  106, glColor3bv, glColor3bv, NULL, _gloffset_Color3bv),
-    NAME_FUNC_OFFSET(  117, glColor3d, glColor3d, NULL, _gloffset_Color3d),
-    NAME_FUNC_OFFSET(  127, glColor3dv, glColor3dv, NULL, _gloffset_Color3dv),
-    NAME_FUNC_OFFSET(  138, glColor3f, glColor3f, NULL, _gloffset_Color3f),
-    NAME_FUNC_OFFSET(  148, glColor3fv, glColor3fv, NULL, _gloffset_Color3fv),
-    NAME_FUNC_OFFSET(  159, glColor3i, glColor3i, NULL, _gloffset_Color3i),
-    NAME_FUNC_OFFSET(  169, glColor3iv, glColor3iv, NULL, _gloffset_Color3iv),
-    NAME_FUNC_OFFSET(  180, glColor3s, glColor3s, NULL, _gloffset_Color3s),
-    NAME_FUNC_OFFSET(  190, glColor3sv, glColor3sv, NULL, _gloffset_Color3sv),
-    NAME_FUNC_OFFSET(  201, glColor3ub, glColor3ub, NULL, _gloffset_Color3ub),
-    NAME_FUNC_OFFSET(  212, glColor3ubv, glColor3ubv, NULL, _gloffset_Color3ubv),
-    NAME_FUNC_OFFSET(  224, glColor3ui, glColor3ui, NULL, _gloffset_Color3ui),
-    NAME_FUNC_OFFSET(  235, glColor3uiv, glColor3uiv, NULL, _gloffset_Color3uiv),
-    NAME_FUNC_OFFSET(  247, glColor3us, glColor3us, NULL, _gloffset_Color3us),
-    NAME_FUNC_OFFSET(  258, glColor3usv, glColor3usv, NULL, _gloffset_Color3usv),
-    NAME_FUNC_OFFSET(  270, glColor4b, glColor4b, NULL, _gloffset_Color4b),
-    NAME_FUNC_OFFSET(  280, glColor4bv, glColor4bv, NULL, _gloffset_Color4bv),
-    NAME_FUNC_OFFSET(  291, glColor4d, glColor4d, NULL, _gloffset_Color4d),
-    NAME_FUNC_OFFSET(  301, glColor4dv, glColor4dv, NULL, _gloffset_Color4dv),
-    NAME_FUNC_OFFSET(  312, glColor4f, glColor4f, NULL, _gloffset_Color4f),
-    NAME_FUNC_OFFSET(  322, glColor4fv, glColor4fv, NULL, _gloffset_Color4fv),
-    NAME_FUNC_OFFSET(  333, glColor4i, glColor4i, NULL, _gloffset_Color4i),
-    NAME_FUNC_OFFSET(  343, glColor4iv, glColor4iv, NULL, _gloffset_Color4iv),
-    NAME_FUNC_OFFSET(  354, glColor4s, glColor4s, NULL, _gloffset_Color4s),
-    NAME_FUNC_OFFSET(  364, glColor4sv, glColor4sv, NULL, _gloffset_Color4sv),
-    NAME_FUNC_OFFSET(  375, glColor4ub, glColor4ub, NULL, _gloffset_Color4ub),
-    NAME_FUNC_OFFSET(  386, glColor4ubv, glColor4ubv, NULL, _gloffset_Color4ubv),
-    NAME_FUNC_OFFSET(  398, glColor4ui, glColor4ui, NULL, _gloffset_Color4ui),
-    NAME_FUNC_OFFSET(  409, glColor4uiv, glColor4uiv, NULL, _gloffset_Color4uiv),
-    NAME_FUNC_OFFSET(  421, glColor4us, glColor4us, NULL, _gloffset_Color4us),
-    NAME_FUNC_OFFSET(  432, glColor4usv, glColor4usv, NULL, _gloffset_Color4usv),
-    NAME_FUNC_OFFSET(  444, glEdgeFlag, glEdgeFlag, NULL, _gloffset_EdgeFlag),
-    NAME_FUNC_OFFSET(  455, glEdgeFlagv, glEdgeFlagv, NULL, _gloffset_EdgeFlagv),
-    NAME_FUNC_OFFSET(  467, glEnd, glEnd, NULL, _gloffset_End),
-    NAME_FUNC_OFFSET(  473, glIndexd, glIndexd, NULL, _gloffset_Indexd),
-    NAME_FUNC_OFFSET(  482, glIndexdv, glIndexdv, NULL, _gloffset_Indexdv),
-    NAME_FUNC_OFFSET(  492, glIndexf, glIndexf, NULL, _gloffset_Indexf),
-    NAME_FUNC_OFFSET(  501, glIndexfv, glIndexfv, NULL, _gloffset_Indexfv),
-    NAME_FUNC_OFFSET(  511, glIndexi, glIndexi, NULL, _gloffset_Indexi),
-    NAME_FUNC_OFFSET(  520, glIndexiv, glIndexiv, NULL, _gloffset_Indexiv),
-    NAME_FUNC_OFFSET(  530, glIndexs, glIndexs, NULL, _gloffset_Indexs),
-    NAME_FUNC_OFFSET(  539, glIndexsv, glIndexsv, NULL, _gloffset_Indexsv),
-    NAME_FUNC_OFFSET(  549, glNormal3b, glNormal3b, NULL, _gloffset_Normal3b),
-    NAME_FUNC_OFFSET(  560, glNormal3bv, glNormal3bv, NULL, _gloffset_Normal3bv),
-    NAME_FUNC_OFFSET(  572, glNormal3d, glNormal3d, NULL, _gloffset_Normal3d),
-    NAME_FUNC_OFFSET(  583, glNormal3dv, glNormal3dv, NULL, _gloffset_Normal3dv),
-    NAME_FUNC_OFFSET(  595, glNormal3f, glNormal3f, NULL, _gloffset_Normal3f),
-    NAME_FUNC_OFFSET(  606, glNormal3fv, glNormal3fv, NULL, _gloffset_Normal3fv),
-    NAME_FUNC_OFFSET(  618, glNormal3i, glNormal3i, NULL, _gloffset_Normal3i),
-    NAME_FUNC_OFFSET(  629, glNormal3iv, glNormal3iv, NULL, _gloffset_Normal3iv),
-    NAME_FUNC_OFFSET(  641, glNormal3s, glNormal3s, NULL, _gloffset_Normal3s),
-    NAME_FUNC_OFFSET(  652, glNormal3sv, glNormal3sv, NULL, _gloffset_Normal3sv),
-    NAME_FUNC_OFFSET(  664, glRasterPos2d, glRasterPos2d, NULL, _gloffset_RasterPos2d),
-    NAME_FUNC_OFFSET(  678, glRasterPos2dv, glRasterPos2dv, NULL, _gloffset_RasterPos2dv),
-    NAME_FUNC_OFFSET(  693, glRasterPos2f, glRasterPos2f, NULL, _gloffset_RasterPos2f),
-    NAME_FUNC_OFFSET(  707, glRasterPos2fv, glRasterPos2fv, NULL, _gloffset_RasterPos2fv),
-    NAME_FUNC_OFFSET(  722, glRasterPos2i, glRasterPos2i, NULL, _gloffset_RasterPos2i),
-    NAME_FUNC_OFFSET(  736, glRasterPos2iv, glRasterPos2iv, NULL, _gloffset_RasterPos2iv),
-    NAME_FUNC_OFFSET(  751, glRasterPos2s, glRasterPos2s, NULL, _gloffset_RasterPos2s),
-    NAME_FUNC_OFFSET(  765, glRasterPos2sv, glRasterPos2sv, NULL, _gloffset_RasterPos2sv),
-    NAME_FUNC_OFFSET(  780, glRasterPos3d, glRasterPos3d, NULL, _gloffset_RasterPos3d),
-    NAME_FUNC_OFFSET(  794, glRasterPos3dv, glRasterPos3dv, NULL, _gloffset_RasterPos3dv),
-    NAME_FUNC_OFFSET(  809, glRasterPos3f, glRasterPos3f, NULL, _gloffset_RasterPos3f),
-    NAME_FUNC_OFFSET(  823, glRasterPos3fv, glRasterPos3fv, NULL, _gloffset_RasterPos3fv),
-    NAME_FUNC_OFFSET(  838, glRasterPos3i, glRasterPos3i, NULL, _gloffset_RasterPos3i),
-    NAME_FUNC_OFFSET(  852, glRasterPos3iv, glRasterPos3iv, NULL, _gloffset_RasterPos3iv),
-    NAME_FUNC_OFFSET(  867, glRasterPos3s, glRasterPos3s, NULL, _gloffset_RasterPos3s),
-    NAME_FUNC_OFFSET(  881, glRasterPos3sv, glRasterPos3sv, NULL, _gloffset_RasterPos3sv),
-    NAME_FUNC_OFFSET(  896, glRasterPos4d, glRasterPos4d, NULL, _gloffset_RasterPos4d),
-    NAME_FUNC_OFFSET(  910, glRasterPos4dv, glRasterPos4dv, NULL, _gloffset_RasterPos4dv),
-    NAME_FUNC_OFFSET(  925, glRasterPos4f, glRasterPos4f, NULL, _gloffset_RasterPos4f),
-    NAME_FUNC_OFFSET(  939, glRasterPos4fv, glRasterPos4fv, NULL, _gloffset_RasterPos4fv),
-    NAME_FUNC_OFFSET(  954, glRasterPos4i, glRasterPos4i, NULL, _gloffset_RasterPos4i),
-    NAME_FUNC_OFFSET(  968, glRasterPos4iv, glRasterPos4iv, NULL, _gloffset_RasterPos4iv),
-    NAME_FUNC_OFFSET(  983, glRasterPos4s, glRasterPos4s, NULL, _gloffset_RasterPos4s),
-    NAME_FUNC_OFFSET(  997, glRasterPos4sv, glRasterPos4sv, NULL, _gloffset_RasterPos4sv),
-    NAME_FUNC_OFFSET( 1012, glRectd, glRectd, NULL, _gloffset_Rectd),
-    NAME_FUNC_OFFSET( 1020, glRectdv, glRectdv, NULL, _gloffset_Rectdv),
-    NAME_FUNC_OFFSET( 1029, glRectf, glRectf, NULL, _gloffset_Rectf),
-    NAME_FUNC_OFFSET( 1037, glRectfv, glRectfv, NULL, _gloffset_Rectfv),
-    NAME_FUNC_OFFSET( 1046, glRecti, glRecti, NULL, _gloffset_Recti),
-    NAME_FUNC_OFFSET( 1054, glRectiv, glRectiv, NULL, _gloffset_Rectiv),
-    NAME_FUNC_OFFSET( 1063, glRects, glRects, NULL, _gloffset_Rects),
-    NAME_FUNC_OFFSET( 1071, glRectsv, glRectsv, NULL, _gloffset_Rectsv),
-    NAME_FUNC_OFFSET( 1080, glTexCoord1d, glTexCoord1d, NULL, _gloffset_TexCoord1d),
-    NAME_FUNC_OFFSET( 1093, glTexCoord1dv, glTexCoord1dv, NULL, _gloffset_TexCoord1dv),
-    NAME_FUNC_OFFSET( 1107, glTexCoord1f, glTexCoord1f, NULL, _gloffset_TexCoord1f),
-    NAME_FUNC_OFFSET( 1120, glTexCoord1fv, glTexCoord1fv, NULL, _gloffset_TexCoord1fv),
-    NAME_FUNC_OFFSET( 1134, glTexCoord1i, glTexCoord1i, NULL, _gloffset_TexCoord1i),
-    NAME_FUNC_OFFSET( 1147, glTexCoord1iv, glTexCoord1iv, NULL, _gloffset_TexCoord1iv),
-    NAME_FUNC_OFFSET( 1161, glTexCoord1s, glTexCoord1s, NULL, _gloffset_TexCoord1s),
-    NAME_FUNC_OFFSET( 1174, glTexCoord1sv, glTexCoord1sv, NULL, _gloffset_TexCoord1sv),
-    NAME_FUNC_OFFSET( 1188, glTexCoord2d, glTexCoord2d, NULL, _gloffset_TexCoord2d),
-    NAME_FUNC_OFFSET( 1201, glTexCoord2dv, glTexCoord2dv, NULL, _gloffset_TexCoord2dv),
-    NAME_FUNC_OFFSET( 1215, glTexCoord2f, glTexCoord2f, NULL, _gloffset_TexCoord2f),
-    NAME_FUNC_OFFSET( 1228, glTexCoord2fv, glTexCoord2fv, NULL, _gloffset_TexCoord2fv),
-    NAME_FUNC_OFFSET( 1242, glTexCoord2i, glTexCoord2i, NULL, _gloffset_TexCoord2i),
-    NAME_FUNC_OFFSET( 1255, glTexCoord2iv, glTexCoord2iv, NULL, _gloffset_TexCoord2iv),
-    NAME_FUNC_OFFSET( 1269, glTexCoord2s, glTexCoord2s, NULL, _gloffset_TexCoord2s),
-    NAME_FUNC_OFFSET( 1282, glTexCoord2sv, glTexCoord2sv, NULL, _gloffset_TexCoord2sv),
-    NAME_FUNC_OFFSET( 1296, glTexCoord3d, glTexCoord3d, NULL, _gloffset_TexCoord3d),
-    NAME_FUNC_OFFSET( 1309, glTexCoord3dv, glTexCoord3dv, NULL, _gloffset_TexCoord3dv),
-    NAME_FUNC_OFFSET( 1323, glTexCoord3f, glTexCoord3f, NULL, _gloffset_TexCoord3f),
-    NAME_FUNC_OFFSET( 1336, glTexCoord3fv, glTexCoord3fv, NULL, _gloffset_TexCoord3fv),
-    NAME_FUNC_OFFSET( 1350, glTexCoord3i, glTexCoord3i, NULL, _gloffset_TexCoord3i),
-    NAME_FUNC_OFFSET( 1363, glTexCoord3iv, glTexCoord3iv, NULL, _gloffset_TexCoord3iv),
-    NAME_FUNC_OFFSET( 1377, glTexCoord3s, glTexCoord3s, NULL, _gloffset_TexCoord3s),
-    NAME_FUNC_OFFSET( 1390, glTexCoord3sv, glTexCoord3sv, NULL, _gloffset_TexCoord3sv),
-    NAME_FUNC_OFFSET( 1404, glTexCoord4d, glTexCoord4d, NULL, _gloffset_TexCoord4d),
-    NAME_FUNC_OFFSET( 1417, glTexCoord4dv, glTexCoord4dv, NULL, _gloffset_TexCoord4dv),
-    NAME_FUNC_OFFSET( 1431, glTexCoord4f, glTexCoord4f, NULL, _gloffset_TexCoord4f),
-    NAME_FUNC_OFFSET( 1444, glTexCoord4fv, glTexCoord4fv, NULL, _gloffset_TexCoord4fv),
-    NAME_FUNC_OFFSET( 1458, glTexCoord4i, glTexCoord4i, NULL, _gloffset_TexCoord4i),
-    NAME_FUNC_OFFSET( 1471, glTexCoord4iv, glTexCoord4iv, NULL, _gloffset_TexCoord4iv),
-    NAME_FUNC_OFFSET( 1485, glTexCoord4s, glTexCoord4s, NULL, _gloffset_TexCoord4s),
-    NAME_FUNC_OFFSET( 1498, glTexCoord4sv, glTexCoord4sv, NULL, _gloffset_TexCoord4sv),
-    NAME_FUNC_OFFSET( 1512, glVertex2d, glVertex2d, NULL, _gloffset_Vertex2d),
-    NAME_FUNC_OFFSET( 1523, glVertex2dv, glVertex2dv, NULL, _gloffset_Vertex2dv),
-    NAME_FUNC_OFFSET( 1535, glVertex2f, glVertex2f, NULL, _gloffset_Vertex2f),
-    NAME_FUNC_OFFSET( 1546, glVertex2fv, glVertex2fv, NULL, _gloffset_Vertex2fv),
-    NAME_FUNC_OFFSET( 1558, glVertex2i, glVertex2i, NULL, _gloffset_Vertex2i),
-    NAME_FUNC_OFFSET( 1569, glVertex2iv, glVertex2iv, NULL, _gloffset_Vertex2iv),
-    NAME_FUNC_OFFSET( 1581, glVertex2s, glVertex2s, NULL, _gloffset_Vertex2s),
-    NAME_FUNC_OFFSET( 1592, glVertex2sv, glVertex2sv, NULL, _gloffset_Vertex2sv),
-    NAME_FUNC_OFFSET( 1604, glVertex3d, glVertex3d, NULL, _gloffset_Vertex3d),
-    NAME_FUNC_OFFSET( 1615, glVertex3dv, glVertex3dv, NULL, _gloffset_Vertex3dv),
-    NAME_FUNC_OFFSET( 1627, glVertex3f, glVertex3f, NULL, _gloffset_Vertex3f),
-    NAME_FUNC_OFFSET( 1638, glVertex3fv, glVertex3fv, NULL, _gloffset_Vertex3fv),
-    NAME_FUNC_OFFSET( 1650, glVertex3i, glVertex3i, NULL, _gloffset_Vertex3i),
-    NAME_FUNC_OFFSET( 1661, glVertex3iv, glVertex3iv, NULL, _gloffset_Vertex3iv),
-    NAME_FUNC_OFFSET( 1673, glVertex3s, glVertex3s, NULL, _gloffset_Vertex3s),
-    NAME_FUNC_OFFSET( 1684, glVertex3sv, glVertex3sv, NULL, _gloffset_Vertex3sv),
-    NAME_FUNC_OFFSET( 1696, glVertex4d, glVertex4d, NULL, _gloffset_Vertex4d),
-    NAME_FUNC_OFFSET( 1707, glVertex4dv, glVertex4dv, NULL, _gloffset_Vertex4dv),
-    NAME_FUNC_OFFSET( 1719, glVertex4f, glVertex4f, NULL, _gloffset_Vertex4f),
-    NAME_FUNC_OFFSET( 1730, glVertex4fv, glVertex4fv, NULL, _gloffset_Vertex4fv),
-    NAME_FUNC_OFFSET( 1742, glVertex4i, glVertex4i, NULL, _gloffset_Vertex4i),
-    NAME_FUNC_OFFSET( 1753, glVertex4iv, glVertex4iv, NULL, _gloffset_Vertex4iv),
-    NAME_FUNC_OFFSET( 1765, glVertex4s, glVertex4s, NULL, _gloffset_Vertex4s),
-    NAME_FUNC_OFFSET( 1776, glVertex4sv, glVertex4sv, NULL, _gloffset_Vertex4sv),
-    NAME_FUNC_OFFSET( 1788, glClipPlane, glClipPlane, NULL, _gloffset_ClipPlane),
-    NAME_FUNC_OFFSET( 1800, glColorMaterial, glColorMaterial, NULL, _gloffset_ColorMaterial),
-    NAME_FUNC_OFFSET( 1816, glCullFace, glCullFace, NULL, _gloffset_CullFace),
-    NAME_FUNC_OFFSET( 1827, glFogf, glFogf, NULL, _gloffset_Fogf),
-    NAME_FUNC_OFFSET( 1834, glFogfv, glFogfv, NULL, _gloffset_Fogfv),
-    NAME_FUNC_OFFSET( 1842, glFogi, glFogi, NULL, _gloffset_Fogi),
-    NAME_FUNC_OFFSET( 1849, glFogiv, glFogiv, NULL, _gloffset_Fogiv),
-    NAME_FUNC_OFFSET( 1857, glFrontFace, glFrontFace, NULL, _gloffset_FrontFace),
-    NAME_FUNC_OFFSET( 1869, glHint, glHint, NULL, _gloffset_Hint),
-    NAME_FUNC_OFFSET( 1876, glLightf, glLightf, NULL, _gloffset_Lightf),
-    NAME_FUNC_OFFSET( 1885, glLightfv, glLightfv, NULL, _gloffset_Lightfv),
-    NAME_FUNC_OFFSET( 1895, glLighti, glLighti, NULL, _gloffset_Lighti),
-    NAME_FUNC_OFFSET( 1904, glLightiv, glLightiv, NULL, _gloffset_Lightiv),
-    NAME_FUNC_OFFSET( 1914, glLightModelf, glLightModelf, NULL, _gloffset_LightModelf),
-    NAME_FUNC_OFFSET( 1928, glLightModelfv, glLightModelfv, NULL, _gloffset_LightModelfv),
-    NAME_FUNC_OFFSET( 1943, glLightModeli, glLightModeli, NULL, _gloffset_LightModeli),
-    NAME_FUNC_OFFSET( 1957, glLightModeliv, glLightModeliv, NULL, _gloffset_LightModeliv),
-    NAME_FUNC_OFFSET( 1972, glLineStipple, glLineStipple, NULL, _gloffset_LineStipple),
-    NAME_FUNC_OFFSET( 1986, glLineWidth, glLineWidth, NULL, _gloffset_LineWidth),
-    NAME_FUNC_OFFSET( 1998, glMaterialf, glMaterialf, NULL, _gloffset_Materialf),
-    NAME_FUNC_OFFSET( 2010, glMaterialfv, glMaterialfv, NULL, _gloffset_Materialfv),
-    NAME_FUNC_OFFSET( 2023, glMateriali, glMateriali, NULL, _gloffset_Materiali),
-    NAME_FUNC_OFFSET( 2035, glMaterialiv, glMaterialiv, NULL, _gloffset_Materialiv),
-    NAME_FUNC_OFFSET( 2048, glPointSize, glPointSize, NULL, _gloffset_PointSize),
-    NAME_FUNC_OFFSET( 2060, glPolygonMode, glPolygonMode, NULL, _gloffset_PolygonMode),
-    NAME_FUNC_OFFSET( 2074, glPolygonStipple, glPolygonStipple, NULL, _gloffset_PolygonStipple),
-    NAME_FUNC_OFFSET( 2091, glScissor, glScissor, NULL, _gloffset_Scissor),
-    NAME_FUNC_OFFSET( 2101, glShadeModel, glShadeModel, NULL, _gloffset_ShadeModel),
-    NAME_FUNC_OFFSET( 2114, glTexParameterf, glTexParameterf, NULL, _gloffset_TexParameterf),
-    NAME_FUNC_OFFSET( 2130, glTexParameterfv, glTexParameterfv, NULL, _gloffset_TexParameterfv),
-    NAME_FUNC_OFFSET( 2147, glTexParameteri, glTexParameteri, NULL, _gloffset_TexParameteri),
-    NAME_FUNC_OFFSET( 2163, glTexParameteriv, glTexParameteriv, NULL, _gloffset_TexParameteriv),
-    NAME_FUNC_OFFSET( 2180, glTexImage1D, glTexImage1D, NULL, _gloffset_TexImage1D),
-    NAME_FUNC_OFFSET( 2193, glTexImage2D, glTexImage2D, NULL, _gloffset_TexImage2D),
-    NAME_FUNC_OFFSET( 2206, glTexEnvf, glTexEnvf, NULL, _gloffset_TexEnvf),
-    NAME_FUNC_OFFSET( 2216, glTexEnvfv, glTexEnvfv, NULL, _gloffset_TexEnvfv),
-    NAME_FUNC_OFFSET( 2227, glTexEnvi, glTexEnvi, NULL, _gloffset_TexEnvi),
-    NAME_FUNC_OFFSET( 2237, glTexEnviv, glTexEnviv, NULL, _gloffset_TexEnviv),
-    NAME_FUNC_OFFSET( 2248, glTexGend, glTexGend, NULL, _gloffset_TexGend),
-    NAME_FUNC_OFFSET( 2258, glTexGendv, glTexGendv, NULL, _gloffset_TexGendv),
-    NAME_FUNC_OFFSET( 2269, glTexGenf, glTexGenf, NULL, _gloffset_TexGenf),
-    NAME_FUNC_OFFSET( 2279, glTexGenfv, glTexGenfv, NULL, _gloffset_TexGenfv),
-    NAME_FUNC_OFFSET( 2290, glTexGeni, glTexGeni, NULL, _gloffset_TexGeni),
-    NAME_FUNC_OFFSET( 2300, glTexGeniv, glTexGeniv, NULL, _gloffset_TexGeniv),
-    NAME_FUNC_OFFSET( 2311, glFeedbackBuffer, glFeedbackBuffer, NULL, _gloffset_FeedbackBuffer),
-    NAME_FUNC_OFFSET( 2328, glSelectBuffer, glSelectBuffer, NULL, _gloffset_SelectBuffer),
-    NAME_FUNC_OFFSET( 2343, glRenderMode, glRenderMode, NULL, _gloffset_RenderMode),
-    NAME_FUNC_OFFSET( 2356, glInitNames, glInitNames, NULL, _gloffset_InitNames),
-    NAME_FUNC_OFFSET( 2368, glLoadName, glLoadName, NULL, _gloffset_LoadName),
-    NAME_FUNC_OFFSET( 2379, glPassThrough, glPassThrough, NULL, _gloffset_PassThrough),
-    NAME_FUNC_OFFSET( 2393, glPopName, glPopName, NULL, _gloffset_PopName),
-    NAME_FUNC_OFFSET( 2403, glPushName, glPushName, NULL, _gloffset_PushName),
-    NAME_FUNC_OFFSET( 2414, glDrawBuffer, glDrawBuffer, NULL, _gloffset_DrawBuffer),
-    NAME_FUNC_OFFSET( 2427, glClear, glClear, NULL, _gloffset_Clear),
-    NAME_FUNC_OFFSET( 2435, glClearAccum, glClearAccum, NULL, _gloffset_ClearAccum),
-    NAME_FUNC_OFFSET( 2448, glClearIndex, glClearIndex, NULL, _gloffset_ClearIndex),
-    NAME_FUNC_OFFSET( 2461, glClearColor, glClearColor, NULL, _gloffset_ClearColor),
-    NAME_FUNC_OFFSET( 2474, glClearStencil, glClearStencil, NULL, _gloffset_ClearStencil),
-    NAME_FUNC_OFFSET( 2489, glClearDepth, glClearDepth, NULL, _gloffset_ClearDepth),
-    NAME_FUNC_OFFSET( 2502, glStencilMask, glStencilMask, NULL, _gloffset_StencilMask),
-    NAME_FUNC_OFFSET( 2516, glColorMask, glColorMask, NULL, _gloffset_ColorMask),
-    NAME_FUNC_OFFSET( 2528, glDepthMask, glDepthMask, NULL, _gloffset_DepthMask),
-    NAME_FUNC_OFFSET( 2540, glIndexMask, glIndexMask, NULL, _gloffset_IndexMask),
-    NAME_FUNC_OFFSET( 2552, glAccum, glAccum, NULL, _gloffset_Accum),
-    NAME_FUNC_OFFSET( 2560, glDisable, glDisable, NULL, _gloffset_Disable),
-    NAME_FUNC_OFFSET( 2570, glEnable, glEnable, NULL, _gloffset_Enable),
-    NAME_FUNC_OFFSET( 2579, glFinish, glFinish, NULL, _gloffset_Finish),
-    NAME_FUNC_OFFSET( 2588, glFlush, glFlush, NULL, _gloffset_Flush),
-    NAME_FUNC_OFFSET( 2596, glPopAttrib, glPopAttrib, NULL, _gloffset_PopAttrib),
-    NAME_FUNC_OFFSET( 2608, glPushAttrib, glPushAttrib, NULL, _gloffset_PushAttrib),
-    NAME_FUNC_OFFSET( 2621, glMap1d, glMap1d, NULL, _gloffset_Map1d),
-    NAME_FUNC_OFFSET( 2629, glMap1f, glMap1f, NULL, _gloffset_Map1f),
-    NAME_FUNC_OFFSET( 2637, glMap2d, glMap2d, NULL, _gloffset_Map2d),
-    NAME_FUNC_OFFSET( 2645, glMap2f, glMap2f, NULL, _gloffset_Map2f),
-    NAME_FUNC_OFFSET( 2653, glMapGrid1d, glMapGrid1d, NULL, _gloffset_MapGrid1d),
-    NAME_FUNC_OFFSET( 2665, glMapGrid1f, glMapGrid1f, NULL, _gloffset_MapGrid1f),
-    NAME_FUNC_OFFSET( 2677, glMapGrid2d, glMapGrid2d, NULL, _gloffset_MapGrid2d),
-    NAME_FUNC_OFFSET( 2689, glMapGrid2f, glMapGrid2f, NULL, _gloffset_MapGrid2f),
-    NAME_FUNC_OFFSET( 2701, glEvalCoord1d, glEvalCoord1d, NULL, _gloffset_EvalCoord1d),
-    NAME_FUNC_OFFSET( 2715, glEvalCoord1dv, glEvalCoord1dv, NULL, _gloffset_EvalCoord1dv),
-    NAME_FUNC_OFFSET( 2730, glEvalCoord1f, glEvalCoord1f, NULL, _gloffset_EvalCoord1f),
-    NAME_FUNC_OFFSET( 2744, glEvalCoord1fv, glEvalCoord1fv, NULL, _gloffset_EvalCoord1fv),
-    NAME_FUNC_OFFSET( 2759, glEvalCoord2d, glEvalCoord2d, NULL, _gloffset_EvalCoord2d),
-    NAME_FUNC_OFFSET( 2773, glEvalCoord2dv, glEvalCoord2dv, NULL, _gloffset_EvalCoord2dv),
-    NAME_FUNC_OFFSET( 2788, glEvalCoord2f, glEvalCoord2f, NULL, _gloffset_EvalCoord2f),
-    NAME_FUNC_OFFSET( 2802, glEvalCoord2fv, glEvalCoord2fv, NULL, _gloffset_EvalCoord2fv),
-    NAME_FUNC_OFFSET( 2817, glEvalMesh1, glEvalMesh1, NULL, _gloffset_EvalMesh1),
-    NAME_FUNC_OFFSET( 2829, glEvalPoint1, glEvalPoint1, NULL, _gloffset_EvalPoint1),
-    NAME_FUNC_OFFSET( 2842, glEvalMesh2, glEvalMesh2, NULL, _gloffset_EvalMesh2),
-    NAME_FUNC_OFFSET( 2854, glEvalPoint2, glEvalPoint2, NULL, _gloffset_EvalPoint2),
-    NAME_FUNC_OFFSET( 2867, glAlphaFunc, glAlphaFunc, NULL, _gloffset_AlphaFunc),
-    NAME_FUNC_OFFSET( 2879, glBlendFunc, glBlendFunc, NULL, _gloffset_BlendFunc),
-    NAME_FUNC_OFFSET( 2891, glLogicOp, glLogicOp, NULL, _gloffset_LogicOp),
-    NAME_FUNC_OFFSET( 2901, glStencilFunc, glStencilFunc, NULL, _gloffset_StencilFunc),
-    NAME_FUNC_OFFSET( 2915, glStencilOp, glStencilOp, NULL, _gloffset_StencilOp),
-    NAME_FUNC_OFFSET( 2927, glDepthFunc, glDepthFunc, NULL, _gloffset_DepthFunc),
-    NAME_FUNC_OFFSET( 2939, glPixelZoom, glPixelZoom, NULL, _gloffset_PixelZoom),
-    NAME_FUNC_OFFSET( 2951, glPixelTransferf, glPixelTransferf, NULL, _gloffset_PixelTransferf),
-    NAME_FUNC_OFFSET( 2968, glPixelTransferi, glPixelTransferi, NULL, _gloffset_PixelTransferi),
-    NAME_FUNC_OFFSET( 2985, glPixelStoref, glPixelStoref, NULL, _gloffset_PixelStoref),
-    NAME_FUNC_OFFSET( 2999, glPixelStorei, glPixelStorei, NULL, _gloffset_PixelStorei),
-    NAME_FUNC_OFFSET( 3013, glPixelMapfv, glPixelMapfv, NULL, _gloffset_PixelMapfv),
-    NAME_FUNC_OFFSET( 3026, glPixelMapuiv, glPixelMapuiv, NULL, _gloffset_PixelMapuiv),
-    NAME_FUNC_OFFSET( 3040, glPixelMapusv, glPixelMapusv, NULL, _gloffset_PixelMapusv),
-    NAME_FUNC_OFFSET( 3054, glReadBuffer, glReadBuffer, NULL, _gloffset_ReadBuffer),
-    NAME_FUNC_OFFSET( 3067, glCopyPixels, glCopyPixels, NULL, _gloffset_CopyPixels),
-    NAME_FUNC_OFFSET( 3080, glReadPixels, glReadPixels, NULL, _gloffset_ReadPixels),
-    NAME_FUNC_OFFSET( 3093, glDrawPixels, glDrawPixels, NULL, _gloffset_DrawPixels),
-    NAME_FUNC_OFFSET( 3106, glGetBooleanv, glGetBooleanv, NULL, _gloffset_GetBooleanv),
-    NAME_FUNC_OFFSET( 3120, glGetClipPlane, glGetClipPlane, NULL, _gloffset_GetClipPlane),
-    NAME_FUNC_OFFSET( 3135, glGetDoublev, glGetDoublev, NULL, _gloffset_GetDoublev),
-    NAME_FUNC_OFFSET( 3148, glGetError, glGetError, NULL, _gloffset_GetError),
-    NAME_FUNC_OFFSET( 3159, glGetFloatv, glGetFloatv, NULL, _gloffset_GetFloatv),
-    NAME_FUNC_OFFSET( 3171, glGetIntegerv, glGetIntegerv, NULL, _gloffset_GetIntegerv),
-    NAME_FUNC_OFFSET( 3185, glGetLightfv, glGetLightfv, NULL, _gloffset_GetLightfv),
-    NAME_FUNC_OFFSET( 3198, glGetLightiv, glGetLightiv, NULL, _gloffset_GetLightiv),
-    NAME_FUNC_OFFSET( 3211, glGetMapdv, glGetMapdv, NULL, _gloffset_GetMapdv),
-    NAME_FUNC_OFFSET( 3222, glGetMapfv, glGetMapfv, NULL, _gloffset_GetMapfv),
-    NAME_FUNC_OFFSET( 3233, glGetMapiv, glGetMapiv, NULL, _gloffset_GetMapiv),
-    NAME_FUNC_OFFSET( 3244, glGetMaterialfv, glGetMaterialfv, NULL, _gloffset_GetMaterialfv),
-    NAME_FUNC_OFFSET( 3260, glGetMaterialiv, glGetMaterialiv, NULL, _gloffset_GetMaterialiv),
-    NAME_FUNC_OFFSET( 3276, glGetPixelMapfv, glGetPixelMapfv, NULL, _gloffset_GetPixelMapfv),
-    NAME_FUNC_OFFSET( 3292, glGetPixelMapuiv, glGetPixelMapuiv, NULL, _gloffset_GetPixelMapuiv),
-    NAME_FUNC_OFFSET( 3309, glGetPixelMapusv, glGetPixelMapusv, NULL, _gloffset_GetPixelMapusv),
-    NAME_FUNC_OFFSET( 3326, glGetPolygonStipple, glGetPolygonStipple, NULL, _gloffset_GetPolygonStipple),
-    NAME_FUNC_OFFSET( 3346, glGetString, glGetString, NULL, _gloffset_GetString),
-    NAME_FUNC_OFFSET( 3358, glGetTexEnvfv, glGetTexEnvfv, NULL, _gloffset_GetTexEnvfv),
-    NAME_FUNC_OFFSET( 3372, glGetTexEnviv, glGetTexEnviv, NULL, _gloffset_GetTexEnviv),
-    NAME_FUNC_OFFSET( 3386, glGetTexGendv, glGetTexGendv, NULL, _gloffset_GetTexGendv),
-    NAME_FUNC_OFFSET( 3400, glGetTexGenfv, glGetTexGenfv, NULL, _gloffset_GetTexGenfv),
-    NAME_FUNC_OFFSET( 3414, glGetTexGeniv, glGetTexGeniv, NULL, _gloffset_GetTexGeniv),
-    NAME_FUNC_OFFSET( 3428, glGetTexImage, glGetTexImage, NULL, _gloffset_GetTexImage),
-    NAME_FUNC_OFFSET( 3442, glGetTexParameterfv, glGetTexParameterfv, NULL, _gloffset_GetTexParameterfv),
-    NAME_FUNC_OFFSET( 3462, glGetTexParameteriv, glGetTexParameteriv, NULL, _gloffset_GetTexParameteriv),
-    NAME_FUNC_OFFSET( 3482, glGetTexLevelParameterfv, glGetTexLevelParameterfv, NULL, _gloffset_GetTexLevelParameterfv),
-    NAME_FUNC_OFFSET( 3507, glGetTexLevelParameteriv, glGetTexLevelParameteriv, NULL, _gloffset_GetTexLevelParameteriv),
-    NAME_FUNC_OFFSET( 3532, glIsEnabled, glIsEnabled, NULL, _gloffset_IsEnabled),
-    NAME_FUNC_OFFSET( 3544, glIsList, glIsList, NULL, _gloffset_IsList),
-    NAME_FUNC_OFFSET( 3553, glDepthRange, glDepthRange, NULL, _gloffset_DepthRange),
-    NAME_FUNC_OFFSET( 3566, glFrustum, glFrustum, NULL, _gloffset_Frustum),
-    NAME_FUNC_OFFSET( 3576, glLoadIdentity, glLoadIdentity, NULL, _gloffset_LoadIdentity),
-    NAME_FUNC_OFFSET( 3591, glLoadMatrixf, glLoadMatrixf, NULL, _gloffset_LoadMatrixf),
-    NAME_FUNC_OFFSET( 3605, glLoadMatrixd, glLoadMatrixd, NULL, _gloffset_LoadMatrixd),
-    NAME_FUNC_OFFSET( 3619, glMatrixMode, glMatrixMode, NULL, _gloffset_MatrixMode),
-    NAME_FUNC_OFFSET( 3632, glMultMatrixf, glMultMatrixf, NULL, _gloffset_MultMatrixf),
-    NAME_FUNC_OFFSET( 3646, glMultMatrixd, glMultMatrixd, NULL, _gloffset_MultMatrixd),
-    NAME_FUNC_OFFSET( 3660, glOrtho, glOrtho, NULL, _gloffset_Ortho),
-    NAME_FUNC_OFFSET( 3668, glPopMatrix, glPopMatrix, NULL, _gloffset_PopMatrix),
-    NAME_FUNC_OFFSET( 3680, glPushMatrix, glPushMatrix, NULL, _gloffset_PushMatrix),
-    NAME_FUNC_OFFSET( 3693, glRotated, glRotated, NULL, _gloffset_Rotated),
-    NAME_FUNC_OFFSET( 3703, glRotatef, glRotatef, NULL, _gloffset_Rotatef),
-    NAME_FUNC_OFFSET( 3713, glScaled, glScaled, NULL, _gloffset_Scaled),
-    NAME_FUNC_OFFSET( 3722, glScalef, glScalef, NULL, _gloffset_Scalef),
-    NAME_FUNC_OFFSET( 3731, glTranslated, glTranslated, NULL, _gloffset_Translated),
-    NAME_FUNC_OFFSET( 3744, glTranslatef, glTranslatef, NULL, _gloffset_Translatef),
-    NAME_FUNC_OFFSET( 3757, glViewport, glViewport, NULL, _gloffset_Viewport),
-    NAME_FUNC_OFFSET( 3768, glArrayElement, glArrayElement, NULL, _gloffset_ArrayElement),
-    NAME_FUNC_OFFSET( 3783, glBindTexture, glBindTexture, NULL, _gloffset_BindTexture),
-    NAME_FUNC_OFFSET( 3797, glColorPointer, glColorPointer, NULL, _gloffset_ColorPointer),
-    NAME_FUNC_OFFSET( 3812, glDisableClientState, glDisableClientState, NULL, _gloffset_DisableClientState),
-    NAME_FUNC_OFFSET( 3833, glDrawArrays, glDrawArrays, NULL, _gloffset_DrawArrays),
-    NAME_FUNC_OFFSET( 3846, glDrawElements, glDrawElements, NULL, _gloffset_DrawElements),
-    NAME_FUNC_OFFSET( 3861, glEdgeFlagPointer, glEdgeFlagPointer, NULL, _gloffset_EdgeFlagPointer),
-    NAME_FUNC_OFFSET( 3879, glEnableClientState, glEnableClientState, NULL, _gloffset_EnableClientState),
-    NAME_FUNC_OFFSET( 3899, glIndexPointer, glIndexPointer, NULL, _gloffset_IndexPointer),
-    NAME_FUNC_OFFSET( 3914, glIndexub, glIndexub, NULL, _gloffset_Indexub),
-    NAME_FUNC_OFFSET( 3924, glIndexubv, glIndexubv, NULL, _gloffset_Indexubv),
-    NAME_FUNC_OFFSET( 3935, glInterleavedArrays, glInterleavedArrays, NULL, _gloffset_InterleavedArrays),
-    NAME_FUNC_OFFSET( 3955, glNormalPointer, glNormalPointer, NULL, _gloffset_NormalPointer),
-    NAME_FUNC_OFFSET( 3971, glPolygonOffset, glPolygonOffset, NULL, _gloffset_PolygonOffset),
-    NAME_FUNC_OFFSET( 3987, glTexCoordPointer, glTexCoordPointer, NULL, _gloffset_TexCoordPointer),
-    NAME_FUNC_OFFSET( 4005, glVertexPointer, glVertexPointer, NULL, _gloffset_VertexPointer),
-    NAME_FUNC_OFFSET( 4021, glAreTexturesResident, glAreTexturesResident, NULL, _gloffset_AreTexturesResident),
-    NAME_FUNC_OFFSET( 4043, glCopyTexImage1D, glCopyTexImage1D, NULL, _gloffset_CopyTexImage1D),
-    NAME_FUNC_OFFSET( 4060, glCopyTexImage2D, glCopyTexImage2D, NULL, _gloffset_CopyTexImage2D),
-    NAME_FUNC_OFFSET( 4077, glCopyTexSubImage1D, glCopyTexSubImage1D, NULL, _gloffset_CopyTexSubImage1D),
-    NAME_FUNC_OFFSET( 4097, glCopyTexSubImage2D, glCopyTexSubImage2D, NULL, _gloffset_CopyTexSubImage2D),
-    NAME_FUNC_OFFSET( 4117, glDeleteTextures, glDeleteTextures, NULL, _gloffset_DeleteTextures),
-    NAME_FUNC_OFFSET( 4134, glGenTextures, glGenTextures, NULL, _gloffset_GenTextures),
-    NAME_FUNC_OFFSET( 4148, glGetPointerv, glGetPointerv, NULL, _gloffset_GetPointerv),
-    NAME_FUNC_OFFSET( 4162, glIsTexture, glIsTexture, NULL, _gloffset_IsTexture),
-    NAME_FUNC_OFFSET( 4174, glPrioritizeTextures, glPrioritizeTextures, NULL, _gloffset_PrioritizeTextures),
-    NAME_FUNC_OFFSET( 4195, glTexSubImage1D, glTexSubImage1D, NULL, _gloffset_TexSubImage1D),
-    NAME_FUNC_OFFSET( 4211, glTexSubImage2D, glTexSubImage2D, NULL, _gloffset_TexSubImage2D),
-    NAME_FUNC_OFFSET( 4227, glPopClientAttrib, glPopClientAttrib, NULL, _gloffset_PopClientAttrib),
-    NAME_FUNC_OFFSET( 4245, glPushClientAttrib, glPushClientAttrib, NULL, _gloffset_PushClientAttrib),
-    NAME_FUNC_OFFSET( 4264, glBlendColor, glBlendColor, NULL, _gloffset_BlendColor),
-    NAME_FUNC_OFFSET( 4277, glBlendEquation, glBlendEquation, NULL, _gloffset_BlendEquation),
-    NAME_FUNC_OFFSET( 4293, glDrawRangeElements, glDrawRangeElements, NULL, _gloffset_DrawRangeElements),
-    NAME_FUNC_OFFSET( 4313, glColorTable, glColorTable, NULL, _gloffset_ColorTable),
-    NAME_FUNC_OFFSET( 4326, glColorTableParameterfv, glColorTableParameterfv, NULL, _gloffset_ColorTableParameterfv),
-    NAME_FUNC_OFFSET( 4350, glColorTableParameteriv, glColorTableParameteriv, NULL, _gloffset_ColorTableParameteriv),
-    NAME_FUNC_OFFSET( 4374, glCopyColorTable, glCopyColorTable, NULL, _gloffset_CopyColorTable),
-    NAME_FUNC_OFFSET( 4391, glGetColorTable, glGetColorTable, NULL, _gloffset_GetColorTable),
-    NAME_FUNC_OFFSET( 4407, glGetColorTableParameterfv, glGetColorTableParameterfv, NULL, _gloffset_GetColorTableParameterfv),
-    NAME_FUNC_OFFSET( 4434, glGetColorTableParameteriv, glGetColorTableParameteriv, NULL, _gloffset_GetColorTableParameteriv),
-    NAME_FUNC_OFFSET( 4461, glColorSubTable, glColorSubTable, NULL, _gloffset_ColorSubTable),
-    NAME_FUNC_OFFSET( 4477, glCopyColorSubTable, glCopyColorSubTable, NULL, _gloffset_CopyColorSubTable),
-    NAME_FUNC_OFFSET( 4497, glConvolutionFilter1D, glConvolutionFilter1D, NULL, _gloffset_ConvolutionFilter1D),
-    NAME_FUNC_OFFSET( 4519, glConvolutionFilter2D, glConvolutionFilter2D, NULL, _gloffset_ConvolutionFilter2D),
-    NAME_FUNC_OFFSET( 4541, glConvolutionParameterf, glConvolutionParameterf, NULL, _gloffset_ConvolutionParameterf),
-    NAME_FUNC_OFFSET( 4565, glConvolutionParameterfv, glConvolutionParameterfv, NULL, _gloffset_ConvolutionParameterfv),
-    NAME_FUNC_OFFSET( 4590, glConvolutionParameteri, glConvolutionParameteri, NULL, _gloffset_ConvolutionParameteri),
-    NAME_FUNC_OFFSET( 4614, glConvolutionParameteriv, glConvolutionParameteriv, NULL, _gloffset_ConvolutionParameteriv),
-    NAME_FUNC_OFFSET( 4639, glCopyConvolutionFilter1D, glCopyConvolutionFilter1D, NULL, _gloffset_CopyConvolutionFilter1D),
-    NAME_FUNC_OFFSET( 4665, glCopyConvolutionFilter2D, glCopyConvolutionFilter2D, NULL, _gloffset_CopyConvolutionFilter2D),
-    NAME_FUNC_OFFSET( 4691, glGetConvolutionFilter, glGetConvolutionFilter, NULL, _gloffset_GetConvolutionFilter),
-    NAME_FUNC_OFFSET( 4714, glGetConvolutionParameterfv, glGetConvolutionParameterfv, NULL, _gloffset_GetConvolutionParameterfv),
-    NAME_FUNC_OFFSET( 4742, glGetConvolutionParameteriv, glGetConvolutionParameteriv, NULL, _gloffset_GetConvolutionParameteriv),
-    NAME_FUNC_OFFSET( 4770, glGetSeparableFilter, glGetSeparableFilter, NULL, _gloffset_GetSeparableFilter),
-    NAME_FUNC_OFFSET( 4791, glSeparableFilter2D, glSeparableFilter2D, NULL, _gloffset_SeparableFilter2D),
-    NAME_FUNC_OFFSET( 4811, glGetHistogram, glGetHistogram, NULL, _gloffset_GetHistogram),
-    NAME_FUNC_OFFSET( 4826, glGetHistogramParameterfv, glGetHistogramParameterfv, NULL, _gloffset_GetHistogramParameterfv),
-    NAME_FUNC_OFFSET( 4852, glGetHistogramParameteriv, glGetHistogramParameteriv, NULL, _gloffset_GetHistogramParameteriv),
-    NAME_FUNC_OFFSET( 4878, glGetMinmax, glGetMinmax, NULL, _gloffset_GetMinmax),
-    NAME_FUNC_OFFSET( 4890, glGetMinmaxParameterfv, glGetMinmaxParameterfv, NULL, _gloffset_GetMinmaxParameterfv),
-    NAME_FUNC_OFFSET( 4913, glGetMinmaxParameteriv, glGetMinmaxParameteriv, NULL, _gloffset_GetMinmaxParameteriv),
-    NAME_FUNC_OFFSET( 4936, glHistogram, glHistogram, NULL, _gloffset_Histogram),
-    NAME_FUNC_OFFSET( 4948, glMinmax, glMinmax, NULL, _gloffset_Minmax),
-    NAME_FUNC_OFFSET( 4957, glResetHistogram, glResetHistogram, NULL, _gloffset_ResetHistogram),
-    NAME_FUNC_OFFSET( 4974, glResetMinmax, glResetMinmax, NULL, _gloffset_ResetMinmax),
-    NAME_FUNC_OFFSET( 4988, glTexImage3D, glTexImage3D, NULL, _gloffset_TexImage3D),
-    NAME_FUNC_OFFSET( 5001, glTexSubImage3D, glTexSubImage3D, NULL, _gloffset_TexSubImage3D),
-    NAME_FUNC_OFFSET( 5017, glCopyTexSubImage3D, glCopyTexSubImage3D, NULL, _gloffset_CopyTexSubImage3D),
-    NAME_FUNC_OFFSET( 5037, glActiveTextureARB, glActiveTextureARB, NULL, _gloffset_ActiveTextureARB),
-    NAME_FUNC_OFFSET( 5056, glClientActiveTextureARB, glClientActiveTextureARB, NULL, _gloffset_ClientActiveTextureARB),
-    NAME_FUNC_OFFSET( 5081, glMultiTexCoord1dARB, glMultiTexCoord1dARB, NULL, _gloffset_MultiTexCoord1dARB),
-    NAME_FUNC_OFFSET( 5102, glMultiTexCoord1dvARB, glMultiTexCoord1dvARB, NULL, _gloffset_MultiTexCoord1dvARB),
-    NAME_FUNC_OFFSET( 5124, glMultiTexCoord1fARB, glMultiTexCoord1fARB, NULL, _gloffset_MultiTexCoord1fARB),
-    NAME_FUNC_OFFSET( 5145, glMultiTexCoord1fvARB, glMultiTexCoord1fvARB, NULL, _gloffset_MultiTexCoord1fvARB),
-    NAME_FUNC_OFFSET( 5167, glMultiTexCoord1iARB, glMultiTexCoord1iARB, NULL, _gloffset_MultiTexCoord1iARB),
-    NAME_FUNC_OFFSET( 5188, glMultiTexCoord1ivARB, glMultiTexCoord1ivARB, NULL, _gloffset_MultiTexCoord1ivARB),
-    NAME_FUNC_OFFSET( 5210, glMultiTexCoord1sARB, glMultiTexCoord1sARB, NULL, _gloffset_MultiTexCoord1sARB),
-    NAME_FUNC_OFFSET( 5231, glMultiTexCoord1svARB, glMultiTexCoord1svARB, NULL, _gloffset_MultiTexCoord1svARB),
-    NAME_FUNC_OFFSET( 5253, glMultiTexCoord2dARB, glMultiTexCoord2dARB, NULL, _gloffset_MultiTexCoord2dARB),
-    NAME_FUNC_OFFSET( 5274, glMultiTexCoord2dvARB, glMultiTexCoord2dvARB, NULL, _gloffset_MultiTexCoord2dvARB),
-    NAME_FUNC_OFFSET( 5296, glMultiTexCoord2fARB, glMultiTexCoord2fARB, NULL, _gloffset_MultiTexCoord2fARB),
-    NAME_FUNC_OFFSET( 5317, glMultiTexCoord2fvARB, glMultiTexCoord2fvARB, NULL, _gloffset_MultiTexCoord2fvARB),
-    NAME_FUNC_OFFSET( 5339, glMultiTexCoord2iARB, glMultiTexCoord2iARB, NULL, _gloffset_MultiTexCoord2iARB),
-    NAME_FUNC_OFFSET( 5360, glMultiTexCoord2ivARB, glMultiTexCoord2ivARB, NULL, _gloffset_MultiTexCoord2ivARB),
-    NAME_FUNC_OFFSET( 5382, glMultiTexCoord2sARB, glMultiTexCoord2sARB, NULL, _gloffset_MultiTexCoord2sARB),
-    NAME_FUNC_OFFSET( 5403, glMultiTexCoord2svARB, glMultiTexCoord2svARB, NULL, _gloffset_MultiTexCoord2svARB),
-    NAME_FUNC_OFFSET( 5425, glMultiTexCoord3dARB, glMultiTexCoord3dARB, NULL, _gloffset_MultiTexCoord3dARB),
-    NAME_FUNC_OFFSET( 5446, glMultiTexCoord3dvARB, glMultiTexCoord3dvARB, NULL, _gloffset_MultiTexCoord3dvARB),
-    NAME_FUNC_OFFSET( 5468, glMultiTexCoord3fARB, glMultiTexCoord3fARB, NULL, _gloffset_MultiTexCoord3fARB),
-    NAME_FUNC_OFFSET( 5489, glMultiTexCoord3fvARB, glMultiTexCoord3fvARB, NULL, _gloffset_MultiTexCoord3fvARB),
-    NAME_FUNC_OFFSET( 5511, glMultiTexCoord3iARB, glMultiTexCoord3iARB, NULL, _gloffset_MultiTexCoord3iARB),
-    NAME_FUNC_OFFSET( 5532, glMultiTexCoord3ivARB, glMultiTexCoord3ivARB, NULL, _gloffset_MultiTexCoord3ivARB),
-    NAME_FUNC_OFFSET( 5554, glMultiTexCoord3sARB, glMultiTexCoord3sARB, NULL, _gloffset_MultiTexCoord3sARB),
-    NAME_FUNC_OFFSET( 5575, glMultiTexCoord3svARB, glMultiTexCoord3svARB, NULL, _gloffset_MultiTexCoord3svARB),
-    NAME_FUNC_OFFSET( 5597, glMultiTexCoord4dARB, glMultiTexCoord4dARB, NULL, _gloffset_MultiTexCoord4dARB),
-    NAME_FUNC_OFFSET( 5618, glMultiTexCoord4dvARB, glMultiTexCoord4dvARB, NULL, _gloffset_MultiTexCoord4dvARB),
-    NAME_FUNC_OFFSET( 5640, glMultiTexCoord4fARB, glMultiTexCoord4fARB, NULL, _gloffset_MultiTexCoord4fARB),
-    NAME_FUNC_OFFSET( 5661, glMultiTexCoord4fvARB, glMultiTexCoord4fvARB, NULL, _gloffset_MultiTexCoord4fvARB),
-    NAME_FUNC_OFFSET( 5683, glMultiTexCoord4iARB, glMultiTexCoord4iARB, NULL, _gloffset_MultiTexCoord4iARB),
-    NAME_FUNC_OFFSET( 5704, glMultiTexCoord4ivARB, glMultiTexCoord4ivARB, NULL, _gloffset_MultiTexCoord4ivARB),
-    NAME_FUNC_OFFSET( 5726, glMultiTexCoord4sARB, glMultiTexCoord4sARB, NULL, _gloffset_MultiTexCoord4sARB),
-    NAME_FUNC_OFFSET( 5747, glMultiTexCoord4svARB, glMultiTexCoord4svARB, NULL, _gloffset_MultiTexCoord4svARB),
-    NAME_FUNC_OFFSET( 5769, glAttachShader, glAttachShader, NULL, _gloffset_AttachShader),
-    NAME_FUNC_OFFSET( 5784, glCreateProgram, glCreateProgram, NULL, _gloffset_CreateProgram),
-    NAME_FUNC_OFFSET( 5800, glCreateShader, glCreateShader, NULL, _gloffset_CreateShader),
-    NAME_FUNC_OFFSET( 5815, glDeleteProgram, glDeleteProgram, NULL, _gloffset_DeleteProgram),
-    NAME_FUNC_OFFSET( 5831, glDeleteShader, glDeleteShader, NULL, _gloffset_DeleteShader),
-    NAME_FUNC_OFFSET( 5846, glDetachShader, glDetachShader, NULL, _gloffset_DetachShader),
-    NAME_FUNC_OFFSET( 5861, glGetAttachedShaders, glGetAttachedShaders, NULL, _gloffset_GetAttachedShaders),
-    NAME_FUNC_OFFSET( 5882, glGetProgramInfoLog, glGetProgramInfoLog, NULL, _gloffset_GetProgramInfoLog),
-    NAME_FUNC_OFFSET( 5902, glGetProgramiv, glGetProgramiv, NULL, _gloffset_GetProgramiv),
-    NAME_FUNC_OFFSET( 5917, glGetShaderInfoLog, glGetShaderInfoLog, NULL, _gloffset_GetShaderInfoLog),
-    NAME_FUNC_OFFSET( 5936, glGetShaderiv, glGetShaderiv, NULL, _gloffset_GetShaderiv),
-    NAME_FUNC_OFFSET( 5950, glIsProgram, glIsProgram, NULL, _gloffset_IsProgram),
-    NAME_FUNC_OFFSET( 5962, glIsShader, glIsShader, NULL, _gloffset_IsShader),
-    NAME_FUNC_OFFSET( 5973, glStencilFuncSeparate, glStencilFuncSeparate, NULL, _gloffset_StencilFuncSeparate),
-    NAME_FUNC_OFFSET( 5995, glStencilMaskSeparate, glStencilMaskSeparate, NULL, _gloffset_StencilMaskSeparate),
-    NAME_FUNC_OFFSET( 6017, glStencilOpSeparate, glStencilOpSeparate, NULL, _gloffset_StencilOpSeparate),
-    NAME_FUNC_OFFSET( 6037, glUniformMatrix2x3fv, glUniformMatrix2x3fv, NULL, _gloffset_UniformMatrix2x3fv),
-    NAME_FUNC_OFFSET( 6058, glUniformMatrix2x4fv, glUniformMatrix2x4fv, NULL, _gloffset_UniformMatrix2x4fv),
-    NAME_FUNC_OFFSET( 6079, glUniformMatrix3x2fv, glUniformMatrix3x2fv, NULL, _gloffset_UniformMatrix3x2fv),
-    NAME_FUNC_OFFSET( 6100, glUniformMatrix3x4fv, glUniformMatrix3x4fv, NULL, _gloffset_UniformMatrix3x4fv),
-    NAME_FUNC_OFFSET( 6121, glUniformMatrix4x2fv, glUniformMatrix4x2fv, NULL, _gloffset_UniformMatrix4x2fv),
-    NAME_FUNC_OFFSET( 6142, glUniformMatrix4x3fv, glUniformMatrix4x3fv, NULL, _gloffset_UniformMatrix4x3fv),
-    NAME_FUNC_OFFSET( 6163, glDrawArraysInstanced, glDrawArraysInstanced, NULL, _gloffset_DrawArraysInstanced),
-    NAME_FUNC_OFFSET( 6185, glDrawElementsInstanced, glDrawElementsInstanced, NULL, _gloffset_DrawElementsInstanced),
-    NAME_FUNC_OFFSET( 6209, glLoadTransposeMatrixdARB, glLoadTransposeMatrixdARB, NULL, _gloffset_LoadTransposeMatrixdARB),
-    NAME_FUNC_OFFSET( 6235, glLoadTransposeMatrixfARB, glLoadTransposeMatrixfARB, NULL, _gloffset_LoadTransposeMatrixfARB),
-    NAME_FUNC_OFFSET( 6261, glMultTransposeMatrixdARB, glMultTransposeMatrixdARB, NULL, _gloffset_MultTransposeMatrixdARB),
-    NAME_FUNC_OFFSET( 6287, glMultTransposeMatrixfARB, glMultTransposeMatrixfARB, NULL, _gloffset_MultTransposeMatrixfARB),
-    NAME_FUNC_OFFSET( 6313, glSampleCoverageARB, glSampleCoverageARB, NULL, _gloffset_SampleCoverageARB),
-    NAME_FUNC_OFFSET( 6333, glCompressedTexImage1DARB, glCompressedTexImage1DARB, NULL, _gloffset_CompressedTexImage1DARB),
-    NAME_FUNC_OFFSET( 6359, glCompressedTexImage2DARB, glCompressedTexImage2DARB, NULL, _gloffset_CompressedTexImage2DARB),
-    NAME_FUNC_OFFSET( 6385, glCompressedTexImage3DARB, glCompressedTexImage3DARB, NULL, _gloffset_CompressedTexImage3DARB),
-    NAME_FUNC_OFFSET( 6411, glCompressedTexSubImage1DARB, glCompressedTexSubImage1DARB, NULL, _gloffset_CompressedTexSubImage1DARB),
-    NAME_FUNC_OFFSET( 6440, glCompressedTexSubImage2DARB, glCompressedTexSubImage2DARB, NULL, _gloffset_CompressedTexSubImage2DARB),
-    NAME_FUNC_OFFSET( 6469, glCompressedTexSubImage3DARB, glCompressedTexSubImage3DARB, NULL, _gloffset_CompressedTexSubImage3DARB),
-    NAME_FUNC_OFFSET( 6498, glGetCompressedTexImageARB, glGetCompressedTexImageARB, NULL, _gloffset_GetCompressedTexImageARB),
-    NAME_FUNC_OFFSET( 6525, glDisableVertexAttribArrayARB, glDisableVertexAttribArrayARB, NULL, _gloffset_DisableVertexAttribArrayARB),
-    NAME_FUNC_OFFSET( 6555, glEnableVertexAttribArrayARB, glEnableVertexAttribArrayARB, NULL, _gloffset_EnableVertexAttribArrayARB),
-    NAME_FUNC_OFFSET( 6584, glGetProgramEnvParameterdvARB, glGetProgramEnvParameterdvARB, NULL, _gloffset_GetProgramEnvParameterdvARB),
-    NAME_FUNC_OFFSET( 6614, glGetProgramEnvParameterfvARB, glGetProgramEnvParameterfvARB, NULL, _gloffset_GetProgramEnvParameterfvARB),
-    NAME_FUNC_OFFSET( 6644, glGetProgramLocalParameterdvARB, glGetProgramLocalParameterdvARB, NULL, _gloffset_GetProgramLocalParameterdvARB),
-    NAME_FUNC_OFFSET( 6676, glGetProgramLocalParameterfvARB, glGetProgramLocalParameterfvARB, NULL, _gloffset_GetProgramLocalParameterfvARB),
-    NAME_FUNC_OFFSET( 6708, glGetProgramStringARB, glGetProgramStringARB, NULL, _gloffset_GetProgramStringARB),
-    NAME_FUNC_OFFSET( 6730, glGetProgramivARB, glGetProgramivARB, NULL, _gloffset_GetProgramivARB),
-    NAME_FUNC_OFFSET( 6748, glGetVertexAttribdvARB, glGetVertexAttribdvARB, NULL, _gloffset_GetVertexAttribdvARB),
-    NAME_FUNC_OFFSET( 6771, glGetVertexAttribfvARB, glGetVertexAttribfvARB, NULL, _gloffset_GetVertexAttribfvARB),
-    NAME_FUNC_OFFSET( 6794, glGetVertexAttribivARB, glGetVertexAttribivARB, NULL, _gloffset_GetVertexAttribivARB),
-    NAME_FUNC_OFFSET( 6817, glProgramEnvParameter4dARB, glProgramEnvParameter4dARB, NULL, _gloffset_ProgramEnvParameter4dARB),
-    NAME_FUNC_OFFSET( 6844, glProgramEnvParameter4dvARB, glProgramEnvParameter4dvARB, NULL, _gloffset_ProgramEnvParameter4dvARB),
-    NAME_FUNC_OFFSET( 6872, glProgramEnvParameter4fARB, glProgramEnvParameter4fARB, NULL, _gloffset_ProgramEnvParameter4fARB),
-    NAME_FUNC_OFFSET( 6899, glProgramEnvParameter4fvARB, glProgramEnvParameter4fvARB, NULL, _gloffset_ProgramEnvParameter4fvARB),
-    NAME_FUNC_OFFSET( 6927, glProgramLocalParameter4dARB, glProgramLocalParameter4dARB, NULL, _gloffset_ProgramLocalParameter4dARB),
-    NAME_FUNC_OFFSET( 6956, glProgramLocalParameter4dvARB, glProgramLocalParameter4dvARB, NULL, _gloffset_ProgramLocalParameter4dvARB),
-    NAME_FUNC_OFFSET( 6986, glProgramLocalParameter4fARB, glProgramLocalParameter4fARB, NULL, _gloffset_ProgramLocalParameter4fARB),
-    NAME_FUNC_OFFSET( 7015, glProgramLocalParameter4fvARB, glProgramLocalParameter4fvARB, NULL, _gloffset_ProgramLocalParameter4fvARB),
-    NAME_FUNC_OFFSET( 7045, glProgramStringARB, glProgramStringARB, NULL, _gloffset_ProgramStringARB),
-    NAME_FUNC_OFFSET( 7064, glVertexAttrib1dARB, glVertexAttrib1dARB, NULL, _gloffset_VertexAttrib1dARB),
-    NAME_FUNC_OFFSET( 7084, glVertexAttrib1dvARB, glVertexAttrib1dvARB, NULL, _gloffset_VertexAttrib1dvARB),
-    NAME_FUNC_OFFSET( 7105, glVertexAttrib1fARB, glVertexAttrib1fARB, NULL, _gloffset_VertexAttrib1fARB),
-    NAME_FUNC_OFFSET( 7125, glVertexAttrib1fvARB, glVertexAttrib1fvARB, NULL, _gloffset_VertexAttrib1fvARB),
-    NAME_FUNC_OFFSET( 7146, glVertexAttrib1sARB, glVertexAttrib1sARB, NULL, _gloffset_VertexAttrib1sARB),
-    NAME_FUNC_OFFSET( 7166, glVertexAttrib1svARB, glVertexAttrib1svARB, NULL, _gloffset_VertexAttrib1svARB),
-    NAME_FUNC_OFFSET( 7187, glVertexAttrib2dARB, glVertexAttrib2dARB, NULL, _gloffset_VertexAttrib2dARB),
-    NAME_FUNC_OFFSET( 7207, glVertexAttrib2dvARB, glVertexAttrib2dvARB, NULL, _gloffset_VertexAttrib2dvARB),
-    NAME_FUNC_OFFSET( 7228, glVertexAttrib2fARB, glVertexAttrib2fARB, NULL, _gloffset_VertexAttrib2fARB),
-    NAME_FUNC_OFFSET( 7248, glVertexAttrib2fvARB, glVertexAttrib2fvARB, NULL, _gloffset_VertexAttrib2fvARB),
-    NAME_FUNC_OFFSET( 7269, glVertexAttrib2sARB, glVertexAttrib2sARB, NULL, _gloffset_VertexAttrib2sARB),
-    NAME_FUNC_OFFSET( 7289, glVertexAttrib2svARB, glVertexAttrib2svARB, NULL, _gloffset_VertexAttrib2svARB),
-    NAME_FUNC_OFFSET( 7310, glVertexAttrib3dARB, glVertexAttrib3dARB, NULL, _gloffset_VertexAttrib3dARB),
-    NAME_FUNC_OFFSET( 7330, glVertexAttrib3dvARB, glVertexAttrib3dvARB, NULL, _gloffset_VertexAttrib3dvARB),
-    NAME_FUNC_OFFSET( 7351, glVertexAttrib3fARB, glVertexAttrib3fARB, NULL, _gloffset_VertexAttrib3fARB),
-    NAME_FUNC_OFFSET( 7371, glVertexAttrib3fvARB, glVertexAttrib3fvARB, NULL, _gloffset_VertexAttrib3fvARB),
-    NAME_FUNC_OFFSET( 7392, glVertexAttrib3sARB, glVertexAttrib3sARB, NULL, _gloffset_VertexAttrib3sARB),
-    NAME_FUNC_OFFSET( 7412, glVertexAttrib3svARB, glVertexAttrib3svARB, NULL, _gloffset_VertexAttrib3svARB),
-    NAME_FUNC_OFFSET( 7433, glVertexAttrib4NbvARB, glVertexAttrib4NbvARB, NULL, _gloffset_VertexAttrib4NbvARB),
-    NAME_FUNC_OFFSET( 7455, glVertexAttrib4NivARB, glVertexAttrib4NivARB, NULL, _gloffset_VertexAttrib4NivARB),
-    NAME_FUNC_OFFSET( 7477, glVertexAttrib4NsvARB, glVertexAttrib4NsvARB, NULL, _gloffset_VertexAttrib4NsvARB),
-    NAME_FUNC_OFFSET( 7499, glVertexAttrib4NubARB, glVertexAttrib4NubARB, NULL, _gloffset_VertexAttrib4NubARB),
-    NAME_FUNC_OFFSET( 7521, glVertexAttrib4NubvARB, glVertexAttrib4NubvARB, NULL, _gloffset_VertexAttrib4NubvARB),
-    NAME_FUNC_OFFSET( 7544, glVertexAttrib4NuivARB, glVertexAttrib4NuivARB, NULL, _gloffset_VertexAttrib4NuivARB),
-    NAME_FUNC_OFFSET( 7567, glVertexAttrib4NusvARB, glVertexAttrib4NusvARB, NULL, _gloffset_VertexAttrib4NusvARB),
-    NAME_FUNC_OFFSET( 7590, glVertexAttrib4bvARB, glVertexAttrib4bvARB, NULL, _gloffset_VertexAttrib4bvARB),
-    NAME_FUNC_OFFSET( 7611, glVertexAttrib4dARB, glVertexAttrib4dARB, NULL, _gloffset_VertexAttrib4dARB),
-    NAME_FUNC_OFFSET( 7631, glVertexAttrib4dvARB, glVertexAttrib4dvARB, NULL, _gloffset_VertexAttrib4dvARB),
-    NAME_FUNC_OFFSET( 7652, glVertexAttrib4fARB, glVertexAttrib4fARB, NULL, _gloffset_VertexAttrib4fARB),
-    NAME_FUNC_OFFSET( 7672, glVertexAttrib4fvARB, glVertexAttrib4fvARB, NULL, _gloffset_VertexAttrib4fvARB),
-    NAME_FUNC_OFFSET( 7693, glVertexAttrib4ivARB, glVertexAttrib4ivARB, NULL, _gloffset_VertexAttrib4ivARB),
-    NAME_FUNC_OFFSET( 7714, glVertexAttrib4sARB, glVertexAttrib4sARB, NULL, _gloffset_VertexAttrib4sARB),
-    NAME_FUNC_OFFSET( 7734, glVertexAttrib4svARB, glVertexAttrib4svARB, NULL, _gloffset_VertexAttrib4svARB),
-    NAME_FUNC_OFFSET( 7755, glVertexAttrib4ubvARB, glVertexAttrib4ubvARB, NULL, _gloffset_VertexAttrib4ubvARB),
-    NAME_FUNC_OFFSET( 7777, glVertexAttrib4uivARB, glVertexAttrib4uivARB, NULL, _gloffset_VertexAttrib4uivARB),
-    NAME_FUNC_OFFSET( 7799, glVertexAttrib4usvARB, glVertexAttrib4usvARB, NULL, _gloffset_VertexAttrib4usvARB),
-    NAME_FUNC_OFFSET( 7821, glVertexAttribPointerARB, glVertexAttribPointerARB, NULL, _gloffset_VertexAttribPointerARB),
-    NAME_FUNC_OFFSET( 7846, glBindBufferARB, glBindBufferARB, NULL, _gloffset_BindBufferARB),
-    NAME_FUNC_OFFSET( 7862, glBufferDataARB, glBufferDataARB, NULL, _gloffset_BufferDataARB),
-    NAME_FUNC_OFFSET( 7878, glBufferSubDataARB, glBufferSubDataARB, NULL, _gloffset_BufferSubDataARB),
-    NAME_FUNC_OFFSET( 7897, glDeleteBuffersARB, glDeleteBuffersARB, NULL, _gloffset_DeleteBuffersARB),
-    NAME_FUNC_OFFSET( 7916, glGenBuffersARB, glGenBuffersARB, NULL, _gloffset_GenBuffersARB),
-    NAME_FUNC_OFFSET( 7932, glGetBufferParameterivARB, glGetBufferParameterivARB, NULL, _gloffset_GetBufferParameterivARB),
-    NAME_FUNC_OFFSET( 7958, glGetBufferPointervARB, glGetBufferPointervARB, NULL, _gloffset_GetBufferPointervARB),
-    NAME_FUNC_OFFSET( 7981, glGetBufferSubDataARB, glGetBufferSubDataARB, NULL, _gloffset_GetBufferSubDataARB),
-    NAME_FUNC_OFFSET( 8003, glIsBufferARB, glIsBufferARB, NULL, _gloffset_IsBufferARB),
-    NAME_FUNC_OFFSET( 8017, glMapBufferARB, glMapBufferARB, NULL, _gloffset_MapBufferARB),
-    NAME_FUNC_OFFSET( 8032, glUnmapBufferARB, glUnmapBufferARB, NULL, _gloffset_UnmapBufferARB),
-    NAME_FUNC_OFFSET( 8049, glBeginQueryARB, glBeginQueryARB, NULL, _gloffset_BeginQueryARB),
-    NAME_FUNC_OFFSET( 8065, glDeleteQueriesARB, glDeleteQueriesARB, NULL, _gloffset_DeleteQueriesARB),
-    NAME_FUNC_OFFSET( 8084, glEndQueryARB, glEndQueryARB, NULL, _gloffset_EndQueryARB),
-    NAME_FUNC_OFFSET( 8098, glGenQueriesARB, glGenQueriesARB, NULL, _gloffset_GenQueriesARB),
-    NAME_FUNC_OFFSET( 8114, glGetQueryObjectivARB, glGetQueryObjectivARB, NULL, _gloffset_GetQueryObjectivARB),
-    NAME_FUNC_OFFSET( 8136, glGetQueryObjectuivARB, glGetQueryObjectuivARB, NULL, _gloffset_GetQueryObjectuivARB),
-    NAME_FUNC_OFFSET( 8159, glGetQueryivARB, glGetQueryivARB, NULL, _gloffset_GetQueryivARB),
-    NAME_FUNC_OFFSET( 8175, glIsQueryARB, glIsQueryARB, NULL, _gloffset_IsQueryARB),
-    NAME_FUNC_OFFSET( 8188, glAttachObjectARB, glAttachObjectARB, NULL, _gloffset_AttachObjectARB),
-    NAME_FUNC_OFFSET( 8206, glCompileShaderARB, glCompileShaderARB, NULL, _gloffset_CompileShaderARB),
-    NAME_FUNC_OFFSET( 8225, glCreateProgramObjectARB, glCreateProgramObjectARB, NULL, _gloffset_CreateProgramObjectARB),
-    NAME_FUNC_OFFSET( 8250, glCreateShaderObjectARB, glCreateShaderObjectARB, NULL, _gloffset_CreateShaderObjectARB),
-    NAME_FUNC_OFFSET( 8274, glDeleteObjectARB, glDeleteObjectARB, NULL, _gloffset_DeleteObjectARB),
-    NAME_FUNC_OFFSET( 8292, glDetachObjectARB, glDetachObjectARB, NULL, _gloffset_DetachObjectARB),
-    NAME_FUNC_OFFSET( 8310, glGetActiveUniformARB, glGetActiveUniformARB, NULL, _gloffset_GetActiveUniformARB),
-    NAME_FUNC_OFFSET( 8332, glGetAttachedObjectsARB, glGetAttachedObjectsARB, NULL, _gloffset_GetAttachedObjectsARB),
-    NAME_FUNC_OFFSET( 8356, glGetHandleARB, glGetHandleARB, NULL, _gloffset_GetHandleARB),
-    NAME_FUNC_OFFSET( 8371, glGetInfoLogARB, glGetInfoLogARB, NULL, _gloffset_GetInfoLogARB),
-    NAME_FUNC_OFFSET( 8387, glGetObjectParameterfvARB, glGetObjectParameterfvARB, NULL, _gloffset_GetObjectParameterfvARB),
-    NAME_FUNC_OFFSET( 8413, glGetObjectParameterivARB, glGetObjectParameterivARB, NULL, _gloffset_GetObjectParameterivARB),
-    NAME_FUNC_OFFSET( 8439, glGetShaderSourceARB, glGetShaderSourceARB, NULL, _gloffset_GetShaderSourceARB),
-    NAME_FUNC_OFFSET( 8460, glGetUniformLocationARB, glGetUniformLocationARB, NULL, _gloffset_GetUniformLocationARB),
-    NAME_FUNC_OFFSET( 8484, glGetUniformfvARB, glGetUniformfvARB, NULL, _gloffset_GetUniformfvARB),
-    NAME_FUNC_OFFSET( 8502, glGetUniformivARB, glGetUniformivARB, NULL, _gloffset_GetUniformivARB),
-    NAME_FUNC_OFFSET( 8520, glLinkProgramARB, glLinkProgramARB, NULL, _gloffset_LinkProgramARB),
-    NAME_FUNC_OFFSET( 8537, glShaderSourceARB, glShaderSourceARB, NULL, _gloffset_ShaderSourceARB),
-    NAME_FUNC_OFFSET( 8555, glUniform1fARB, glUniform1fARB, NULL, _gloffset_Uniform1fARB),
-    NAME_FUNC_OFFSET( 8570, glUniform1fvARB, glUniform1fvARB, NULL, _gloffset_Uniform1fvARB),
-    NAME_FUNC_OFFSET( 8586, glUniform1iARB, glUniform1iARB, NULL, _gloffset_Uniform1iARB),
-    NAME_FUNC_OFFSET( 8601, glUniform1ivARB, glUniform1ivARB, NULL, _gloffset_Uniform1ivARB),
-    NAME_FUNC_OFFSET( 8617, glUniform2fARB, glUniform2fARB, NULL, _gloffset_Uniform2fARB),
-    NAME_FUNC_OFFSET( 8632, glUniform2fvARB, glUniform2fvARB, NULL, _gloffset_Uniform2fvARB),
-    NAME_FUNC_OFFSET( 8648, glUniform2iARB, glUniform2iARB, NULL, _gloffset_Uniform2iARB),
-    NAME_FUNC_OFFSET( 8663, glUniform2ivARB, glUniform2ivARB, NULL, _gloffset_Uniform2ivARB),
-    NAME_FUNC_OFFSET( 8679, glUniform3fARB, glUniform3fARB, NULL, _gloffset_Uniform3fARB),
-    NAME_FUNC_OFFSET( 8694, glUniform3fvARB, glUniform3fvARB, NULL, _gloffset_Uniform3fvARB),
-    NAME_FUNC_OFFSET( 8710, glUniform3iARB, glUniform3iARB, NULL, _gloffset_Uniform3iARB),
-    NAME_FUNC_OFFSET( 8725, glUniform3ivARB, glUniform3ivARB, NULL, _gloffset_Uniform3ivARB),
-    NAME_FUNC_OFFSET( 8741, glUniform4fARB, glUniform4fARB, NULL, _gloffset_Uniform4fARB),
-    NAME_FUNC_OFFSET( 8756, glUniform4fvARB, glUniform4fvARB, NULL, _gloffset_Uniform4fvARB),
-    NAME_FUNC_OFFSET( 8772, glUniform4iARB, glUniform4iARB, NULL, _gloffset_Uniform4iARB),
-    NAME_FUNC_OFFSET( 8787, glUniform4ivARB, glUniform4ivARB, NULL, _gloffset_Uniform4ivARB),
-    NAME_FUNC_OFFSET( 8803, glUniformMatrix2fvARB, glUniformMatrix2fvARB, NULL, _gloffset_UniformMatrix2fvARB),
-    NAME_FUNC_OFFSET( 8825, glUniformMatrix3fvARB, glUniformMatrix3fvARB, NULL, _gloffset_UniformMatrix3fvARB),
-    NAME_FUNC_OFFSET( 8847, glUniformMatrix4fvARB, glUniformMatrix4fvARB, NULL, _gloffset_UniformMatrix4fvARB),
-    NAME_FUNC_OFFSET( 8869, glUseProgramObjectARB, glUseProgramObjectARB, NULL, _gloffset_UseProgramObjectARB),
-    NAME_FUNC_OFFSET( 8891, glValidateProgramARB, glValidateProgramARB, NULL, _gloffset_ValidateProgramARB),
-    NAME_FUNC_OFFSET( 8912, glBindAttribLocationARB, glBindAttribLocationARB, NULL, _gloffset_BindAttribLocationARB),
-    NAME_FUNC_OFFSET( 8936, glGetActiveAttribARB, glGetActiveAttribARB, NULL, _gloffset_GetActiveAttribARB),
-    NAME_FUNC_OFFSET( 8957, glGetAttribLocationARB, glGetAttribLocationARB, NULL, _gloffset_GetAttribLocationARB),
-    NAME_FUNC_OFFSET( 8980, glDrawBuffersARB, glDrawBuffersARB, NULL, _gloffset_DrawBuffersARB),
-    NAME_FUNC_OFFSET( 8997, glRenderbufferStorageMultisample, glRenderbufferStorageMultisample, NULL, _gloffset_RenderbufferStorageMultisample),
-    NAME_FUNC_OFFSET( 9030, glFlushMappedBufferRange, glFlushMappedBufferRange, NULL, _gloffset_FlushMappedBufferRange),
-    NAME_FUNC_OFFSET( 9055, glMapBufferRange, glMapBufferRange, NULL, _gloffset_MapBufferRange),
-    NAME_FUNC_OFFSET( 9072, glBindVertexArray, glBindVertexArray, NULL, _gloffset_BindVertexArray),
-    NAME_FUNC_OFFSET( 9090, glGenVertexArrays, glGenVertexArrays, NULL, _gloffset_GenVertexArrays),
-    NAME_FUNC_OFFSET( 9108, glCopyBufferSubData, glCopyBufferSubData, NULL, _gloffset_CopyBufferSubData),
-    NAME_FUNC_OFFSET( 9128, glClientWaitSync, glClientWaitSync, NULL, _gloffset_ClientWaitSync),
-    NAME_FUNC_OFFSET( 9145, glDeleteSync, glDeleteSync, NULL, _gloffset_DeleteSync),
-    NAME_FUNC_OFFSET( 9158, glFenceSync, glFenceSync, NULL, _gloffset_FenceSync),
-    NAME_FUNC_OFFSET( 9170, glGetInteger64v, glGetInteger64v, NULL, _gloffset_GetInteger64v),
-    NAME_FUNC_OFFSET( 9186, glGetSynciv, glGetSynciv, NULL, _gloffset_GetSynciv),
-    NAME_FUNC_OFFSET( 9198, glIsSync, glIsSync, NULL, _gloffset_IsSync),
-    NAME_FUNC_OFFSET( 9207, glWaitSync, glWaitSync, NULL, _gloffset_WaitSync),
-    NAME_FUNC_OFFSET( 9218, glDrawElementsBaseVertex, glDrawElementsBaseVertex, NULL, _gloffset_DrawElementsBaseVertex),
-    NAME_FUNC_OFFSET( 9243, glDrawRangeElementsBaseVertex, glDrawRangeElementsBaseVertex, NULL, _gloffset_DrawRangeElementsBaseVertex),
-    NAME_FUNC_OFFSET( 9273, glMultiDrawElementsBaseVertex, glMultiDrawElementsBaseVertex, NULL, _gloffset_MultiDrawElementsBaseVertex),
-    NAME_FUNC_OFFSET( 9303, glPolygonOffsetEXT, glPolygonOffsetEXT, NULL, _gloffset_PolygonOffsetEXT),
-    NAME_FUNC_OFFSET( 9322, gl_dispatch_stub_580, gl_dispatch_stub_580, NULL, _gloffset_GetPixelTexGenParameterfvSGIS),
-    NAME_FUNC_OFFSET( 9354, gl_dispatch_stub_581, gl_dispatch_stub_581, NULL, _gloffset_GetPixelTexGenParameterivSGIS),
-    NAME_FUNC_OFFSET( 9386, gl_dispatch_stub_582, gl_dispatch_stub_582, NULL, _gloffset_PixelTexGenParameterfSGIS),
-    NAME_FUNC_OFFSET( 9414, gl_dispatch_stub_583, gl_dispatch_stub_583, NULL, _gloffset_PixelTexGenParameterfvSGIS),
-    NAME_FUNC_OFFSET( 9443, gl_dispatch_stub_584, gl_dispatch_stub_584, NULL, _gloffset_PixelTexGenParameteriSGIS),
-    NAME_FUNC_OFFSET( 9471, gl_dispatch_stub_585, gl_dispatch_stub_585, NULL, _gloffset_PixelTexGenParameterivSGIS),
-    NAME_FUNC_OFFSET( 9500, gl_dispatch_stub_586, gl_dispatch_stub_586, NULL, _gloffset_SampleMaskSGIS),
-    NAME_FUNC_OFFSET( 9517, gl_dispatch_stub_587, gl_dispatch_stub_587, NULL, _gloffset_SamplePatternSGIS),
-    NAME_FUNC_OFFSET( 9537, glColorPointerEXT, glColorPointerEXT, NULL, _gloffset_ColorPointerEXT),
-    NAME_FUNC_OFFSET( 9555, glEdgeFlagPointerEXT, glEdgeFlagPointerEXT, NULL, _gloffset_EdgeFlagPointerEXT),
-    NAME_FUNC_OFFSET( 9576, glIndexPointerEXT, glIndexPointerEXT, NULL, _gloffset_IndexPointerEXT),
-    NAME_FUNC_OFFSET( 9594, glNormalPointerEXT, glNormalPointerEXT, NULL, _gloffset_NormalPointerEXT),
-    NAME_FUNC_OFFSET( 9613, glTexCoordPointerEXT, glTexCoordPointerEXT, NULL, _gloffset_TexCoordPointerEXT),
-    NAME_FUNC_OFFSET( 9634, glVertexPointerEXT, glVertexPointerEXT, NULL, _gloffset_VertexPointerEXT),
-    NAME_FUNC_OFFSET( 9653, glPointParameterfEXT, glPointParameterfEXT, NULL, _gloffset_PointParameterfEXT),
-    NAME_FUNC_OFFSET( 9674, glPointParameterfvEXT, glPointParameterfvEXT, NULL, _gloffset_PointParameterfvEXT),
-    NAME_FUNC_OFFSET( 9696, glLockArraysEXT, glLockArraysEXT, NULL, _gloffset_LockArraysEXT),
-    NAME_FUNC_OFFSET( 9712, glUnlockArraysEXT, glUnlockArraysEXT, NULL, _gloffset_UnlockArraysEXT),
-    NAME_FUNC_OFFSET( 9730, gl_dispatch_stub_598, gl_dispatch_stub_598, NULL, _gloffset_CullParameterdvEXT),
-    NAME_FUNC_OFFSET( 9751, gl_dispatch_stub_599, gl_dispatch_stub_599, NULL, _gloffset_CullParameterfvEXT),
-    NAME_FUNC_OFFSET( 9772, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, _gloffset_SecondaryColor3bEXT),
-    NAME_FUNC_OFFSET( 9794, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, _gloffset_SecondaryColor3bvEXT),
-    NAME_FUNC_OFFSET( 9817, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, _gloffset_SecondaryColor3dEXT),
-    NAME_FUNC_OFFSET( 9839, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, _gloffset_SecondaryColor3dvEXT),
-    NAME_FUNC_OFFSET( 9862, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, _gloffset_SecondaryColor3fEXT),
-    NAME_FUNC_OFFSET( 9884, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, _gloffset_SecondaryColor3fvEXT),
-    NAME_FUNC_OFFSET( 9907, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, _gloffset_SecondaryColor3iEXT),
-    NAME_FUNC_OFFSET( 9929, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, _gloffset_SecondaryColor3ivEXT),
-    NAME_FUNC_OFFSET( 9952, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, _gloffset_SecondaryColor3sEXT),
-    NAME_FUNC_OFFSET( 9974, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, _gloffset_SecondaryColor3svEXT),
-    NAME_FUNC_OFFSET( 9997, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, _gloffset_SecondaryColor3ubEXT),
-    NAME_FUNC_OFFSET(10020, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, _gloffset_SecondaryColor3ubvEXT),
-    NAME_FUNC_OFFSET(10044, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, _gloffset_SecondaryColor3uiEXT),
-    NAME_FUNC_OFFSET(10067, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, _gloffset_SecondaryColor3uivEXT),
-    NAME_FUNC_OFFSET(10091, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, _gloffset_SecondaryColor3usEXT),
-    NAME_FUNC_OFFSET(10114, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, _gloffset_SecondaryColor3usvEXT),
-    NAME_FUNC_OFFSET(10138, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, _gloffset_SecondaryColorPointerEXT),
-    NAME_FUNC_OFFSET(10165, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, _gloffset_MultiDrawArraysEXT),
-    NAME_FUNC_OFFSET(10186, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, _gloffset_MultiDrawElementsEXT),
-    NAME_FUNC_OFFSET(10209, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, _gloffset_FogCoordPointerEXT),
-    NAME_FUNC_OFFSET(10230, glFogCoorddEXT, glFogCoorddEXT, NULL, _gloffset_FogCoorddEXT),
-    NAME_FUNC_OFFSET(10245, glFogCoorddvEXT, glFogCoorddvEXT, NULL, _gloffset_FogCoorddvEXT),
-    NAME_FUNC_OFFSET(10261, glFogCoordfEXT, glFogCoordfEXT, NULL, _gloffset_FogCoordfEXT),
-    NAME_FUNC_OFFSET(10276, glFogCoordfvEXT, glFogCoordfvEXT, NULL, _gloffset_FogCoordfvEXT),
-    NAME_FUNC_OFFSET(10292, gl_dispatch_stub_624, gl_dispatch_stub_624, NULL, _gloffset_PixelTexGenSGIX),
-    NAME_FUNC_OFFSET(10310, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, _gloffset_BlendFuncSeparateEXT),
-    NAME_FUNC_OFFSET(10333, glFlushVertexArrayRangeNV, glFlushVertexArrayRangeNV, NULL, _gloffset_FlushVertexArrayRangeNV),
-    NAME_FUNC_OFFSET(10359, glVertexArrayRangeNV, glVertexArrayRangeNV, NULL, _gloffset_VertexArrayRangeNV),
-    NAME_FUNC_OFFSET(10380, glCombinerInputNV, glCombinerInputNV, NULL, _gloffset_CombinerInputNV),
-    NAME_FUNC_OFFSET(10398, glCombinerOutputNV, glCombinerOutputNV, NULL, _gloffset_CombinerOutputNV),
-    NAME_FUNC_OFFSET(10417, glCombinerParameterfNV, glCombinerParameterfNV, NULL, _gloffset_CombinerParameterfNV),
-    NAME_FUNC_OFFSET(10440, glCombinerParameterfvNV, glCombinerParameterfvNV, NULL, _gloffset_CombinerParameterfvNV),
-    NAME_FUNC_OFFSET(10464, glCombinerParameteriNV, glCombinerParameteriNV, NULL, _gloffset_CombinerParameteriNV),
-    NAME_FUNC_OFFSET(10487, glCombinerParameterivNV, glCombinerParameterivNV, NULL, _gloffset_CombinerParameterivNV),
-    NAME_FUNC_OFFSET(10511, glFinalCombinerInputNV, glFinalCombinerInputNV, NULL, _gloffset_FinalCombinerInputNV),
-    NAME_FUNC_OFFSET(10534, glGetCombinerInputParameterfvNV, glGetCombinerInputParameterfvNV, NULL, _gloffset_GetCombinerInputParameterfvNV),
-    NAME_FUNC_OFFSET(10566, glGetCombinerInputParameterivNV, glGetCombinerInputParameterivNV, NULL, _gloffset_GetCombinerInputParameterivNV),
-    NAME_FUNC_OFFSET(10598, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterfvNV, NULL, _gloffset_GetCombinerOutputParameterfvNV),
-    NAME_FUNC_OFFSET(10631, glGetCombinerOutputParameterivNV, glGetCombinerOutputParameterivNV, NULL, _gloffset_GetCombinerOutputParameterivNV),
-    NAME_FUNC_OFFSET(10664, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterfvNV, NULL, _gloffset_GetFinalCombinerInputParameterfvNV),
-    NAME_FUNC_OFFSET(10701, glGetFinalCombinerInputParameterivNV, glGetFinalCombinerInputParameterivNV, NULL, _gloffset_GetFinalCombinerInputParameterivNV),
-    NAME_FUNC_OFFSET(10738, glResizeBuffersMESA, glResizeBuffersMESA, NULL, _gloffset_ResizeBuffersMESA),
-    NAME_FUNC_OFFSET(10758, glWindowPos2dMESA, glWindowPos2dMESA, NULL, _gloffset_WindowPos2dMESA),
-    NAME_FUNC_OFFSET(10776, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, _gloffset_WindowPos2dvMESA),
-    NAME_FUNC_OFFSET(10795, glWindowPos2fMESA, glWindowPos2fMESA, NULL, _gloffset_WindowPos2fMESA),
-    NAME_FUNC_OFFSET(10813, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, _gloffset_WindowPos2fvMESA),
-    NAME_FUNC_OFFSET(10832, glWindowPos2iMESA, glWindowPos2iMESA, NULL, _gloffset_WindowPos2iMESA),
-    NAME_FUNC_OFFSET(10850, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, _gloffset_WindowPos2ivMESA),
-    NAME_FUNC_OFFSET(10869, glWindowPos2sMESA, glWindowPos2sMESA, NULL, _gloffset_WindowPos2sMESA),
-    NAME_FUNC_OFFSET(10887, glWindowPos2svMESA, glWindowPos2svMESA, NULL, _gloffset_WindowPos2svMESA),
-    NAME_FUNC_OFFSET(10906, glWindowPos3dMESA, glWindowPos3dMESA, NULL, _gloffset_WindowPos3dMESA),
-    NAME_FUNC_OFFSET(10924, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, _gloffset_WindowPos3dvMESA),
-    NAME_FUNC_OFFSET(10943, glWindowPos3fMESA, glWindowPos3fMESA, NULL, _gloffset_WindowPos3fMESA),
-    NAME_FUNC_OFFSET(10961, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, _gloffset_WindowPos3fvMESA),
-    NAME_FUNC_OFFSET(10980, glWindowPos3iMESA, glWindowPos3iMESA, NULL, _gloffset_WindowPos3iMESA),
-    NAME_FUNC_OFFSET(10998, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, _gloffset_WindowPos3ivMESA),
-    NAME_FUNC_OFFSET(11017, glWindowPos3sMESA, glWindowPos3sMESA, NULL, _gloffset_WindowPos3sMESA),
-    NAME_FUNC_OFFSET(11035, glWindowPos3svMESA, glWindowPos3svMESA, NULL, _gloffset_WindowPos3svMESA),
-    NAME_FUNC_OFFSET(11054, glWindowPos4dMESA, glWindowPos4dMESA, NULL, _gloffset_WindowPos4dMESA),
-    NAME_FUNC_OFFSET(11072, glWindowPos4dvMESA, glWindowPos4dvMESA, NULL, _gloffset_WindowPos4dvMESA),
-    NAME_FUNC_OFFSET(11091, glWindowPos4fMESA, glWindowPos4fMESA, NULL, _gloffset_WindowPos4fMESA),
-    NAME_FUNC_OFFSET(11109, glWindowPos4fvMESA, glWindowPos4fvMESA, NULL, _gloffset_WindowPos4fvMESA),
-    NAME_FUNC_OFFSET(11128, glWindowPos4iMESA, glWindowPos4iMESA, NULL, _gloffset_WindowPos4iMESA),
-    NAME_FUNC_OFFSET(11146, glWindowPos4ivMESA, glWindowPos4ivMESA, NULL, _gloffset_WindowPos4ivMESA),
-    NAME_FUNC_OFFSET(11165, glWindowPos4sMESA, glWindowPos4sMESA, NULL, _gloffset_WindowPos4sMESA),
-    NAME_FUNC_OFFSET(11183, glWindowPos4svMESA, glWindowPos4svMESA, NULL, _gloffset_WindowPos4svMESA),
-    NAME_FUNC_OFFSET(11202, gl_dispatch_stub_666, gl_dispatch_stub_666, NULL, _gloffset_MultiModeDrawArraysIBM),
-    NAME_FUNC_OFFSET(11227, gl_dispatch_stub_667, gl_dispatch_stub_667, NULL, _gloffset_MultiModeDrawElementsIBM),
-    NAME_FUNC_OFFSET(11254, gl_dispatch_stub_668, gl_dispatch_stub_668, NULL, _gloffset_DeleteFencesNV),
-    NAME_FUNC_OFFSET(11271, gl_dispatch_stub_669, gl_dispatch_stub_669, NULL, _gloffset_FinishFenceNV),
-    NAME_FUNC_OFFSET(11287, gl_dispatch_stub_670, gl_dispatch_stub_670, NULL, _gloffset_GenFencesNV),
-    NAME_FUNC_OFFSET(11301, gl_dispatch_stub_671, gl_dispatch_stub_671, NULL, _gloffset_GetFenceivNV),
-    NAME_FUNC_OFFSET(11316, gl_dispatch_stub_672, gl_dispatch_stub_672, NULL, _gloffset_IsFenceNV),
-    NAME_FUNC_OFFSET(11328, gl_dispatch_stub_673, gl_dispatch_stub_673, NULL, _gloffset_SetFenceNV),
-    NAME_FUNC_OFFSET(11341, gl_dispatch_stub_674, gl_dispatch_stub_674, NULL, _gloffset_TestFenceNV),
-    NAME_FUNC_OFFSET(11355, glAreProgramsResidentNV, glAreProgramsResidentNV, NULL, _gloffset_AreProgramsResidentNV),
-    NAME_FUNC_OFFSET(11379, glBindProgramNV, glBindProgramNV, NULL, _gloffset_BindProgramNV),
-    NAME_FUNC_OFFSET(11395, glDeleteProgramsNV, glDeleteProgramsNV, NULL, _gloffset_DeleteProgramsNV),
-    NAME_FUNC_OFFSET(11414, glExecuteProgramNV, glExecuteProgramNV, NULL, _gloffset_ExecuteProgramNV),
-    NAME_FUNC_OFFSET(11433, glGenProgramsNV, glGenProgramsNV, NULL, _gloffset_GenProgramsNV),
-    NAME_FUNC_OFFSET(11449, glGetProgramParameterdvNV, glGetProgramParameterdvNV, NULL, _gloffset_GetProgramParameterdvNV),
-    NAME_FUNC_OFFSET(11475, glGetProgramParameterfvNV, glGetProgramParameterfvNV, NULL, _gloffset_GetProgramParameterfvNV),
-    NAME_FUNC_OFFSET(11501, glGetProgramStringNV, glGetProgramStringNV, NULL, _gloffset_GetProgramStringNV),
-    NAME_FUNC_OFFSET(11522, glGetProgramivNV, glGetProgramivNV, NULL, _gloffset_GetProgramivNV),
-    NAME_FUNC_OFFSET(11539, glGetTrackMatrixivNV, glGetTrackMatrixivNV, NULL, _gloffset_GetTrackMatrixivNV),
-    NAME_FUNC_OFFSET(11560, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, _gloffset_GetVertexAttribPointervNV),
-    NAME_FUNC_OFFSET(11588, glGetVertexAttribdvNV, glGetVertexAttribdvNV, NULL, _gloffset_GetVertexAttribdvNV),
-    NAME_FUNC_OFFSET(11610, glGetVertexAttribfvNV, glGetVertexAttribfvNV, NULL, _gloffset_GetVertexAttribfvNV),
-    NAME_FUNC_OFFSET(11632, glGetVertexAttribivNV, glGetVertexAttribivNV, NULL, _gloffset_GetVertexAttribivNV),
-    NAME_FUNC_OFFSET(11654, glIsProgramNV, glIsProgramNV, NULL, _gloffset_IsProgramNV),
-    NAME_FUNC_OFFSET(11668, glLoadProgramNV, glLoadProgramNV, NULL, _gloffset_LoadProgramNV),
-    NAME_FUNC_OFFSET(11684, glProgramParameters4dvNV, glProgramParameters4dvNV, NULL, _gloffset_ProgramParameters4dvNV),
-    NAME_FUNC_OFFSET(11709, glProgramParameters4fvNV, glProgramParameters4fvNV, NULL, _gloffset_ProgramParameters4fvNV),
-    NAME_FUNC_OFFSET(11734, glRequestResidentProgramsNV, glRequestResidentProgramsNV, NULL, _gloffset_RequestResidentProgramsNV),
-    NAME_FUNC_OFFSET(11762, glTrackMatrixNV, glTrackMatrixNV, NULL, _gloffset_TrackMatrixNV),
-    NAME_FUNC_OFFSET(11778, glVertexAttrib1dNV, glVertexAttrib1dNV, NULL, _gloffset_VertexAttrib1dNV),
-    NAME_FUNC_OFFSET(11797, glVertexAttrib1dvNV, glVertexAttrib1dvNV, NULL, _gloffset_VertexAttrib1dvNV),
-    NAME_FUNC_OFFSET(11817, glVertexAttrib1fNV, glVertexAttrib1fNV, NULL, _gloffset_VertexAttrib1fNV),
-    NAME_FUNC_OFFSET(11836, glVertexAttrib1fvNV, glVertexAttrib1fvNV, NULL, _gloffset_VertexAttrib1fvNV),
-    NAME_FUNC_OFFSET(11856, glVertexAttrib1sNV, glVertexAttrib1sNV, NULL, _gloffset_VertexAttrib1sNV),
-    NAME_FUNC_OFFSET(11875, glVertexAttrib1svNV, glVertexAttrib1svNV, NULL, _gloffset_VertexAttrib1svNV),
-    NAME_FUNC_OFFSET(11895, glVertexAttrib2dNV, glVertexAttrib2dNV, NULL, _gloffset_VertexAttrib2dNV),
-    NAME_FUNC_OFFSET(11914, glVertexAttrib2dvNV, glVertexAttrib2dvNV, NULL, _gloffset_VertexAttrib2dvNV),
-    NAME_FUNC_OFFSET(11934, glVertexAttrib2fNV, glVertexAttrib2fNV, NULL, _gloffset_VertexAttrib2fNV),
-    NAME_FUNC_OFFSET(11953, glVertexAttrib2fvNV, glVertexAttrib2fvNV, NULL, _gloffset_VertexAttrib2fvNV),
-    NAME_FUNC_OFFSET(11973, glVertexAttrib2sNV, glVertexAttrib2sNV, NULL, _gloffset_VertexAttrib2sNV),
-    NAME_FUNC_OFFSET(11992, glVertexAttrib2svNV, glVertexAttrib2svNV, NULL, _gloffset_VertexAttrib2svNV),
-    NAME_FUNC_OFFSET(12012, glVertexAttrib3dNV, glVertexAttrib3dNV, NULL, _gloffset_VertexAttrib3dNV),
-    NAME_FUNC_OFFSET(12031, glVertexAttrib3dvNV, glVertexAttrib3dvNV, NULL, _gloffset_VertexAttrib3dvNV),
-    NAME_FUNC_OFFSET(12051, glVertexAttrib3fNV, glVertexAttrib3fNV, NULL, _gloffset_VertexAttrib3fNV),
-    NAME_FUNC_OFFSET(12070, glVertexAttrib3fvNV, glVertexAttrib3fvNV, NULL, _gloffset_VertexAttrib3fvNV),
-    NAME_FUNC_OFFSET(12090, glVertexAttrib3sNV, glVertexAttrib3sNV, NULL, _gloffset_VertexAttrib3sNV),
-    NAME_FUNC_OFFSET(12109, glVertexAttrib3svNV, glVertexAttrib3svNV, NULL, _gloffset_VertexAttrib3svNV),
-    NAME_FUNC_OFFSET(12129, glVertexAttrib4dNV, glVertexAttrib4dNV, NULL, _gloffset_VertexAttrib4dNV),
-    NAME_FUNC_OFFSET(12148, glVertexAttrib4dvNV, glVertexAttrib4dvNV, NULL, _gloffset_VertexAttrib4dvNV),
-    NAME_FUNC_OFFSET(12168, glVertexAttrib4fNV, glVertexAttrib4fNV, NULL, _gloffset_VertexAttrib4fNV),
-    NAME_FUNC_OFFSET(12187, glVertexAttrib4fvNV, glVertexAttrib4fvNV, NULL, _gloffset_VertexAttrib4fvNV),
-    NAME_FUNC_OFFSET(12207, glVertexAttrib4sNV, glVertexAttrib4sNV, NULL, _gloffset_VertexAttrib4sNV),
-    NAME_FUNC_OFFSET(12226, glVertexAttrib4svNV, glVertexAttrib4svNV, NULL, _gloffset_VertexAttrib4svNV),
-    NAME_FUNC_OFFSET(12246, glVertexAttrib4ubNV, glVertexAttrib4ubNV, NULL, _gloffset_VertexAttrib4ubNV),
-    NAME_FUNC_OFFSET(12266, glVertexAttrib4ubvNV, glVertexAttrib4ubvNV, NULL, _gloffset_VertexAttrib4ubvNV),
-    NAME_FUNC_OFFSET(12287, glVertexAttribPointerNV, glVertexAttribPointerNV, NULL, _gloffset_VertexAttribPointerNV),
-    NAME_FUNC_OFFSET(12311, glVertexAttribs1dvNV, glVertexAttribs1dvNV, NULL, _gloffset_VertexAttribs1dvNV),
-    NAME_FUNC_OFFSET(12332, glVertexAttribs1fvNV, glVertexAttribs1fvNV, NULL, _gloffset_VertexAttribs1fvNV),
-    NAME_FUNC_OFFSET(12353, glVertexAttribs1svNV, glVertexAttribs1svNV, NULL, _gloffset_VertexAttribs1svNV),
-    NAME_FUNC_OFFSET(12374, glVertexAttribs2dvNV, glVertexAttribs2dvNV, NULL, _gloffset_VertexAttribs2dvNV),
-    NAME_FUNC_OFFSET(12395, glVertexAttribs2fvNV, glVertexAttribs2fvNV, NULL, _gloffset_VertexAttribs2fvNV),
-    NAME_FUNC_OFFSET(12416, glVertexAttribs2svNV, glVertexAttribs2svNV, NULL, _gloffset_VertexAttribs2svNV),
-    NAME_FUNC_OFFSET(12437, glVertexAttribs3dvNV, glVertexAttribs3dvNV, NULL, _gloffset_VertexAttribs3dvNV),
-    NAME_FUNC_OFFSET(12458, glVertexAttribs3fvNV, glVertexAttribs3fvNV, NULL, _gloffset_VertexAttribs3fvNV),
-    NAME_FUNC_OFFSET(12479, glVertexAttribs3svNV, glVertexAttribs3svNV, NULL, _gloffset_VertexAttribs3svNV),
-    NAME_FUNC_OFFSET(12500, glVertexAttribs4dvNV, glVertexAttribs4dvNV, NULL, _gloffset_VertexAttribs4dvNV),
-    NAME_FUNC_OFFSET(12521, glVertexAttribs4fvNV, glVertexAttribs4fvNV, NULL, _gloffset_VertexAttribs4fvNV),
-    NAME_FUNC_OFFSET(12542, glVertexAttribs4svNV, glVertexAttribs4svNV, NULL, _gloffset_VertexAttribs4svNV),
-    NAME_FUNC_OFFSET(12563, glVertexAttribs4ubvNV, glVertexAttribs4ubvNV, NULL, _gloffset_VertexAttribs4ubvNV),
-    NAME_FUNC_OFFSET(12585, glGetTexBumpParameterfvATI, glGetTexBumpParameterfvATI, NULL, _gloffset_GetTexBumpParameterfvATI),
-    NAME_FUNC_OFFSET(12612, glGetTexBumpParameterivATI, glGetTexBumpParameterivATI, NULL, _gloffset_GetTexBumpParameterivATI),
-    NAME_FUNC_OFFSET(12639, glTexBumpParameterfvATI, glTexBumpParameterfvATI, NULL, _gloffset_TexBumpParameterfvATI),
-    NAME_FUNC_OFFSET(12663, glTexBumpParameterivATI, glTexBumpParameterivATI, NULL, _gloffset_TexBumpParameterivATI),
-    NAME_FUNC_OFFSET(12687, glAlphaFragmentOp1ATI, glAlphaFragmentOp1ATI, NULL, _gloffset_AlphaFragmentOp1ATI),
-    NAME_FUNC_OFFSET(12709, glAlphaFragmentOp2ATI, glAlphaFragmentOp2ATI, NULL, _gloffset_AlphaFragmentOp2ATI),
-    NAME_FUNC_OFFSET(12731, glAlphaFragmentOp3ATI, glAlphaFragmentOp3ATI, NULL, _gloffset_AlphaFragmentOp3ATI),
-    NAME_FUNC_OFFSET(12753, glBeginFragmentShaderATI, glBeginFragmentShaderATI, NULL, _gloffset_BeginFragmentShaderATI),
-    NAME_FUNC_OFFSET(12778, glBindFragmentShaderATI, glBindFragmentShaderATI, NULL, _gloffset_BindFragmentShaderATI),
-    NAME_FUNC_OFFSET(12802, glColorFragmentOp1ATI, glColorFragmentOp1ATI, NULL, _gloffset_ColorFragmentOp1ATI),
-    NAME_FUNC_OFFSET(12824, glColorFragmentOp2ATI, glColorFragmentOp2ATI, NULL, _gloffset_ColorFragmentOp2ATI),
-    NAME_FUNC_OFFSET(12846, glColorFragmentOp3ATI, glColorFragmentOp3ATI, NULL, _gloffset_ColorFragmentOp3ATI),
-    NAME_FUNC_OFFSET(12868, glDeleteFragmentShaderATI, glDeleteFragmentShaderATI, NULL, _gloffset_DeleteFragmentShaderATI),
-    NAME_FUNC_OFFSET(12894, glEndFragmentShaderATI, glEndFragmentShaderATI, NULL, _gloffset_EndFragmentShaderATI),
-    NAME_FUNC_OFFSET(12917, glGenFragmentShadersATI, glGenFragmentShadersATI, NULL, _gloffset_GenFragmentShadersATI),
-    NAME_FUNC_OFFSET(12941, glPassTexCoordATI, glPassTexCoordATI, NULL, _gloffset_PassTexCoordATI),
-    NAME_FUNC_OFFSET(12959, glSampleMapATI, glSampleMapATI, NULL, _gloffset_SampleMapATI),
-    NAME_FUNC_OFFSET(12974, glSetFragmentShaderConstantATI, glSetFragmentShaderConstantATI, NULL, _gloffset_SetFragmentShaderConstantATI),
-    NAME_FUNC_OFFSET(13005, glPointParameteriNV, glPointParameteriNV, NULL, _gloffset_PointParameteriNV),
-    NAME_FUNC_OFFSET(13025, glPointParameterivNV, glPointParameterivNV, NULL, _gloffset_PointParameterivNV),
-    NAME_FUNC_OFFSET(13046, gl_dispatch_stub_755, gl_dispatch_stub_755, NULL, _gloffset_ActiveStencilFaceEXT),
-    NAME_FUNC_OFFSET(13069, gl_dispatch_stub_756, gl_dispatch_stub_756, NULL, _gloffset_BindVertexArrayAPPLE),
-    NAME_FUNC_OFFSET(13092, gl_dispatch_stub_757, gl_dispatch_stub_757, NULL, _gloffset_DeleteVertexArraysAPPLE),
-    NAME_FUNC_OFFSET(13118, gl_dispatch_stub_758, gl_dispatch_stub_758, NULL, _gloffset_GenVertexArraysAPPLE),
-    NAME_FUNC_OFFSET(13141, gl_dispatch_stub_759, gl_dispatch_stub_759, NULL, _gloffset_IsVertexArrayAPPLE),
-    NAME_FUNC_OFFSET(13162, glGetProgramNamedParameterdvNV, glGetProgramNamedParameterdvNV, NULL, _gloffset_GetProgramNamedParameterdvNV),
-    NAME_FUNC_OFFSET(13193, glGetProgramNamedParameterfvNV, glGetProgramNamedParameterfvNV, NULL, _gloffset_GetProgramNamedParameterfvNV),
-    NAME_FUNC_OFFSET(13224, glProgramNamedParameter4dNV, glProgramNamedParameter4dNV, NULL, _gloffset_ProgramNamedParameter4dNV),
-    NAME_FUNC_OFFSET(13252, glProgramNamedParameter4dvNV, glProgramNamedParameter4dvNV, NULL, _gloffset_ProgramNamedParameter4dvNV),
-    NAME_FUNC_OFFSET(13281, glProgramNamedParameter4fNV, glProgramNamedParameter4fNV, NULL, _gloffset_ProgramNamedParameter4fNV),
-    NAME_FUNC_OFFSET(13309, glProgramNamedParameter4fvNV, glProgramNamedParameter4fvNV, NULL, _gloffset_ProgramNamedParameter4fvNV),
-    NAME_FUNC_OFFSET(13338, gl_dispatch_stub_766, gl_dispatch_stub_766, NULL, _gloffset_DepthBoundsEXT),
-    NAME_FUNC_OFFSET(13355, gl_dispatch_stub_767, gl_dispatch_stub_767, NULL, _gloffset_BlendEquationSeparateEXT),
-    NAME_FUNC_OFFSET(13382, glBindFramebufferEXT, glBindFramebufferEXT, NULL, _gloffset_BindFramebufferEXT),
-    NAME_FUNC_OFFSET(13403, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, _gloffset_BindRenderbufferEXT),
-    NAME_FUNC_OFFSET(13425, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, _gloffset_CheckFramebufferStatusEXT),
-    NAME_FUNC_OFFSET(13453, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, _gloffset_DeleteFramebuffersEXT),
-    NAME_FUNC_OFFSET(13477, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, _gloffset_DeleteRenderbuffersEXT),
-    NAME_FUNC_OFFSET(13502, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, _gloffset_FramebufferRenderbufferEXT),
-    NAME_FUNC_OFFSET(13531, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, _gloffset_FramebufferTexture1DEXT),
-    NAME_FUNC_OFFSET(13557, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, _gloffset_FramebufferTexture2DEXT),
-    NAME_FUNC_OFFSET(13583, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, _gloffset_FramebufferTexture3DEXT),
-    NAME_FUNC_OFFSET(13609, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, _gloffset_GenFramebuffersEXT),
-    NAME_FUNC_OFFSET(13630, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, _gloffset_GenRenderbuffersEXT),
-    NAME_FUNC_OFFSET(13652, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, _gloffset_GenerateMipmapEXT),
-    NAME_FUNC_OFFSET(13672, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, _gloffset_GetFramebufferAttachmentParameterivEXT),
-    NAME_FUNC_OFFSET(13713, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, _gloffset_GetRenderbufferParameterivEXT),
-    NAME_FUNC_OFFSET(13745, glIsFramebufferEXT, glIsFramebufferEXT, NULL, _gloffset_IsFramebufferEXT),
-    NAME_FUNC_OFFSET(13764, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, _gloffset_IsRenderbufferEXT),
-    NAME_FUNC_OFFSET(13784, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, _gloffset_RenderbufferStorageEXT),
-    NAME_FUNC_OFFSET(13809, gl_dispatch_stub_785, gl_dispatch_stub_785, NULL, _gloffset_BlitFramebufferEXT),
-    NAME_FUNC_OFFSET(13830, gl_dispatch_stub_786, gl_dispatch_stub_786, NULL, _gloffset_BufferParameteriAPPLE),
-    NAME_FUNC_OFFSET(13854, gl_dispatch_stub_787, gl_dispatch_stub_787, NULL, _gloffset_FlushMappedBufferRangeAPPLE),
-    NAME_FUNC_OFFSET(13884, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, _gloffset_FramebufferTextureLayerEXT),
-    NAME_FUNC_OFFSET(13913, glColorMaskIndexedEXT, glColorMaskIndexedEXT, NULL, _gloffset_ColorMaskIndexedEXT),
-    NAME_FUNC_OFFSET(13935, glDisableIndexedEXT, glDisableIndexedEXT, NULL, _gloffset_DisableIndexedEXT),
-    NAME_FUNC_OFFSET(13955, glEnableIndexedEXT, glEnableIndexedEXT, NULL, _gloffset_EnableIndexedEXT),
-    NAME_FUNC_OFFSET(13974, glGetBooleanIndexedvEXT, glGetBooleanIndexedvEXT, NULL, _gloffset_GetBooleanIndexedvEXT),
-    NAME_FUNC_OFFSET(13998, glGetIntegerIndexedvEXT, glGetIntegerIndexedvEXT, NULL, _gloffset_GetIntegerIndexedvEXT),
-    NAME_FUNC_OFFSET(14022, glIsEnabledIndexedEXT, glIsEnabledIndexedEXT, NULL, _gloffset_IsEnabledIndexedEXT),
-    NAME_FUNC_OFFSET(14044, glBeginConditionalRenderNV, glBeginConditionalRenderNV, NULL, _gloffset_BeginConditionalRenderNV),
-    NAME_FUNC_OFFSET(14071, glEndConditionalRenderNV, glEndConditionalRenderNV, NULL, _gloffset_EndConditionalRenderNV),
-    NAME_FUNC_OFFSET(14096, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, _gloffset_BeginTransformFeedbackEXT),
-    NAME_FUNC_OFFSET(14124, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, _gloffset_BindBufferBaseEXT),
-    NAME_FUNC_OFFSET(14144, glBindBufferOffsetEXT, glBindBufferOffsetEXT, NULL, _gloffset_BindBufferOffsetEXT),
-    NAME_FUNC_OFFSET(14166, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, _gloffset_BindBufferRangeEXT),
-    NAME_FUNC_OFFSET(14187, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, _gloffset_EndTransformFeedbackEXT),
-    NAME_FUNC_OFFSET(14213, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, _gloffset_GetTransformFeedbackVaryingEXT),
-    NAME_FUNC_OFFSET(14246, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, _gloffset_TransformFeedbackVaryingsEXT),
-    NAME_FUNC_OFFSET(14277, glProvokingVertexEXT, glProvokingVertexEXT, NULL, _gloffset_ProvokingVertexEXT),
-    NAME_FUNC_OFFSET(14298, gl_dispatch_stub_805, gl_dispatch_stub_805, NULL, _gloffset_GetTexParameterPointervAPPLE),
-    NAME_FUNC_OFFSET(14329, gl_dispatch_stub_806, gl_dispatch_stub_806, NULL, _gloffset_TextureRangeAPPLE),
-    NAME_FUNC_OFFSET(14349, glGetObjectParameterivAPPLE, glGetObjectParameterivAPPLE, NULL, _gloffset_GetObjectParameterivAPPLE),
-    NAME_FUNC_OFFSET(14377, glObjectPurgeableAPPLE, glObjectPurgeableAPPLE, NULL, _gloffset_ObjectPurgeableAPPLE),
-    NAME_FUNC_OFFSET(14400, glObjectUnpurgeableAPPLE, glObjectUnpurgeableAPPLE, NULL, _gloffset_ObjectUnpurgeableAPPLE),
-    NAME_FUNC_OFFSET(14425, gl_dispatch_stub_810, gl_dispatch_stub_810, NULL, _gloffset_StencilFuncSeparateATI),
-    NAME_FUNC_OFFSET(14450, gl_dispatch_stub_811, gl_dispatch_stub_811, NULL, _gloffset_ProgramEnvParameters4fvEXT),
-    NAME_FUNC_OFFSET(14479, gl_dispatch_stub_812, gl_dispatch_stub_812, NULL, _gloffset_ProgramLocalParameters4fvEXT),
-    NAME_FUNC_OFFSET(14510, gl_dispatch_stub_813, gl_dispatch_stub_813, NULL, _gloffset_GetQueryObjecti64vEXT),
-    NAME_FUNC_OFFSET(14534, gl_dispatch_stub_814, gl_dispatch_stub_814, NULL, _gloffset_GetQueryObjectui64vEXT),
-    NAME_FUNC_OFFSET(14559, glEGLImageTargetRenderbufferStorageOES, glEGLImageTargetRenderbufferStorageOES, NULL, _gloffset_EGLImageTargetRenderbufferStorageOES),
-    NAME_FUNC_OFFSET(14598, glEGLImageTargetTexture2DOES, glEGLImageTargetTexture2DOES, NULL, _gloffset_EGLImageTargetTexture2DOES),
-    NAME_FUNC_OFFSET(14627, glArrayElement, glArrayElement, NULL, _gloffset_ArrayElement),
-    NAME_FUNC_OFFSET(14645, glBindTexture, glBindTexture, NULL, _gloffset_BindTexture),
-    NAME_FUNC_OFFSET(14662, glDrawArrays, glDrawArrays, NULL, _gloffset_DrawArrays),
-    NAME_FUNC_OFFSET(14678, glAreTexturesResident, glAreTexturesResidentEXT, glAreTexturesResidentEXT, _gloffset_AreTexturesResident),
-    NAME_FUNC_OFFSET(14703, glCopyTexImage1D, glCopyTexImage1D, NULL, _gloffset_CopyTexImage1D),
-    NAME_FUNC_OFFSET(14723, glCopyTexImage2D, glCopyTexImage2D, NULL, _gloffset_CopyTexImage2D),
-    NAME_FUNC_OFFSET(14743, glCopyTexSubImage1D, glCopyTexSubImage1D, NULL, _gloffset_CopyTexSubImage1D),
-    NAME_FUNC_OFFSET(14766, glCopyTexSubImage2D, glCopyTexSubImage2D, NULL, _gloffset_CopyTexSubImage2D),
-    NAME_FUNC_OFFSET(14789, glDeleteTextures, glDeleteTexturesEXT, glDeleteTexturesEXT, _gloffset_DeleteTextures),
-    NAME_FUNC_OFFSET(14809, glGenTextures, glGenTexturesEXT, glGenTexturesEXT, _gloffset_GenTextures),
-    NAME_FUNC_OFFSET(14826, glGetPointerv, glGetPointerv, NULL, _gloffset_GetPointerv),
-    NAME_FUNC_OFFSET(14843, glIsTexture, glIsTextureEXT, glIsTextureEXT, _gloffset_IsTexture),
-    NAME_FUNC_OFFSET(14858, glPrioritizeTextures, glPrioritizeTextures, NULL, _gloffset_PrioritizeTextures),
-    NAME_FUNC_OFFSET(14882, glTexSubImage1D, glTexSubImage1D, NULL, _gloffset_TexSubImage1D),
-    NAME_FUNC_OFFSET(14901, glTexSubImage2D, glTexSubImage2D, NULL, _gloffset_TexSubImage2D),
-    NAME_FUNC_OFFSET(14920, glBlendColor, glBlendColor, NULL, _gloffset_BlendColor),
-    NAME_FUNC_OFFSET(14936, glBlendEquation, glBlendEquation, NULL, _gloffset_BlendEquation),
-    NAME_FUNC_OFFSET(14955, glDrawRangeElements, glDrawRangeElements, NULL, _gloffset_DrawRangeElements),
-    NAME_FUNC_OFFSET(14978, glColorTable, glColorTable, NULL, _gloffset_ColorTable),
-    NAME_FUNC_OFFSET(14994, glColorTable, glColorTable, NULL, _gloffset_ColorTable),
-    NAME_FUNC_OFFSET(15010, glColorTableParameterfv, glColorTableParameterfv, NULL, _gloffset_ColorTableParameterfv),
-    NAME_FUNC_OFFSET(15037, glColorTableParameteriv, glColorTableParameteriv, NULL, _gloffset_ColorTableParameteriv),
-    NAME_FUNC_OFFSET(15064, glCopyColorTable, glCopyColorTable, NULL, _gloffset_CopyColorTable),
-    NAME_FUNC_OFFSET(15084, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, _gloffset_GetColorTable),
-    NAME_FUNC_OFFSET(15103, glGetColorTable, glGetColorTableEXT, glGetColorTableEXT, _gloffset_GetColorTable),
-    NAME_FUNC_OFFSET(15122, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, _gloffset_GetColorTableParameterfv),
-    NAME_FUNC_OFFSET(15152, glGetColorTableParameterfv, glGetColorTableParameterfvEXT, glGetColorTableParameterfvEXT, _gloffset_GetColorTableParameterfv),
-    NAME_FUNC_OFFSET(15182, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, _gloffset_GetColorTableParameteriv),
-    NAME_FUNC_OFFSET(15212, glGetColorTableParameteriv, glGetColorTableParameterivEXT, glGetColorTableParameterivEXT, _gloffset_GetColorTableParameteriv),
-    NAME_FUNC_OFFSET(15242, glColorSubTable, glColorSubTable, NULL, _gloffset_ColorSubTable),
-    NAME_FUNC_OFFSET(15261, glCopyColorSubTable, glCopyColorSubTable, NULL, _gloffset_CopyColorSubTable),
-    NAME_FUNC_OFFSET(15284, glConvolutionFilter1D, glConvolutionFilter1D, NULL, _gloffset_ConvolutionFilter1D),
-    NAME_FUNC_OFFSET(15309, glConvolutionFilter2D, glConvolutionFilter2D, NULL, _gloffset_ConvolutionFilter2D),
-    NAME_FUNC_OFFSET(15334, glConvolutionParameterf, glConvolutionParameterf, NULL, _gloffset_ConvolutionParameterf),
-    NAME_FUNC_OFFSET(15361, glConvolutionParameterfv, glConvolutionParameterfv, NULL, _gloffset_ConvolutionParameterfv),
-    NAME_FUNC_OFFSET(15389, glConvolutionParameteri, glConvolutionParameteri, NULL, _gloffset_ConvolutionParameteri),
-    NAME_FUNC_OFFSET(15416, glConvolutionParameteriv, glConvolutionParameteriv, NULL, _gloffset_ConvolutionParameteriv),
-    NAME_FUNC_OFFSET(15444, glCopyConvolutionFilter1D, glCopyConvolutionFilter1D, NULL, _gloffset_CopyConvolutionFilter1D),
-    NAME_FUNC_OFFSET(15473, glCopyConvolutionFilter2D, glCopyConvolutionFilter2D, NULL, _gloffset_CopyConvolutionFilter2D),
-    NAME_FUNC_OFFSET(15502, glGetConvolutionFilter, gl_dispatch_stub_356, gl_dispatch_stub_356, _gloffset_GetConvolutionFilter),
-    NAME_FUNC_OFFSET(15528, glGetConvolutionParameterfv, gl_dispatch_stub_357, gl_dispatch_stub_357, _gloffset_GetConvolutionParameterfv),
-    NAME_FUNC_OFFSET(15559, glGetConvolutionParameteriv, gl_dispatch_stub_358, gl_dispatch_stub_358, _gloffset_GetConvolutionParameteriv),
-    NAME_FUNC_OFFSET(15590, glGetSeparableFilter, gl_dispatch_stub_359, gl_dispatch_stub_359, _gloffset_GetSeparableFilter),
-    NAME_FUNC_OFFSET(15614, glSeparableFilter2D, glSeparableFilter2D, NULL, _gloffset_SeparableFilter2D),
-    NAME_FUNC_OFFSET(15637, glGetHistogram, gl_dispatch_stub_361, gl_dispatch_stub_361, _gloffset_GetHistogram),
-    NAME_FUNC_OFFSET(15655, glGetHistogramParameterfv, gl_dispatch_stub_362, gl_dispatch_stub_362, _gloffset_GetHistogramParameterfv),
-    NAME_FUNC_OFFSET(15684, glGetHistogramParameteriv, gl_dispatch_stub_363, gl_dispatch_stub_363, _gloffset_GetHistogramParameteriv),
-    NAME_FUNC_OFFSET(15713, glGetMinmax, gl_dispatch_stub_364, gl_dispatch_stub_364, _gloffset_GetMinmax),
-    NAME_FUNC_OFFSET(15728, glGetMinmaxParameterfv, gl_dispatch_stub_365, gl_dispatch_stub_365, _gloffset_GetMinmaxParameterfv),
-    NAME_FUNC_OFFSET(15754, glGetMinmaxParameteriv, gl_dispatch_stub_366, gl_dispatch_stub_366, _gloffset_GetMinmaxParameteriv),
-    NAME_FUNC_OFFSET(15780, glHistogram, glHistogram, NULL, _gloffset_Histogram),
-    NAME_FUNC_OFFSET(15795, glMinmax, glMinmax, NULL, _gloffset_Minmax),
-    NAME_FUNC_OFFSET(15807, glResetHistogram, glResetHistogram, NULL, _gloffset_ResetHistogram),
-    NAME_FUNC_OFFSET(15827, glResetMinmax, glResetMinmax, NULL, _gloffset_ResetMinmax),
-    NAME_FUNC_OFFSET(15844, glTexImage3D, glTexImage3D, NULL, _gloffset_TexImage3D),
-    NAME_FUNC_OFFSET(15860, glTexSubImage3D, glTexSubImage3D, NULL, _gloffset_TexSubImage3D),
-    NAME_FUNC_OFFSET(15879, glCopyTexSubImage3D, glCopyTexSubImage3D, NULL, _gloffset_CopyTexSubImage3D),
-    NAME_FUNC_OFFSET(15902, glActiveTextureARB, glActiveTextureARB, NULL, _gloffset_ActiveTextureARB),
-    NAME_FUNC_OFFSET(15918, glClientActiveTextureARB, glClientActiveTextureARB, NULL, _gloffset_ClientActiveTextureARB),
-    NAME_FUNC_OFFSET(15940, glMultiTexCoord1dARB, glMultiTexCoord1dARB, NULL, _gloffset_MultiTexCoord1dARB),
-    NAME_FUNC_OFFSET(15958, glMultiTexCoord1dvARB, glMultiTexCoord1dvARB, NULL, _gloffset_MultiTexCoord1dvARB),
-    NAME_FUNC_OFFSET(15977, glMultiTexCoord1fARB, glMultiTexCoord1fARB, NULL, _gloffset_MultiTexCoord1fARB),
-    NAME_FUNC_OFFSET(15995, glMultiTexCoord1fvARB, glMultiTexCoord1fvARB, NULL, _gloffset_MultiTexCoord1fvARB),
-    NAME_FUNC_OFFSET(16014, glMultiTexCoord1iARB, glMultiTexCoord1iARB, NULL, _gloffset_MultiTexCoord1iARB),
-    NAME_FUNC_OFFSET(16032, glMultiTexCoord1ivARB, glMultiTexCoord1ivARB, NULL, _gloffset_MultiTexCoord1ivARB),
-    NAME_FUNC_OFFSET(16051, glMultiTexCoord1sARB, glMultiTexCoord1sARB, NULL, _gloffset_MultiTexCoord1sARB),
-    NAME_FUNC_OFFSET(16069, glMultiTexCoord1svARB, glMultiTexCoord1svARB, NULL, _gloffset_MultiTexCoord1svARB),
-    NAME_FUNC_OFFSET(16088, glMultiTexCoord2dARB, glMultiTexCoord2dARB, NULL, _gloffset_MultiTexCoord2dARB),
-    NAME_FUNC_OFFSET(16106, glMultiTexCoord2dvARB, glMultiTexCoord2dvARB, NULL, _gloffset_MultiTexCoord2dvARB),
-    NAME_FUNC_OFFSET(16125, glMultiTexCoord2fARB, glMultiTexCoord2fARB, NULL, _gloffset_MultiTexCoord2fARB),
-    NAME_FUNC_OFFSET(16143, glMultiTexCoord2fvARB, glMultiTexCoord2fvARB, NULL, _gloffset_MultiTexCoord2fvARB),
-    NAME_FUNC_OFFSET(16162, glMultiTexCoord2iARB, glMultiTexCoord2iARB, NULL, _gloffset_MultiTexCoord2iARB),
-    NAME_FUNC_OFFSET(16180, glMultiTexCoord2ivARB, glMultiTexCoord2ivARB, NULL, _gloffset_MultiTexCoord2ivARB),
-    NAME_FUNC_OFFSET(16199, glMultiTexCoord2sARB, glMultiTexCoord2sARB, NULL, _gloffset_MultiTexCoord2sARB),
-    NAME_FUNC_OFFSET(16217, glMultiTexCoord2svARB, glMultiTexCoord2svARB, NULL, _gloffset_MultiTexCoord2svARB),
-    NAME_FUNC_OFFSET(16236, glMultiTexCoord3dARB, glMultiTexCoord3dARB, NULL, _gloffset_MultiTexCoord3dARB),
-    NAME_FUNC_OFFSET(16254, glMultiTexCoord3dvARB, glMultiTexCoord3dvARB, NULL, _gloffset_MultiTexCoord3dvARB),
-    NAME_FUNC_OFFSET(16273, glMultiTexCoord3fARB, glMultiTexCoord3fARB, NULL, _gloffset_MultiTexCoord3fARB),
-    NAME_FUNC_OFFSET(16291, glMultiTexCoord3fvARB, glMultiTexCoord3fvARB, NULL, _gloffset_MultiTexCoord3fvARB),
-    NAME_FUNC_OFFSET(16310, glMultiTexCoord3iARB, glMultiTexCoord3iARB, NULL, _gloffset_MultiTexCoord3iARB),
-    NAME_FUNC_OFFSET(16328, glMultiTexCoord3ivARB, glMultiTexCoord3ivARB, NULL, _gloffset_MultiTexCoord3ivARB),
-    NAME_FUNC_OFFSET(16347, glMultiTexCoord3sARB, glMultiTexCoord3sARB, NULL, _gloffset_MultiTexCoord3sARB),
-    NAME_FUNC_OFFSET(16365, glMultiTexCoord3svARB, glMultiTexCoord3svARB, NULL, _gloffset_MultiTexCoord3svARB),
-    NAME_FUNC_OFFSET(16384, glMultiTexCoord4dARB, glMultiTexCoord4dARB, NULL, _gloffset_MultiTexCoord4dARB),
-    NAME_FUNC_OFFSET(16402, glMultiTexCoord4dvARB, glMultiTexCoord4dvARB, NULL, _gloffset_MultiTexCoord4dvARB),
-    NAME_FUNC_OFFSET(16421, glMultiTexCoord4fARB, glMultiTexCoord4fARB, NULL, _gloffset_MultiTexCoord4fARB),
-    NAME_FUNC_OFFSET(16439, glMultiTexCoord4fvARB, glMultiTexCoord4fvARB, NULL, _gloffset_MultiTexCoord4fvARB),
-    NAME_FUNC_OFFSET(16458, glMultiTexCoord4iARB, glMultiTexCoord4iARB, NULL, _gloffset_MultiTexCoord4iARB),
-    NAME_FUNC_OFFSET(16476, glMultiTexCoord4ivARB, glMultiTexCoord4ivARB, NULL, _gloffset_MultiTexCoord4ivARB),
-    NAME_FUNC_OFFSET(16495, glMultiTexCoord4sARB, glMultiTexCoord4sARB, NULL, _gloffset_MultiTexCoord4sARB),
-    NAME_FUNC_OFFSET(16513, glMultiTexCoord4svARB, glMultiTexCoord4svARB, NULL, _gloffset_MultiTexCoord4svARB),
-    NAME_FUNC_OFFSET(16532, glStencilOpSeparate, glStencilOpSeparate, NULL, _gloffset_StencilOpSeparate),
-    NAME_FUNC_OFFSET(16555, glDrawArraysInstanced, glDrawArraysInstanced, NULL, _gloffset_DrawArraysInstanced),
-    NAME_FUNC_OFFSET(16580, glDrawArraysInstanced, glDrawArraysInstanced, NULL, _gloffset_DrawArraysInstanced),
-    NAME_FUNC_OFFSET(16605, glDrawElementsInstanced, glDrawElementsInstanced, NULL, _gloffset_DrawElementsInstanced),
-    NAME_FUNC_OFFSET(16632, glDrawElementsInstanced, glDrawElementsInstanced, NULL, _gloffset_DrawElementsInstanced),
-    NAME_FUNC_OFFSET(16659, glLoadTransposeMatrixdARB, glLoadTransposeMatrixdARB, NULL, _gloffset_LoadTransposeMatrixdARB),
-    NAME_FUNC_OFFSET(16682, glLoadTransposeMatrixfARB, glLoadTransposeMatrixfARB, NULL, _gloffset_LoadTransposeMatrixfARB),
-    NAME_FUNC_OFFSET(16705, glMultTransposeMatrixdARB, glMultTransposeMatrixdARB, NULL, _gloffset_MultTransposeMatrixdARB),
-    NAME_FUNC_OFFSET(16728, glMultTransposeMatrixfARB, glMultTransposeMatrixfARB, NULL, _gloffset_MultTransposeMatrixfARB),
-    NAME_FUNC_OFFSET(16751, glSampleCoverageARB, glSampleCoverageARB, NULL, _gloffset_SampleCoverageARB),
-    NAME_FUNC_OFFSET(16768, glCompressedTexImage1DARB, glCompressedTexImage1DARB, NULL, _gloffset_CompressedTexImage1DARB),
-    NAME_FUNC_OFFSET(16791, glCompressedTexImage2DARB, glCompressedTexImage2DARB, NULL, _gloffset_CompressedTexImage2DARB),
-    NAME_FUNC_OFFSET(16814, glCompressedTexImage3DARB, glCompressedTexImage3DARB, NULL, _gloffset_CompressedTexImage3DARB),
-    NAME_FUNC_OFFSET(16837, glCompressedTexSubImage1DARB, glCompressedTexSubImage1DARB, NULL, _gloffset_CompressedTexSubImage1DARB),
-    NAME_FUNC_OFFSET(16863, glCompressedTexSubImage2DARB, glCompressedTexSubImage2DARB, NULL, _gloffset_CompressedTexSubImage2DARB),
-    NAME_FUNC_OFFSET(16889, glCompressedTexSubImage3DARB, glCompressedTexSubImage3DARB, NULL, _gloffset_CompressedTexSubImage3DARB),
-    NAME_FUNC_OFFSET(16915, glGetCompressedTexImageARB, glGetCompressedTexImageARB, NULL, _gloffset_GetCompressedTexImageARB),
-    NAME_FUNC_OFFSET(16939, glDisableVertexAttribArrayARB, glDisableVertexAttribArrayARB, NULL, _gloffset_DisableVertexAttribArrayARB),
-    NAME_FUNC_OFFSET(16966, glEnableVertexAttribArrayARB, glEnableVertexAttribArrayARB, NULL, _gloffset_EnableVertexAttribArrayARB),
-    NAME_FUNC_OFFSET(16992, glGetVertexAttribdvARB, glGetVertexAttribdvARB, NULL, _gloffset_GetVertexAttribdvARB),
-    NAME_FUNC_OFFSET(17012, glGetVertexAttribfvARB, glGetVertexAttribfvARB, NULL, _gloffset_GetVertexAttribfvARB),
-    NAME_FUNC_OFFSET(17032, glGetVertexAttribivARB, glGetVertexAttribivARB, NULL, _gloffset_GetVertexAttribivARB),
-    NAME_FUNC_OFFSET(17052, glProgramEnvParameter4dARB, glProgramEnvParameter4dARB, NULL, _gloffset_ProgramEnvParameter4dARB),
-    NAME_FUNC_OFFSET(17075, glProgramEnvParameter4dvARB, glProgramEnvParameter4dvARB, NULL, _gloffset_ProgramEnvParameter4dvARB),
-    NAME_FUNC_OFFSET(17099, glProgramEnvParameter4fARB, glProgramEnvParameter4fARB, NULL, _gloffset_ProgramEnvParameter4fARB),
-    NAME_FUNC_OFFSET(17122, glProgramEnvParameter4fvARB, glProgramEnvParameter4fvARB, NULL, _gloffset_ProgramEnvParameter4fvARB),
-    NAME_FUNC_OFFSET(17146, glVertexAttrib1dARB, glVertexAttrib1dARB, NULL, _gloffset_VertexAttrib1dARB),
-    NAME_FUNC_OFFSET(17163, glVertexAttrib1dvARB, glVertexAttrib1dvARB, NULL, _gloffset_VertexAttrib1dvARB),
-    NAME_FUNC_OFFSET(17181, glVertexAttrib1fARB, glVertexAttrib1fARB, NULL, _gloffset_VertexAttrib1fARB),
-    NAME_FUNC_OFFSET(17198, glVertexAttrib1fvARB, glVertexAttrib1fvARB, NULL, _gloffset_VertexAttrib1fvARB),
-    NAME_FUNC_OFFSET(17216, glVertexAttrib1sARB, glVertexAttrib1sARB, NULL, _gloffset_VertexAttrib1sARB),
-    NAME_FUNC_OFFSET(17233, glVertexAttrib1svARB, glVertexAttrib1svARB, NULL, _gloffset_VertexAttrib1svARB),
-    NAME_FUNC_OFFSET(17251, glVertexAttrib2dARB, glVertexAttrib2dARB, NULL, _gloffset_VertexAttrib2dARB),
-    NAME_FUNC_OFFSET(17268, glVertexAttrib2dvARB, glVertexAttrib2dvARB, NULL, _gloffset_VertexAttrib2dvARB),
-    NAME_FUNC_OFFSET(17286, glVertexAttrib2fARB, glVertexAttrib2fARB, NULL, _gloffset_VertexAttrib2fARB),
-    NAME_FUNC_OFFSET(17303, glVertexAttrib2fvARB, glVertexAttrib2fvARB, NULL, _gloffset_VertexAttrib2fvARB),
-    NAME_FUNC_OFFSET(17321, glVertexAttrib2sARB, glVertexAttrib2sARB, NULL, _gloffset_VertexAttrib2sARB),
-    NAME_FUNC_OFFSET(17338, glVertexAttrib2svARB, glVertexAttrib2svARB, NULL, _gloffset_VertexAttrib2svARB),
-    NAME_FUNC_OFFSET(17356, glVertexAttrib3dARB, glVertexAttrib3dARB, NULL, _gloffset_VertexAttrib3dARB),
-    NAME_FUNC_OFFSET(17373, glVertexAttrib3dvARB, glVertexAttrib3dvARB, NULL, _gloffset_VertexAttrib3dvARB),
-    NAME_FUNC_OFFSET(17391, glVertexAttrib3fARB, glVertexAttrib3fARB, NULL, _gloffset_VertexAttrib3fARB),
-    NAME_FUNC_OFFSET(17408, glVertexAttrib3fvARB, glVertexAttrib3fvARB, NULL, _gloffset_VertexAttrib3fvARB),
-    NAME_FUNC_OFFSET(17426, glVertexAttrib3sARB, glVertexAttrib3sARB, NULL, _gloffset_VertexAttrib3sARB),
-    NAME_FUNC_OFFSET(17443, glVertexAttrib3svARB, glVertexAttrib3svARB, NULL, _gloffset_VertexAttrib3svARB),
-    NAME_FUNC_OFFSET(17461, glVertexAttrib4NbvARB, glVertexAttrib4NbvARB, NULL, _gloffset_VertexAttrib4NbvARB),
-    NAME_FUNC_OFFSET(17480, glVertexAttrib4NivARB, glVertexAttrib4NivARB, NULL, _gloffset_VertexAttrib4NivARB),
-    NAME_FUNC_OFFSET(17499, glVertexAttrib4NsvARB, glVertexAttrib4NsvARB, NULL, _gloffset_VertexAttrib4NsvARB),
-    NAME_FUNC_OFFSET(17518, glVertexAttrib4NubARB, glVertexAttrib4NubARB, NULL, _gloffset_VertexAttrib4NubARB),
-    NAME_FUNC_OFFSET(17537, glVertexAttrib4NubvARB, glVertexAttrib4NubvARB, NULL, _gloffset_VertexAttrib4NubvARB),
-    NAME_FUNC_OFFSET(17557, glVertexAttrib4NuivARB, glVertexAttrib4NuivARB, NULL, _gloffset_VertexAttrib4NuivARB),
-    NAME_FUNC_OFFSET(17577, glVertexAttrib4NusvARB, glVertexAttrib4NusvARB, NULL, _gloffset_VertexAttrib4NusvARB),
-    NAME_FUNC_OFFSET(17597, glVertexAttrib4bvARB, glVertexAttrib4bvARB, NULL, _gloffset_VertexAttrib4bvARB),
-    NAME_FUNC_OFFSET(17615, glVertexAttrib4dARB, glVertexAttrib4dARB, NULL, _gloffset_VertexAttrib4dARB),
-    NAME_FUNC_OFFSET(17632, glVertexAttrib4dvARB, glVertexAttrib4dvARB, NULL, _gloffset_VertexAttrib4dvARB),
-    NAME_FUNC_OFFSET(17650, glVertexAttrib4fARB, glVertexAttrib4fARB, NULL, _gloffset_VertexAttrib4fARB),
-    NAME_FUNC_OFFSET(17667, glVertexAttrib4fvARB, glVertexAttrib4fvARB, NULL, _gloffset_VertexAttrib4fvARB),
-    NAME_FUNC_OFFSET(17685, glVertexAttrib4ivARB, glVertexAttrib4ivARB, NULL, _gloffset_VertexAttrib4ivARB),
-    NAME_FUNC_OFFSET(17703, glVertexAttrib4sARB, glVertexAttrib4sARB, NULL, _gloffset_VertexAttrib4sARB),
-    NAME_FUNC_OFFSET(17720, glVertexAttrib4svARB, glVertexAttrib4svARB, NULL, _gloffset_VertexAttrib4svARB),
-    NAME_FUNC_OFFSET(17738, glVertexAttrib4ubvARB, glVertexAttrib4ubvARB, NULL, _gloffset_VertexAttrib4ubvARB),
-    NAME_FUNC_OFFSET(17757, glVertexAttrib4uivARB, glVertexAttrib4uivARB, NULL, _gloffset_VertexAttrib4uivARB),
-    NAME_FUNC_OFFSET(17776, glVertexAttrib4usvARB, glVertexAttrib4usvARB, NULL, _gloffset_VertexAttrib4usvARB),
-    NAME_FUNC_OFFSET(17795, glVertexAttribPointerARB, glVertexAttribPointerARB, NULL, _gloffset_VertexAttribPointerARB),
-    NAME_FUNC_OFFSET(17817, glBindBufferARB, glBindBufferARB, NULL, _gloffset_BindBufferARB),
-    NAME_FUNC_OFFSET(17830, glBufferDataARB, glBufferDataARB, NULL, _gloffset_BufferDataARB),
-    NAME_FUNC_OFFSET(17843, glBufferSubDataARB, glBufferSubDataARB, NULL, _gloffset_BufferSubDataARB),
-    NAME_FUNC_OFFSET(17859, glDeleteBuffersARB, glDeleteBuffersARB, NULL, _gloffset_DeleteBuffersARB),
-    NAME_FUNC_OFFSET(17875, glGenBuffersARB, glGenBuffersARB, NULL, _gloffset_GenBuffersARB),
-    NAME_FUNC_OFFSET(17888, glGetBufferParameterivARB, glGetBufferParameterivARB, NULL, _gloffset_GetBufferParameterivARB),
-    NAME_FUNC_OFFSET(17911, glGetBufferPointervARB, glGetBufferPointervARB, NULL, _gloffset_GetBufferPointervARB),
-    NAME_FUNC_OFFSET(17931, glGetBufferSubDataARB, glGetBufferSubDataARB, NULL, _gloffset_GetBufferSubDataARB),
-    NAME_FUNC_OFFSET(17950, glIsBufferARB, glIsBufferARB, NULL, _gloffset_IsBufferARB),
-    NAME_FUNC_OFFSET(17961, glMapBufferARB, glMapBufferARB, NULL, _gloffset_MapBufferARB),
-    NAME_FUNC_OFFSET(17973, glUnmapBufferARB, glUnmapBufferARB, NULL, _gloffset_UnmapBufferARB),
-    NAME_FUNC_OFFSET(17987, glBeginQueryARB, glBeginQueryARB, NULL, _gloffset_BeginQueryARB),
-    NAME_FUNC_OFFSET(18000, glDeleteQueriesARB, glDeleteQueriesARB, NULL, _gloffset_DeleteQueriesARB),
-    NAME_FUNC_OFFSET(18016, glEndQueryARB, glEndQueryARB, NULL, _gloffset_EndQueryARB),
-    NAME_FUNC_OFFSET(18027, glGenQueriesARB, glGenQueriesARB, NULL, _gloffset_GenQueriesARB),
-    NAME_FUNC_OFFSET(18040, glGetQueryObjectivARB, glGetQueryObjectivARB, NULL, _gloffset_GetQueryObjectivARB),
-    NAME_FUNC_OFFSET(18059, glGetQueryObjectuivARB, glGetQueryObjectuivARB, NULL, _gloffset_GetQueryObjectuivARB),
-    NAME_FUNC_OFFSET(18079, glGetQueryivARB, glGetQueryivARB, NULL, _gloffset_GetQueryivARB),
-    NAME_FUNC_OFFSET(18092, glIsQueryARB, glIsQueryARB, NULL, _gloffset_IsQueryARB),
-    NAME_FUNC_OFFSET(18102, glCompileShaderARB, glCompileShaderARB, NULL, _gloffset_CompileShaderARB),
-    NAME_FUNC_OFFSET(18118, glGetActiveUniformARB, glGetActiveUniformARB, NULL, _gloffset_GetActiveUniformARB),
-    NAME_FUNC_OFFSET(18137, glGetShaderSourceARB, glGetShaderSourceARB, NULL, _gloffset_GetShaderSourceARB),
-    NAME_FUNC_OFFSET(18155, glGetUniformLocationARB, glGetUniformLocationARB, NULL, _gloffset_GetUniformLocationARB),
-    NAME_FUNC_OFFSET(18176, glGetUniformfvARB, glGetUniformfvARB, NULL, _gloffset_GetUniformfvARB),
-    NAME_FUNC_OFFSET(18191, glGetUniformivARB, glGetUniformivARB, NULL, _gloffset_GetUniformivARB),
-    NAME_FUNC_OFFSET(18206, glLinkProgramARB, glLinkProgramARB, NULL, _gloffset_LinkProgramARB),
-    NAME_FUNC_OFFSET(18220, glShaderSourceARB, glShaderSourceARB, NULL, _gloffset_ShaderSourceARB),
-    NAME_FUNC_OFFSET(18235, glUniform1fARB, glUniform1fARB, NULL, _gloffset_Uniform1fARB),
-    NAME_FUNC_OFFSET(18247, glUniform1fvARB, glUniform1fvARB, NULL, _gloffset_Uniform1fvARB),
-    NAME_FUNC_OFFSET(18260, glUniform1iARB, glUniform1iARB, NULL, _gloffset_Uniform1iARB),
-    NAME_FUNC_OFFSET(18272, glUniform1ivARB, glUniform1ivARB, NULL, _gloffset_Uniform1ivARB),
-    NAME_FUNC_OFFSET(18285, glUniform2fARB, glUniform2fARB, NULL, _gloffset_Uniform2fARB),
-    NAME_FUNC_OFFSET(18297, glUniform2fvARB, glUniform2fvARB, NULL, _gloffset_Uniform2fvARB),
-    NAME_FUNC_OFFSET(18310, glUniform2iARB, glUniform2iARB, NULL, _gloffset_Uniform2iARB),
-    NAME_FUNC_OFFSET(18322, glUniform2ivARB, glUniform2ivARB, NULL, _gloffset_Uniform2ivARB),
-    NAME_FUNC_OFFSET(18335, glUniform3fARB, glUniform3fARB, NULL, _gloffset_Uniform3fARB),
-    NAME_FUNC_OFFSET(18347, glUniform3fvARB, glUniform3fvARB, NULL, _gloffset_Uniform3fvARB),
-    NAME_FUNC_OFFSET(18360, glUniform3iARB, glUniform3iARB, NULL, _gloffset_Uniform3iARB),
-    NAME_FUNC_OFFSET(18372, glUniform3ivARB, glUniform3ivARB, NULL, _gloffset_Uniform3ivARB),
-    NAME_FUNC_OFFSET(18385, glUniform4fARB, glUniform4fARB, NULL, _gloffset_Uniform4fARB),
-    NAME_FUNC_OFFSET(18397, glUniform4fvARB, glUniform4fvARB, NULL, _gloffset_Uniform4fvARB),
-    NAME_FUNC_OFFSET(18410, glUniform4iARB, glUniform4iARB, NULL, _gloffset_Uniform4iARB),
-    NAME_FUNC_OFFSET(18422, glUniform4ivARB, glUniform4ivARB, NULL, _gloffset_Uniform4ivARB),
-    NAME_FUNC_OFFSET(18435, glUniformMatrix2fvARB, glUniformMatrix2fvARB, NULL, _gloffset_UniformMatrix2fvARB),
-    NAME_FUNC_OFFSET(18454, glUniformMatrix3fvARB, glUniformMatrix3fvARB, NULL, _gloffset_UniformMatrix3fvARB),
-    NAME_FUNC_OFFSET(18473, glUniformMatrix4fvARB, glUniformMatrix4fvARB, NULL, _gloffset_UniformMatrix4fvARB),
-    NAME_FUNC_OFFSET(18492, glUseProgramObjectARB, glUseProgramObjectARB, NULL, _gloffset_UseProgramObjectARB),
-    NAME_FUNC_OFFSET(18505, glValidateProgramARB, glValidateProgramARB, NULL, _gloffset_ValidateProgramARB),
-    NAME_FUNC_OFFSET(18523, glBindAttribLocationARB, glBindAttribLocationARB, NULL, _gloffset_BindAttribLocationARB),
-    NAME_FUNC_OFFSET(18544, glGetActiveAttribARB, glGetActiveAttribARB, NULL, _gloffset_GetActiveAttribARB),
-    NAME_FUNC_OFFSET(18562, glGetAttribLocationARB, glGetAttribLocationARB, NULL, _gloffset_GetAttribLocationARB),
-    NAME_FUNC_OFFSET(18582, glDrawBuffersARB, glDrawBuffersARB, NULL, _gloffset_DrawBuffersARB),
-    NAME_FUNC_OFFSET(18596, glDrawBuffersARB, glDrawBuffersARB, NULL, _gloffset_DrawBuffersARB),
-    NAME_FUNC_OFFSET(18613, glRenderbufferStorageMultisample, glRenderbufferStorageMultisample, NULL, _gloffset_RenderbufferStorageMultisample),
-    NAME_FUNC_OFFSET(18649, gl_dispatch_stub_586, gl_dispatch_stub_586, NULL, _gloffset_SampleMaskSGIS),
-    NAME_FUNC_OFFSET(18665, gl_dispatch_stub_587, gl_dispatch_stub_587, NULL, _gloffset_SamplePatternSGIS),
-    NAME_FUNC_OFFSET(18684, glPointParameterfEXT, glPointParameterfEXT, NULL, _gloffset_PointParameterfEXT),
-    NAME_FUNC_OFFSET(18702, glPointParameterfEXT, glPointParameterfEXT, NULL, _gloffset_PointParameterfEXT),
-    NAME_FUNC_OFFSET(18723, glPointParameterfEXT, glPointParameterfEXT, NULL, _gloffset_PointParameterfEXT),
-    NAME_FUNC_OFFSET(18745, glPointParameterfvEXT, glPointParameterfvEXT, NULL, _gloffset_PointParameterfvEXT),
-    NAME_FUNC_OFFSET(18764, glPointParameterfvEXT, glPointParameterfvEXT, NULL, _gloffset_PointParameterfvEXT),
-    NAME_FUNC_OFFSET(18786, glPointParameterfvEXT, glPointParameterfvEXT, NULL, _gloffset_PointParameterfvEXT),
-    NAME_FUNC_OFFSET(18809, glSecondaryColor3bEXT, glSecondaryColor3bEXT, NULL, _gloffset_SecondaryColor3bEXT),
-    NAME_FUNC_OFFSET(18828, glSecondaryColor3bvEXT, glSecondaryColor3bvEXT, NULL, _gloffset_SecondaryColor3bvEXT),
-    NAME_FUNC_OFFSET(18848, glSecondaryColor3dEXT, glSecondaryColor3dEXT, NULL, _gloffset_SecondaryColor3dEXT),
-    NAME_FUNC_OFFSET(18867, glSecondaryColor3dvEXT, glSecondaryColor3dvEXT, NULL, _gloffset_SecondaryColor3dvEXT),
-    NAME_FUNC_OFFSET(18887, glSecondaryColor3fEXT, glSecondaryColor3fEXT, NULL, _gloffset_SecondaryColor3fEXT),
-    NAME_FUNC_OFFSET(18906, glSecondaryColor3fvEXT, glSecondaryColor3fvEXT, NULL, _gloffset_SecondaryColor3fvEXT),
-    NAME_FUNC_OFFSET(18926, glSecondaryColor3iEXT, glSecondaryColor3iEXT, NULL, _gloffset_SecondaryColor3iEXT),
-    NAME_FUNC_OFFSET(18945, glSecondaryColor3ivEXT, glSecondaryColor3ivEXT, NULL, _gloffset_SecondaryColor3ivEXT),
-    NAME_FUNC_OFFSET(18965, glSecondaryColor3sEXT, glSecondaryColor3sEXT, NULL, _gloffset_SecondaryColor3sEXT),
-    NAME_FUNC_OFFSET(18984, glSecondaryColor3svEXT, glSecondaryColor3svEXT, NULL, _gloffset_SecondaryColor3svEXT),
-    NAME_FUNC_OFFSET(19004, glSecondaryColor3ubEXT, glSecondaryColor3ubEXT, NULL, _gloffset_SecondaryColor3ubEXT),
-    NAME_FUNC_OFFSET(19024, glSecondaryColor3ubvEXT, glSecondaryColor3ubvEXT, NULL, _gloffset_SecondaryColor3ubvEXT),
-    NAME_FUNC_OFFSET(19045, glSecondaryColor3uiEXT, glSecondaryColor3uiEXT, NULL, _gloffset_SecondaryColor3uiEXT),
-    NAME_FUNC_OFFSET(19065, glSecondaryColor3uivEXT, glSecondaryColor3uivEXT, NULL, _gloffset_SecondaryColor3uivEXT),
-    NAME_FUNC_OFFSET(19086, glSecondaryColor3usEXT, glSecondaryColor3usEXT, NULL, _gloffset_SecondaryColor3usEXT),
-    NAME_FUNC_OFFSET(19106, glSecondaryColor3usvEXT, glSecondaryColor3usvEXT, NULL, _gloffset_SecondaryColor3usvEXT),
-    NAME_FUNC_OFFSET(19127, glSecondaryColorPointerEXT, glSecondaryColorPointerEXT, NULL, _gloffset_SecondaryColorPointerEXT),
-    NAME_FUNC_OFFSET(19151, glMultiDrawArraysEXT, glMultiDrawArraysEXT, NULL, _gloffset_MultiDrawArraysEXT),
-    NAME_FUNC_OFFSET(19169, glMultiDrawElementsEXT, glMultiDrawElementsEXT, NULL, _gloffset_MultiDrawElementsEXT),
-    NAME_FUNC_OFFSET(19189, glFogCoordPointerEXT, glFogCoordPointerEXT, NULL, _gloffset_FogCoordPointerEXT),
-    NAME_FUNC_OFFSET(19207, glFogCoorddEXT, glFogCoorddEXT, NULL, _gloffset_FogCoorddEXT),
-    NAME_FUNC_OFFSET(19219, glFogCoorddvEXT, glFogCoorddvEXT, NULL, _gloffset_FogCoorddvEXT),
-    NAME_FUNC_OFFSET(19232, glFogCoordfEXT, glFogCoordfEXT, NULL, _gloffset_FogCoordfEXT),
-    NAME_FUNC_OFFSET(19244, glFogCoordfvEXT, glFogCoordfvEXT, NULL, _gloffset_FogCoordfvEXT),
-    NAME_FUNC_OFFSET(19257, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, _gloffset_BlendFuncSeparateEXT),
-    NAME_FUNC_OFFSET(19277, glBlendFuncSeparateEXT, glBlendFuncSeparateEXT, NULL, _gloffset_BlendFuncSeparateEXT),
-    NAME_FUNC_OFFSET(19301, glWindowPos2dMESA, glWindowPos2dMESA, NULL, _gloffset_WindowPos2dMESA),
-    NAME_FUNC_OFFSET(19315, glWindowPos2dMESA, glWindowPos2dMESA, NULL, _gloffset_WindowPos2dMESA),
-    NAME_FUNC_OFFSET(19332, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, _gloffset_WindowPos2dvMESA),
-    NAME_FUNC_OFFSET(19347, glWindowPos2dvMESA, glWindowPos2dvMESA, NULL, _gloffset_WindowPos2dvMESA),
-    NAME_FUNC_OFFSET(19365, glWindowPos2fMESA, glWindowPos2fMESA, NULL, _gloffset_WindowPos2fMESA),
-    NAME_FUNC_OFFSET(19379, glWindowPos2fMESA, glWindowPos2fMESA, NULL, _gloffset_WindowPos2fMESA),
-    NAME_FUNC_OFFSET(19396, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, _gloffset_WindowPos2fvMESA),
-    NAME_FUNC_OFFSET(19411, glWindowPos2fvMESA, glWindowPos2fvMESA, NULL, _gloffset_WindowPos2fvMESA),
-    NAME_FUNC_OFFSET(19429, glWindowPos2iMESA, glWindowPos2iMESA, NULL, _gloffset_WindowPos2iMESA),
-    NAME_FUNC_OFFSET(19443, glWindowPos2iMESA, glWindowPos2iMESA, NULL, _gloffset_WindowPos2iMESA),
-    NAME_FUNC_OFFSET(19460, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, _gloffset_WindowPos2ivMESA),
-    NAME_FUNC_OFFSET(19475, glWindowPos2ivMESA, glWindowPos2ivMESA, NULL, _gloffset_WindowPos2ivMESA),
-    NAME_FUNC_OFFSET(19493, glWindowPos2sMESA, glWindowPos2sMESA, NULL, _gloffset_WindowPos2sMESA),
-    NAME_FUNC_OFFSET(19507, glWindowPos2sMESA, glWindowPos2sMESA, NULL, _gloffset_WindowPos2sMESA),
-    NAME_FUNC_OFFSET(19524, glWindowPos2svMESA, glWindowPos2svMESA, NULL, _gloffset_WindowPos2svMESA),
-    NAME_FUNC_OFFSET(19539, glWindowPos2svMESA, glWindowPos2svMESA, NULL, _gloffset_WindowPos2svMESA),
-    NAME_FUNC_OFFSET(19557, glWindowPos3dMESA, glWindowPos3dMESA, NULL, _gloffset_WindowPos3dMESA),
-    NAME_FUNC_OFFSET(19571, glWindowPos3dMESA, glWindowPos3dMESA, NULL, _gloffset_WindowPos3dMESA),
-    NAME_FUNC_OFFSET(19588, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, _gloffset_WindowPos3dvMESA),
-    NAME_FUNC_OFFSET(19603, glWindowPos3dvMESA, glWindowPos3dvMESA, NULL, _gloffset_WindowPos3dvMESA),
-    NAME_FUNC_OFFSET(19621, glWindowPos3fMESA, glWindowPos3fMESA, NULL, _gloffset_WindowPos3fMESA),
-    NAME_FUNC_OFFSET(19635, glWindowPos3fMESA, glWindowPos3fMESA, NULL, _gloffset_WindowPos3fMESA),
-    NAME_FUNC_OFFSET(19652, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, _gloffset_WindowPos3fvMESA),
-    NAME_FUNC_OFFSET(19667, glWindowPos3fvMESA, glWindowPos3fvMESA, NULL, _gloffset_WindowPos3fvMESA),
-    NAME_FUNC_OFFSET(19685, glWindowPos3iMESA, glWindowPos3iMESA, NULL, _gloffset_WindowPos3iMESA),
-    NAME_FUNC_OFFSET(19699, glWindowPos3iMESA, glWindowPos3iMESA, NULL, _gloffset_WindowPos3iMESA),
-    NAME_FUNC_OFFSET(19716, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, _gloffset_WindowPos3ivMESA),
-    NAME_FUNC_OFFSET(19731, glWindowPos3ivMESA, glWindowPos3ivMESA, NULL, _gloffset_WindowPos3ivMESA),
-    NAME_FUNC_OFFSET(19749, glWindowPos3sMESA, glWindowPos3sMESA, NULL, _gloffset_WindowPos3sMESA),
-    NAME_FUNC_OFFSET(19763, glWindowPos3sMESA, glWindowPos3sMESA, NULL, _gloffset_WindowPos3sMESA),
-    NAME_FUNC_OFFSET(19780, glWindowPos3svMESA, glWindowPos3svMESA, NULL, _gloffset_WindowPos3svMESA),
-    NAME_FUNC_OFFSET(19795, glWindowPos3svMESA, glWindowPos3svMESA, NULL, _gloffset_WindowPos3svMESA),
-    NAME_FUNC_OFFSET(19813, glBindProgramNV, glBindProgramNV, NULL, _gloffset_BindProgramNV),
-    NAME_FUNC_OFFSET(19830, glDeleteProgramsNV, glDeleteProgramsNV, NULL, _gloffset_DeleteProgramsNV),
-    NAME_FUNC_OFFSET(19850, glGenProgramsNV, glGenProgramsNV, NULL, _gloffset_GenProgramsNV),
-    NAME_FUNC_OFFSET(19867, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, _gloffset_GetVertexAttribPointervNV),
-    NAME_FUNC_OFFSET(19893, glGetVertexAttribPointervNV, glGetVertexAttribPointervNV, NULL, _gloffset_GetVertexAttribPointervNV),
-    NAME_FUNC_OFFSET(19922, glIsProgramNV, glIsProgramNV, NULL, _gloffset_IsProgramNV),
-    NAME_FUNC_OFFSET(19937, glPointParameteriNV, glPointParameteriNV, NULL, _gloffset_PointParameteriNV),
-    NAME_FUNC_OFFSET(19955, glPointParameterivNV, glPointParameterivNV, NULL, _gloffset_PointParameterivNV),
-    NAME_FUNC_OFFSET(19974, gl_dispatch_stub_757, gl_dispatch_stub_757, NULL, _gloffset_DeleteVertexArraysAPPLE),
-    NAME_FUNC_OFFSET(19995, gl_dispatch_stub_759, gl_dispatch_stub_759, NULL, _gloffset_IsVertexArrayAPPLE),
-    NAME_FUNC_OFFSET(20011, gl_dispatch_stub_767, gl_dispatch_stub_767, NULL, _gloffset_BlendEquationSeparateEXT),
-    NAME_FUNC_OFFSET(20035, gl_dispatch_stub_767, gl_dispatch_stub_767, NULL, _gloffset_BlendEquationSeparateEXT),
-    NAME_FUNC_OFFSET(20062, glBindFramebufferEXT, glBindFramebufferEXT, NULL, _gloffset_BindFramebufferEXT),
-    NAME_FUNC_OFFSET(20080, glBindRenderbufferEXT, glBindRenderbufferEXT, NULL, _gloffset_BindRenderbufferEXT),
-    NAME_FUNC_OFFSET(20099, glCheckFramebufferStatusEXT, glCheckFramebufferStatusEXT, NULL, _gloffset_CheckFramebufferStatusEXT),
-    NAME_FUNC_OFFSET(20124, glDeleteFramebuffersEXT, glDeleteFramebuffersEXT, NULL, _gloffset_DeleteFramebuffersEXT),
-    NAME_FUNC_OFFSET(20145, glDeleteRenderbuffersEXT, glDeleteRenderbuffersEXT, NULL, _gloffset_DeleteRenderbuffersEXT),
-    NAME_FUNC_OFFSET(20167, glFramebufferRenderbufferEXT, glFramebufferRenderbufferEXT, NULL, _gloffset_FramebufferRenderbufferEXT),
-    NAME_FUNC_OFFSET(20193, glFramebufferTexture1DEXT, glFramebufferTexture1DEXT, NULL, _gloffset_FramebufferTexture1DEXT),
-    NAME_FUNC_OFFSET(20216, glFramebufferTexture2DEXT, glFramebufferTexture2DEXT, NULL, _gloffset_FramebufferTexture2DEXT),
-    NAME_FUNC_OFFSET(20239, glFramebufferTexture3DEXT, glFramebufferTexture3DEXT, NULL, _gloffset_FramebufferTexture3DEXT),
-    NAME_FUNC_OFFSET(20262, glGenFramebuffersEXT, glGenFramebuffersEXT, NULL, _gloffset_GenFramebuffersEXT),
-    NAME_FUNC_OFFSET(20280, glGenRenderbuffersEXT, glGenRenderbuffersEXT, NULL, _gloffset_GenRenderbuffersEXT),
-    NAME_FUNC_OFFSET(20299, glGenerateMipmapEXT, glGenerateMipmapEXT, NULL, _gloffset_GenerateMipmapEXT),
-    NAME_FUNC_OFFSET(20316, glGetFramebufferAttachmentParameterivEXT, glGetFramebufferAttachmentParameterivEXT, NULL, _gloffset_GetFramebufferAttachmentParameterivEXT),
-    NAME_FUNC_OFFSET(20354, glGetRenderbufferParameterivEXT, glGetRenderbufferParameterivEXT, NULL, _gloffset_GetRenderbufferParameterivEXT),
-    NAME_FUNC_OFFSET(20383, glIsFramebufferEXT, glIsFramebufferEXT, NULL, _gloffset_IsFramebufferEXT),
-    NAME_FUNC_OFFSET(20399, glIsRenderbufferEXT, glIsRenderbufferEXT, NULL, _gloffset_IsRenderbufferEXT),
-    NAME_FUNC_OFFSET(20416, glRenderbufferStorageEXT, glRenderbufferStorageEXT, NULL, _gloffset_RenderbufferStorageEXT),
-    NAME_FUNC_OFFSET(20438, gl_dispatch_stub_785, gl_dispatch_stub_785, NULL, _gloffset_BlitFramebufferEXT),
-    NAME_FUNC_OFFSET(20456, glFramebufferTextureLayerEXT, glFramebufferTextureLayerEXT, NULL, _gloffset_FramebufferTextureLayerEXT),
-    NAME_FUNC_OFFSET(20482, glBeginTransformFeedbackEXT, glBeginTransformFeedbackEXT, NULL, _gloffset_BeginTransformFeedbackEXT),
-    NAME_FUNC_OFFSET(20507, glBindBufferBaseEXT, glBindBufferBaseEXT, NULL, _gloffset_BindBufferBaseEXT),
-    NAME_FUNC_OFFSET(20524, glBindBufferRangeEXT, glBindBufferRangeEXT, NULL, _gloffset_BindBufferRangeEXT),
-    NAME_FUNC_OFFSET(20542, glEndTransformFeedbackEXT, glEndTransformFeedbackEXT, NULL, _gloffset_EndTransformFeedbackEXT),
-    NAME_FUNC_OFFSET(20565, glGetTransformFeedbackVaryingEXT, glGetTransformFeedbackVaryingEXT, NULL, _gloffset_GetTransformFeedbackVaryingEXT),
-    NAME_FUNC_OFFSET(20595, glTransformFeedbackVaryingsEXT, glTransformFeedbackVaryingsEXT, NULL, _gloffset_TransformFeedbackVaryingsEXT),
-    NAME_FUNC_OFFSET(20623, glProvokingVertexEXT, glProvokingVertexEXT, NULL, _gloffset_ProvokingVertexEXT),
-    NAME_FUNC_OFFSET(-1, NULL, NULL, NULL, 0)
-};
-
-#undef NAME_FUNC_OFFSET
diff --git a/src/mesa/glapi/glthread.c b/src/mesa/glapi/glthread.c
deleted file mode 100644 (file)
index f365d17..0000000
+++ /dev/null
@@ -1,263 +0,0 @@
-/*
- * Mesa 3-D graphics library
- * Version:  6.5.1
- *
- * Copyright (C) 1999-2006  Brian Paul   All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-/*
- * XXX There's probably some work to do in order to make this file
- * truly reusable outside of Mesa.  First, the glheader.h include must go.
- */
-
-#ifdef HAVE_DIX_CONFIG_H
-#include <dix-config.h>
-#include "glapi/mesa.h"
-#else
-#include "main/compiler.h"
-#endif
-
-#include "glapi/glthread.h"
-
-
-/*
- * This file should still compile even when THREADS is not defined.
- * This is to make things easier to deal with on the makefile scene..
- */
-#ifdef THREADS
-#include <errno.h>
-
-/*
- * Error messages
- */
-#define INIT_TSD_ERROR "_glthread_: failed to allocate key for thread specific data"
-#define GET_TSD_ERROR "_glthread_: failed to get thread specific data"
-#define SET_TSD_ERROR "_glthread_: thread failed to set thread specific data"
-
-
-/*
- * Magic number to determine if a TSD object has been initialized.
- * Kind of a hack but there doesn't appear to be a better cross-platform
- * solution.
- */
-#define INIT_MAGIC 0xff8adc98
-
-
-
-/*
- * POSIX Threads -- The best way to go if your platform supports them.
- *                  Solaris >= 2.5 have POSIX threads, IRIX >= 6.4 reportedly
- *                  has them, and many of the free Unixes now have them.
- *                  Be sure to use appropriate -mt or -D_REENTRANT type
- *                  compile flags when building.
- */
-#ifdef PTHREADS
-
-PUBLIC unsigned long
-_glthread_GetID(void)
-{
-   return (unsigned long) pthread_self();
-}
-
-
-void
-_glthread_InitTSD(_glthread_TSD *tsd)
-{
-   if (pthread_key_create(&tsd->key, NULL/*free*/) != 0) {
-      perror(INIT_TSD_ERROR);
-      exit(-1);
-   }
-   tsd->initMagic = INIT_MAGIC;
-}
-
-
-void *
-_glthread_GetTSD(_glthread_TSD *tsd)
-{
-   if (tsd->initMagic != (int) INIT_MAGIC) {
-      _glthread_InitTSD(tsd);
-   }
-   return pthread_getspecific(tsd->key);
-}
-
-
-void
-_glthread_SetTSD(_glthread_TSD *tsd, void *ptr)
-{
-   if (tsd->initMagic != (int) INIT_MAGIC) {
-      _glthread_InitTSD(tsd);
-   }
-   if (pthread_setspecific(tsd->key, ptr) != 0) {
-      perror(SET_TSD_ERROR);
-      exit(-1);
-   }
-}
-
-#endif /* PTHREADS */
-
-
-
-/*
- * Win32 Threads.  The only available option for Windows 95/NT.
- * Be sure that you compile using the Multithreaded runtime, otherwise
- * bad things will happen.
- */
-#ifdef WIN32_THREADS
-
-static void InsteadOf_exit(int nCode)
-{
-   DWORD dwErr = GetLastError();
-}
-
-PUBLIC unsigned long
-_glthread_GetID(void)
-{
-   return GetCurrentThreadId();
-}
-
-
-void
-_glthread_InitTSD(_glthread_TSD *tsd)
-{
-   tsd->key = TlsAlloc();
-   if (tsd->key == TLS_OUT_OF_INDEXES) {
-      perror(INIT_TSD_ERROR);
-      InsteadOf_exit(-1);
-   }
-   tsd->initMagic = INIT_MAGIC;
-}
-
-
-void
-_glthread_DestroyTSD(_glthread_TSD *tsd)
-{
-   if (tsd->initMagic != INIT_MAGIC) {
-      return;
-   }
-   TlsFree(tsd->key);
-   tsd->initMagic = 0x0;
-}
-
-
-void *
-_glthread_GetTSD(_glthread_TSD *tsd)
-{
-   if (tsd->initMagic != INIT_MAGIC) {
-      _glthread_InitTSD(tsd);
-   }
-   return TlsGetValue(tsd->key);
-}
-
-
-void
-_glthread_SetTSD(_glthread_TSD *tsd, void *ptr)
-{
-   /* the following code assumes that the _glthread_TSD has been initialized
-      to zero at creation */
-   if (tsd->initMagic != INIT_MAGIC) {
-      _glthread_InitTSD(tsd);
-   }
-   if (TlsSetValue(tsd->key, ptr) == 0) {
-      perror(SET_TSD_ERROR);
-      InsteadOf_exit(-1);
-   }
-}
-
-#endif /* WIN32_THREADS */
-
-/*
- * BeOS threads
- */
-#ifdef BEOS_THREADS
-
-PUBLIC unsigned long
-_glthread_GetID(void)
-{
-   return (unsigned long) find_thread(NULL);
-}
-
-void
-_glthread_InitTSD(_glthread_TSD *tsd)
-{
-   tsd->key = tls_allocate();
-   tsd->initMagic = INIT_MAGIC;
-}
-
-void *
-_glthread_GetTSD(_glthread_TSD *tsd)
-{
-   if (tsd->initMagic != (int) INIT_MAGIC) {
-      _glthread_InitTSD(tsd);
-   }
-   return tls_get(tsd->key);
-}
-
-void
-_glthread_SetTSD(_glthread_TSD *tsd, void *ptr)
-{
-   if (tsd->initMagic != (int) INIT_MAGIC) {
-      _glthread_InitTSD(tsd);
-   }
-   tls_set(tsd->key, ptr);
-}
-
-#endif /* BEOS_THREADS */
-
-
-
-#else  /* THREADS */
-
-
-/*
- * no-op functions
- */
-
-PUBLIC unsigned long
-_glthread_GetID(void)
-{
-   return 0;
-}
-
-
-void
-_glthread_InitTSD(_glthread_TSD *tsd)
-{
-   (void) tsd;
-}
-
-
-void *
-_glthread_GetTSD(_glthread_TSD *tsd)
-{
-   (void) tsd;
-   return NULL;
-}
-
-
-void
-_glthread_SetTSD(_glthread_TSD *tsd, void *ptr)
-{
-   (void) tsd;
-   (void) ptr;
-}
-
-
-#endif /* THREADS */
diff --git a/src/mesa/glapi/glthread.h b/src/mesa/glapi/glthread.h
deleted file mode 100644 (file)
index 4fe9928..0000000
+++ /dev/null
@@ -1,255 +0,0 @@
-/*
- * Mesa 3-D graphics library
- * Version:  6.5.2
- *
- * Copyright (C) 1999-2006  Brian Paul   All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- */
-
-
-/*
- * Thread support for gl dispatch.
- *
- * Initial version by John Stone (j.stone@acm.org) (johns@cs.umr.edu)
- *                and Christoph Poliwoda (poliwoda@volumegraphics.com)
- * Revised by Keith Whitwell
- * Adapted for new gl dispatcher by Brian Paul
- *
- *
- *
- * DOCUMENTATION
- *
- * This thread module exports the following types:
- *   _glthread_TSD     Thread-specific data area
- *   _glthread_Thread  Thread datatype
- *   _glthread_Mutex   Mutual exclusion lock
- *
- * Macros:
- *   _glthread_DECLARE_STATIC_MUTEX(name)   Declare a non-local mutex
- *   _glthread_INIT_MUTEX(name)             Initialize a mutex
- *   _glthread_LOCK_MUTEX(name)             Lock a mutex
- *   _glthread_UNLOCK_MUTEX(name)           Unlock a mutex
- *
- * Functions:
- *   _glthread_GetID(v)      Get integer thread ID
- *   _glthread_InitTSD()     Initialize thread-specific data
- *   _glthread_GetTSD()      Get thread-specific data
- *   _glthread_SetTSD()      Set thread-specific data
- *
- */
-
-/*
- * If this file is accidentally included by a non-threaded build,
- * it should not cause the build to fail, or otherwise cause problems.
- * In general, it should only be included when needed however.
- */
-
-#ifndef GLTHREAD_H
-#define GLTHREAD_H
-
-
-#if defined(PTHREADS) || defined(WIN32_THREADS) || defined(BEOS_THREADS)
-#ifndef THREADS
-#define THREADS
-#endif
-#endif
-
-
-/*
- * POSIX threads. This should be your choice in the Unix world
- * whenever possible.  When building with POSIX threads, be sure
- * to enable any compiler flags which will cause the MT-safe
- * libc (if one exists) to be used when linking, as well as any
- * header macros for MT-safe errno, etc.  For Solaris, this is the -mt
- * compiler flag.  On Solaris with gcc, use -D_REENTRANT to enable
- * proper compiling for MT-safe libc etc.
- */
-#if defined(PTHREADS)
-#include <pthread.h> /* POSIX threads headers */
-
-typedef struct {
-   pthread_key_t  key;
-   int initMagic;
-} _glthread_TSD;
-
-typedef pthread_t _glthread_Thread;
-
-typedef pthread_mutex_t _glthread_Mutex;
-
-#define _glthread_DECLARE_STATIC_MUTEX(name) \
-   static _glthread_Mutex name = PTHREAD_MUTEX_INITIALIZER
-
-#define _glthread_INIT_MUTEX(name) \
-   pthread_mutex_init(&(name), NULL)
-
-#define _glthread_DESTROY_MUTEX(name) \
-   pthread_mutex_destroy(&(name))
-
-#define _glthread_LOCK_MUTEX(name) \
-   (void) pthread_mutex_lock(&(name))
-
-#define _glthread_UNLOCK_MUTEX(name) \
-   (void) pthread_mutex_unlock(&(name))
-
-#endif /* PTHREADS */
-
-
-/*
- * Windows threads. Should work with Windows NT and 95.
- * IMPORTANT: Link with multithreaded runtime library when THREADS are
- * used!
- */
-#ifdef WIN32_THREADS
-#include <windows.h>
-
-typedef struct {
-   DWORD key;
-   int   initMagic;
-} _glthread_TSD;
-
-typedef HANDLE _glthread_Thread;
-
-typedef CRITICAL_SECTION _glthread_Mutex;
-
-#define _glthread_DECLARE_STATIC_MUTEX(name) \
-   /* static */ _glthread_Mutex name = { 0, 0, 0, 0, 0, 0 }
-
-#define _glthread_INIT_MUTEX(name) \
-   InitializeCriticalSection(&name)
-
-#define _glthread_DESTROY_MUTEX(name) \
-   DeleteCriticalSection(&name)
-
-#define _glthread_LOCK_MUTEX(name) \
-   EnterCriticalSection(&name)
-
-#define _glthread_UNLOCK_MUTEX(name) \
-   LeaveCriticalSection(&name)
-
-#endif /* WIN32_THREADS */
-
-
-/*
- * BeOS threads. R5.x required.
- */
-#ifdef BEOS_THREADS
-
-/* Problem with OS.h and this file on haiku */
-#ifndef __HAIKU__
-#include <kernel/OS.h>
-#endif
-
-#include <support/TLS.h>
-
-/* The only two typedefs required here
- * this is cause of the OS.h problem
- */
-#ifdef __HAIKU__
-typedef int32 thread_id;
-typedef int32 sem_id;
-#endif
-
-typedef struct {
-   int32        key;
-   int          initMagic;
-} _glthread_TSD;
-
-typedef thread_id _glthread_Thread;
-
-/* Use Benaphore, aka speeder semaphore */
-typedef struct {
-    int32   lock;
-    sem_id  sem;
-} benaphore;
-typedef benaphore _glthread_Mutex;
-
-#define _glthread_DECLARE_STATIC_MUTEX(name) \
-   static _glthread_Mutex name = { 0, 0 }
-
-#define _glthread_INIT_MUTEX(name) \
-   name.sem = create_sem(0, #name"_benaphore"), \
-   name.lock = 0
-
-#define _glthread_DESTROY_MUTEX(name) \
-   delete_sem(name.sem), \
-   name.lock = 0
-
-#define _glthread_LOCK_MUTEX(name) \
-   if (name.sem == 0) \
-      _glthread_INIT_MUTEX(name); \
-   if (atomic_add(&(name.lock), 1) >= 1) \
-      acquire_sem(name.sem)
-
-#define _glthread_UNLOCK_MUTEX(name) \
-   if (atomic_add(&(name.lock), -1) > 1) \
-      release_sem(name.sem)
-
-#endif /* BEOS_THREADS */
-
-
-/*
- * THREADS not defined
- */
-#ifndef THREADS
-
-typedef unsigned _glthread_TSD;
-
-typedef unsigned _glthread_Thread;
-
-typedef unsigned _glthread_Mutex;
-
-#define _glthread_DECLARE_STATIC_MUTEX(name)  static _glthread_Mutex name = 0
-
-#define _glthread_INIT_MUTEX(name)  (void) name
-
-#define _glthread_DESTROY_MUTEX(name)  (void) name
-
-#define _glthread_LOCK_MUTEX(name)  (void) name
-
-#define _glthread_UNLOCK_MUTEX(name)  (void) name
-
-#endif /* THREADS */
-
-
-
-/*
- * Platform independent thread specific data API.
- */
-
-extern unsigned long
-_glthread_GetID(void);
-
-
-extern void
-_glthread_InitTSD(_glthread_TSD *);
-
-
-extern void
-_glthread_DestroyTSD(_glthread_TSD *); /* WIN32 only */
-
-
-extern void *
-_glthread_GetTSD(_glthread_TSD *);
-
-
-extern void
-_glthread_SetTSD(_glthread_TSD *, void *);
-
-
-#endif /* THREADS_H */
index 12f03a5c2297d9d426f3c5d23c4d463252e21d27..a3e089ed58e4cc7c65784968f44850851b2312aa 100644 (file)
@@ -218,9 +218,9 @@ extern void _mesa_error(void *ctx, GLenum error, const char *fmtString, ... );
 #ifdef IN_DRI_DRIVER
 #define _GLAPI_USE_REMAP_TABLE
 #endif
-#include "es/glapi/glapi-%s/glapi/glapitable.h"
-#include "es/glapi/glapi-%s/glapi/glapioffsets.h"
-#include "es/glapi/glapi-%s/glapi/glapidispatch.h"
+#include "%sapi/glapi/glapitable.h"
+#include "%sapi/glapi/glapioffsets.h"
+#include "%sapi/glapi/glapidispatch.h"
 
 #if FEATURE_remap_table
 
@@ -230,7 +230,7 @@ int driDispatchRemapTable[driDispatchRemapTable_size];
 
 #define need_MESA_remap_table
 
-#include "es/glapi/glapi-%s/main/remap_helper.h"
+#include "%sapi/main/remap_helper.h"
 
 void
 _mesa_init_remap_table_%s(void)
index 9ac850ecf81e512c8af6e77095324e10ff2b97de..55523fad1d31c42d4140b2b8e34393d6498109b1 100644 (file)
@@ -96,15 +96,6 @@ MAIN_SOURCES = \
        main/vtxfmt.c \
        $(MAIN_ES_SOURCES)
 
-GLAPI_SOURCES = \
-       glapi/glapi.c \
-       glapi/glapi_dispatch.c \
-       glapi/glapi_entrypoint.c \
-       glapi/glapi_execmem.c \
-       glapi/glapi_getproc.c \
-       glapi/glapi_nop.c \
-       glapi/glthread.c
-
 MATH_SOURCES = \
        math/m_debug_clip.c \
        math/m_debug_norm.c \
@@ -307,23 +298,14 @@ X86_SOURCES =                     \
        x86/sse_normal.S        \
        x86/read_rgba_span_x86.S
 
-X86_API =                      \
-       glapi/glapi_x86.S
-
 X86-64_SOURCES =               \
        x86-64/xform4.S
 
-X86-64_API =                   \
-       glapi/glapi_x86-64.S
-
 SPARC_SOURCES =                        \
        sparc/clip.S            \
        sparc/norm.S            \
        sparc/xform.S
 
-SPARC_API =                    \
-       glapi/glapi_sparc.S
-
 COMMON_DRIVER_SOURCES =                        \
        drivers/common/driverfuncs.c    \
        drivers/common/meta.c
@@ -357,7 +339,6 @@ MESA_GALLIUM_SOURCES = \
 # All the core C sources, for dependency checking
 ALL_SOURCES = \
        $(MESA_SOURCES)         \
-       $(GLAPI_SOURCES)        \
        $(MESA_ASM_SOURCES)     \
        $(STATETRACKER_SOURCES)
 
@@ -372,10 +353,6 @@ MESA_GALLIUM_OBJECTS = \
        $(MESA_GALLIUM_SOURCES:.c=.o) \
        $(MESA_ASM_SOURCES:.S=.o)
 
-GLAPI_OBJECTS = \
-       $(GLAPI_SOURCES:.c=.o) \
-       $(GLAPI_ASM_SOURCES:.S=.o)
-
 
 COMMON_DRIVER_OBJECTS = $(COMMON_DRIVER_SOURCES:.c=.o)
 
@@ -392,5 +369,6 @@ GLSL_LIBS = \
 INCLUDE_DIRS = \
        -I$(TOP)/include \
        -I$(TOP)/src/mesa \
+       -I$(TOP)/src/mapi \
        -I$(TOP)/src/gallium/include \
        -I$(TOP)/src/gallium/auxiliary
index 9c3e9d2adf81f032844df77cf0faecc8f170eeff..2fd3e5f04a9d8ed4cf5b819d7a14ebff8152b3f1 100644 (file)
@@ -12,7 +12,6 @@ INCLUDE_DIRS = \
        -I.. \
        -I../main \
        -I../math \
-       -I../glapi \
        -I../tnl
 
 
index 69122c114b0cbdafb6cdc3199fc78b2256c5ca4b..9716dc27f9779cf7fd1906c7d1c04af90da5f6c0 100644 (file)
@@ -7,10 +7,10 @@ include $(TOP)/configs/current
 INCLUDE_DIRS = \
        -I$(TOP)/include/GL \
        -I$(TOP)/include \
+       -I$(TOP)/src/mapi \
        -I.. \
        -I../main \
        -I../math \
-       -I../glapi \
        -I../tnl