glapi: Store list of functions with static dispatch in a separate table
authorIan Romanick <ian.d.romanick@intel.com>
Tue, 12 May 2015 22:11:09 +0000 (15:11 -0700)
committerIan Romanick <ian.d.romanick@intel.com>
Sat, 16 May 2015 03:22:32 +0000 (20:22 -0700)
The set of functions with static dispatch is (supposed to be) defined by
the Linux OpenGL ABI.  We export quite a few more functions than that
for historical reasons.  However, this list should never grow.

This table is used instead of the static_dispatch tag in the XML to
generate the static dispatch functions.  I used

    nm libGL.so | grep ' T gl[^X]' | sed 's/.* T //'

before and after the change.  diff showed no differences.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Dylan Baker <baker.dylan.c@gmail.com>
src/mapi/glapi/gen/gl_XML.py
src/mapi/glapi/gen/static_data.py

index 0695f845e4f609e6e7d662e093a5d75266590fd7..89b09f250dcf3df9057cdfc9ef118caf6c639946 100644 (file)
@@ -650,7 +650,7 @@ class gl_function( gl_item ):
         name = element.get( "name" )
         alias = element.get( "alias" )
 
-        if is_attr_true(element, "static_dispatch", "true"):
+        if name in static_data.functions:
             self.static_entry_points.append(name)
 
         self.entry_points.append( name )
index 2ce093c2af6b6f677cf7bf9ae029639153b3edc5..a1983ffcf35df9a2ce3fdf4e8c3e7cd2f54ac60a 100644 (file)
@@ -434,3 +434,1522 @@ offsets = {
     "MultiTexCoord4s": 406,
     "MultiTexCoord4sv": 407
 }
+
+functions = [
+   "Accum",
+   "ActiveProgramEXT",
+   "ActiveTexture",
+   "ActiveTextureARB",
+   "AlphaFragmentOp1ATI",
+   "AlphaFragmentOp2ATI",
+   "AlphaFragmentOp3ATI",
+   "AlphaFunc",
+   "AlphaFuncx",
+   "AreProgramsResidentNV",
+   "AreTexturesResident",
+   "AreTexturesResidentEXT",
+   "ArrayElement",
+   "ArrayElementEXT",
+   "AttachObjectARB",
+   "AttachShader",
+   "Begin",
+   "BeginConditionalRender",
+   "BeginConditionalRenderNV",
+   "BeginFragmentShaderATI",
+   "BeginPerfMonitorAMD",
+   "BeginQuery",
+   "BeginQueryARB",
+   "BeginQueryIndexed",
+   "BeginTransformFeedback",
+   "BeginTransformFeedbackEXT",
+   "BindAttribLocation",
+   "BindAttribLocationARB",
+   "BindBuffer",
+   "BindBufferARB",
+   "BindBufferBase",
+   "BindBufferBaseEXT",
+   "BindBufferOffsetEXT",
+   "BindBufferRange",
+   "BindBufferRangeEXT",
+   "BindBuffersBase",
+   "BindBuffersRange",
+   "BindFragDataLocation",
+   "BindFragDataLocationEXT",
+   "BindFragDataLocationIndexed",
+   "BindFragmentShaderATI",
+   "BindFramebuffer",
+   "BindFramebufferEXT",
+   "BindImageTexture",
+   "BindImageTextures",
+   "BindProgramARB",
+   "BindProgramNV",
+   "BindRenderbuffer",
+   "BindRenderbufferEXT",
+   "BindSampler",
+   "BindSamplers",
+   "BindTexture",
+   "BindTextureEXT",
+   "BindTextures",
+   "BindTextureUnit",
+   "BindTransformFeedback",
+   "BindVertexArray",
+   "BindVertexBuffer",
+   "BindVertexBuffers",
+   "Bitmap",
+   "BlendColor",
+   "BlendColorEXT",
+   "BlendEquation",
+   "BlendEquationEXT",
+   "BlendEquationiARB",
+   "BlendEquationIndexedAMD",
+   "BlendEquationSeparate",
+   "BlendEquationSeparateiARB",
+   "BlendEquationSeparateIndexedAMD",
+   "BlendFunc",
+   "BlendFunciARB",
+   "BlendFuncIndexedAMD",
+   "BlendFuncSeparate",
+   "BlendFuncSeparateEXT",
+   "BlendFuncSeparateiARB",
+   "BlendFuncSeparateIndexedAMD",
+   "BlitFramebuffer",
+   "BufferData",
+   "BufferDataARB",
+   "BufferStorage",
+   "BufferSubData",
+   "BufferSubDataARB",
+   "CallList",
+   "CallLists",
+   "CheckFramebufferStatus",
+   "CheckFramebufferStatusEXT",
+   "ClampColor",
+   "ClampColorARB",
+   "Clear",
+   "ClearAccum",
+   "ClearBufferData",
+   "ClearBufferfi",
+   "ClearBufferfv",
+   "ClearBufferiv",
+   "ClearBufferSubData",
+   "ClearBufferuiv",
+   "ClearColor",
+   "ClearColorIiEXT",
+   "ClearColorIuiEXT",
+   "ClearColorx",
+   "ClearDepth",
+   "ClearDepthf",
+   "ClearDepthx",
+   "ClearIndex",
+   "ClearNamedBufferData",
+   "ClearNamedBufferSubData",
+   "ClearStencil",
+   "ClearTexImage",
+   "ClearTexSubImage",
+   "ClientActiveTexture",
+   "ClientActiveTextureARB",
+   "ClientWaitSync",
+   "ClipControl",
+   "ClipPlane",
+   "ClipPlanef",
+   "ClipPlanex",
+   "Color3b",
+   "Color3bv",
+   "Color3d",
+   "Color3dv",
+   "Color3f",
+   "Color3fv",
+   "Color3i",
+   "Color3iv",
+   "Color3s",
+   "Color3sv",
+   "Color3ub",
+   "Color3ubv",
+   "Color3ui",
+   "Color3uiv",
+   "Color3us",
+   "Color3usv",
+   "Color4b",
+   "Color4bv",
+   "Color4d",
+   "Color4dv",
+   "Color4f",
+   "Color4fv",
+   "Color4i",
+   "Color4iv",
+   "Color4s",
+   "Color4sv",
+   "Color4ub",
+   "Color4ubv",
+   "Color4ui",
+   "Color4uiv",
+   "Color4us",
+   "Color4usv",
+   "Color4x",
+   "ColorFragmentOp1ATI",
+   "ColorFragmentOp2ATI",
+   "ColorFragmentOp3ATI",
+   "ColorMask",
+   "ColorMaski",
+   "ColorMaskIndexedEXT",
+   "ColorMaterial",
+   "ColorP3ui",
+   "ColorP3uiv",
+   "ColorP4ui",
+   "ColorP4uiv",
+   "ColorPointer",
+   "ColorPointerEXT",
+   "ColorSubTable",
+   "ColorTable",
+   "ColorTableEXT",
+   "ColorTableParameterfv",
+   "ColorTableParameteriv",
+   "CompileShader",
+   "CompileShaderARB",
+   "CompressedTexImage1D",
+   "CompressedTexImage1DARB",
+   "CompressedTexImage2D",
+   "CompressedTexImage2DARB",
+   "CompressedTexImage3D",
+   "CompressedTexImage3DARB",
+   "CompressedTexSubImage1D",
+   "CompressedTexSubImage1DARB",
+   "CompressedTexSubImage2D",
+   "CompressedTexSubImage2DARB",
+   "CompressedTexSubImage3D",
+   "CompressedTexSubImage3DARB",
+   "CompressedTextureSubImage1D",
+   "CompressedTextureSubImage2D",
+   "CompressedTextureSubImage3D",
+   "ConvolutionFilter1D",
+   "ConvolutionFilter2D",
+   "ConvolutionParameterf",
+   "ConvolutionParameterfv",
+   "ConvolutionParameteri",
+   "ConvolutionParameteriv",
+   "CopyBufferSubData",
+   "CopyColorSubTable",
+   "CopyColorTable",
+   "CopyConvolutionFilter1D",
+   "CopyConvolutionFilter2D",
+   "CopyImageSubData",
+   "CopyNamedBufferSubData",
+   "CopyPixels",
+   "CopyTexImage1D",
+   "CopyTexImage1DEXT",
+   "CopyTexImage2D",
+   "CopyTexImage2DEXT",
+   "CopyTexSubImage1D",
+   "CopyTexSubImage1DEXT",
+   "CopyTexSubImage2D",
+   "CopyTexSubImage2DEXT",
+   "CopyTexSubImage3D",
+   "CopyTexSubImage3DEXT",
+   "CopyTextureSubImage1D",
+   "CopyTextureSubImage2D",
+   "CopyTextureSubImage3D",
+   "CreateBuffers",
+   "CreateProgram",
+   "CreateProgramObjectARB",
+   "CreateProgramPipelines",
+   "CreateQueries",
+   "CreateRenderbuffers",
+   "CreateSamplers",
+   "CreateShader",
+   "CreateShaderObjectARB",
+   "CreateShaderProgramEXT",
+   "CreateTextures",
+   "CreateTransformFeedbacks",
+   "CreateVertexArrays",
+   "CullFace",
+   "DebugMessageCallback",
+   "DebugMessageCallbackARB",
+   "DebugMessageControl",
+   "DebugMessageControlARB",
+   "DebugMessageInsert",
+   "DebugMessageInsertARB",
+   "DeleteBuffers",
+   "DeleteBuffersARB",
+   "DeleteFragmentShaderATI",
+   "DeleteFramebuffers",
+   "DeleteFramebuffersEXT",
+   "DeleteLists",
+   "DeleteObjectARB",
+   "DeletePerfMonitorsAMD",
+   "DeleteProgram",
+   "DeleteProgramsARB",
+   "DeleteProgramsNV",
+   "DeleteQueries",
+   "DeleteQueriesARB",
+   "DeleteRenderbuffers",
+   "DeleteRenderbuffersEXT",
+   "DeleteSamplers",
+   "DeleteShader",
+   "DeleteSync",
+   "DeleteTextures",
+   "DeleteTexturesEXT",
+   "DeleteTransformFeedbacks",
+   "DeleteVertexArrays",
+   "DepthFunc",
+   "DepthMask",
+   "DepthRange",
+   "DepthRangeArrayv",
+   "DepthRangef",
+   "DepthRangeIndexed",
+   "DepthRangex",
+   "DetachObjectARB",
+   "DetachShader",
+   "Disable",
+   "DisableClientState",
+   "Disablei",
+   "DisableIndexedEXT",
+   "DisableVertexArrayAttrib",
+   "DisableVertexAttribArray",
+   "DisableVertexAttribArrayARB",
+   "DispatchCompute",
+   "DispatchComputeIndirect",
+   "DrawArrays",
+   "DrawArraysEXT",
+   "DrawArraysIndirect",
+   "DrawArraysInstanced",
+   "DrawArraysInstancedARB",
+   "DrawArraysInstancedBaseInstance",
+   "DrawArraysInstancedEXT",
+   "DrawBuffer",
+   "DrawBuffers",
+   "DrawBuffersARB",
+   "DrawBuffersATI",
+   "DrawElements",
+   "DrawElementsBaseVertex",
+   "DrawElementsIndirect",
+   "DrawElementsInstanced",
+   "DrawElementsInstancedARB",
+   "DrawElementsInstancedBaseInstance",
+   "DrawElementsInstancedBaseVertex",
+   "DrawElementsInstancedBaseVertexBaseInstance",
+   "DrawElementsInstancedEXT",
+   "DrawPixels",
+   "DrawRangeElements",
+   "DrawRangeElementsBaseVertex",
+   "DrawRangeElementsEXT",
+   "DrawTransformFeedback",
+   "DrawTransformFeedbackInstanced",
+   "DrawTransformFeedbackStream",
+   "DrawTransformFeedbackStreamInstanced",
+   "EdgeFlag",
+   "EdgeFlagPointer",
+   "EdgeFlagPointerEXT",
+   "EdgeFlagv",
+   "EGLImageTargetRenderbufferStorageOES",
+   "EGLImageTargetTexture2DOES",
+   "Enable",
+   "EnableClientState",
+   "Enablei",
+   "EnableIndexedEXT",
+   "EnableVertexArrayAttrib",
+   "EnableVertexAttribArray",
+   "EnableVertexAttribArrayARB",
+   "End",
+   "EndConditionalRender",
+   "EndConditionalRenderNV",
+   "EndFragmentShaderATI",
+   "EndList",
+   "EndPerfMonitorAMD",
+   "EndQuery",
+   "EndQueryARB",
+   "EndQueryIndexed",
+   "EndTransformFeedback",
+   "EndTransformFeedbackEXT",
+   "EvalCoord1d",
+   "EvalCoord1dv",
+   "EvalCoord1f",
+   "EvalCoord1fv",
+   "EvalCoord2d",
+   "EvalCoord2dv",
+   "EvalCoord2f",
+   "EvalCoord2fv",
+   "EvalMesh1",
+   "EvalMesh2",
+   "EvalPoint1",
+   "EvalPoint2",
+   "ExecuteProgramNV",
+   "FeedbackBuffer",
+   "FenceSync",
+   "Finish",
+   "Flush",
+   "FlushMappedBufferRange",
+   "FlushMappedNamedBufferRange",
+   "FogCoordd",
+   "FogCoorddEXT",
+   "FogCoorddv",
+   "FogCoorddvEXT",
+   "FogCoordf",
+   "FogCoordfEXT",
+   "FogCoordfv",
+   "FogCoordfvEXT",
+   "FogCoordPointer",
+   "FogCoordPointerEXT",
+   "Fogf",
+   "Fogfv",
+   "Fogi",
+   "Fogiv",
+   "Fogx",
+   "Fogxv",
+   "FramebufferRenderbuffer",
+   "FramebufferRenderbufferEXT",
+   "FramebufferTexture",
+   "FramebufferTexture1D",
+   "FramebufferTexture1DEXT",
+   "FramebufferTexture2D",
+   "FramebufferTexture2DEXT",
+   "FramebufferTexture3D",
+   "FramebufferTexture3DEXT",
+   "FramebufferTextureARB",
+   "FramebufferTextureLayer",
+   "FramebufferTextureLayerARB",
+   "FramebufferTextureLayerEXT",
+   "FrontFace",
+   "Frustum",
+   "Frustumf",
+   "Frustumx",
+   "GenBuffers",
+   "GenBuffersARB",
+   "GenerateMipmap",
+   "GenerateMipmapEXT",
+   "GenerateTextureMipmap",
+   "GenFragmentShadersATI",
+   "GenFramebuffers",
+   "GenFramebuffersEXT",
+   "GenLists",
+   "GenPerfMonitorsAMD",
+   "GenProgramsARB",
+   "GenProgramsNV",
+   "GenQueries",
+   "GenQueriesARB",
+   "GenRenderbuffers",
+   "GenRenderbuffersEXT",
+   "GenSamplers",
+   "GenTextures",
+   "GenTexturesEXT",
+   "GenTransformFeedbacks",
+   "GenVertexArrays",
+   "GetActiveAtomicCounterBufferiv",
+   "GetActiveAttrib",
+   "GetActiveAttribARB",
+   "GetActiveUniform",
+   "GetActiveUniformARB",
+   "GetActiveUniformBlockiv",
+   "GetActiveUniformBlockName",
+   "GetActiveUniformName",
+   "GetActiveUniformsiv",
+   "GetAttachedObjectsARB",
+   "GetAttachedShaders",
+   "GetAttribLocation",
+   "GetAttribLocationARB",
+   "GetBooleanIndexedvEXT",
+   "GetBooleani_v",
+   "GetBooleanv",
+   "GetBufferParameteri64v",
+   "GetBufferParameteriv",
+   "GetBufferParameterivARB",
+   "GetBufferPointerv",
+   "GetBufferPointervARB",
+   "GetBufferSubData",
+   "GetBufferSubDataARB",
+   "GetClipPlane",
+   "GetClipPlanef",
+   "GetClipPlanex",
+   "GetColorTable",
+   "GetColorTableEXT",
+   "GetColorTableParameterfv",
+   "GetColorTableParameterfvEXT",
+   "GetColorTableParameteriv",
+   "GetColorTableParameterivEXT",
+   "GetCompressedTexImage",
+   "GetCompressedTexImageARB",
+   "GetCompressedTextureImage",
+   "GetConvolutionFilter",
+   "GetConvolutionParameterfv",
+   "GetConvolutionParameteriv",
+   "GetDebugMessageLog",
+   "GetDebugMessageLogARB",
+   "GetDoublei_v",
+   "GetDoublev",
+   "GetError",
+   "GetFixedv",
+   "GetFloati_v",
+   "GetFloatv",
+   "GetFragDataIndex",
+   "GetFragDataLocation",
+   "GetFragDataLocationEXT",
+   "GetFramebufferAttachmentParameteriv",
+   "GetFramebufferAttachmentParameterivEXT",
+   "GetGraphicsResetStatusARB",
+   "GetHandleARB",
+   "GetHistogram",
+   "GetHistogramParameterfv",
+   "GetHistogramParameteriv",
+   "GetInfoLogARB",
+   "GetInteger64i_v",
+   "GetInteger64v",
+   "GetIntegerIndexedvEXT",
+   "GetIntegeri_v",
+   "GetIntegerv",
+   "GetLightfv",
+   "GetLightiv",
+   "GetLightxv",
+   "GetMapdv",
+   "GetMapfv",
+   "GetMapiv",
+   "GetMaterialfv",
+   "GetMaterialiv",
+   "GetMaterialxv",
+   "GetMinmax",
+   "GetMinmaxParameterfv",
+   "GetMinmaxParameteriv",
+   "GetMultisamplefv",
+   "GetNamedBufferParameteri64v",
+   "GetNamedBufferParameteriv",
+   "GetNamedBufferPointerv",
+   "GetNamedBufferSubData",
+   "GetNamedRenderbufferParameteriv",
+   "GetnColorTableARB",
+   "GetnCompressedTexImageARB",
+   "GetnConvolutionFilterARB",
+   "GetnHistogramARB",
+   "GetnMapdvARB",
+   "GetnMapfvARB",
+   "GetnMapivARB",
+   "GetnMinmaxARB",
+   "GetnPixelMapfvARB",
+   "GetnPixelMapuivARB",
+   "GetnPixelMapusvARB",
+   "GetnPolygonStippleARB",
+   "GetnSeparableFilterARB",
+   "GetnTexImageARB",
+   "GetnUniformdvARB",
+   "GetnUniformfvARB",
+   "GetnUniformivARB",
+   "GetnUniformuivARB",
+   "GetObjectLabel",
+   "GetObjectParameterfvARB",
+   "GetObjectParameterivAPPLE",
+   "GetObjectParameterivARB",
+   "GetObjectPtrLabel",
+   "GetPerfMonitorCounterDataAMD",
+   "GetPerfMonitorCounterInfoAMD",
+   "GetPerfMonitorCountersAMD",
+   "GetPerfMonitorCounterStringAMD",
+   "GetPerfMonitorGroupsAMD",
+   "GetPerfMonitorGroupStringAMD",
+   "GetPixelMapfv",
+   "GetPixelMapuiv",
+   "GetPixelMapusv",
+   "GetPointerv",
+   "GetPointervEXT",
+   "GetPolygonStipple",
+   "GetProgramBinary",
+   "GetProgramEnvParameterdvARB",
+   "GetProgramEnvParameterfvARB",
+   "GetProgramInfoLog",
+   "GetProgramInterfaceiv",
+   "GetProgramiv",
+   "GetProgramivARB",
+   "GetProgramivNV",
+   "GetProgramLocalParameterdvARB",
+   "GetProgramLocalParameterfvARB",
+   "GetProgramNamedParameterdvNV",
+   "GetProgramNamedParameterfvNV",
+   "GetProgramParameterdvNV",
+   "GetProgramParameterfvNV",
+   "GetProgramResourceIndex",
+   "GetProgramResourceiv",
+   "GetProgramResourceLocation",
+   "GetProgramResourceLocationIndex",
+   "GetProgramResourceName",
+   "GetProgramStringARB",
+   "GetProgramStringNV",
+   "GetQueryBufferObjecti64v",
+   "GetQueryBufferObjectiv",
+   "GetQueryBufferObjectui64v",
+   "GetQueryBufferObjectuiv",
+   "GetQueryIndexediv",
+   "GetQueryiv",
+   "GetQueryivARB",
+   "GetQueryObjectiv",
+   "GetQueryObjectivARB",
+   "GetQueryObjectuiv",
+   "GetQueryObjectuivARB",
+   "GetRenderbufferParameteriv",
+   "GetRenderbufferParameterivEXT",
+   "GetSamplerParameterfv",
+   "GetSamplerParameterIiv",
+   "GetSamplerParameterIuiv",
+   "GetSamplerParameteriv",
+   "GetSeparableFilter",
+   "GetShaderInfoLog",
+   "GetShaderiv",
+   "GetShaderPrecisionFormat",
+   "GetShaderSource",
+   "GetShaderSourceARB",
+   "GetString",
+   "GetStringi",
+   "GetSynciv",
+   "GetTexBumpParameterfvATI",
+   "GetTexBumpParameterivATI",
+   "GetTexEnvfv",
+   "GetTexEnviv",
+   "GetTexEnvxv",
+   "GetTexGendv",
+   "GetTexGenfv",
+   "GetTexGeniv",
+   "GetTexImage",
+   "GetTexLevelParameterfv",
+   "GetTexLevelParameteriv",
+   "GetTexParameterfv",
+   "GetTexParameterIiv",
+   "GetTexParameterIivEXT",
+   "GetTexParameterIuiv",
+   "GetTexParameterIuivEXT",
+   "GetTexParameteriv",
+   "GetTexParameterxv",
+   "GetTextureImage",
+   "GetTextureLevelParameterfv",
+   "GetTextureLevelParameteriv",
+   "GetTextureParameterfv",
+   "GetTextureParameterIiv",
+   "GetTextureParameterIuiv",
+   "GetTextureParameteriv",
+   "GetTrackMatrixivNV",
+   "GetTransformFeedbacki64_v",
+   "GetTransformFeedbackiv",
+   "GetTransformFeedbacki_v",
+   "GetTransformFeedbackVarying",
+   "GetTransformFeedbackVaryingEXT",
+   "GetUniformBlockIndex",
+   "GetUniformdv",
+   "GetUniformfv",
+   "GetUniformfvARB",
+   "GetUniformIndices",
+   "GetUniformiv",
+   "GetUniformivARB",
+   "GetUniformLocation",
+   "GetUniformLocationARB",
+   "GetUniformuiv",
+   "GetUniformuivEXT",
+   "GetVertexArrayIndexed64iv",
+   "GetVertexArrayIndexediv",
+   "GetVertexArrayiv",
+   "GetVertexAttribdv",
+   "GetVertexAttribdvARB",
+   "GetVertexAttribdvNV",
+   "GetVertexAttribfv",
+   "GetVertexAttribfvARB",
+   "GetVertexAttribfvNV",
+   "GetVertexAttribIiv",
+   "GetVertexAttribIivEXT",
+   "GetVertexAttribIuiv",
+   "GetVertexAttribIuivEXT",
+   "GetVertexAttribiv",
+   "GetVertexAttribivARB",
+   "GetVertexAttribivNV",
+   "GetVertexAttribLdv",
+   "GetVertexAttribPointerv",
+   "GetVertexAttribPointervARB",
+   "GetVertexAttribPointervNV",
+   "Hint",
+   "Histogram",
+   "Indexd",
+   "Indexdv",
+   "Indexf",
+   "Indexfv",
+   "Indexi",
+   "Indexiv",
+   "IndexMask",
+   "IndexPointer",
+   "IndexPointerEXT",
+   "Indexs",
+   "Indexsv",
+   "Indexub",
+   "Indexubv",
+   "InitNames",
+   "InterleavedArrays",
+   "InvalidateBufferData",
+   "InvalidateBufferSubData",
+   "InvalidateFramebuffer",
+   "InvalidateSubFramebuffer",
+   "InvalidateTexImage",
+   "InvalidateTexSubImage",
+   "IsBuffer",
+   "IsBufferARB",
+   "IsEnabled",
+   "IsEnabledi",
+   "IsEnabledIndexedEXT",
+   "IsFramebuffer",
+   "IsFramebufferEXT",
+   "IsList",
+   "IsProgram",
+   "IsProgramARB",
+   "IsProgramNV",
+   "IsQuery",
+   "IsQueryARB",
+   "IsRenderbuffer",
+   "IsRenderbufferEXT",
+   "IsSampler",
+   "IsShader",
+   "IsSync",
+   "IsTexture",
+   "IsTextureEXT",
+   "IsTransformFeedback",
+   "IsVertexArray",
+   "Lightf",
+   "Lightfv",
+   "Lighti",
+   "Lightiv",
+   "LightModelf",
+   "LightModelfv",
+   "LightModeli",
+   "LightModeliv",
+   "LightModelx",
+   "LightModelxv",
+   "Lightx",
+   "Lightxv",
+   "LineStipple",
+   "LineWidth",
+   "LineWidthx",
+   "LinkProgram",
+   "LinkProgramARB",
+   "ListBase",
+   "LoadIdentity",
+   "LoadMatrixd",
+   "LoadMatrixf",
+   "LoadMatrixx",
+   "LoadName",
+   "LoadProgramNV",
+   "LoadTransposeMatrixd",
+   "LoadTransposeMatrixdARB",
+   "LoadTransposeMatrixf",
+   "LoadTransposeMatrixfARB",
+   "LockArraysEXT",
+   "LogicOp",
+   "Map1d",
+   "Map1f",
+   "Map2d",
+   "Map2f",
+   "MapBuffer",
+   "MapBufferARB",
+   "MapBufferRange",
+   "MapGrid1d",
+   "MapGrid1f",
+   "MapGrid2d",
+   "MapGrid2f",
+   "MapNamedBuffer",
+   "MapNamedBufferRange",
+   "Materialf",
+   "Materialfv",
+   "Materiali",
+   "Materialiv",
+   "Materialx",
+   "Materialxv",
+   "MatrixMode",
+   "MemoryBarrier",
+   "Minmax",
+   "MinSampleShading",
+   "MinSampleShadingARB",
+   "MultiDrawArrays",
+   "MultiDrawArraysEXT",
+   "MultiDrawArraysIndirect",
+   "MultiDrawElements",
+   "MultiDrawElementsBaseVertex",
+   "MultiDrawElementsEXT",
+   "MultiDrawElementsIndirect",
+   "MultiTexCoord1d",
+   "MultiTexCoord1dARB",
+   "MultiTexCoord1dv",
+   "MultiTexCoord1dvARB",
+   "MultiTexCoord1f",
+   "MultiTexCoord1fARB",
+   "MultiTexCoord1fv",
+   "MultiTexCoord1fvARB",
+   "MultiTexCoord1i",
+   "MultiTexCoord1iARB",
+   "MultiTexCoord1iv",
+   "MultiTexCoord1ivARB",
+   "MultiTexCoord1s",
+   "MultiTexCoord1sARB",
+   "MultiTexCoord1sv",
+   "MultiTexCoord1svARB",
+   "MultiTexCoord2d",
+   "MultiTexCoord2dARB",
+   "MultiTexCoord2dv",
+   "MultiTexCoord2dvARB",
+   "MultiTexCoord2f",
+   "MultiTexCoord2fARB",
+   "MultiTexCoord2fv",
+   "MultiTexCoord2fvARB",
+   "MultiTexCoord2i",
+   "MultiTexCoord2iARB",
+   "MultiTexCoord2iv",
+   "MultiTexCoord2ivARB",
+   "MultiTexCoord2s",
+   "MultiTexCoord2sARB",
+   "MultiTexCoord2sv",
+   "MultiTexCoord2svARB",
+   "MultiTexCoord3d",
+   "MultiTexCoord3dARB",
+   "MultiTexCoord3dv",
+   "MultiTexCoord3dvARB",
+   "MultiTexCoord3f",
+   "MultiTexCoord3fARB",
+   "MultiTexCoord3fv",
+   "MultiTexCoord3fvARB",
+   "MultiTexCoord3i",
+   "MultiTexCoord3iARB",
+   "MultiTexCoord3iv",
+   "MultiTexCoord3ivARB",
+   "MultiTexCoord3s",
+   "MultiTexCoord3sARB",
+   "MultiTexCoord3sv",
+   "MultiTexCoord3svARB",
+   "MultiTexCoord4d",
+   "MultiTexCoord4dARB",
+   "MultiTexCoord4dv",
+   "MultiTexCoord4dvARB",
+   "MultiTexCoord4f",
+   "MultiTexCoord4fARB",
+   "MultiTexCoord4fv",
+   "MultiTexCoord4fvARB",
+   "MultiTexCoord4i",
+   "MultiTexCoord4iARB",
+   "MultiTexCoord4iv",
+   "MultiTexCoord4ivARB",
+   "MultiTexCoord4s",
+   "MultiTexCoord4sARB",
+   "MultiTexCoord4sv",
+   "MultiTexCoord4svARB",
+   "MultiTexCoord4x",
+   "MultiTexCoordP1ui",
+   "MultiTexCoordP1uiv",
+   "MultiTexCoordP2ui",
+   "MultiTexCoordP2uiv",
+   "MultiTexCoordP3ui",
+   "MultiTexCoordP3uiv",
+   "MultiTexCoordP4ui",
+   "MultiTexCoordP4uiv",
+   "MultMatrixd",
+   "MultMatrixf",
+   "MultMatrixx",
+   "MultTransposeMatrixd",
+   "MultTransposeMatrixdARB",
+   "MultTransposeMatrixf",
+   "MultTransposeMatrixfARB",
+   "NamedBufferData",
+   "NamedBufferStorage",
+   "NamedBufferSubData",
+   "NamedRenderbufferStorage",
+   "NamedRenderbufferStorageMultisample",
+   "NewList",
+   "Normal3b",
+   "Normal3bv",
+   "Normal3d",
+   "Normal3dv",
+   "Normal3f",
+   "Normal3fv",
+   "Normal3i",
+   "Normal3iv",
+   "Normal3s",
+   "Normal3sv",
+   "Normal3x",
+   "NormalP3ui",
+   "NormalP3uiv",
+   "NormalPointer",
+   "NormalPointerEXT",
+   "ObjectLabel",
+   "ObjectPtrLabel",
+   "ObjectPurgeableAPPLE",
+   "ObjectUnpurgeableAPPLE",
+   "Ortho",
+   "Orthof",
+   "Orthox",
+   "PassTexCoordATI",
+   "PassThrough",
+   "PauseTransformFeedback",
+   "PixelMapfv",
+   "PixelMapuiv",
+   "PixelMapusv",
+   "PixelStoref",
+   "PixelStorei",
+   "PixelTransferf",
+   "PixelTransferi",
+   "PixelZoom",
+   "PointParameterf",
+   "PointParameterfARB",
+   "PointParameterfEXT",
+   "PointParameterfv",
+   "PointParameterfvARB",
+   "PointParameterfvEXT",
+   "PointParameteri",
+   "PointParameteriNV",
+   "PointParameteriv",
+   "PointParameterivNV",
+   "PointParameterx",
+   "PointParameterxv",
+   "PointSize",
+   "PointSizePointerOES",
+   "PointSizex",
+   "PolygonMode",
+   "PolygonOffset",
+   "PolygonOffsetClampEXT",
+   "PolygonOffsetEXT",
+   "PolygonOffsetx",
+   "PolygonStipple",
+   "PopAttrib",
+   "PopClientAttrib",
+   "PopDebugGroup",
+   "PopMatrix",
+   "PopName",
+   "PrimitiveRestartIndex",
+   "PrimitiveRestartIndexNV",
+   "PrimitiveRestartNV",
+   "PrioritizeTextures",
+   "PrioritizeTexturesEXT",
+   "ProgramBinary",
+   "ProgramEnvParameter4dARB",
+   "ProgramEnvParameter4dvARB",
+   "ProgramEnvParameter4fARB",
+   "ProgramEnvParameter4fvARB",
+   "ProgramLocalParameter4dARB",
+   "ProgramLocalParameter4dvARB",
+   "ProgramLocalParameter4fARB",
+   "ProgramLocalParameter4fvARB",
+   "ProgramNamedParameter4dNV",
+   "ProgramNamedParameter4dvNV",
+   "ProgramNamedParameter4fNV",
+   "ProgramNamedParameter4fvNV",
+   "ProgramParameter4dNV",
+   "ProgramParameter4dvNV",
+   "ProgramParameter4fNV",
+   "ProgramParameter4fvNV",
+   "ProgramParameteri",
+   "ProgramParameteriARB",
+   "ProgramParameters4dvNV",
+   "ProgramParameters4fvNV",
+   "ProgramStringARB",
+   "ProvokingVertex",
+   "ProvokingVertexEXT",
+   "PushAttrib",
+   "PushClientAttrib",
+   "PushDebugGroup",
+   "PushMatrix",
+   "PushName",
+   "RasterPos2d",
+   "RasterPos2dv",
+   "RasterPos2f",
+   "RasterPos2fv",
+   "RasterPos2i",
+   "RasterPos2iv",
+   "RasterPos2s",
+   "RasterPos2sv",
+   "RasterPos3d",
+   "RasterPos3dv",
+   "RasterPos3f",
+   "RasterPos3fv",
+   "RasterPos3i",
+   "RasterPos3iv",
+   "RasterPos3s",
+   "RasterPos3sv",
+   "RasterPos4d",
+   "RasterPos4dv",
+   "RasterPos4f",
+   "RasterPos4fv",
+   "RasterPos4i",
+   "RasterPos4iv",
+   "RasterPos4s",
+   "RasterPos4sv",
+   "ReadBuffer",
+   "ReadnPixelsARB",
+   "ReadPixels",
+   "Rectd",
+   "Rectdv",
+   "Rectf",
+   "Rectfv",
+   "Recti",
+   "Rectiv",
+   "Rects",
+   "Rectsv",
+   "ReleaseShaderCompiler",
+   "RenderbufferStorage",
+   "RenderbufferStorageEXT",
+   "RenderbufferStorageMultisample",
+   "RenderbufferStorageMultisampleEXT",
+   "RenderMode",
+   "RequestResidentProgramsNV",
+   "ResetHistogram",
+   "ResetMinmax",
+   "ResizeBuffersMESA",
+   "ResumeTransformFeedback",
+   "Rotated",
+   "Rotatef",
+   "Rotatex",
+   "SampleCoverage",
+   "SampleCoverageARB",
+   "SampleCoveragex",
+   "SampleMapATI",
+   "SampleMaski",
+   "SamplerParameterf",
+   "SamplerParameterfv",
+   "SamplerParameteri",
+   "SamplerParameterIiv",
+   "SamplerParameterIuiv",
+   "SamplerParameteriv",
+   "Scaled",
+   "Scalef",
+   "Scalex",
+   "Scissor",
+   "ScissorArrayv",
+   "ScissorIndexed",
+   "ScissorIndexedv",
+   "SecondaryColor3b",
+   "SecondaryColor3bEXT",
+   "SecondaryColor3bv",
+   "SecondaryColor3bvEXT",
+   "SecondaryColor3d",
+   "SecondaryColor3dEXT",
+   "SecondaryColor3dv",
+   "SecondaryColor3dvEXT",
+   "SecondaryColor3f",
+   "SecondaryColor3fEXT",
+   "SecondaryColor3fv",
+   "SecondaryColor3fvEXT",
+   "SecondaryColor3i",
+   "SecondaryColor3iEXT",
+   "SecondaryColor3iv",
+   "SecondaryColor3ivEXT",
+   "SecondaryColor3s",
+   "SecondaryColor3sEXT",
+   "SecondaryColor3sv",
+   "SecondaryColor3svEXT",
+   "SecondaryColor3ub",
+   "SecondaryColor3ubEXT",
+   "SecondaryColor3ubv",
+   "SecondaryColor3ubvEXT",
+   "SecondaryColor3ui",
+   "SecondaryColor3uiEXT",
+   "SecondaryColor3uiv",
+   "SecondaryColor3uivEXT",
+   "SecondaryColor3us",
+   "SecondaryColor3usEXT",
+   "SecondaryColor3usv",
+   "SecondaryColor3usvEXT",
+   "SecondaryColorP3ui",
+   "SecondaryColorP3uiv",
+   "SecondaryColorPointer",
+   "SecondaryColorPointerEXT",
+   "SelectBuffer",
+   "SelectPerfMonitorCountersAMD",
+   "SeparableFilter2D",
+   "SetFragmentShaderConstantATI",
+   "ShadeModel",
+   "ShaderBinary",
+   "ShaderSource",
+   "ShaderSourceARB",
+   "StencilFunc",
+   "StencilFuncSeparate",
+   "StencilMask",
+   "StencilMaskSeparate",
+   "StencilOp",
+   "StencilOpSeparate",
+   "TexBuffer",
+   "TexBufferARB",
+   "TexBufferRange",
+   "TexBumpParameterfvATI",
+   "TexBumpParameterivATI",
+   "TexCoord1d",
+   "TexCoord1dv",
+   "TexCoord1f",
+   "TexCoord1fv",
+   "TexCoord1i",
+   "TexCoord1iv",
+   "TexCoord1s",
+   "TexCoord1sv",
+   "TexCoord2d",
+   "TexCoord2dv",
+   "TexCoord2f",
+   "TexCoord2fv",
+   "TexCoord2i",
+   "TexCoord2iv",
+   "TexCoord2s",
+   "TexCoord2sv",
+   "TexCoord3d",
+   "TexCoord3dv",
+   "TexCoord3f",
+   "TexCoord3fv",
+   "TexCoord3i",
+   "TexCoord3iv",
+   "TexCoord3s",
+   "TexCoord3sv",
+   "TexCoord4d",
+   "TexCoord4dv",
+   "TexCoord4f",
+   "TexCoord4fv",
+   "TexCoord4i",
+   "TexCoord4iv",
+   "TexCoord4s",
+   "TexCoord4sv",
+   "TexCoordP1ui",
+   "TexCoordP1uiv",
+   "TexCoordP2ui",
+   "TexCoordP2uiv",
+   "TexCoordP3ui",
+   "TexCoordP3uiv",
+   "TexCoordP4ui",
+   "TexCoordP4uiv",
+   "TexCoordPointer",
+   "TexCoordPointerEXT",
+   "TexEnvf",
+   "TexEnvfv",
+   "TexEnvi",
+   "TexEnviv",
+   "TexEnvx",
+   "TexEnvxv",
+   "TexGend",
+   "TexGendv",
+   "TexGenf",
+   "TexGenfv",
+   "TexGeni",
+   "TexGeniv",
+   "TexImage1D",
+   "TexImage2D",
+   "TexImage2DMultisample",
+   "TexImage3D",
+   "TexImage3DEXT",
+   "TexImage3DMultisample",
+   "TexParameterf",
+   "TexParameterfv",
+   "TexParameteri",
+   "TexParameterIiv",
+   "TexParameterIivEXT",
+   "TexParameterIuiv",
+   "TexParameterIuivEXT",
+   "TexParameteriv",
+   "TexParameterx",
+   "TexParameterxv",
+   "TexStorage1D",
+   "TexStorage2D",
+   "TexStorage2DMultisample",
+   "TexStorage3D",
+   "TexStorage3DMultisample",
+   "TexSubImage1D",
+   "TexSubImage1DEXT",
+   "TexSubImage2D",
+   "TexSubImage2DEXT",
+   "TexSubImage3D",
+   "TexSubImage3DEXT",
+   "TextureBarrier",
+   "TextureBarrierNV",
+   "TextureBuffer",
+   "TextureBufferRange",
+   "TextureParameterf",
+   "TextureParameterfv",
+   "TextureParameteri",
+   "TextureParameterIiv",
+   "TextureParameterIuiv",
+   "TextureParameteriv",
+   "TextureStorage1D",
+   "TextureStorage1DEXT",
+   "TextureStorage2D",
+   "TextureStorage2DEXT",
+   "TextureStorage2DMultisample",
+   "TextureStorage3D",
+   "TextureStorage3DEXT",
+   "TextureStorage3DMultisample",
+   "TextureSubImage1D",
+   "TextureSubImage2D",
+   "TextureSubImage3D",
+   "TextureView",
+   "TrackMatrixNV",
+   "TransformFeedbackBufferBase",
+   "TransformFeedbackBufferRange",
+   "TransformFeedbackVaryings",
+   "TransformFeedbackVaryingsEXT",
+   "Translated",
+   "Translatef",
+   "Translatex",
+   "Uniform1d",
+   "Uniform1dv",
+   "Uniform1f",
+   "Uniform1fARB",
+   "Uniform1fv",
+   "Uniform1fvARB",
+   "Uniform1i",
+   "Uniform1iARB",
+   "Uniform1iv",
+   "Uniform1ivARB",
+   "Uniform1ui",
+   "Uniform1uiEXT",
+   "Uniform1uiv",
+   "Uniform1uivEXT",
+   "Uniform2d",
+   "Uniform2dv",
+   "Uniform2f",
+   "Uniform2fARB",
+   "Uniform2fv",
+   "Uniform2fvARB",
+   "Uniform2i",
+   "Uniform2iARB",
+   "Uniform2iv",
+   "Uniform2ivARB",
+   "Uniform2ui",
+   "Uniform2uiEXT",
+   "Uniform2uiv",
+   "Uniform2uivEXT",
+   "Uniform3d",
+   "Uniform3dv",
+   "Uniform3f",
+   "Uniform3fARB",
+   "Uniform3fv",
+   "Uniform3fvARB",
+   "Uniform3i",
+   "Uniform3iARB",
+   "Uniform3iv",
+   "Uniform3ivARB",
+   "Uniform3ui",
+   "Uniform3uiEXT",
+   "Uniform3uiv",
+   "Uniform3uivEXT",
+   "Uniform4d",
+   "Uniform4dv",
+   "Uniform4f",
+   "Uniform4fARB",
+   "Uniform4fv",
+   "Uniform4fvARB",
+   "Uniform4i",
+   "Uniform4iARB",
+   "Uniform4iv",
+   "Uniform4ivARB",
+   "Uniform4ui",
+   "Uniform4uiEXT",
+   "Uniform4uiv",
+   "Uniform4uivEXT",
+   "UniformBlockBinding",
+   "UniformMatrix2dv",
+   "UniformMatrix2fv",
+   "UniformMatrix2fvARB",
+   "UniformMatrix2x3dv",
+   "UniformMatrix2x3fv",
+   "UniformMatrix2x4dv",
+   "UniformMatrix2x4fv",
+   "UniformMatrix3dv",
+   "UniformMatrix3fv",
+   "UniformMatrix3fvARB",
+   "UniformMatrix3x2dv",
+   "UniformMatrix3x2fv",
+   "UniformMatrix3x4dv",
+   "UniformMatrix3x4fv",
+   "UniformMatrix4dv",
+   "UniformMatrix4fv",
+   "UniformMatrix4fvARB",
+   "UniformMatrix4x2dv",
+   "UniformMatrix4x2fv",
+   "UniformMatrix4x3dv",
+   "UniformMatrix4x3fv",
+   "UnlockArraysEXT",
+   "UnmapBuffer",
+   "UnmapBufferARB",
+   "UnmapNamedBuffer",
+   "UseProgram",
+   "UseProgramObjectARB",
+   "UseShaderProgramEXT",
+   "ValidateProgram",
+   "ValidateProgramARB",
+   "VDPAUFiniNV",
+   "VDPAUGetSurfaceivNV",
+   "VDPAUInitNV",
+   "VDPAUIsSurfaceNV",
+   "VDPAUMapSurfacesNV",
+   "VDPAURegisterOutputSurfaceNV",
+   "VDPAURegisterVideoSurfaceNV",
+   "VDPAUSurfaceAccessNV",
+   "VDPAUUnmapSurfacesNV",
+   "VDPAUUnregisterSurfaceNV",
+   "Vertex2d",
+   "Vertex2dv",
+   "Vertex2f",
+   "Vertex2fv",
+   "Vertex2i",
+   "Vertex2iv",
+   "Vertex2s",
+   "Vertex2sv",
+   "Vertex3d",
+   "Vertex3dv",
+   "Vertex3f",
+   "Vertex3fv",
+   "Vertex3i",
+   "Vertex3iv",
+   "Vertex3s",
+   "Vertex3sv",
+   "Vertex4d",
+   "Vertex4dv",
+   "Vertex4f",
+   "Vertex4fv",
+   "Vertex4i",
+   "Vertex4iv",
+   "Vertex4s",
+   "Vertex4sv",
+   "VertexArrayAttribBinding",
+   "VertexArrayAttribFormat",
+   "VertexArrayAttribIFormat",
+   "VertexArrayAttribLFormat",
+   "VertexArrayBindingDivisor",
+   "VertexArrayElementBuffer",
+   "VertexArrayVertexBuffer",
+   "VertexArrayVertexBuffers",
+   "VertexAttrib1d",
+   "VertexAttrib1dARB",
+   "VertexAttrib1dNV",
+   "VertexAttrib1dv",
+   "VertexAttrib1dvARB",
+   "VertexAttrib1dvNV",
+   "VertexAttrib1f",
+   "VertexAttrib1fARB",
+   "VertexAttrib1fNV",
+   "VertexAttrib1fv",
+   "VertexAttrib1fvARB",
+   "VertexAttrib1fvNV",
+   "VertexAttrib1s",
+   "VertexAttrib1sARB",
+   "VertexAttrib1sNV",
+   "VertexAttrib1sv",
+   "VertexAttrib1svARB",
+   "VertexAttrib1svNV",
+   "VertexAttrib2d",
+   "VertexAttrib2dARB",
+   "VertexAttrib2dNV",
+   "VertexAttrib2dv",
+   "VertexAttrib2dvARB",
+   "VertexAttrib2dvNV",
+   "VertexAttrib2f",
+   "VertexAttrib2fARB",
+   "VertexAttrib2fNV",
+   "VertexAttrib2fv",
+   "VertexAttrib2fvARB",
+   "VertexAttrib2fvNV",
+   "VertexAttrib2s",
+   "VertexAttrib2sARB",
+   "VertexAttrib2sNV",
+   "VertexAttrib2sv",
+   "VertexAttrib2svARB",
+   "VertexAttrib2svNV",
+   "VertexAttrib3d",
+   "VertexAttrib3dARB",
+   "VertexAttrib3dNV",
+   "VertexAttrib3dv",
+   "VertexAttrib3dvARB",
+   "VertexAttrib3dvNV",
+   "VertexAttrib3f",
+   "VertexAttrib3fARB",
+   "VertexAttrib3fNV",
+   "VertexAttrib3fv",
+   "VertexAttrib3fvARB",
+   "VertexAttrib3fvNV",
+   "VertexAttrib3s",
+   "VertexAttrib3sARB",
+   "VertexAttrib3sNV",
+   "VertexAttrib3sv",
+   "VertexAttrib3svARB",
+   "VertexAttrib3svNV",
+   "VertexAttrib4bv",
+   "VertexAttrib4bvARB",
+   "VertexAttrib4d",
+   "VertexAttrib4dARB",
+   "VertexAttrib4dNV",
+   "VertexAttrib4dv",
+   "VertexAttrib4dvARB",
+   "VertexAttrib4dvNV",
+   "VertexAttrib4f",
+   "VertexAttrib4fARB",
+   "VertexAttrib4fNV",
+   "VertexAttrib4fv",
+   "VertexAttrib4fvARB",
+   "VertexAttrib4fvNV",
+   "VertexAttrib4iv",
+   "VertexAttrib4ivARB",
+   "VertexAttrib4Nbv",
+   "VertexAttrib4NbvARB",
+   "VertexAttrib4Niv",
+   "VertexAttrib4NivARB",
+   "VertexAttrib4Nsv",
+   "VertexAttrib4NsvARB",
+   "VertexAttrib4Nub",
+   "VertexAttrib4NubARB",
+   "VertexAttrib4Nubv",
+   "VertexAttrib4NubvARB",
+   "VertexAttrib4Nuiv",
+   "VertexAttrib4NuivARB",
+   "VertexAttrib4Nusv",
+   "VertexAttrib4NusvARB",
+   "VertexAttrib4s",
+   "VertexAttrib4sARB",
+   "VertexAttrib4sNV",
+   "VertexAttrib4sv",
+   "VertexAttrib4svARB",
+   "VertexAttrib4svNV",
+   "VertexAttrib4ubNV",
+   "VertexAttrib4ubv",
+   "VertexAttrib4ubvARB",
+   "VertexAttrib4ubvNV",
+   "VertexAttrib4uiv",
+   "VertexAttrib4uivARB",
+   "VertexAttrib4usv",
+   "VertexAttrib4usvARB",
+   "VertexAttribBinding",
+   "VertexAttribDivisor",
+   "VertexAttribDivisorARB",
+   "VertexAttribFormat",
+   "VertexAttribI1i",
+   "VertexAttribI1iEXT",
+   "VertexAttribI1iv",
+   "VertexAttribI1ivEXT",
+   "VertexAttribI1ui",
+   "VertexAttribI1uiEXT",
+   "VertexAttribI1uiv",
+   "VertexAttribI1uivEXT",
+   "VertexAttribI2i",
+   "VertexAttribI2iEXT",
+   "VertexAttribI2iv",
+   "VertexAttribI2ivEXT",
+   "VertexAttribI2ui",
+   "VertexAttribI2uiEXT",
+   "VertexAttribI2uiv",
+   "VertexAttribI2uivEXT",
+   "VertexAttribI3i",
+   "VertexAttribI3iEXT",
+   "VertexAttribI3iv",
+   "VertexAttribI3ivEXT",
+   "VertexAttribI3ui",
+   "VertexAttribI3uiEXT",
+   "VertexAttribI3uiv",
+   "VertexAttribI3uivEXT",
+   "VertexAttribI4bv",
+   "VertexAttribI4bvEXT",
+   "VertexAttribI4i",
+   "VertexAttribI4iEXT",
+   "VertexAttribI4iv",
+   "VertexAttribI4ivEXT",
+   "VertexAttribI4sv",
+   "VertexAttribI4svEXT",
+   "VertexAttribI4ubv",
+   "VertexAttribI4ubvEXT",
+   "VertexAttribI4ui",
+   "VertexAttribI4uiEXT",
+   "VertexAttribI4uiv",
+   "VertexAttribI4uivEXT",
+   "VertexAttribI4usv",
+   "VertexAttribI4usvEXT",
+   "VertexAttribIFormat",
+   "VertexAttribIPointer",
+   "VertexAttribIPointerEXT",
+   "VertexAttribL1d",
+   "VertexAttribL1dv",
+   "VertexAttribL2d",
+   "VertexAttribL2dv",
+   "VertexAttribL3d",
+   "VertexAttribL3dv",
+   "VertexAttribL4d",
+   "VertexAttribL4dv",
+   "VertexAttribLFormat",
+   "VertexAttribLPointer",
+   "VertexAttribP1ui",
+   "VertexAttribP1uiv",
+   "VertexAttribP2ui",
+   "VertexAttribP2uiv",
+   "VertexAttribP3ui",
+   "VertexAttribP3uiv",
+   "VertexAttribP4ui",
+   "VertexAttribP4uiv",
+   "VertexAttribPointer",
+   "VertexAttribPointerARB",
+   "VertexAttribPointerNV",
+   "VertexAttribs1dvNV",
+   "VertexAttribs1fvNV",
+   "VertexAttribs1svNV",
+   "VertexAttribs2dvNV",
+   "VertexAttribs2fvNV",
+   "VertexAttribs2svNV",
+   "VertexAttribs3dvNV",
+   "VertexAttribs3fvNV",
+   "VertexAttribs3svNV",
+   "VertexAttribs4dvNV",
+   "VertexAttribs4fvNV",
+   "VertexAttribs4svNV",
+   "VertexAttribs4ubvNV",
+   "VertexBindingDivisor",
+   "VertexP2ui",
+   "VertexP2uiv",
+   "VertexP3ui",
+   "VertexP3uiv",
+   "VertexP4ui",
+   "VertexP4uiv",
+   "VertexPointer",
+   "VertexPointerEXT",
+   "Viewport",
+   "ViewportArrayv",
+   "ViewportIndexedf",
+   "ViewportIndexedfv",
+   "WaitSync",
+   "WindowPos2d",
+   "WindowPos2dARB",
+   "WindowPos2dMESA",
+   "WindowPos2dv",
+   "WindowPos2dvARB",
+   "WindowPos2dvMESA",
+   "WindowPos2f",
+   "WindowPos2fARB",
+   "WindowPos2fMESA",
+   "WindowPos2fv",
+   "WindowPos2fvARB",
+   "WindowPos2fvMESA",
+   "WindowPos2i",
+   "WindowPos2iARB",
+   "WindowPos2iMESA",
+   "WindowPos2iv",
+   "WindowPos2ivARB",
+   "WindowPos2ivMESA",
+   "WindowPos2s",
+   "WindowPos2sARB",
+   "WindowPos2sMESA",
+   "WindowPos2sv",
+   "WindowPos2svARB",
+   "WindowPos2svMESA",
+   "WindowPos3d",
+   "WindowPos3dARB",
+   "WindowPos3dMESA",
+   "WindowPos3dv",
+   "WindowPos3dvARB",
+   "WindowPos3dvMESA",
+   "WindowPos3f",
+   "WindowPos3fARB",
+   "WindowPos3fMESA",
+   "WindowPos3fv",
+   "WindowPos3fvARB",
+   "WindowPos3fvMESA",
+   "WindowPos3i",
+   "WindowPos3iARB",
+   "WindowPos3iMESA",
+   "WindowPos3iv",
+   "WindowPos3ivARB",
+   "WindowPos3ivMESA",
+   "WindowPos3s",
+   "WindowPos3sARB",
+   "WindowPos3sMESA",
+   "WindowPos3sv",
+   "WindowPos3svARB",
+   "WindowPos3svMESA",
+   "WindowPos4dMESA",
+   "WindowPos4dvMESA",
+   "WindowPos4fMESA",
+   "WindowPos4fvMESA",
+   "WindowPos4iMESA",
+   "WindowPos4ivMESA",
+   "WindowPos4sMESA",
+   "WindowPos4svMESA",
+]