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
26This list will never change."""
27offsets = {
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
438functions = [
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
1740Some of these functions may have GLX protocol support (for
1741indirect-rendering).  Other were used in previous versions of Mesa.  They keep
1742slots in the dispatch table so that newer versions of libGL can still be used
1743with older drivers."""
1744unused_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