Home | History | Annotate | Download | only in gen
      1 #!/usr/bin/env python
      2 
      3 # Copyright (C) 2015 Intel Corporation
      4 #
      5 # Permission is hereby granted, free of charge, to any person obtaining a
      6 # copy of this software and associated documentation files (the "Software"),
      7 # to deal in the Software without restriction, including without limitation
      8 # the rights to use, copy, modify, merge, publish, distribute, sublicense,
      9 # and/or sell copies of the Software, and to permit persons to whom the
     10 # Software is furnished to do so, subject to the following conditions:
     11 #
     12 # The above copyright notice and this permission notice (including the next
     13 # paragraph) shall be included in all copies or substantial portions of the
     14 # Software.
     15 #
     16 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     17 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     18 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
     19 # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
     20 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
     21 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
     22 # IN THE SOFTWARE.
     23 
     24 """Table of functions that have ABI-mandated offsets in the dispatch table.
     25 
     26 This list will never change."""
     27 offsets = {
     28     "NewList": 0,
     29     "EndList": 1,
     30     "CallList": 2,
     31     "CallLists": 3,
     32     "DeleteLists": 4,
     33     "GenLists": 5,
     34     "ListBase": 6,
     35     "Begin": 7,
     36     "Bitmap": 8,
     37     "Color3b": 9,
     38     "Color3bv": 10,
     39     "Color3d": 11,
     40     "Color3dv": 12,
     41     "Color3f": 13,
     42     "Color3fv": 14,
     43     "Color3i": 15,
     44     "Color3iv": 16,
     45     "Color3s": 17,
     46     "Color3sv": 18,
     47     "Color3ub": 19,
     48     "Color3ubv": 20,
     49     "Color3ui": 21,
     50     "Color3uiv": 22,
     51     "Color3us": 23,
     52     "Color3usv": 24,
     53     "Color4b": 25,
     54     "Color4bv": 26,
     55     "Color4d": 27,
     56     "Color4dv": 28,
     57     "Color4f": 29,
     58     "Color4fv": 30,
     59     "Color4i": 31,
     60     "Color4iv": 32,
     61     "Color4s": 33,
     62     "Color4sv": 34,
     63     "Color4ub": 35,
     64     "Color4ubv": 36,
     65     "Color4ui": 37,
     66     "Color4uiv": 38,
     67     "Color4us": 39,
     68     "Color4usv": 40,
     69     "EdgeFlag": 41,
     70     "EdgeFlagv": 42,
     71     "End": 43,
     72     "Indexd": 44,
     73     "Indexdv": 45,
     74     "Indexf": 46,
     75     "Indexfv": 47,
     76     "Indexi": 48,
     77     "Indexiv": 49,
     78     "Indexs": 50,
     79     "Indexsv": 51,
     80     "Normal3b": 52,
     81     "Normal3bv": 53,
     82     "Normal3d": 54,
     83     "Normal3dv": 55,
     84     "Normal3f": 56,
     85     "Normal3fv": 57,
     86     "Normal3i": 58,
     87     "Normal3iv": 59,
     88     "Normal3s": 60,
     89     "Normal3sv": 61,
     90     "RasterPos2d": 62,
     91     "RasterPos2dv": 63,
     92     "RasterPos2f": 64,
     93     "RasterPos2fv": 65,
     94     "RasterPos2i": 66,
     95     "RasterPos2iv": 67,
     96     "RasterPos2s": 68,
     97     "RasterPos2sv": 69,
     98     "RasterPos3d": 70,
     99     "RasterPos3dv": 71,
    100     "RasterPos3f": 72,
    101     "RasterPos3fv": 73,
    102     "RasterPos3i": 74,
    103     "RasterPos3iv": 75,
    104     "RasterPos3s": 76,
    105     "RasterPos3sv": 77,
    106     "RasterPos4d": 78,
    107     "RasterPos4dv": 79,
    108     "RasterPos4f": 80,
    109     "RasterPos4fv": 81,
    110     "RasterPos4i": 82,
    111     "RasterPos4iv": 83,
    112     "RasterPos4s": 84,
    113     "RasterPos4sv": 85,
    114     "Rectd": 86,
    115     "Rectdv": 87,
    116     "Rectf": 88,
    117     "Rectfv": 89,
    118     "Recti": 90,
    119     "Rectiv": 91,
    120     "Rects": 92,
    121     "Rectsv": 93,
    122     "TexCoord1d": 94,
    123     "TexCoord1dv": 95,
    124     "TexCoord1f": 96,
    125     "TexCoord1fv": 97,
    126     "TexCoord1i": 98,
    127     "TexCoord1iv": 99,
    128     "TexCoord1s": 100,
    129     "TexCoord1sv": 101,
    130     "TexCoord2d": 102,
    131     "TexCoord2dv": 103,
    132     "TexCoord2f": 104,
    133     "TexCoord2fv": 105,
    134     "TexCoord2i": 106,
    135     "TexCoord2iv": 107,
    136     "TexCoord2s": 108,
    137     "TexCoord2sv": 109,
    138     "TexCoord3d": 110,
    139     "TexCoord3dv": 111,
    140     "TexCoord3f": 112,
    141     "TexCoord3fv": 113,
    142     "TexCoord3i": 114,
    143     "TexCoord3iv": 115,
    144     "TexCoord3s": 116,
    145     "TexCoord3sv": 117,
    146     "TexCoord4d": 118,
    147     "TexCoord4dv": 119,
    148     "TexCoord4f": 120,
    149     "TexCoord4fv": 121,
    150     "TexCoord4i": 122,
    151     "TexCoord4iv": 123,
    152     "TexCoord4s": 124,
    153     "TexCoord4sv": 125,
    154     "Vertex2d": 126,
    155     "Vertex2dv": 127,
    156     "Vertex2f": 128,
    157     "Vertex2fv": 129,
    158     "Vertex2i": 130,
    159     "Vertex2iv": 131,
    160     "Vertex2s": 132,
    161     "Vertex2sv": 133,
    162     "Vertex3d": 134,
    163     "Vertex3dv": 135,
    164     "Vertex3f": 136,
    165     "Vertex3fv": 137,
    166     "Vertex3i": 138,
    167     "Vertex3iv": 139,
    168     "Vertex3s": 140,
    169     "Vertex3sv": 141,
    170     "Vertex4d": 142,
    171     "Vertex4dv": 143,
    172     "Vertex4f": 144,
    173     "Vertex4fv": 145,
    174     "Vertex4i": 146,
    175     "Vertex4iv": 147,
    176     "Vertex4s": 148,
    177     "Vertex4sv": 149,
    178     "ClipPlane": 150,
    179     "ColorMaterial": 151,
    180     "CullFace": 152,
    181     "Fogf": 153,
    182     "Fogfv": 154,
    183     "Fogi": 155,
    184     "Fogiv": 156,
    185     "FrontFace": 157,
    186     "Hint": 158,
    187     "Lightf": 159,
    188     "Lightfv": 160,
    189     "Lighti": 161,
    190     "Lightiv": 162,
    191     "LightModelf": 163,
    192     "LightModelfv": 164,
    193     "LightModeli": 165,
    194     "LightModeliv": 166,
    195     "LineStipple": 167,
    196     "LineWidth": 168,
    197     "Materialf": 169,
    198     "Materialfv": 170,
    199     "Materiali": 171,
    200     "Materialiv": 172,
    201     "PointSize": 173,
    202     "PolygonMode": 174,
    203     "PolygonStipple": 175,
    204     "Scissor": 176,
    205     "ShadeModel": 177,
    206     "TexParameterf": 178,
    207     "TexParameterfv": 179,
    208     "TexParameteri": 180,
    209     "TexParameteriv": 181,
    210     "TexImage1D": 182,
    211     "TexImage2D": 183,
    212     "TexEnvf": 184,
    213     "TexEnvfv": 185,
    214     "TexEnvi": 186,
    215     "TexEnviv": 187,
    216     "TexGend": 188,
    217     "TexGendv": 189,
    218     "TexGenf": 190,
    219     "TexGenfv": 191,
    220     "TexGeni": 192,
    221     "TexGeniv": 193,
    222     "FeedbackBuffer": 194,
    223     "SelectBuffer": 195,
    224     "RenderMode": 196,
    225     "InitNames": 197,
    226     "LoadName": 198,
    227     "PassThrough": 199,
    228     "PopName": 200,
    229     "PushName": 201,
    230     "DrawBuffer": 202,
    231     "Clear": 203,
    232     "ClearAccum": 204,
    233     "ClearIndex": 205,
    234     "ClearColor": 206,
    235     "ClearStencil": 207,
    236     "ClearDepth": 208,
    237     "StencilMask": 209,
    238     "ColorMask": 210,
    239     "DepthMask": 211,
    240     "IndexMask": 212,
    241     "Accum": 213,
    242     "Disable": 214,
    243     "Enable": 215,
    244     "Finish": 216,
    245     "Flush": 217,
    246     "PopAttrib": 218,
    247     "PushAttrib": 219,
    248     "Map1d": 220,
    249     "Map1f": 221,
    250     "Map2d": 222,
    251     "Map2f": 223,
    252     "MapGrid1d": 224,
    253     "MapGrid1f": 225,
    254     "MapGrid2d": 226,
    255     "MapGrid2f": 227,
    256     "EvalCoord1d": 228,
    257     "EvalCoord1dv": 229,
    258     "EvalCoord1f": 230,
    259     "EvalCoord1fv": 231,
    260     "EvalCoord2d": 232,
    261     "EvalCoord2dv": 233,
    262     "EvalCoord2f": 234,
    263     "EvalCoord2fv": 235,
    264     "EvalMesh1": 236,
    265     "EvalPoint1": 237,
    266     "EvalMesh2": 238,
    267     "EvalPoint2": 239,
    268     "AlphaFunc": 240,
    269     "BlendFunc": 241,
    270     "LogicOp": 242,
    271     "StencilFunc": 243,
    272     "StencilOp": 244,
    273     "DepthFunc": 245,
    274     "PixelZoom": 246,
    275     "PixelTransferf": 247,
    276     "PixelTransferi": 248,
    277     "PixelStoref": 249,
    278     "PixelStorei": 250,
    279     "PixelMapfv": 251,
    280     "PixelMapuiv": 252,
    281     "PixelMapusv": 253,
    282     "ReadBuffer": 254,
    283     "CopyPixels": 255,
    284     "ReadPixels": 256,
    285     "DrawPixels": 257,
    286     "GetBooleanv": 258,
    287     "GetClipPlane": 259,
    288     "GetDoublev": 260,
    289     "GetError": 261,
    290     "GetFloatv": 262,
    291     "GetIntegerv": 263,
    292     "GetLightfv": 264,
    293     "GetLightiv": 265,
    294     "GetMapdv": 266,
    295     "GetMapfv": 267,
    296     "GetMapiv": 268,
    297     "GetMaterialfv": 269,
    298     "GetMaterialiv": 270,
    299     "GetPixelMapfv": 271,
    300     "GetPixelMapuiv": 272,
    301     "GetPixelMapusv": 273,
    302     "GetPolygonStipple": 274,
    303     "GetString": 275,
    304     "GetTexEnvfv": 276,
    305     "GetTexEnviv": 277,
    306     "GetTexGendv": 278,
    307     "GetTexGenfv": 279,
    308     "GetTexGeniv": 280,
    309     "GetTexImage": 281,
    310     "GetTexParameterfv": 282,
    311     "GetTexParameteriv": 283,
    312     "GetTexLevelParameterfv": 284,
    313     "GetTexLevelParameteriv": 285,
    314     "IsEnabled": 286,
    315     "IsList": 287,
    316     "DepthRange": 288,
    317     "Frustum": 289,
    318     "LoadIdentity": 290,
    319     "LoadMatrixf": 291,
    320     "LoadMatrixd": 292,
    321     "MatrixMode": 293,
    322     "MultMatrixf": 294,
    323     "MultMatrixd": 295,
    324     "Ortho": 296,
    325     "PopMatrix": 297,
    326     "PushMatrix": 298,
    327     "Rotated": 299,
    328     "Rotatef": 300,
    329     "Scaled": 301,
    330     "Scalef": 302,
    331     "Translated": 303,
    332     "Translatef": 304,
    333     "Viewport": 305,
    334     "ArrayElement": 306,
    335     "ColorPointer": 308,
    336     "DisableClientState": 309,
    337     "DrawArrays": 310,
    338     "DrawElements": 311,
    339     "EdgeFlagPointer": 312,
    340     "EnableClientState": 313,
    341     "GetPointerv": 329,
    342     "IndexPointer": 314,
    343     "InterleavedArrays": 317,
    344     "NormalPointer": 318,
    345     "TexCoordPointer": 320,
    346     "VertexPointer": 321,
    347     "PolygonOffset": 319,
    348     "CopyTexImage1D": 323,
    349     "CopyTexImage2D": 324,
    350     "CopyTexSubImage1D": 325,
    351     "CopyTexSubImage2D": 326,
    352     "TexSubImage1D": 332,
    353     "TexSubImage2D": 333,
    354     "AreTexturesResident": 322,
    355     "BindTexture": 307,
    356     "DeleteTextures": 327,
    357     "GenTextures": 328,
    358     "IsTexture": 330,
    359     "PrioritizeTextures": 331,
    360     "Indexub": 315,
    361     "Indexubv": 316,
    362     "PopClientAttrib": 334,
    363     "PushClientAttrib": 335,
    364     "BlendColor": 336,
    365     "BlendEquation": 337,
    366     "DrawRangeElements": 338,
    367     "ColorTable": 339,
    368     "ColorTableParameterfv": 340,
    369     "ColorTableParameteriv": 341,
    370     "CopyColorTable": 342,
    371     "GetColorTable": 343,
    372     "GetColorTableParameterfv": 344,
    373     "GetColorTableParameteriv": 345,
    374     "ColorSubTable": 346,
    375     "CopyColorSubTable": 347,
    376     "ConvolutionFilter1D": 348,
    377     "ConvolutionFilter2D": 349,
    378     "ConvolutionParameterf": 350,
    379     "ConvolutionParameterfv": 351,
    380     "ConvolutionParameteri": 352,
    381     "ConvolutionParameteriv": 353,
    382     "CopyConvolutionFilter1D": 354,
    383     "CopyConvolutionFilter2D": 355,
    384     "GetConvolutionFilter": 356,
    385     "GetConvolutionParameterfv": 357,
    386     "GetConvolutionParameteriv": 358,
    387     "GetSeparableFilter": 359,
    388     "SeparableFilter2D": 360,
    389     "GetHistogram": 361,
    390     "GetHistogramParameterfv": 362,
    391     "GetHistogramParameteriv": 363,
    392     "GetMinmax": 364,
    393     "GetMinmaxParameterfv": 365,
    394     "GetMinmaxParameteriv": 366,
    395     "Histogram": 367,
    396     "Minmax": 368,
    397     "ResetHistogram": 369,
    398     "ResetMinmax": 370,
    399     "TexImage3D": 371,
    400     "TexSubImage3D": 372,
    401     "CopyTexSubImage3D": 373,
    402     "ActiveTexture": 374,
    403     "ClientActiveTexture": 375,
    404     "MultiTexCoord1d": 376,
    405     "MultiTexCoord1dv": 377,
    406     "MultiTexCoord1fARB": 378,
    407     "MultiTexCoord1fvARB": 379,
    408     "MultiTexCoord1i": 380,
    409     "MultiTexCoord1iv": 381,
    410     "MultiTexCoord1s": 382,
    411     "MultiTexCoord1sv": 383,
    412     "MultiTexCoord2d": 384,
    413     "MultiTexCoord2dv": 385,
    414     "MultiTexCoord2fARB": 386,
    415     "MultiTexCoord2fvARB": 387,
    416     "MultiTexCoord2i": 388,
    417     "MultiTexCoord2iv": 389,
    418     "MultiTexCoord2s": 390,
    419     "MultiTexCoord2sv": 391,
    420     "MultiTexCoord3d": 392,
    421     "MultiTexCoord3dv": 393,
    422     "MultiTexCoord3fARB": 394,
    423     "MultiTexCoord3fvARB": 395,
    424     "MultiTexCoord3i": 396,
    425     "MultiTexCoord3iv": 397,
    426     "MultiTexCoord3s": 398,
    427     "MultiTexCoord3sv": 399,
    428     "MultiTexCoord4d": 400,
    429     "MultiTexCoord4dv": 401,
    430     "MultiTexCoord4fARB": 402,
    431     "MultiTexCoord4fvARB": 403,
    432     "MultiTexCoord4i": 404,
    433     "MultiTexCoord4iv": 405,
    434     "MultiTexCoord4s": 406,
    435     "MultiTexCoord4sv": 407
    436 }
    437 
    438 functions = [
    439     "Accum",
    440     "ActiveShaderProgram",
    441     "ActiveTexture",
    442     "ActiveTextureARB",
    443     "AlphaFunc",
    444     "AlphaFuncx",
    445     "AreTexturesResident",
    446     "AreTexturesResidentEXT",
    447     "ArrayElement",
    448     "ArrayElementEXT",
    449     "AttachObjectARB",
    450     "AttachShader",
    451     "Begin",
    452     "BeginConditionalRender",
    453     "BeginConditionalRenderNV",
    454     "BeginQuery",
    455     "BeginQueryARB",
    456     "BeginQueryIndexed",
    457     "BeginTransformFeedback",
    458     "BindAttribLocation",
    459     "BindAttribLocationARB",
    460     "BindBuffer",
    461     "BindBufferARB",
    462     "BindBufferBase",
    463     "BindBufferRange",
    464     "BindBuffersBase",
    465     "BindBuffersRange",
    466     "BindFragDataLocation",
    467     "BindFragDataLocationEXT",
    468     "BindFragDataLocationIndexed",
    469     "BindFramebuffer",
    470     "BindFramebufferEXT",
    471     "BindImageTexture",
    472     "BindImageTextures",
    473     "BindProgramARB",
    474     "BindProgramPipeline",
    475     "BindRenderbuffer",
    476     "BindRenderbufferEXT",
    477     "BindSampler",
    478     "BindSamplers",
    479     "BindTexture",
    480     "BindTextureEXT",
    481     "BindTextures",
    482     "BindTransformFeedback",
    483     "BindVertexArray",
    484     "BindVertexBuffer",
    485     "BindVertexBuffers",
    486     "Bitmap",
    487     "BlendBarrier",
    488     "BlendColor",
    489     "BlendColorEXT",
    490     "BlendEquation",
    491     "BlendEquationEXT",
    492     "BlendEquationi",
    493     "BlendEquationiARB",
    494     "BlendEquationSeparate",
    495     "BlendEquationSeparatei",
    496     "BlendEquationSeparateiARB",
    497     "BlendFunc",
    498     "BlendFunci",
    499     "BlendFunciARB",
    500     "BlendFuncSeparate",
    501     "BlendFuncSeparateEXT",
    502     "BlendFuncSeparatei",
    503     "BlendFuncSeparateiARB",
    504     "BlitFramebuffer",
    505     "BufferData",
    506     "BufferDataARB",
    507     "BufferStorage",
    508     "BufferSubData",
    509     "BufferSubDataARB",
    510     "CallList",
    511     "CallLists",
    512     "CheckFramebufferStatus",
    513     "CheckFramebufferStatusEXT",
    514     "ClampColor",
    515     "ClampColorARB",
    516     "Clear",
    517     "ClearAccum",
    518     "ClearBufferData",
    519     "ClearBufferfi",
    520     "ClearBufferfv",
    521     "ClearBufferiv",
    522     "ClearBufferSubData",
    523     "ClearBufferuiv",
    524     "ClearColor",
    525     "ClearColorIiEXT",
    526     "ClearColorIuiEXT",
    527     "ClearColorx",
    528     "ClearDepth",
    529     "ClearDepthf",
    530     "ClearDepthx",
    531     "ClearIndex",
    532     "ClearStencil",
    533     "ClearTexImage",
    534     "ClearTexSubImage",
    535     "ClientActiveTexture",
    536     "ClientActiveTextureARB",
    537     "ClientWaitSync",
    538     "ClipPlane",
    539     "ClipPlanef",
    540     "ClipPlanex",
    541     "Color3b",
    542     "Color3bv",
    543     "Color3d",
    544     "Color3dv",
    545     "Color3f",
    546     "Color3fv",
    547     "Color3i",
    548     "Color3iv",
    549     "Color3s",
    550     "Color3sv",
    551     "Color3ub",
    552     "Color3ubv",
    553     "Color3ui",
    554     "Color3uiv",
    555     "Color3us",
    556     "Color3usv",
    557     "Color4b",
    558     "Color4bv",
    559     "Color4d",
    560     "Color4dv",
    561     "Color4f",
    562     "Color4fv",
    563     "Color4i",
    564     "Color4iv",
    565     "Color4s",
    566     "Color4sv",
    567     "Color4ub",
    568     "Color4ubv",
    569     "Color4ui",
    570     "Color4uiv",
    571     "Color4us",
    572     "Color4usv",
    573     "Color4x",
    574     "ColorMask",
    575     "ColorMaski",
    576     "ColorMaskIndexedEXT",
    577     "ColorMaterial",
    578     "ColorP3ui",
    579     "ColorP3uiv",
    580     "ColorP4ui",
    581     "ColorP4uiv",
    582     "ColorPointer",
    583     "ColorPointerEXT",
    584     "ColorSubTable",
    585     "ColorTable",
    586     "ColorTableParameterfv",
    587     "ColorTableParameteriv",
    588     "CompileShader",
    589     "CompileShaderARB",
    590     "CompressedTexImage1D",
    591     "CompressedTexImage1DARB",
    592     "CompressedTexImage2D",
    593     "CompressedTexImage2DARB",
    594     "CompressedTexImage3D",
    595     "CompressedTexImage3DARB",
    596     "CompressedTexSubImage1D",
    597     "CompressedTexSubImage1DARB",
    598     "CompressedTexSubImage2D",
    599     "CompressedTexSubImage2DARB",
    600     "CompressedTexSubImage3D",
    601     "CompressedTexSubImage3DARB",
    602     "ConvolutionFilter1D",
    603     "ConvolutionFilter2D",
    604     "ConvolutionParameterf",
    605     "ConvolutionParameterfv",
    606     "ConvolutionParameteri",
    607     "ConvolutionParameteriv",
    608     "CopyBufferSubData",
    609     "CopyColorSubTable",
    610     "CopyColorTable",
    611     "CopyConvolutionFilter1D",
    612     "CopyConvolutionFilter2D",
    613     "CopyImageSubData",
    614     "CopyPixels",
    615     "CopyTexImage1D",
    616     "CopyTexImage2D",
    617     "CopyTexSubImage1D",
    618     "CopyTexSubImage2D",
    619     "CopyTexSubImage3D",
    620     "CopyTexSubImage3DEXT",
    621     "CreateProgram",
    622     "CreateProgramObjectARB",
    623     "CreateShader",
    624     "CreateShaderObjectARB",
    625     "CreateShaderProgramv",
    626     "CullFace",
    627     "DebugMessageCallback",
    628     "DebugMessageCallbackARB",
    629     "DebugMessageControl",
    630     "DebugMessageControlARB",
    631     "DebugMessageInsert",
    632     "DebugMessageInsertARB",
    633     "DeleteBuffers",
    634     "DeleteBuffersARB",
    635     "DeleteFramebuffers",
    636     "DeleteFramebuffersEXT",
    637     "DeleteLists",
    638     "DeleteObjectARB",
    639     "DeleteProgram",
    640     "DeleteProgramPipelines",
    641     "DeleteProgramsARB",
    642     "DeleteQueries",
    643     "DeleteQueriesARB",
    644     "DeleteRenderbuffers",
    645     "DeleteRenderbuffersEXT",
    646     "DeleteSamplers",
    647     "DeleteShader",
    648     "DeleteSync",
    649     "DeleteTextures",
    650     "DeleteTexturesEXT",
    651     "DeleteTransformFeedbacks",
    652     "DeleteVertexArrays",
    653     "DepthFunc",
    654     "DepthMask",
    655     "DepthRange",
    656     "DepthRangeArrayv",
    657     "DepthRangef",
    658     "DepthRangeIndexed",
    659     "DepthRangex",
    660     "DetachObjectARB",
    661     "DetachShader",
    662     "Disable",
    663     "DisableClientState",
    664     "Disablei",
    665     "DisableIndexedEXT",
    666     "DisableVertexAttribArray",
    667     "DisableVertexAttribArrayARB",
    668     "DispatchCompute",
    669     "DispatchComputeIndirect",
    670     "DrawArrays",
    671     "DrawArraysEXT",
    672     "DrawArraysIndirect",
    673     "DrawArraysInstanced",
    674     "DrawArraysInstancedARB",
    675     "DrawArraysInstancedBaseInstance",
    676     "DrawArraysInstancedEXT",
    677     "DrawBuffer",
    678     "DrawBuffers",
    679     "DrawBuffersARB",
    680     "DrawBuffersATI",
    681     "DrawElements",
    682     "DrawElementsBaseVertex",
    683     "DrawElementsIndirect",
    684     "DrawElementsInstanced",
    685     "DrawElementsInstancedARB",
    686     "DrawElementsInstancedBaseInstance",
    687     "DrawElementsInstancedBaseVertex",
    688     "DrawElementsInstancedBaseVertexBaseInstance",
    689     "DrawElementsInstancedEXT",
    690     "DrawPixels",
    691     "DrawRangeElements",
    692     "DrawRangeElementsBaseVertex",
    693     "DrawRangeElementsEXT",
    694     "DrawTransformFeedback",
    695     "DrawTransformFeedbackInstanced",
    696     "DrawTransformFeedbackStream",
    697     "DrawTransformFeedbackStreamInstanced",
    698     "EdgeFlag",
    699     "EdgeFlagPointer",
    700     "EdgeFlagPointerEXT",
    701     "EdgeFlagv",
    702     "Enable",
    703     "EnableClientState",
    704     "Enablei",
    705     "EnableIndexedEXT",
    706     "EnableVertexAttribArray",
    707     "EnableVertexAttribArrayARB",
    708     "End",
    709     "EndConditionalRender",
    710     "EndConditionalRenderNV",
    711     "EndList",
    712     "EndQuery",
    713     "EndQueryARB",
    714     "EndQueryIndexed",
    715     "EndTransformFeedback",
    716     "EvalCoord1d",
    717     "EvalCoord1dv",
    718     "EvalCoord1f",
    719     "EvalCoord1fv",
    720     "EvalCoord2d",
    721     "EvalCoord2dv",
    722     "EvalCoord2f",
    723     "EvalCoord2fv",
    724     "EvalMesh1",
    725     "EvalMesh2",
    726     "EvalPoint1",
    727     "EvalPoint2",
    728     "FeedbackBuffer",
    729     "FenceSync",
    730     "Finish",
    731     "Flush",
    732     "FlushMappedBufferRange",
    733     "FogCoordd",
    734     "FogCoorddEXT",
    735     "FogCoorddv",
    736     "FogCoorddvEXT",
    737     "FogCoordf",
    738     "FogCoordfEXT",
    739     "FogCoordfv",
    740     "FogCoordfvEXT",
    741     "FogCoordPointer",
    742     "FogCoordPointerEXT",
    743     "Fogf",
    744     "Fogfv",
    745     "Fogi",
    746     "Fogiv",
    747     "Fogx",
    748     "Fogxv",
    749     "FramebufferParameteri",
    750     "FramebufferRenderbuffer",
    751     "FramebufferRenderbufferEXT",
    752     "FramebufferTexture",
    753     "FramebufferTexture1D",
    754     "FramebufferTexture1DEXT",
    755     "FramebufferTexture2D",
    756     "FramebufferTexture2DEXT",
    757     "FramebufferTexture3D",
    758     "FramebufferTexture3DEXT",
    759     "FramebufferTextureARB",
    760     "FramebufferTextureLayer",
    761     "FramebufferTextureLayerARB",
    762     "FramebufferTextureLayerEXT",
    763     "FrontFace",
    764     "Frustum",
    765     "Frustumf",
    766     "Frustumx",
    767     "GenBuffers",
    768     "GenBuffersARB",
    769     "GenerateMipmap",
    770     "GenerateMipmapEXT",
    771     "GenFramebuffers",
    772     "GenFramebuffersEXT",
    773     "GenLists",
    774     "GenProgramPipelines",
    775     "GenProgramsARB",
    776     "GenQueries",
    777     "GenQueriesARB",
    778     "GenRenderbuffers",
    779     "GenRenderbuffersEXT",
    780     "GenSamplers",
    781     "GenTextures",
    782     "GenTexturesEXT",
    783     "GenTransformFeedbacks",
    784     "GenVertexArrays",
    785     "GetActiveAtomicCounterBufferiv",
    786     "GetActiveAttrib",
    787     "GetActiveAttribARB",
    788     "GetActiveUniform",
    789     "GetActiveUniformARB",
    790     "GetActiveUniformBlockiv",
    791     "GetActiveUniformBlockName",
    792     "GetActiveUniformName",
    793     "GetActiveUniformsiv",
    794     "GetAttachedObjectsARB",
    795     "GetAttachedShaders",
    796     "GetAttribLocation",
    797     "GetAttribLocationARB",
    798     "GetBooleani_v",
    799     "GetBooleanIndexedvEXT",
    800     "GetBooleanv",
    801     "GetBufferParameteri64v",
    802     "GetBufferParameteriv",
    803     "GetBufferParameterivARB",
    804     "GetBufferPointerv",
    805     "GetBufferPointervARB",
    806     "GetBufferSubData",
    807     "GetBufferSubDataARB",
    808     "GetClipPlane",
    809     "GetClipPlanef",
    810     "GetClipPlanex",
    811     "GetColorTable",
    812     "GetColorTableParameterfv",
    813     "GetColorTableParameteriv",
    814     "GetCompressedTexImage",
    815     "GetCompressedTexImageARB",
    816     "GetConvolutionFilter",
    817     "GetConvolutionParameterfv",
    818     "GetConvolutionParameteriv",
    819     "GetDebugMessageLog",
    820     "GetDebugMessageLogARB",
    821     "GetDoublei_v",
    822     "GetDoublev",
    823     "GetError",
    824     "GetFixedv",
    825     "GetFloati_v",
    826     "GetFloatv",
    827     "GetFragDataIndex",
    828     "GetFragDataLocation",
    829     "GetFragDataLocationEXT",
    830     "GetFramebufferAttachmentParameteriv",
    831     "GetFramebufferAttachmentParameterivEXT",
    832     "GetFramebufferParameteriv",
    833     "GetGraphicsResetStatus",
    834     "GetGraphicsResetStatusARB",
    835     "GetHandleARB",
    836     "GetHistogram",
    837     "GetHistogramParameterfv",
    838     "GetHistogramParameteriv",
    839     "GetInfoLogARB",
    840     "GetInteger64i_v",
    841     "GetInteger64v",
    842     "GetIntegeri_v",
    843     "GetIntegerIndexedvEXT",
    844     "GetIntegerv",
    845     "GetLightfv",
    846     "GetLightiv",
    847     "GetLightxv",
    848     "GetMapdv",
    849     "GetMapfv",
    850     "GetMapiv",
    851     "GetMaterialfv",
    852     "GetMaterialiv",
    853     "GetMaterialxv",
    854     "GetMinmax",
    855     "GetMinmaxParameterfv",
    856     "GetMinmaxParameteriv",
    857     "GetMultisamplefv",
    858     "GetnColorTableARB",
    859     "GetnCompressedTexImageARB",
    860     "GetnConvolutionFilterARB",
    861     "GetnHistogramARB",
    862     "GetnMapdvARB",
    863     "GetnMapfvARB",
    864     "GetnMapivARB",
    865     "GetnMinmaxARB",
    866     "GetnPixelMapfvARB",
    867     "GetnPixelMapuivARB",
    868     "GetnPixelMapusvARB",
    869     "GetnPolygonStippleARB",
    870     "GetnSeparableFilterARB",
    871     "GetnTexImageARB",
    872     "GetnUniformdvARB",
    873     "GetnUniformfv",
    874     "GetnUniformfvARB",
    875     "GetnUniformiv",
    876     "GetnUniformivARB",
    877     "GetnUniformuiv",
    878     "GetnUniformuivARB",
    879     "GetObjectLabel",
    880     "GetObjectParameterfvARB",
    881     "GetObjectParameterivARB",
    882     "GetObjectPtrLabel",
    883     "GetPixelMapfv",
    884     "GetPixelMapuiv",
    885     "GetPixelMapusv",
    886     "GetPointerv",
    887     "GetPointervEXT",
    888     "GetPolygonStipple",
    889     "GetProgramBinary",
    890     "GetProgramEnvParameterdvARB",
    891     "GetProgramEnvParameterfvARB",
    892     "GetProgramInfoLog",
    893     "GetProgramInterfaceiv",
    894     "GetProgramiv",
    895     "GetProgramivARB",
    896     "GetProgramLocalParameterdvARB",
    897     "GetProgramLocalParameterfvARB",
    898     "GetProgramPipelineInfoLog",
    899     "GetProgramPipelineiv",
    900     "GetProgramResourceIndex",
    901     "GetProgramResourceiv",
    902     "GetProgramResourceLocation",
    903     "GetProgramResourceName",
    904     "GetProgramStringARB",
    905     "GetQueryIndexediv",
    906     "GetQueryiv",
    907     "GetQueryivARB",
    908     "GetQueryObjectiv",
    909     "GetQueryObjectivARB",
    910     "GetQueryObjectuiv",
    911     "GetQueryObjectuivARB",
    912     "GetRenderbufferParameteriv",
    913     "GetRenderbufferParameterivEXT",
    914     "GetSamplerParameterfv",
    915     "GetSamplerParameterIiv",
    916     "GetSamplerParameterIuiv",
    917     "GetSamplerParameteriv",
    918     "GetSeparableFilter",
    919     "GetShaderInfoLog",
    920     "GetShaderiv",
    921     "GetShaderPrecisionFormat",
    922     "GetShaderSource",
    923     "GetShaderSourceARB",
    924     "GetString",
    925     "GetStringi",
    926     "GetSynciv",
    927     "GetTexEnvfv",
    928     "GetTexEnviv",
    929     "GetTexEnvxv",
    930     "GetTexGendv",
    931     "GetTexGenfv",
    932     "GetTexGeniv",
    933     "GetTexImage",
    934     "GetTexLevelParameterfv",
    935     "GetTexLevelParameteriv",
    936     "GetTexParameterfv",
    937     "GetTexParameterIiv",
    938     "GetTexParameterIivEXT",
    939     "GetTexParameterIuiv",
    940     "GetTexParameterIuivEXT",
    941     "GetTexParameteriv",
    942     "GetTexParameterxv",
    943     "GetTransformFeedbackVarying",
    944     "GetUniformBlockIndex",
    945     "GetUniformfv",
    946     "GetUniformfvARB",
    947     "GetUniformIndices",
    948     "GetUniformiv",
    949     "GetUniformivARB",
    950     "GetUniformLocation",
    951     "GetUniformLocationARB",
    952     "GetUniformuiv",
    953     "GetUniformuivEXT",
    954     "GetVertexAttribdv",
    955     "GetVertexAttribdvARB",
    956     "GetVertexAttribfv",
    957     "GetVertexAttribfvARB",
    958     "GetVertexAttribIiv",
    959     "GetVertexAttribIivEXT",
    960     "GetVertexAttribIuiv",
    961     "GetVertexAttribIuivEXT",
    962     "GetVertexAttribiv",
    963     "GetVertexAttribivARB",
    964     "GetVertexAttribPointerv",
    965     "GetVertexAttribPointervARB",
    966     "Hint",
    967     "Histogram",
    968     "Indexd",
    969     "Indexdv",
    970     "Indexf",
    971     "Indexfv",
    972     "Indexi",
    973     "Indexiv",
    974     "IndexMask",
    975     "IndexPointer",
    976     "IndexPointerEXT",
    977     "Indexs",
    978     "Indexsv",
    979     "Indexub",
    980     "Indexubv",
    981     "InitNames",
    982     "InterleavedArrays",
    983     "InvalidateBufferData",
    984     "InvalidateBufferSubData",
    985     "InvalidateFramebuffer",
    986     "InvalidateSubFramebuffer",
    987     "InvalidateTexImage",
    988     "InvalidateTexSubImage",
    989     "IsBuffer",
    990     "IsBufferARB",
    991     "IsEnabled",
    992     "IsEnabledi",
    993     "IsEnabledIndexedEXT",
    994     "IsFramebuffer",
    995     "IsFramebufferEXT",
    996     "IsList",
    997     "IsProgram",
    998     "IsProgramARB",
    999     "IsProgramPipeline",
   1000     "IsQuery",
   1001     "IsQueryARB",
   1002     "IsRenderbuffer",
   1003     "IsRenderbufferEXT",
   1004     "IsSampler",
   1005     "IsShader",
   1006     "IsSync",
   1007     "IsTexture",
   1008     "IsTextureEXT",
   1009     "IsTransformFeedback",
   1010     "IsVertexArray",
   1011     "Lightf",
   1012     "Lightfv",
   1013     "Lighti",
   1014     "Lightiv",
   1015     "LightModelf",
   1016     "LightModelfv",
   1017     "LightModeli",
   1018     "LightModeliv",
   1019     "LightModelx",
   1020     "LightModelxv",
   1021     "Lightx",
   1022     "Lightxv",
   1023     "LineStipple",
   1024     "LineWidth",
   1025     "LineWidthx",
   1026     "LinkProgram",
   1027     "LinkProgramARB",
   1028     "ListBase",
   1029     "LoadIdentity",
   1030     "LoadMatrixd",
   1031     "LoadMatrixf",
   1032     "LoadMatrixx",
   1033     "LoadName",
   1034     "LoadTransposeMatrixd",
   1035     "LoadTransposeMatrixdARB",
   1036     "LoadTransposeMatrixf",
   1037     "LoadTransposeMatrixfARB",
   1038     "LockArraysEXT",
   1039     "LogicOp",
   1040     "Map1d",
   1041     "Map1f",
   1042     "Map2d",
   1043     "Map2f",
   1044     "MapBuffer",
   1045     "MapBufferARB",
   1046     "MapBufferRange",
   1047     "MapGrid1d",
   1048     "MapGrid1f",
   1049     "MapGrid2d",
   1050     "MapGrid2f",
   1051     "Materialf",
   1052     "Materialfv",
   1053     "Materiali",
   1054     "Materialiv",
   1055     "Materialx",
   1056     "Materialxv",
   1057     "MatrixMode",
   1058     "MemoryBarrier",
   1059     "MemoryBarrierByRegion",
   1060     "Minmax",
   1061     "MinSampleShading",
   1062     "MinSampleShadingARB",
   1063     "MultiDrawArrays",
   1064     "MultiDrawArraysEXT",
   1065     "MultiDrawArraysIndirect",
   1066     "MultiDrawElements",
   1067     "MultiDrawElementsBaseVertex",
   1068     "MultiDrawElementsEXT",
   1069     "MultiDrawElementsIndirect",
   1070     "MultiTexCoord1d",
   1071     "MultiTexCoord1dARB",
   1072     "MultiTexCoord1dv",
   1073     "MultiTexCoord1dvARB",
   1074     "MultiTexCoord1f",
   1075     "MultiTexCoord1fARB",
   1076     "MultiTexCoord1fv",
   1077     "MultiTexCoord1fvARB",
   1078     "MultiTexCoord1i",
   1079     "MultiTexCoord1iARB",
   1080     "MultiTexCoord1iv",
   1081     "MultiTexCoord1ivARB",
   1082     "MultiTexCoord1s",
   1083     "MultiTexCoord1sARB",
   1084     "MultiTexCoord1sv",
   1085     "MultiTexCoord1svARB",
   1086     "MultiTexCoord2d",
   1087     "MultiTexCoord2dARB",
   1088     "MultiTexCoord2dv",
   1089     "MultiTexCoord2dvARB",
   1090     "MultiTexCoord2f",
   1091     "MultiTexCoord2fARB",
   1092     "MultiTexCoord2fv",
   1093     "MultiTexCoord2fvARB",
   1094     "MultiTexCoord2i",
   1095     "MultiTexCoord2iARB",
   1096     "MultiTexCoord2iv",
   1097     "MultiTexCoord2ivARB",
   1098     "MultiTexCoord2s",
   1099     "MultiTexCoord2sARB",
   1100     "MultiTexCoord2sv",
   1101     "MultiTexCoord2svARB",
   1102     "MultiTexCoord3d",
   1103     "MultiTexCoord3dARB",
   1104     "MultiTexCoord3dv",
   1105     "MultiTexCoord3dvARB",
   1106     "MultiTexCoord3f",
   1107     "MultiTexCoord3fARB",
   1108     "MultiTexCoord3fv",
   1109     "MultiTexCoord3fvARB",
   1110     "MultiTexCoord3i",
   1111     "MultiTexCoord3iARB",
   1112     "MultiTexCoord3iv",
   1113     "MultiTexCoord3ivARB",
   1114     "MultiTexCoord3s",
   1115     "MultiTexCoord3sARB",
   1116     "MultiTexCoord3sv",
   1117     "MultiTexCoord3svARB",
   1118     "MultiTexCoord4d",
   1119     "MultiTexCoord4dARB",
   1120     "MultiTexCoord4dv",
   1121     "MultiTexCoord4dvARB",
   1122     "MultiTexCoord4f",
   1123     "MultiTexCoord4fARB",
   1124     "MultiTexCoord4fv",
   1125     "MultiTexCoord4fvARB",
   1126     "MultiTexCoord4i",
   1127     "MultiTexCoord4iARB",
   1128     "MultiTexCoord4iv",
   1129     "MultiTexCoord4ivARB",
   1130     "MultiTexCoord4s",
   1131     "MultiTexCoord4sARB",
   1132     "MultiTexCoord4sv",
   1133     "MultiTexCoord4svARB",
   1134     "MultiTexCoord4x",
   1135     "MultiTexCoordP1ui",
   1136     "MultiTexCoordP1uiv",
   1137     "MultiTexCoordP2ui",
   1138     "MultiTexCoordP2uiv",
   1139     "MultiTexCoordP3ui",
   1140     "MultiTexCoordP3uiv",
   1141     "MultiTexCoordP4ui",
   1142     "MultiTexCoordP4uiv",
   1143     "MultMatrixd",
   1144     "MultMatrixf",
   1145     "MultMatrixx",
   1146     "MultTransposeMatrixd",
   1147     "MultTransposeMatrixdARB",
   1148     "MultTransposeMatrixf",
   1149     "MultTransposeMatrixfARB",
   1150     "NewList",
   1151     "Normal3b",
   1152     "Normal3bv",
   1153     "Normal3d",
   1154     "Normal3dv",
   1155     "Normal3f",
   1156     "Normal3fv",
   1157     "Normal3i",
   1158     "Normal3iv",
   1159     "Normal3s",
   1160     "Normal3sv",
   1161     "Normal3x",
   1162     "NormalP3ui",
   1163     "NormalP3uiv",
   1164     "NormalPointer",
   1165     "NormalPointerEXT",
   1166     "ObjectLabel",
   1167     "ObjectPtrLabel",
   1168     "Ortho",
   1169     "Orthof",
   1170     "Orthox",
   1171     "PassThrough",
   1172     "PatchParameteri",
   1173     "PauseTransformFeedback",
   1174     "PixelMapfv",
   1175     "PixelMapuiv",
   1176     "PixelMapusv",
   1177     "PixelStoref",
   1178     "PixelStorei",
   1179     "PixelTransferf",
   1180     "PixelTransferi",
   1181     "PixelZoom",
   1182     "PointParameterf",
   1183     "PointParameterfARB",
   1184     "PointParameterfEXT",
   1185     "PointParameterfv",
   1186     "PointParameterfvARB",
   1187     "PointParameterfvEXT",
   1188     "PointParameteri",
   1189     "PointParameteriv",
   1190     "PointParameterx",
   1191     "PointParameterxv",
   1192     "PointSize",
   1193     "PointSizePointerOES",
   1194     "PointSizex",
   1195     "PolygonMode",
   1196     "PolygonOffset",
   1197     "PolygonOffsetx",
   1198     "PolygonStipple",
   1199     "PopAttrib",
   1200     "PopClientAttrib",
   1201     "PopDebugGroup",
   1202     "PopMatrix",
   1203     "PopName",
   1204     "PrimitiveBoundingBox",
   1205     "PrimitiveRestartIndex",
   1206     "PrimitiveRestartIndexNV",
   1207     "PrimitiveRestartNV",
   1208     "PrioritizeTextures",
   1209     "PrioritizeTexturesEXT",
   1210     "ProgramBinary",
   1211     "ProgramEnvParameter4dARB",
   1212     "ProgramEnvParameter4dvARB",
   1213     "ProgramEnvParameter4fARB",
   1214     "ProgramEnvParameter4fvARB",
   1215     "ProgramLocalParameter4dARB",
   1216     "ProgramLocalParameter4dvARB",
   1217     "ProgramLocalParameter4fARB",
   1218     "ProgramLocalParameter4fvARB",
   1219     "ProgramParameteri",
   1220     "ProgramParameteriARB",
   1221     "ProgramStringARB",
   1222     "ProgramUniform1f",
   1223     "ProgramUniform1fv",
   1224     "ProgramUniform1i",
   1225     "ProgramUniform1iv",
   1226     "ProgramUniform1ui",
   1227     "ProgramUniform1uiv",
   1228     "ProgramUniform2f",
   1229     "ProgramUniform2fv",
   1230     "ProgramUniform2i",
   1231     "ProgramUniform2iv",
   1232     "ProgramUniform2ui",
   1233     "ProgramUniform2uiv",
   1234     "ProgramUniform3f",
   1235     "ProgramUniform3fv",
   1236     "ProgramUniform3i",
   1237     "ProgramUniform3iv",
   1238     "ProgramUniform3ui",
   1239     "ProgramUniform3uiv",
   1240     "ProgramUniform4f",
   1241     "ProgramUniform4fv",
   1242     "ProgramUniform4i",
   1243     "ProgramUniform4iv",
   1244     "ProgramUniform4ui",
   1245     "ProgramUniform4uiv",
   1246     "ProgramUniformMatrix2fv",
   1247     "ProgramUniformMatrix2x3fv",
   1248     "ProgramUniformMatrix2x4fv",
   1249     "ProgramUniformMatrix3fv",
   1250     "ProgramUniformMatrix3x2fv",
   1251     "ProgramUniformMatrix3x4fv",
   1252     "ProgramUniformMatrix4fv",
   1253     "ProgramUniformMatrix4x2fv",
   1254     "ProgramUniformMatrix4x3fv",
   1255     "ProvokingVertex",
   1256     "ProvokingVertexEXT",
   1257     "PushAttrib",
   1258     "PushClientAttrib",
   1259     "PushDebugGroup",
   1260     "PushMatrix",
   1261     "PushName",
   1262     "RasterPos2d",
   1263     "RasterPos2dv",
   1264     "RasterPos2f",
   1265     "RasterPos2fv",
   1266     "RasterPos2i",
   1267     "RasterPos2iv",
   1268     "RasterPos2s",
   1269     "RasterPos2sv",
   1270     "RasterPos3d",
   1271     "RasterPos3dv",
   1272     "RasterPos3f",
   1273     "RasterPos3fv",
   1274     "RasterPos3i",
   1275     "RasterPos3iv",
   1276     "RasterPos3s",
   1277     "RasterPos3sv",
   1278     "RasterPos4d",
   1279     "RasterPos4dv",
   1280     "RasterPos4f",
   1281     "RasterPos4fv",
   1282     "RasterPos4i",
   1283     "RasterPos4iv",
   1284     "RasterPos4s",
   1285     "RasterPos4sv",
   1286     "ReadBuffer",
   1287     "ReadnPixels",
   1288     "ReadnPixelsARB",
   1289     "ReadPixels",
   1290     "Rectd",
   1291     "Rectdv",
   1292     "Rectf",
   1293     "Rectfv",
   1294     "Recti",
   1295     "Rectiv",
   1296     "Rects",
   1297     "Rectsv",
   1298     "ReleaseShaderCompiler",
   1299     "RenderbufferStorage",
   1300     "RenderbufferStorageEXT",
   1301     "RenderbufferStorageMultisample",
   1302     "RenderbufferStorageMultisampleEXT",
   1303     "RenderMode",
   1304     "ResetHistogram",
   1305     "ResetMinmax",
   1306     "ResumeTransformFeedback",
   1307     "Rotated",
   1308     "Rotatef",
   1309     "Rotatex",
   1310     "SampleCoverage",
   1311     "SampleCoverageARB",
   1312     "SampleCoveragex",
   1313     "SampleMaski",
   1314     "SamplerParameterf",
   1315     "SamplerParameterfv",
   1316     "SamplerParameteri",
   1317     "SamplerParameterIiv",
   1318     "SamplerParameterIuiv",
   1319     "SamplerParameteriv",
   1320     "Scaled",
   1321     "Scalef",
   1322     "Scalex",
   1323     "Scissor",
   1324     "ScissorArrayv",
   1325     "ScissorIndexed",
   1326     "ScissorIndexedv",
   1327     "SecondaryColor3b",
   1328     "SecondaryColor3bEXT",
   1329     "SecondaryColor3bv",
   1330     "SecondaryColor3bvEXT",
   1331     "SecondaryColor3d",
   1332     "SecondaryColor3dEXT",
   1333     "SecondaryColor3dv",
   1334     "SecondaryColor3dvEXT",
   1335     "SecondaryColor3f",
   1336     "SecondaryColor3fEXT",
   1337     "SecondaryColor3fv",
   1338     "SecondaryColor3fvEXT",
   1339     "SecondaryColor3i",
   1340     "SecondaryColor3iEXT",
   1341     "SecondaryColor3iv",
   1342     "SecondaryColor3ivEXT",
   1343     "SecondaryColor3s",
   1344     "SecondaryColor3sEXT",
   1345     "SecondaryColor3sv",
   1346     "SecondaryColor3svEXT",
   1347     "SecondaryColor3ub",
   1348     "SecondaryColor3ubEXT",
   1349     "SecondaryColor3ubv",
   1350     "SecondaryColor3ubvEXT",
   1351     "SecondaryColor3ui",
   1352     "SecondaryColor3uiEXT",
   1353     "SecondaryColor3uiv",
   1354     "SecondaryColor3uivEXT",
   1355     "SecondaryColor3us",
   1356     "SecondaryColor3usEXT",
   1357     "SecondaryColor3usv",
   1358     "SecondaryColor3usvEXT",
   1359     "SecondaryColorP3ui",
   1360     "SecondaryColorP3uiv",
   1361     "SecondaryColorPointer",
   1362     "SecondaryColorPointerEXT",
   1363     "SelectBuffer",
   1364     "SeparableFilter2D",
   1365     "ShadeModel",
   1366     "ShaderBinary",
   1367     "ShaderSource",
   1368     "ShaderSourceARB",
   1369     "StencilFunc",
   1370     "StencilFuncSeparate",
   1371     "StencilMask",
   1372     "StencilMaskSeparate",
   1373     "StencilOp",
   1374     "StencilOpSeparate",
   1375     "TexBuffer",
   1376     "TexBufferARB",
   1377     "TexBufferRange",
   1378     "TexCoord1d",
   1379     "TexCoord1dv",
   1380     "TexCoord1f",
   1381     "TexCoord1fv",
   1382     "TexCoord1i",
   1383     "TexCoord1iv",
   1384     "TexCoord1s",
   1385     "TexCoord1sv",
   1386     "TexCoord2d",
   1387     "TexCoord2dv",
   1388     "TexCoord2f",
   1389     "TexCoord2fv",
   1390     "TexCoord2i",
   1391     "TexCoord2iv",
   1392     "TexCoord2s",
   1393     "TexCoord2sv",
   1394     "TexCoord3d",
   1395     "TexCoord3dv",
   1396     "TexCoord3f",
   1397     "TexCoord3fv",
   1398     "TexCoord3i",
   1399     "TexCoord3iv",
   1400     "TexCoord3s",
   1401     "TexCoord3sv",
   1402     "TexCoord4d",
   1403     "TexCoord4dv",
   1404     "TexCoord4f",
   1405     "TexCoord4fv",
   1406     "TexCoord4i",
   1407     "TexCoord4iv",
   1408     "TexCoord4s",
   1409     "TexCoord4sv",
   1410     "TexCoordP1ui",
   1411     "TexCoordP1uiv",
   1412     "TexCoordP2ui",
   1413     "TexCoordP2uiv",
   1414     "TexCoordP3ui",
   1415     "TexCoordP3uiv",
   1416     "TexCoordP4ui",
   1417     "TexCoordP4uiv",
   1418     "TexCoordPointer",
   1419     "TexCoordPointerEXT",
   1420     "TexEnvf",
   1421     "TexEnvfv",
   1422     "TexEnvi",
   1423     "TexEnviv",
   1424     "TexEnvx",
   1425     "TexEnvxv",
   1426     "TexGend",
   1427     "TexGendv",
   1428     "TexGenf",
   1429     "TexGenfv",
   1430     "TexGeni",
   1431     "TexGeniv",
   1432     "TexImage1D",
   1433     "TexImage2D",
   1434     "TexImage2DMultisample",
   1435     "TexImage3D",
   1436     "TexImage3DEXT",
   1437     "TexImage3DMultisample",
   1438     "TexParameterf",
   1439     "TexParameterfv",
   1440     "TexParameteri",
   1441     "TexParameterIiv",
   1442     "TexParameterIivEXT",
   1443     "TexParameterIuiv",
   1444     "TexParameterIuivEXT",
   1445     "TexParameteriv",
   1446     "TexParameterx",
   1447     "TexParameterxv",
   1448     "TexStorage1D",
   1449     "TexStorage2D",
   1450     "TexStorage2DMultisample",
   1451     "TexStorage3D",
   1452     "TexStorage3DMultisample",
   1453     "TexSubImage1D",
   1454     "TexSubImage2D",
   1455     "TexSubImage3D",
   1456     "TexSubImage3DEXT",
   1457     "TextureBarrierNV",
   1458     "TextureStorage1DEXT",
   1459     "TextureStorage2DEXT",
   1460     "TextureStorage3DEXT",
   1461     "TextureView",
   1462     "TransformFeedbackVaryings",
   1463     "Translated",
   1464     "Translatef",
   1465     "Translatex",
   1466     "Uniform1f",
   1467     "Uniform1fARB",
   1468     "Uniform1fv",
   1469     "Uniform1fvARB",
   1470     "Uniform1i",
   1471     "Uniform1iARB",
   1472     "Uniform1iv",
   1473     "Uniform1ivARB",
   1474     "Uniform1ui",
   1475     "Uniform1uiEXT",
   1476     "Uniform1uiv",
   1477     "Uniform1uivEXT",
   1478     "Uniform2f",
   1479     "Uniform2fARB",
   1480     "Uniform2fv",
   1481     "Uniform2fvARB",
   1482     "Uniform2i",
   1483     "Uniform2iARB",
   1484     "Uniform2iv",
   1485     "Uniform2ivARB",
   1486     "Uniform2ui",
   1487     "Uniform2uiEXT",
   1488     "Uniform2uiv",
   1489     "Uniform2uivEXT",
   1490     "Uniform3f",
   1491     "Uniform3fARB",
   1492     "Uniform3fv",
   1493     "Uniform3fvARB",
   1494     "Uniform3i",
   1495     "Uniform3iARB",
   1496     "Uniform3iv",
   1497     "Uniform3ivARB",
   1498     "Uniform3ui",
   1499     "Uniform3uiEXT",
   1500     "Uniform3uiv",
   1501     "Uniform3uivEXT",
   1502     "Uniform4f",
   1503     "Uniform4fARB",
   1504     "Uniform4fv",
   1505     "Uniform4fvARB",
   1506     "Uniform4i",
   1507     "Uniform4iARB",
   1508     "Uniform4iv",
   1509     "Uniform4ivARB",
   1510     "Uniform4ui",
   1511     "Uniform4uiEXT",
   1512     "Uniform4uiv",
   1513     "Uniform4uivEXT",
   1514     "UniformBlockBinding",
   1515     "UniformMatrix2fv",
   1516     "UniformMatrix2fvARB",
   1517     "UniformMatrix2x3fv",
   1518     "UniformMatrix2x4fv",
   1519     "UniformMatrix3fv",
   1520     "UniformMatrix3fvARB",
   1521     "UniformMatrix3x2fv",
   1522     "UniformMatrix3x4fv",
   1523     "UniformMatrix4fv",
   1524     "UniformMatrix4fvARB",
   1525     "UniformMatrix4x2fv",
   1526     "UniformMatrix4x3fv",
   1527     "UnlockArraysEXT",
   1528     "UnmapBuffer",
   1529     "UnmapBufferARB",
   1530     "UseProgram",
   1531     "UseProgramObjectARB",
   1532     "UseProgramStages",
   1533     "ValidateProgram",
   1534     "ValidateProgramARB",
   1535     "ValidateProgramPipeline",
   1536     "Vertex2d",
   1537     "Vertex2dv",
   1538     "Vertex2f",
   1539     "Vertex2fv",
   1540     "Vertex2i",
   1541     "Vertex2iv",
   1542     "Vertex2s",
   1543     "Vertex2sv",
   1544     "Vertex3d",
   1545     "Vertex3dv",
   1546     "Vertex3f",
   1547     "Vertex3fv",
   1548     "Vertex3i",
   1549     "Vertex3iv",
   1550     "Vertex3s",
   1551     "Vertex3sv",
   1552     "Vertex4d",
   1553     "Vertex4dv",
   1554     "Vertex4f",
   1555     "Vertex4fv",
   1556     "Vertex4i",
   1557     "Vertex4iv",
   1558     "Vertex4s",
   1559     "Vertex4sv",
   1560     "VertexAttrib1d",
   1561     "VertexAttrib1dARB",
   1562     "VertexAttrib1dv",
   1563     "VertexAttrib1dvARB",
   1564     "VertexAttrib1f",
   1565     "VertexAttrib1fARB",
   1566     "VertexAttrib1fv",
   1567     "VertexAttrib1fvARB",
   1568     "VertexAttrib1s",
   1569     "VertexAttrib1sARB",
   1570     "VertexAttrib1sv",
   1571     "VertexAttrib1svARB",
   1572     "VertexAttrib2d",
   1573     "VertexAttrib2dARB",
   1574     "VertexAttrib2dv",
   1575     "VertexAttrib2dvARB",
   1576     "VertexAttrib2f",
   1577     "VertexAttrib2fARB",
   1578     "VertexAttrib2fv",
   1579     "VertexAttrib2fvARB",
   1580     "VertexAttrib2s",
   1581     "VertexAttrib2sARB",
   1582     "VertexAttrib2sv",
   1583     "VertexAttrib2svARB",
   1584     "VertexAttrib3d",
   1585     "VertexAttrib3dARB",
   1586     "VertexAttrib3dv",
   1587     "VertexAttrib3dvARB",
   1588     "VertexAttrib3f",
   1589     "VertexAttrib3fARB",
   1590     "VertexAttrib3fv",
   1591     "VertexAttrib3fvARB",
   1592     "VertexAttrib3s",
   1593     "VertexAttrib3sARB",
   1594     "VertexAttrib3sv",
   1595     "VertexAttrib3svARB",
   1596     "VertexAttrib4bv",
   1597     "VertexAttrib4bvARB",
   1598     "VertexAttrib4d",
   1599     "VertexAttrib4dARB",
   1600     "VertexAttrib4dv",
   1601     "VertexAttrib4dvARB",
   1602     "VertexAttrib4f",
   1603     "VertexAttrib4fARB",
   1604     "VertexAttrib4fv",
   1605     "VertexAttrib4fvARB",
   1606     "VertexAttrib4iv",
   1607     "VertexAttrib4ivARB",
   1608     "VertexAttrib4Nbv",
   1609     "VertexAttrib4NbvARB",
   1610     "VertexAttrib4Niv",
   1611     "VertexAttrib4NivARB",
   1612     "VertexAttrib4Nsv",
   1613     "VertexAttrib4NsvARB",
   1614     "VertexAttrib4Nub",
   1615     "VertexAttrib4NubARB",
   1616     "VertexAttrib4Nubv",
   1617     "VertexAttrib4NubvARB",
   1618     "VertexAttrib4Nuiv",
   1619     "VertexAttrib4NuivARB",
   1620     "VertexAttrib4Nusv",
   1621     "VertexAttrib4NusvARB",
   1622     "VertexAttrib4s",
   1623     "VertexAttrib4sARB",
   1624     "VertexAttrib4sv",
   1625     "VertexAttrib4svARB",
   1626     "VertexAttrib4ubv",
   1627     "VertexAttrib4ubvARB",
   1628     "VertexAttrib4uiv",
   1629     "VertexAttrib4uivARB",
   1630     "VertexAttrib4usv",
   1631     "VertexAttrib4usvARB",
   1632     "VertexAttribBinding",
   1633     "VertexAttribDivisor",
   1634     "VertexAttribDivisorARB",
   1635     "VertexAttribFormat",
   1636     "VertexAttribI1i",
   1637     "VertexAttribI1iEXT",
   1638     "VertexAttribI1iv",
   1639     "VertexAttribI1ivEXT",
   1640     "VertexAttribI1ui",
   1641     "VertexAttribI1uiEXT",
   1642     "VertexAttribI1uiv",
   1643     "VertexAttribI1uivEXT",
   1644     "VertexAttribI2i",
   1645     "VertexAttribI2iEXT",
   1646     "VertexAttribI2iv",
   1647     "VertexAttribI2ivEXT",
   1648     "VertexAttribI2ui",
   1649     "VertexAttribI2uiEXT",
   1650     "VertexAttribI2uiv",
   1651     "VertexAttribI2uivEXT",
   1652     "VertexAttribI3i",
   1653     "VertexAttribI3iEXT",
   1654     "VertexAttribI3iv",
   1655     "VertexAttribI3ivEXT",
   1656     "VertexAttribI3ui",
   1657     "VertexAttribI3uiEXT",
   1658     "VertexAttribI3uiv",
   1659     "VertexAttribI3uivEXT",
   1660     "VertexAttribI4bv",
   1661     "VertexAttribI4bvEXT",
   1662     "VertexAttribI4i",
   1663     "VertexAttribI4iEXT",
   1664     "VertexAttribI4iv",
   1665     "VertexAttribI4ivEXT",
   1666     "VertexAttribI4sv",
   1667     "VertexAttribI4svEXT",
   1668     "VertexAttribI4ubv",
   1669     "VertexAttribI4ubvEXT",
   1670     "VertexAttribI4ui",
   1671     "VertexAttribI4uiEXT",
   1672     "VertexAttribI4uiv",
   1673     "VertexAttribI4uivEXT",
   1674     "VertexAttribI4usv",
   1675     "VertexAttribI4usvEXT",
   1676     "VertexAttribIFormat",
   1677     "VertexAttribIPointer",
   1678     "VertexAttribIPointerEXT",
   1679     "VertexAttribLFormat",
   1680     "VertexAttribP1ui",
   1681     "VertexAttribP1uiv",
   1682     "VertexAttribP2ui",
   1683     "VertexAttribP2uiv",
   1684     "VertexAttribP3ui",
   1685     "VertexAttribP3uiv",
   1686     "VertexAttribP4ui",
   1687     "VertexAttribP4uiv",
   1688     "VertexAttribPointer",
   1689     "VertexAttribPointerARB",
   1690     "VertexBindingDivisor",
   1691     "VertexP2ui",
   1692     "VertexP2uiv",
   1693     "VertexP3ui",
   1694     "VertexP3uiv",
   1695     "VertexP4ui",
   1696     "VertexP4uiv",
   1697     "VertexPointer",
   1698     "VertexPointerEXT",
   1699     "Viewport",
   1700     "ViewportArrayv",
   1701     "ViewportIndexedf",
   1702     "ViewportIndexedfv",
   1703     "WaitSync",
   1704     "WindowPos2d",
   1705     "WindowPos2dARB",
   1706     "WindowPos2dv",
   1707     "WindowPos2dvARB",
   1708     "WindowPos2f",
   1709     "WindowPos2fARB",
   1710     "WindowPos2fv",
   1711     "WindowPos2fvARB",
   1712     "WindowPos2i",
   1713     "WindowPos2iARB",
   1714     "WindowPos2iv",
   1715     "WindowPos2ivARB",
   1716     "WindowPos2s",
   1717     "WindowPos2sARB",
   1718     "WindowPos2sv",
   1719     "WindowPos2svARB",
   1720     "WindowPos3d",
   1721     "WindowPos3dARB",
   1722     "WindowPos3dv",
   1723     "WindowPos3dvARB",
   1724     "WindowPos3f",
   1725     "WindowPos3fARB",
   1726     "WindowPos3fv",
   1727     "WindowPos3fvARB",
   1728     "WindowPos3i",
   1729     "WindowPos3iARB",
   1730     "WindowPos3iv",
   1731     "WindowPos3ivARB",
   1732     "WindowPos3s",
   1733     "WindowPos3sARB",
   1734     "WindowPos3sv",
   1735     "WindowPos3svARB",
   1736 ]
   1737 
   1738 """Functions that need dispatch slots but are not used
   1739 
   1740 Some of these functions may have GLX protocol support (for
   1741 indirect-rendering).  Other were used in previous versions of Mesa.  They keep
   1742 slots in the dispatch table so that newer versions of libGL can still be used
   1743 with older drivers."""
   1744 unused_functions = [
   1745     # SGIS_multisample
   1746     "SampleMaskSGIS",
   1747     "SamplePatternSGIS",
   1748 
   1749     # NV_vertex_program
   1750     "AreProgramsResidentNV",
   1751     "ExecuteProgramNV",
   1752     "GetProgramParameterdvNV",
   1753     "GetProgramParameterfvNV",
   1754     "GetProgramivNV",
   1755     "GetProgramStringNV",
   1756     "GetTrackMatrixivNV",
   1757     "GetVertexAttribdvNV",
   1758     "GetVertexAttribfvNV",
   1759     "GetVertexAttribivNV",
   1760     "LoadProgramNV",
   1761     "ProgramParameters4dvNV",
   1762     "ProgramParameters4fvNV",
   1763     "RequestResidentProgramsNV",
   1764     "TrackMatrixNV",
   1765     "VertexAttribPointerNV",
   1766 
   1767     # MESA_resize_buffers
   1768     "ResizeBuffersMESA",
   1769 
   1770     # ATI_envmap_bumpmap
   1771     "TexBumpParameterfvATI",
   1772     "TexBumpParameterivATI",
   1773     "GetTexBumpParameterfvATI",
   1774     "GetTexBumpParameterivATI",
   1775 
   1776     # NV_fragment_program
   1777     "ProgramNamedParameter4fNV",
   1778     "ProgramNamedParameter4dNV",
   1779     "ProgramNamedParameter4fvNV",
   1780     "ProgramNamedParameter4dvNV",
   1781     "GetProgramNamedParameterfvNV",
   1782     "GetProgramNamedParameterdvNV",
   1783 
   1784     # APPLE_flush_buffer_range
   1785     "BufferParameteriAPPLE",
   1786     "FlushMappedBufferRangeAPPLE",
   1787 
   1788     # EXT_separate_shader_objects
   1789     "UseShaderProgramEXT",
   1790     "ActiveProgramEXT",
   1791     "CreateShaderProgramEXT",
   1792 ]
   1793