1af69d88dSmrg/*
2af69d88dSmrg * Copyright © 2012 Intel Corporation
3af69d88dSmrg *
4af69d88dSmrg * Permission is hereby granted, free of charge, to any person obtaining a
5af69d88dSmrg * copy of this software and associated documentation files (the "Software"),
6af69d88dSmrg * to deal in the Software without restriction, including without limitation
7af69d88dSmrg * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8af69d88dSmrg * and/or sell copies of the Software, and to permit persons to whom the
9af69d88dSmrg * Software is furnished to do so, subject to the following conditions:
10af69d88dSmrg *
11af69d88dSmrg * The above copyright notice and this permission notice (including the next
12af69d88dSmrg * paragraph) shall be included in all copies or substantial portions of the
13af69d88dSmrg * Software.
14af69d88dSmrg *
15af69d88dSmrg * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16af69d88dSmrg * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17af69d88dSmrg * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
18af69d88dSmrg * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19af69d88dSmrg * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
20af69d88dSmrg * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
21af69d88dSmrg * DEALINGS IN THE SOFTWARE.
22af69d88dSmrg */
23af69d88dSmrg
24af69d88dSmrg#include <gtest/gtest.h>
2501e04c3fSmrg#include "main/glheader.h"
26af69d88dSmrg
27af69d88dSmrg#include "glapi/glapi.h"
2801e04c3fSmrg#include "glapitable.h"
29af69d88dSmrg
30af69d88dSmrgstruct name_offset {
31af69d88dSmrg   const char *name;
327ec681f3Smrg   unsigned int offset;
33af69d88dSmrg};
34af69d88dSmrg
35af69d88dSmrgextern const struct name_offset linux_gl_abi[];
36af69d88dSmrgextern const struct name_offset known_dispatch[];
37af69d88dSmrg
38af69d88dSmrgTEST(GetProcAddress, ABIOffsetByName)
39af69d88dSmrg{
40af69d88dSmrg   /* 408 functions have had their locations in the dispatch table set since
41af69d88dSmrg    * the dawn of time.  Verify that all of these functions are at the correct
42af69d88dSmrg    * locations.
43af69d88dSmrg    */
44af69d88dSmrg   for (unsigned i = 0; linux_gl_abi[i].name != NULL; i++) {
45af69d88dSmrg      EXPECT_EQ(linux_gl_abi[i].offset,
46af69d88dSmrg		_glapi_get_proc_offset(linux_gl_abi[i].name))
47af69d88dSmrg	 << "function name: " << linux_gl_abi[i].name;
48af69d88dSmrg   }
49af69d88dSmrg}
50af69d88dSmrg
51af69d88dSmrgTEST(GetProcAddress, ABINameByOffset)
52af69d88dSmrg{
53af69d88dSmrg   /* 408 functions have had their locations in the dispatch table set since
54af69d88dSmrg    * the dawn of time.  Verify that all of these functions are at the correct
55af69d88dSmrg    * locations.
56af69d88dSmrg    */
57af69d88dSmrg   for (unsigned i = 0; linux_gl_abi[i].name != NULL; i++) {
58af69d88dSmrg      EXPECT_STREQ(linux_gl_abi[i].name,
59af69d88dSmrg		   _glapi_get_proc_name(linux_gl_abi[i].offset))
60af69d88dSmrg	 << "function offset: " << linux_gl_abi[i].offset;
61af69d88dSmrg   }
62af69d88dSmrg}
63af69d88dSmrg
64af69d88dSmrgTEST(GetProcAddress, TableBigEnoughForABI)
65af69d88dSmrg{
66af69d88dSmrg   const unsigned table_entries = sizeof(struct _glapi_table) / sizeof(void *);
67af69d88dSmrg
68af69d88dSmrg   EXPECT_GE(table_entries, 408u);
69af69d88dSmrg}
70af69d88dSmrg
71af69d88dSmrgTEST(GetProcAddress, TableDidntShrink)
72af69d88dSmrg{
73af69d88dSmrg   const unsigned table_entries = sizeof(struct _glapi_table) / sizeof(void *);
74af69d88dSmrg
75af69d88dSmrg   /* The dispatch table is not expected to shrink.  At GIT commit b45052b the
76af69d88dSmrg    * table had 978 entries.  Changes that intentionally reduce the size of
77af69d88dSmrg    * the table are very rare.  In those cases, the expected value should be
78af69d88dSmrg    * updated to reflect the change.
79af69d88dSmrg    *
80af69d88dSmrg    * Changes that accidentally reduce the size of the table are bugs, and
81af69d88dSmrg    * they should be fixed.
82af69d88dSmrg    *
83af69d88dSmrg    * 6 entries were removed when GL_SGIS_pixel_texture was removed from the
84af69d88dSmrg    * dispatch table.
85af69d88dSmrg    *
86af69d88dSmrg    * 1 entry was removed when GL_SGIX_pixel_texture was removed from the
87af69d88dSmrg    * dispatch table.
88af69d88dSmrg    *
89af69d88dSmrg    * 2 entries were removed when GL_APPLE_texture_range was removed from the
90af69d88dSmrg    * dispatch table.
91af69d88dSmrg    *
92af69d88dSmrg    * 13 entries were removed when GL_NV_register_combiners was removed from
93af69d88dSmrg    * the dispatch table.
94af69d88dSmrg    *
95af69d88dSmrg    * 7 entries were removed when GL_NV_fence was removed from the dispatch
96af69d88dSmrg    * table.
97af69d88dSmrg    *
98af69d88dSmrg    * 2 entries were removed when GL_NV_vertex_array_range was removed from
99af69d88dSmrg    * the dispatch table.
100af69d88dSmrg    */
101af69d88dSmrg   EXPECT_GE(table_entries, 978u - 6u - 1u - 2u - 13u - 7u - 2u);
102af69d88dSmrg}
103af69d88dSmrg
104af69d88dSmrgTEST(GetProcAddress, QueriedDispatchSizeBigEnough)
105af69d88dSmrg{
106af69d88dSmrg   const unsigned table_entries = sizeof(struct _glapi_table) / sizeof(void *);
107af69d88dSmrg
108af69d88dSmrg   /* _glapi_get_dispatch_table_size returns the size of the extended dispatch
109af69d88dSmrg    * table.  This is the size of the static table with some extra entries for
110af69d88dSmrg    * drivers to use for extensions that the core does not know about.
111af69d88dSmrg    */
112af69d88dSmrg   EXPECT_LT(table_entries, _glapi_get_dispatch_table_size());
113af69d88dSmrg}
114af69d88dSmrg
115af69d88dSmrgTEST(GetProcAddress, KnownDispatchOffsetsAreConsistent)
116af69d88dSmrg{
117af69d88dSmrg   /* Verify that the queried dispatch offset for every known function is
118af69d88dSmrg    * consistent with its location in the static dispatch table.
119af69d88dSmrg    *
120af69d88dSmrg    * There is some redundancy between this test and ABIOffsetByName.  That's
121af69d88dSmrg    * okay.  The offsets in ABIOffsetByName comdirectly from the ABI
122af69d88dSmrg    * definition.  The offsets in this test come from locations in a structure
123af69d88dSmrg    * definition generated by scripts.
124af69d88dSmrg    */
125af69d88dSmrg   for (unsigned i = 0; known_dispatch[i].name != NULL; i++) {
126af69d88dSmrg      EXPECT_EQ(known_dispatch[i].offset,
127af69d88dSmrg		_glapi_get_proc_offset(known_dispatch[i].name))
128af69d88dSmrg	 << "function name: " << known_dispatch[i].name;
129af69d88dSmrg   }
130af69d88dSmrg}
131af69d88dSmrg
132af69d88dSmrgTEST(GetProcAddress, KnownDispatchNamesAreConsistent)
133af69d88dSmrg{
134af69d88dSmrg   /* Verify that the queried dispatch name for every known function is
135af69d88dSmrg    * consistent with its location in the static dispatch table.
136af69d88dSmrg    *
137af69d88dSmrg    * There is some redundancy between this test and ABINameByOffset.  That's
138af69d88dSmrg    * okay.  The offsets in ABIOffsetByName comdirectly from the ABI
139af69d88dSmrg    * definition.  The offsets in this test come from locations in a structure
140af69d88dSmrg    * definition generated by scripts.
141af69d88dSmrg    */
142af69d88dSmrg   for (unsigned i = 0; known_dispatch[i].name != NULL; i++) {
143af69d88dSmrg      EXPECT_STREQ(known_dispatch[i].name,
144af69d88dSmrg		   _glapi_get_proc_name(known_dispatch[i].offset))
145af69d88dSmrg	 << "function offset: " << known_dispatch[i].offset;
146af69d88dSmrg   }
147af69d88dSmrg}
148af69d88dSmrg
149af69d88dSmrgconst struct name_offset linux_gl_abi[] = {
150af69d88dSmrg   { "glNewList", 0 },
151af69d88dSmrg   { "glEndList", 1 },
152af69d88dSmrg   { "glCallList", 2 },
153af69d88dSmrg   { "glCallLists", 3 },
154af69d88dSmrg   { "glDeleteLists", 4 },
155af69d88dSmrg   { "glGenLists", 5 },
156af69d88dSmrg   { "glListBase", 6 },
157af69d88dSmrg   { "glBegin", 7 },
158af69d88dSmrg   { "glBitmap", 8 },
159af69d88dSmrg   { "glColor3b", 9 },
160af69d88dSmrg   { "glColor3bv", 10 },
161af69d88dSmrg   { "glColor3d", 11 },
162af69d88dSmrg   { "glColor3dv", 12 },
163af69d88dSmrg   { "glColor3f", 13 },
164af69d88dSmrg   { "glColor3fv", 14 },
165af69d88dSmrg   { "glColor3i", 15 },
166af69d88dSmrg   { "glColor3iv", 16 },
167af69d88dSmrg   { "glColor3s", 17 },
168af69d88dSmrg   { "glColor3sv", 18 },
169af69d88dSmrg   { "glColor3ub", 19 },
170af69d88dSmrg   { "glColor3ubv", 20 },
171af69d88dSmrg   { "glColor3ui", 21 },
172af69d88dSmrg   { "glColor3uiv", 22 },
173af69d88dSmrg   { "glColor3us", 23 },
174af69d88dSmrg   { "glColor3usv", 24 },
175af69d88dSmrg   { "glColor4b", 25 },
176af69d88dSmrg   { "glColor4bv", 26 },
177af69d88dSmrg   { "glColor4d", 27 },
178af69d88dSmrg   { "glColor4dv", 28 },
179af69d88dSmrg   { "glColor4f", 29 },
180af69d88dSmrg   { "glColor4fv", 30 },
181af69d88dSmrg   { "glColor4i", 31 },
182af69d88dSmrg   { "glColor4iv", 32 },
183af69d88dSmrg   { "glColor4s", 33 },
184af69d88dSmrg   { "glColor4sv", 34 },
185af69d88dSmrg   { "glColor4ub", 35 },
186af69d88dSmrg   { "glColor4ubv", 36 },
187af69d88dSmrg   { "glColor4ui", 37 },
188af69d88dSmrg   { "glColor4uiv", 38 },
189af69d88dSmrg   { "glColor4us", 39 },
190af69d88dSmrg   { "glColor4usv", 40 },
191af69d88dSmrg   { "glEdgeFlag", 41 },
192af69d88dSmrg   { "glEdgeFlagv", 42 },
193af69d88dSmrg   { "glEnd", 43 },
194af69d88dSmrg   { "glIndexd", 44 },
195af69d88dSmrg   { "glIndexdv", 45 },
196af69d88dSmrg   { "glIndexf", 46 },
197af69d88dSmrg   { "glIndexfv", 47 },
198af69d88dSmrg   { "glIndexi", 48 },
199af69d88dSmrg   { "glIndexiv", 49 },
200af69d88dSmrg   { "glIndexs", 50 },
201af69d88dSmrg   { "glIndexsv", 51 },
202af69d88dSmrg   { "glNormal3b", 52 },
203af69d88dSmrg   { "glNormal3bv", 53 },
204af69d88dSmrg   { "glNormal3d", 54 },
205af69d88dSmrg   { "glNormal3dv", 55 },
206af69d88dSmrg   { "glNormal3f", 56 },
207af69d88dSmrg   { "glNormal3fv", 57 },
208af69d88dSmrg   { "glNormal3i", 58 },
209af69d88dSmrg   { "glNormal3iv", 59 },
210af69d88dSmrg   { "glNormal3s", 60 },
211af69d88dSmrg   { "glNormal3sv", 61 },
212af69d88dSmrg   { "glRasterPos2d", 62 },
213af69d88dSmrg   { "glRasterPos2dv", 63 },
214af69d88dSmrg   { "glRasterPos2f", 64 },
215af69d88dSmrg   { "glRasterPos2fv", 65 },
216af69d88dSmrg   { "glRasterPos2i", 66 },
217af69d88dSmrg   { "glRasterPos2iv", 67 },
218af69d88dSmrg   { "glRasterPos2s", 68 },
219af69d88dSmrg   { "glRasterPos2sv", 69 },
220af69d88dSmrg   { "glRasterPos3d", 70 },
221af69d88dSmrg   { "glRasterPos3dv", 71 },
222af69d88dSmrg   { "glRasterPos3f", 72 },
223af69d88dSmrg   { "glRasterPos3fv", 73 },
224af69d88dSmrg   { "glRasterPos3i", 74 },
225af69d88dSmrg   { "glRasterPos3iv", 75 },
226af69d88dSmrg   { "glRasterPos3s", 76 },
227af69d88dSmrg   { "glRasterPos3sv", 77 },
228af69d88dSmrg   { "glRasterPos4d", 78 },
229af69d88dSmrg   { "glRasterPos4dv", 79 },
230af69d88dSmrg   { "glRasterPos4f", 80 },
231af69d88dSmrg   { "glRasterPos4fv", 81 },
232af69d88dSmrg   { "glRasterPos4i", 82 },
233af69d88dSmrg   { "glRasterPos4iv", 83 },
234af69d88dSmrg   { "glRasterPos4s", 84 },
235af69d88dSmrg   { "glRasterPos4sv", 85 },
236af69d88dSmrg   { "glRectd", 86 },
237af69d88dSmrg   { "glRectdv", 87 },
238af69d88dSmrg   { "glRectf", 88 },
239af69d88dSmrg   { "glRectfv", 89 },
240af69d88dSmrg   { "glRecti", 90 },
241af69d88dSmrg   { "glRectiv", 91 },
242af69d88dSmrg   { "glRects", 92 },
243af69d88dSmrg   { "glRectsv", 93 },
244af69d88dSmrg   { "glTexCoord1d", 94 },
245af69d88dSmrg   { "glTexCoord1dv", 95 },
246af69d88dSmrg   { "glTexCoord1f", 96 },
247af69d88dSmrg   { "glTexCoord1fv", 97 },
248af69d88dSmrg   { "glTexCoord1i", 98 },
249af69d88dSmrg   { "glTexCoord1iv", 99 },
250af69d88dSmrg   { "glTexCoord1s", 100 },
251af69d88dSmrg   { "glTexCoord1sv", 101 },
252af69d88dSmrg   { "glTexCoord2d", 102 },
253af69d88dSmrg   { "glTexCoord2dv", 103 },
254af69d88dSmrg   { "glTexCoord2f", 104 },
255af69d88dSmrg   { "glTexCoord2fv", 105 },
256af69d88dSmrg   { "glTexCoord2i", 106 },
257af69d88dSmrg   { "glTexCoord2iv", 107 },
258af69d88dSmrg   { "glTexCoord2s", 108 },
259af69d88dSmrg   { "glTexCoord2sv", 109 },
260af69d88dSmrg   { "glTexCoord3d", 110 },
261af69d88dSmrg   { "glTexCoord3dv", 111 },
262af69d88dSmrg   { "glTexCoord3f", 112 },
263af69d88dSmrg   { "glTexCoord3fv", 113 },
264af69d88dSmrg   { "glTexCoord3i", 114 },
265af69d88dSmrg   { "glTexCoord3iv", 115 },
266af69d88dSmrg   { "glTexCoord3s", 116 },
267af69d88dSmrg   { "glTexCoord3sv", 117 },
268af69d88dSmrg   { "glTexCoord4d", 118 },
269af69d88dSmrg   { "glTexCoord4dv", 119 },
270af69d88dSmrg   { "glTexCoord4f", 120 },
271af69d88dSmrg   { "glTexCoord4fv", 121 },
272af69d88dSmrg   { "glTexCoord4i", 122 },
273af69d88dSmrg   { "glTexCoord4iv", 123 },
274af69d88dSmrg   { "glTexCoord4s", 124 },
275af69d88dSmrg   { "glTexCoord4sv", 125 },
276af69d88dSmrg   { "glVertex2d", 126 },
277af69d88dSmrg   { "glVertex2dv", 127 },
278af69d88dSmrg   { "glVertex2f", 128 },
279af69d88dSmrg   { "glVertex2fv", 129 },
280af69d88dSmrg   { "glVertex2i", 130 },
281af69d88dSmrg   { "glVertex2iv", 131 },
282af69d88dSmrg   { "glVertex2s", 132 },
283af69d88dSmrg   { "glVertex2sv", 133 },
284af69d88dSmrg   { "glVertex3d", 134 },
285af69d88dSmrg   { "glVertex3dv", 135 },
286af69d88dSmrg   { "glVertex3f", 136 },
287af69d88dSmrg   { "glVertex3fv", 137 },
288af69d88dSmrg   { "glVertex3i", 138 },
289af69d88dSmrg   { "glVertex3iv", 139 },
290af69d88dSmrg   { "glVertex3s", 140 },
291af69d88dSmrg   { "glVertex3sv", 141 },
292af69d88dSmrg   { "glVertex4d", 142 },
293af69d88dSmrg   { "glVertex4dv", 143 },
294af69d88dSmrg   { "glVertex4f", 144 },
295af69d88dSmrg   { "glVertex4fv", 145 },
296af69d88dSmrg   { "glVertex4i", 146 },
297af69d88dSmrg   { "glVertex4iv", 147 },
298af69d88dSmrg   { "glVertex4s", 148 },
299af69d88dSmrg   { "glVertex4sv", 149 },
300af69d88dSmrg   { "glClipPlane", 150 },
301af69d88dSmrg   { "glColorMaterial", 151 },
302af69d88dSmrg   { "glCullFace", 152 },
303af69d88dSmrg   { "glFogf", 153 },
304af69d88dSmrg   { "glFogfv", 154 },
305af69d88dSmrg   { "glFogi", 155 },
306af69d88dSmrg   { "glFogiv", 156 },
307af69d88dSmrg   { "glFrontFace", 157 },
308af69d88dSmrg   { "glHint", 158 },
309af69d88dSmrg   { "glLightf", 159 },
310af69d88dSmrg   { "glLightfv", 160 },
311af69d88dSmrg   { "glLighti", 161 },
312af69d88dSmrg   { "glLightiv", 162 },
313af69d88dSmrg   { "glLightModelf", 163 },
314af69d88dSmrg   { "glLightModelfv", 164 },
315af69d88dSmrg   { "glLightModeli", 165 },
316af69d88dSmrg   { "glLightModeliv", 166 },
317af69d88dSmrg   { "glLineStipple", 167 },
318af69d88dSmrg   { "glLineWidth", 168 },
319af69d88dSmrg   { "glMaterialf", 169 },
320af69d88dSmrg   { "glMaterialfv", 170 },
321af69d88dSmrg   { "glMateriali", 171 },
322af69d88dSmrg   { "glMaterialiv", 172 },
323af69d88dSmrg   { "glPointSize", 173 },
324af69d88dSmrg   { "glPolygonMode", 174 },
325af69d88dSmrg   { "glPolygonStipple", 175 },
326af69d88dSmrg   { "glScissor", 176 },
327af69d88dSmrg   { "glShadeModel", 177 },
328af69d88dSmrg   { "glTexParameterf", 178 },
329af69d88dSmrg   { "glTexParameterfv", 179 },
330af69d88dSmrg   { "glTexParameteri", 180 },
331af69d88dSmrg   { "glTexParameteriv", 181 },
332af69d88dSmrg   { "glTexImage1D", 182 },
333af69d88dSmrg   { "glTexImage2D", 183 },
334af69d88dSmrg   { "glTexEnvf", 184 },
335af69d88dSmrg   { "glTexEnvfv", 185 },
336af69d88dSmrg   { "glTexEnvi", 186 },
337af69d88dSmrg   { "glTexEnviv", 187 },
338af69d88dSmrg   { "glTexGend", 188 },
339af69d88dSmrg   { "glTexGendv", 189 },
340af69d88dSmrg   { "glTexGenf", 190 },
341af69d88dSmrg   { "glTexGenfv", 191 },
342af69d88dSmrg   { "glTexGeni", 192 },
343af69d88dSmrg   { "glTexGeniv", 193 },
344af69d88dSmrg   { "glFeedbackBuffer", 194 },
345af69d88dSmrg   { "glSelectBuffer", 195 },
346af69d88dSmrg   { "glRenderMode", 196 },
347af69d88dSmrg   { "glInitNames", 197 },
348af69d88dSmrg   { "glLoadName", 198 },
349af69d88dSmrg   { "glPassThrough", 199 },
350af69d88dSmrg   { "glPopName", 200 },
351af69d88dSmrg   { "glPushName", 201 },
352af69d88dSmrg   { "glDrawBuffer", 202 },
353af69d88dSmrg   { "glClear", 203 },
354af69d88dSmrg   { "glClearAccum", 204 },
355af69d88dSmrg   { "glClearIndex", 205 },
356af69d88dSmrg   { "glClearColor", 206 },
357af69d88dSmrg   { "glClearStencil", 207 },
358af69d88dSmrg   { "glClearDepth", 208 },
359af69d88dSmrg   { "glStencilMask", 209 },
360af69d88dSmrg   { "glColorMask", 210 },
361af69d88dSmrg   { "glDepthMask", 211 },
362af69d88dSmrg   { "glIndexMask", 212 },
363af69d88dSmrg   { "glAccum", 213 },
364af69d88dSmrg   { "glDisable", 214 },
365af69d88dSmrg   { "glEnable", 215 },
366af69d88dSmrg   { "glFinish", 216 },
367af69d88dSmrg   { "glFlush", 217 },
368af69d88dSmrg   { "glPopAttrib", 218 },
369af69d88dSmrg   { "glPushAttrib", 219 },
370af69d88dSmrg   { "glMap1d", 220 },
371af69d88dSmrg   { "glMap1f", 221 },
372af69d88dSmrg   { "glMap2d", 222 },
373af69d88dSmrg   { "glMap2f", 223 },
374af69d88dSmrg   { "glMapGrid1d", 224 },
375af69d88dSmrg   { "glMapGrid1f", 225 },
376af69d88dSmrg   { "glMapGrid2d", 226 },
377af69d88dSmrg   { "glMapGrid2f", 227 },
378af69d88dSmrg   { "glEvalCoord1d", 228 },
379af69d88dSmrg   { "glEvalCoord1dv", 229 },
380af69d88dSmrg   { "glEvalCoord1f", 230 },
381af69d88dSmrg   { "glEvalCoord1fv", 231 },
382af69d88dSmrg   { "glEvalCoord2d", 232 },
383af69d88dSmrg   { "glEvalCoord2dv", 233 },
384af69d88dSmrg   { "glEvalCoord2f", 234 },
385af69d88dSmrg   { "glEvalCoord2fv", 235 },
386af69d88dSmrg   { "glEvalMesh1", 236 },
387af69d88dSmrg   { "glEvalPoint1", 237 },
388af69d88dSmrg   { "glEvalMesh2", 238 },
389af69d88dSmrg   { "glEvalPoint2", 239 },
390af69d88dSmrg   { "glAlphaFunc", 240 },
391af69d88dSmrg   { "glBlendFunc", 241 },
392af69d88dSmrg   { "glLogicOp", 242 },
393af69d88dSmrg   { "glStencilFunc", 243 },
394af69d88dSmrg   { "glStencilOp", 244 },
395af69d88dSmrg   { "glDepthFunc", 245 },
396af69d88dSmrg   { "glPixelZoom", 246 },
397af69d88dSmrg   { "glPixelTransferf", 247 },
398af69d88dSmrg   { "glPixelTransferi", 248 },
399af69d88dSmrg   { "glPixelStoref", 249 },
400af69d88dSmrg   { "glPixelStorei", 250 },
401af69d88dSmrg   { "glPixelMapfv", 251 },
402af69d88dSmrg   { "glPixelMapuiv", 252 },
403af69d88dSmrg   { "glPixelMapusv", 253 },
404af69d88dSmrg   { "glReadBuffer", 254 },
405af69d88dSmrg   { "glCopyPixels", 255 },
406af69d88dSmrg   { "glReadPixels", 256 },
407af69d88dSmrg   { "glDrawPixels", 257 },
408af69d88dSmrg   { "glGetBooleanv", 258 },
409af69d88dSmrg   { "glGetClipPlane", 259 },
410af69d88dSmrg   { "glGetDoublev", 260 },
411af69d88dSmrg   { "glGetError", 261 },
412af69d88dSmrg   { "glGetFloatv", 262 },
413af69d88dSmrg   { "glGetIntegerv", 263 },
414af69d88dSmrg   { "glGetLightfv", 264 },
415af69d88dSmrg   { "glGetLightiv", 265 },
416af69d88dSmrg   { "glGetMapdv", 266 },
417af69d88dSmrg   { "glGetMapfv", 267 },
418af69d88dSmrg   { "glGetMapiv", 268 },
419af69d88dSmrg   { "glGetMaterialfv", 269 },
420af69d88dSmrg   { "glGetMaterialiv", 270 },
421af69d88dSmrg   { "glGetPixelMapfv", 271 },
422af69d88dSmrg   { "glGetPixelMapuiv", 272 },
423af69d88dSmrg   { "glGetPixelMapusv", 273 },
424af69d88dSmrg   { "glGetPolygonStipple", 274 },
425af69d88dSmrg   { "glGetString", 275 },
426af69d88dSmrg   { "glGetTexEnvfv", 276 },
427af69d88dSmrg   { "glGetTexEnviv", 277 },
428af69d88dSmrg   { "glGetTexGendv", 278 },
429af69d88dSmrg   { "glGetTexGenfv", 279 },
430af69d88dSmrg   { "glGetTexGeniv", 280 },
431af69d88dSmrg   { "glGetTexImage", 281 },
432af69d88dSmrg   { "glGetTexParameterfv", 282 },
433af69d88dSmrg   { "glGetTexParameteriv", 283 },
434af69d88dSmrg   { "glGetTexLevelParameterfv", 284 },
435af69d88dSmrg   { "glGetTexLevelParameteriv", 285 },
436af69d88dSmrg   { "glIsEnabled", 286 },
437af69d88dSmrg   { "glIsList", 287 },
438af69d88dSmrg   { "glDepthRange", 288 },
439af69d88dSmrg   { "glFrustum", 289 },
440af69d88dSmrg   { "glLoadIdentity", 290 },
441af69d88dSmrg   { "glLoadMatrixf", 291 },
442af69d88dSmrg   { "glLoadMatrixd", 292 },
443af69d88dSmrg   { "glMatrixMode", 293 },
444af69d88dSmrg   { "glMultMatrixf", 294 },
445af69d88dSmrg   { "glMultMatrixd", 295 },
446af69d88dSmrg   { "glOrtho", 296 },
447af69d88dSmrg   { "glPopMatrix", 297 },
448af69d88dSmrg   { "glPushMatrix", 298 },
449af69d88dSmrg   { "glRotated", 299 },
450af69d88dSmrg   { "glRotatef", 300 },
451af69d88dSmrg   { "glScaled", 301 },
452af69d88dSmrg   { "glScalef", 302 },
453af69d88dSmrg   { "glTranslated", 303 },
454af69d88dSmrg   { "glTranslatef", 304 },
455af69d88dSmrg   { "glViewport", 305 },
456af69d88dSmrg   { "glArrayElement", 306 },
457af69d88dSmrg   { "glColorPointer", 308 },
458af69d88dSmrg   { "glDisableClientState", 309 },
459af69d88dSmrg   { "glDrawArrays", 310 },
460af69d88dSmrg   { "glDrawElements", 311 },
461af69d88dSmrg   { "glEdgeFlagPointer", 312 },
462af69d88dSmrg   { "glEnableClientState", 313 },
463af69d88dSmrg   { "glGetPointerv", 329 },
464af69d88dSmrg   { "glIndexPointer", 314 },
465af69d88dSmrg   { "glInterleavedArrays", 317 },
466af69d88dSmrg   { "glNormalPointer", 318 },
467af69d88dSmrg   { "glTexCoordPointer", 320 },
468af69d88dSmrg   { "glVertexPointer", 321 },
469af69d88dSmrg   { "glPolygonOffset", 319 },
470af69d88dSmrg   { "glCopyTexImage1D", 323 },
471af69d88dSmrg   { "glCopyTexImage2D", 324 },
472af69d88dSmrg   { "glCopyTexSubImage1D", 325 },
473af69d88dSmrg   { "glCopyTexSubImage2D", 326 },
474af69d88dSmrg   { "glTexSubImage1D", 332 },
475af69d88dSmrg   { "glTexSubImage2D", 333 },
476af69d88dSmrg   { "glAreTexturesResident", 322 },
477af69d88dSmrg   { "glBindTexture", 307 },
478af69d88dSmrg   { "glDeleteTextures", 327 },
479af69d88dSmrg   { "glGenTextures", 328 },
480af69d88dSmrg   { "glIsTexture", 330 },
481af69d88dSmrg   { "glPrioritizeTextures", 331 },
482af69d88dSmrg   { "glIndexub", 315 },
483af69d88dSmrg   { "glIndexubv", 316 },
484af69d88dSmrg   { "glPopClientAttrib", 334 },
485af69d88dSmrg   { "glPushClientAttrib", 335 },
486af69d88dSmrg   { "glBlendColor", 336 },
487af69d88dSmrg   { "glBlendEquation", 337 },
488af69d88dSmrg   { "glDrawRangeElements", 338 },
489af69d88dSmrg   { "glColorTable", 339 },
490af69d88dSmrg   { "glColorTableParameterfv", 340 },
491af69d88dSmrg   { "glColorTableParameteriv", 341 },
492af69d88dSmrg   { "glCopyColorTable", 342 },
493af69d88dSmrg   { "glGetColorTable", 343 },
494af69d88dSmrg   { "glGetColorTableParameterfv", 344 },
495af69d88dSmrg   { "glGetColorTableParameteriv", 345 },
496af69d88dSmrg   { "glColorSubTable", 346 },
497af69d88dSmrg   { "glCopyColorSubTable", 347 },
498af69d88dSmrg   { "glConvolutionFilter1D", 348 },
499af69d88dSmrg   { "glConvolutionFilter2D", 349 },
500af69d88dSmrg   { "glConvolutionParameterf", 350 },
501af69d88dSmrg   { "glConvolutionParameterfv", 351 },
502af69d88dSmrg   { "glConvolutionParameteri", 352 },
503af69d88dSmrg   { "glConvolutionParameteriv", 353 },
504af69d88dSmrg   { "glCopyConvolutionFilter1D", 354 },
505af69d88dSmrg   { "glCopyConvolutionFilter2D", 355 },
506af69d88dSmrg   { "glGetConvolutionFilter", 356 },
507af69d88dSmrg   { "glGetConvolutionParameterfv", 357 },
508af69d88dSmrg   { "glGetConvolutionParameteriv", 358 },
509af69d88dSmrg   { "glGetSeparableFilter", 359 },
510af69d88dSmrg   { "glSeparableFilter2D", 360 },
511af69d88dSmrg   { "glGetHistogram", 361 },
512af69d88dSmrg   { "glGetHistogramParameterfv", 362 },
513af69d88dSmrg   { "glGetHistogramParameteriv", 363 },
514af69d88dSmrg   { "glGetMinmax", 364 },
515af69d88dSmrg   { "glGetMinmaxParameterfv", 365 },
516af69d88dSmrg   { "glGetMinmaxParameteriv", 366 },
517af69d88dSmrg   { "glHistogram", 367 },
518af69d88dSmrg   { "glMinmax", 368 },
519af69d88dSmrg   { "glResetHistogram", 369 },
520af69d88dSmrg   { "glResetMinmax", 370 },
521af69d88dSmrg   { "glTexImage3D", 371 },
522af69d88dSmrg   { "glTexSubImage3D", 372 },
523af69d88dSmrg   { "glCopyTexSubImage3D", 373 },
524af69d88dSmrg   { "glActiveTexture", 374 },
525af69d88dSmrg   { "glClientActiveTexture", 375 },
526af69d88dSmrg   { "glMultiTexCoord1d", 376 },
527af69d88dSmrg   { "glMultiTexCoord1dv", 377 },
528af69d88dSmrg   { "glMultiTexCoord1fARB", 378 },
529af69d88dSmrg   { "glMultiTexCoord1fvARB", 379 },
530af69d88dSmrg   { "glMultiTexCoord1i", 380 },
531af69d88dSmrg   { "glMultiTexCoord1iv", 381 },
532af69d88dSmrg   { "glMultiTexCoord1s", 382 },
533af69d88dSmrg   { "glMultiTexCoord1sv", 383 },
534af69d88dSmrg   { "glMultiTexCoord2d", 384 },
535af69d88dSmrg   { "glMultiTexCoord2dv", 385 },
536af69d88dSmrg   { "glMultiTexCoord2fARB", 386 },
537af69d88dSmrg   { "glMultiTexCoord2fvARB", 387 },
538af69d88dSmrg   { "glMultiTexCoord2i", 388 },
539af69d88dSmrg   { "glMultiTexCoord2iv", 389 },
540af69d88dSmrg   { "glMultiTexCoord2s", 390 },
541af69d88dSmrg   { "glMultiTexCoord2sv", 391 },
542af69d88dSmrg   { "glMultiTexCoord3d", 392 },
543af69d88dSmrg   { "glMultiTexCoord3dv", 393 },
544af69d88dSmrg   { "glMultiTexCoord3fARB", 394 },
545af69d88dSmrg   { "glMultiTexCoord3fvARB", 395 },
546af69d88dSmrg   { "glMultiTexCoord3i", 396 },
547af69d88dSmrg   { "glMultiTexCoord3iv", 397 },
548af69d88dSmrg   { "glMultiTexCoord3s", 398 },
549af69d88dSmrg   { "glMultiTexCoord3sv", 399 },
550af69d88dSmrg   { "glMultiTexCoord4d", 400 },
551af69d88dSmrg   { "glMultiTexCoord4dv", 401 },
552af69d88dSmrg   { "glMultiTexCoord4fARB", 402 },
553af69d88dSmrg   { "glMultiTexCoord4fvARB", 403 },
554af69d88dSmrg   { "glMultiTexCoord4i", 404 },
555af69d88dSmrg   { "glMultiTexCoord4iv", 405 },
556af69d88dSmrg   { "glMultiTexCoord4s", 406 },
557af69d88dSmrg   { "glMultiTexCoord4sv", 407 },
558af69d88dSmrg   { NULL, 0 }
559af69d88dSmrg};
560af69d88dSmrg
561af69d88dSmrg#define _O(f) ((intptr_t) & (((struct _glapi_table *) 0)->f)) / sizeof(void *)
562af69d88dSmrg
563af69d88dSmrgconst struct name_offset known_dispatch[] = {
564af69d88dSmrg   { "glNewList", _O(NewList) },
565af69d88dSmrg   { "glEndList", _O(EndList) },
566af69d88dSmrg   { "glCallList", _O(CallList) },
567af69d88dSmrg   { "glCallLists", _O(CallLists) },
568af69d88dSmrg   { "glDeleteLists", _O(DeleteLists) },
569af69d88dSmrg   { "glGenLists", _O(GenLists) },
570af69d88dSmrg   { "glListBase", _O(ListBase) },
571af69d88dSmrg   { "glBegin", _O(Begin) },
572af69d88dSmrg   { "glBitmap", _O(Bitmap) },
573af69d88dSmrg   { "glColor3b", _O(Color3b) },
574af69d88dSmrg   { "glColor3bv", _O(Color3bv) },
575af69d88dSmrg   { "glColor3d", _O(Color3d) },
576af69d88dSmrg   { "glColor3dv", _O(Color3dv) },
577af69d88dSmrg   { "glColor3f", _O(Color3f) },
578af69d88dSmrg   { "glColor3fv", _O(Color3fv) },
579af69d88dSmrg   { "glColor3i", _O(Color3i) },
580af69d88dSmrg   { "glColor3iv", _O(Color3iv) },
581af69d88dSmrg   { "glColor3s", _O(Color3s) },
582af69d88dSmrg   { "glColor3sv", _O(Color3sv) },
583af69d88dSmrg   { "glColor3ub", _O(Color3ub) },
584af69d88dSmrg   { "glColor3ubv", _O(Color3ubv) },
585af69d88dSmrg   { "glColor3ui", _O(Color3ui) },
586af69d88dSmrg   { "glColor3uiv", _O(Color3uiv) },
587af69d88dSmrg   { "glColor3us", _O(Color3us) },
588af69d88dSmrg   { "glColor3usv", _O(Color3usv) },
589af69d88dSmrg   { "glColor4b", _O(Color4b) },
590af69d88dSmrg   { "glColor4bv", _O(Color4bv) },
591af69d88dSmrg   { "glColor4d", _O(Color4d) },
592af69d88dSmrg   { "glColor4dv", _O(Color4dv) },
593af69d88dSmrg   { "glColor4f", _O(Color4f) },
594af69d88dSmrg   { "glColor4fv", _O(Color4fv) },
595af69d88dSmrg   { "glColor4i", _O(Color4i) },
596af69d88dSmrg   { "glColor4iv", _O(Color4iv) },
597af69d88dSmrg   { "glColor4s", _O(Color4s) },
598af69d88dSmrg   { "glColor4sv", _O(Color4sv) },
599af69d88dSmrg   { "glColor4ub", _O(Color4ub) },
600af69d88dSmrg   { "glColor4ubv", _O(Color4ubv) },
601af69d88dSmrg   { "glColor4ui", _O(Color4ui) },
602af69d88dSmrg   { "glColor4uiv", _O(Color4uiv) },
603af69d88dSmrg   { "glColor4us", _O(Color4us) },
604af69d88dSmrg   { "glColor4usv", _O(Color4usv) },
605af69d88dSmrg   { "glEdgeFlag", _O(EdgeFlag) },
606af69d88dSmrg   { "glEdgeFlagv", _O(EdgeFlagv) },
607af69d88dSmrg   { "glEnd", _O(End) },
608af69d88dSmrg   { "glIndexd", _O(Indexd) },
609af69d88dSmrg   { "glIndexdv", _O(Indexdv) },
610af69d88dSmrg   { "glIndexf", _O(Indexf) },
611af69d88dSmrg   { "glIndexfv", _O(Indexfv) },
612af69d88dSmrg   { "glIndexi", _O(Indexi) },
613af69d88dSmrg   { "glIndexiv", _O(Indexiv) },
614af69d88dSmrg   { "glIndexs", _O(Indexs) },
615af69d88dSmrg   { "glIndexsv", _O(Indexsv) },
616af69d88dSmrg   { "glNormal3b", _O(Normal3b) },
617af69d88dSmrg   { "glNormal3bv", _O(Normal3bv) },
618af69d88dSmrg   { "glNormal3d", _O(Normal3d) },
619af69d88dSmrg   { "glNormal3dv", _O(Normal3dv) },
620af69d88dSmrg   { "glNormal3f", _O(Normal3f) },
621af69d88dSmrg   { "glNormal3fv", _O(Normal3fv) },
622af69d88dSmrg   { "glNormal3i", _O(Normal3i) },
623af69d88dSmrg   { "glNormal3iv", _O(Normal3iv) },
624af69d88dSmrg   { "glNormal3s", _O(Normal3s) },
625af69d88dSmrg   { "glNormal3sv", _O(Normal3sv) },
626af69d88dSmrg   { "glRasterPos2d", _O(RasterPos2d) },
627af69d88dSmrg   { "glRasterPos2dv", _O(RasterPos2dv) },
628af69d88dSmrg   { "glRasterPos2f", _O(RasterPos2f) },
629af69d88dSmrg   { "glRasterPos2fv", _O(RasterPos2fv) },
630af69d88dSmrg   { "glRasterPos2i", _O(RasterPos2i) },
631af69d88dSmrg   { "glRasterPos2iv", _O(RasterPos2iv) },
632af69d88dSmrg   { "glRasterPos2s", _O(RasterPos2s) },
633af69d88dSmrg   { "glRasterPos2sv", _O(RasterPos2sv) },
634af69d88dSmrg   { "glRasterPos3d", _O(RasterPos3d) },
635af69d88dSmrg   { "glRasterPos3dv", _O(RasterPos3dv) },
636af69d88dSmrg   { "glRasterPos3f", _O(RasterPos3f) },
637af69d88dSmrg   { "glRasterPos3fv", _O(RasterPos3fv) },
638af69d88dSmrg   { "glRasterPos3i", _O(RasterPos3i) },
639af69d88dSmrg   { "glRasterPos3iv", _O(RasterPos3iv) },
640af69d88dSmrg   { "glRasterPos3s", _O(RasterPos3s) },
641af69d88dSmrg   { "glRasterPos3sv", _O(RasterPos3sv) },
642af69d88dSmrg   { "glRasterPos4d", _O(RasterPos4d) },
643af69d88dSmrg   { "glRasterPos4dv", _O(RasterPos4dv) },
644af69d88dSmrg   { "glRasterPos4f", _O(RasterPos4f) },
645af69d88dSmrg   { "glRasterPos4fv", _O(RasterPos4fv) },
646af69d88dSmrg   { "glRasterPos4i", _O(RasterPos4i) },
647af69d88dSmrg   { "glRasterPos4iv", _O(RasterPos4iv) },
648af69d88dSmrg   { "glRasterPos4s", _O(RasterPos4s) },
649af69d88dSmrg   { "glRasterPos4sv", _O(RasterPos4sv) },
650af69d88dSmrg   { "glRectd", _O(Rectd) },
651af69d88dSmrg   { "glRectdv", _O(Rectdv) },
652af69d88dSmrg   { "glRectf", _O(Rectf) },
653af69d88dSmrg   { "glRectfv", _O(Rectfv) },
654af69d88dSmrg   { "glRecti", _O(Recti) },
655af69d88dSmrg   { "glRectiv", _O(Rectiv) },
656af69d88dSmrg   { "glRects", _O(Rects) },
657af69d88dSmrg   { "glRectsv", _O(Rectsv) },
658af69d88dSmrg   { "glTexCoord1d", _O(TexCoord1d) },
659af69d88dSmrg   { "glTexCoord1dv", _O(TexCoord1dv) },
660af69d88dSmrg   { "glTexCoord1f", _O(TexCoord1f) },
661af69d88dSmrg   { "glTexCoord1fv", _O(TexCoord1fv) },
662af69d88dSmrg   { "glTexCoord1i", _O(TexCoord1i) },
663af69d88dSmrg   { "glTexCoord1iv", _O(TexCoord1iv) },
664af69d88dSmrg   { "glTexCoord1s", _O(TexCoord1s) },
665af69d88dSmrg   { "glTexCoord1sv", _O(TexCoord1sv) },
666af69d88dSmrg   { "glTexCoord2d", _O(TexCoord2d) },
667af69d88dSmrg   { "glTexCoord2dv", _O(TexCoord2dv) },
668af69d88dSmrg   { "glTexCoord2f", _O(TexCoord2f) },
669af69d88dSmrg   { "glTexCoord2fv", _O(TexCoord2fv) },
670af69d88dSmrg   { "glTexCoord2i", _O(TexCoord2i) },
671af69d88dSmrg   { "glTexCoord2iv", _O(TexCoord2iv) },
672af69d88dSmrg   { "glTexCoord2s", _O(TexCoord2s) },
673af69d88dSmrg   { "glTexCoord2sv", _O(TexCoord2sv) },
674af69d88dSmrg   { "glTexCoord3d", _O(TexCoord3d) },
675af69d88dSmrg   { "glTexCoord3dv", _O(TexCoord3dv) },
676af69d88dSmrg   { "glTexCoord3f", _O(TexCoord3f) },
677af69d88dSmrg   { "glTexCoord3fv", _O(TexCoord3fv) },
678af69d88dSmrg   { "glTexCoord3i", _O(TexCoord3i) },
679af69d88dSmrg   { "glTexCoord3iv", _O(TexCoord3iv) },
680af69d88dSmrg   { "glTexCoord3s", _O(TexCoord3s) },
681af69d88dSmrg   { "glTexCoord3sv", _O(TexCoord3sv) },
682af69d88dSmrg   { "glTexCoord4d", _O(TexCoord4d) },
683af69d88dSmrg   { "glTexCoord4dv", _O(TexCoord4dv) },
684af69d88dSmrg   { "glTexCoord4f", _O(TexCoord4f) },
685af69d88dSmrg   { "glTexCoord4fv", _O(TexCoord4fv) },
686af69d88dSmrg   { "glTexCoord4i", _O(TexCoord4i) },
687af69d88dSmrg   { "glTexCoord4iv", _O(TexCoord4iv) },
688af69d88dSmrg   { "glTexCoord4s", _O(TexCoord4s) },
689af69d88dSmrg   { "glTexCoord4sv", _O(TexCoord4sv) },
690af69d88dSmrg   { "glVertex2d", _O(Vertex2d) },
691af69d88dSmrg   { "glVertex2dv", _O(Vertex2dv) },
692af69d88dSmrg   { "glVertex2f", _O(Vertex2f) },
693af69d88dSmrg   { "glVertex2fv", _O(Vertex2fv) },
694af69d88dSmrg   { "glVertex2i", _O(Vertex2i) },
695af69d88dSmrg   { "glVertex2iv", _O(Vertex2iv) },
696af69d88dSmrg   { "glVertex2s", _O(Vertex2s) },
697af69d88dSmrg   { "glVertex2sv", _O(Vertex2sv) },
698af69d88dSmrg   { "glVertex3d", _O(Vertex3d) },
699af69d88dSmrg   { "glVertex3dv", _O(Vertex3dv) },
700af69d88dSmrg   { "glVertex3f", _O(Vertex3f) },
701af69d88dSmrg   { "glVertex3fv", _O(Vertex3fv) },
702af69d88dSmrg   { "glVertex3i", _O(Vertex3i) },
703af69d88dSmrg   { "glVertex3iv", _O(Vertex3iv) },
704af69d88dSmrg   { "glVertex3s", _O(Vertex3s) },
705af69d88dSmrg   { "glVertex3sv", _O(Vertex3sv) },
706af69d88dSmrg   { "glVertex4d", _O(Vertex4d) },
707af69d88dSmrg   { "glVertex4dv", _O(Vertex4dv) },
708af69d88dSmrg   { "glVertex4f", _O(Vertex4f) },
709af69d88dSmrg   { "glVertex4fv", _O(Vertex4fv) },
710af69d88dSmrg   { "glVertex4i", _O(Vertex4i) },
711af69d88dSmrg   { "glVertex4iv", _O(Vertex4iv) },
712af69d88dSmrg   { "glVertex4s", _O(Vertex4s) },
713af69d88dSmrg   { "glVertex4sv", _O(Vertex4sv) },
714af69d88dSmrg   { "glClipPlane", _O(ClipPlane) },
715af69d88dSmrg   { "glColorMaterial", _O(ColorMaterial) },
716af69d88dSmrg   { "glCullFace", _O(CullFace) },
717af69d88dSmrg   { "glFogf", _O(Fogf) },
718af69d88dSmrg   { "glFogfv", _O(Fogfv) },
719af69d88dSmrg   { "glFogi", _O(Fogi) },
720af69d88dSmrg   { "glFogiv", _O(Fogiv) },
721af69d88dSmrg   { "glFrontFace", _O(FrontFace) },
722af69d88dSmrg   { "glHint", _O(Hint) },
723af69d88dSmrg   { "glLightf", _O(Lightf) },
724af69d88dSmrg   { "glLightfv", _O(Lightfv) },
725af69d88dSmrg   { "glLighti", _O(Lighti) },
726af69d88dSmrg   { "glLightiv", _O(Lightiv) },
727af69d88dSmrg   { "glLightModelf", _O(LightModelf) },
728af69d88dSmrg   { "glLightModelfv", _O(LightModelfv) },
729af69d88dSmrg   { "glLightModeli", _O(LightModeli) },
730af69d88dSmrg   { "glLightModeliv", _O(LightModeliv) },
731af69d88dSmrg   { "glLineStipple", _O(LineStipple) },
732af69d88dSmrg   { "glLineWidth", _O(LineWidth) },
733af69d88dSmrg   { "glMaterialf", _O(Materialf) },
734af69d88dSmrg   { "glMaterialfv", _O(Materialfv) },
735af69d88dSmrg   { "glMateriali", _O(Materiali) },
736af69d88dSmrg   { "glMaterialiv", _O(Materialiv) },
737af69d88dSmrg   { "glPointSize", _O(PointSize) },
738af69d88dSmrg   { "glPolygonMode", _O(PolygonMode) },
739af69d88dSmrg   { "glPolygonStipple", _O(PolygonStipple) },
740af69d88dSmrg   { "glScissor", _O(Scissor) },
741af69d88dSmrg   { "glShadeModel", _O(ShadeModel) },
742af69d88dSmrg   { "glTexParameterf", _O(TexParameterf) },
743af69d88dSmrg   { "glTexParameterfv", _O(TexParameterfv) },
744af69d88dSmrg   { "glTexParameteri", _O(TexParameteri) },
745af69d88dSmrg   { "glTexParameteriv", _O(TexParameteriv) },
746af69d88dSmrg   { "glTexImage1D", _O(TexImage1D) },
747af69d88dSmrg   { "glTexImage2D", _O(TexImage2D) },
748af69d88dSmrg   { "glTexEnvf", _O(TexEnvf) },
749af69d88dSmrg   { "glTexEnvfv", _O(TexEnvfv) },
750af69d88dSmrg   { "glTexEnvi", _O(TexEnvi) },
751af69d88dSmrg   { "glTexEnviv", _O(TexEnviv) },
752af69d88dSmrg   { "glTexGend", _O(TexGend) },
753af69d88dSmrg   { "glTexGendv", _O(TexGendv) },
754af69d88dSmrg   { "glTexGenf", _O(TexGenf) },
755af69d88dSmrg   { "glTexGenfv", _O(TexGenfv) },
756af69d88dSmrg   { "glTexGeni", _O(TexGeni) },
757af69d88dSmrg   { "glTexGeniv", _O(TexGeniv) },
758af69d88dSmrg   { "glFeedbackBuffer", _O(FeedbackBuffer) },
759af69d88dSmrg   { "glSelectBuffer", _O(SelectBuffer) },
760af69d88dSmrg   { "glRenderMode", _O(RenderMode) },
761af69d88dSmrg   { "glInitNames", _O(InitNames) },
762af69d88dSmrg   { "glLoadName", _O(LoadName) },
763af69d88dSmrg   { "glPassThrough", _O(PassThrough) },
764af69d88dSmrg   { "glPopName", _O(PopName) },
765af69d88dSmrg   { "glPushName", _O(PushName) },
766af69d88dSmrg   { "glDrawBuffer", _O(DrawBuffer) },
767af69d88dSmrg   { "glClear", _O(Clear) },
768af69d88dSmrg   { "glClearAccum", _O(ClearAccum) },
769af69d88dSmrg   { "glClearIndex", _O(ClearIndex) },
770af69d88dSmrg   { "glClearColor", _O(ClearColor) },
771af69d88dSmrg   { "glClearStencil", _O(ClearStencil) },
772af69d88dSmrg   { "glClearDepth", _O(ClearDepth) },
773af69d88dSmrg   { "glStencilMask", _O(StencilMask) },
774af69d88dSmrg   { "glColorMask", _O(ColorMask) },
775af69d88dSmrg   { "glDepthMask", _O(DepthMask) },
776af69d88dSmrg   { "glIndexMask", _O(IndexMask) },
777af69d88dSmrg   { "glAccum", _O(Accum) },
778af69d88dSmrg   { "glDisable", _O(Disable) },
779af69d88dSmrg   { "glEnable", _O(Enable) },
780af69d88dSmrg   { "glFinish", _O(Finish) },
781af69d88dSmrg   { "glFlush", _O(Flush) },
782af69d88dSmrg   { "glPopAttrib", _O(PopAttrib) },
783af69d88dSmrg   { "glPushAttrib", _O(PushAttrib) },
784af69d88dSmrg   { "glMap1d", _O(Map1d) },
785af69d88dSmrg   { "glMap1f", _O(Map1f) },
786af69d88dSmrg   { "glMap2d", _O(Map2d) },
787af69d88dSmrg   { "glMap2f", _O(Map2f) },
788af69d88dSmrg   { "glMapGrid1d", _O(MapGrid1d) },
789af69d88dSmrg   { "glMapGrid1f", _O(MapGrid1f) },
790af69d88dSmrg   { "glMapGrid2d", _O(MapGrid2d) },
791af69d88dSmrg   { "glMapGrid2f", _O(MapGrid2f) },
792af69d88dSmrg   { "glEvalCoord1d", _O(EvalCoord1d) },
793af69d88dSmrg   { "glEvalCoord1dv", _O(EvalCoord1dv) },
794af69d88dSmrg   { "glEvalCoord1f", _O(EvalCoord1f) },
795af69d88dSmrg   { "glEvalCoord1fv", _O(EvalCoord1fv) },
796af69d88dSmrg   { "glEvalCoord2d", _O(EvalCoord2d) },
797af69d88dSmrg   { "glEvalCoord2dv", _O(EvalCoord2dv) },
798af69d88dSmrg   { "glEvalCoord2f", _O(EvalCoord2f) },
799af69d88dSmrg   { "glEvalCoord2fv", _O(EvalCoord2fv) },
800af69d88dSmrg   { "glEvalMesh1", _O(EvalMesh1) },
801af69d88dSmrg   { "glEvalPoint1", _O(EvalPoint1) },
802af69d88dSmrg   { "glEvalMesh2", _O(EvalMesh2) },
803af69d88dSmrg   { "glEvalPoint2", _O(EvalPoint2) },
804af69d88dSmrg   { "glAlphaFunc", _O(AlphaFunc) },
805af69d88dSmrg   { "glBlendFunc", _O(BlendFunc) },
806af69d88dSmrg   { "glLogicOp", _O(LogicOp) },
807af69d88dSmrg   { "glStencilFunc", _O(StencilFunc) },
808af69d88dSmrg   { "glStencilOp", _O(StencilOp) },
809af69d88dSmrg   { "glDepthFunc", _O(DepthFunc) },
810af69d88dSmrg   { "glPixelZoom", _O(PixelZoom) },
811af69d88dSmrg   { "glPixelTransferf", _O(PixelTransferf) },
812af69d88dSmrg   { "glPixelTransferi", _O(PixelTransferi) },
813af69d88dSmrg   { "glPixelStoref", _O(PixelStoref) },
814af69d88dSmrg   { "glPixelStorei", _O(PixelStorei) },
815af69d88dSmrg   { "glPixelMapfv", _O(PixelMapfv) },
816af69d88dSmrg   { "glPixelMapuiv", _O(PixelMapuiv) },
817af69d88dSmrg   { "glPixelMapusv", _O(PixelMapusv) },
818af69d88dSmrg   { "glReadBuffer", _O(ReadBuffer) },
819af69d88dSmrg   { "glCopyPixels", _O(CopyPixels) },
820af69d88dSmrg   { "glReadPixels", _O(ReadPixels) },
821af69d88dSmrg   { "glDrawPixels", _O(DrawPixels) },
822af69d88dSmrg   { "glGetBooleanv", _O(GetBooleanv) },
823af69d88dSmrg   { "glGetClipPlane", _O(GetClipPlane) },
824af69d88dSmrg   { "glGetDoublev", _O(GetDoublev) },
825af69d88dSmrg   { "glGetError", _O(GetError) },
826af69d88dSmrg   { "glGetFloatv", _O(GetFloatv) },
827af69d88dSmrg   { "glGetIntegerv", _O(GetIntegerv) },
828af69d88dSmrg   { "glGetLightfv", _O(GetLightfv) },
829af69d88dSmrg   { "glGetLightiv", _O(GetLightiv) },
830af69d88dSmrg   { "glGetMapdv", _O(GetMapdv) },
831af69d88dSmrg   { "glGetMapfv", _O(GetMapfv) },
832af69d88dSmrg   { "glGetMapiv", _O(GetMapiv) },
833af69d88dSmrg   { "glGetMaterialfv", _O(GetMaterialfv) },
834af69d88dSmrg   { "glGetMaterialiv", _O(GetMaterialiv) },
835af69d88dSmrg   { "glGetPixelMapfv", _O(GetPixelMapfv) },
836af69d88dSmrg   { "glGetPixelMapuiv", _O(GetPixelMapuiv) },
837af69d88dSmrg   { "glGetPixelMapusv", _O(GetPixelMapusv) },
838af69d88dSmrg   { "glGetPolygonStipple", _O(GetPolygonStipple) },
839af69d88dSmrg   { "glGetString", _O(GetString) },
840af69d88dSmrg   { "glGetTexEnvfv", _O(GetTexEnvfv) },
841af69d88dSmrg   { "glGetTexEnviv", _O(GetTexEnviv) },
842af69d88dSmrg   { "glGetTexGendv", _O(GetTexGendv) },
843af69d88dSmrg   { "glGetTexGenfv", _O(GetTexGenfv) },
844af69d88dSmrg   { "glGetTexGeniv", _O(GetTexGeniv) },
845af69d88dSmrg   { "glGetTexImage", _O(GetTexImage) },
846af69d88dSmrg   { "glGetTexParameterfv", _O(GetTexParameterfv) },
847af69d88dSmrg   { "glGetTexParameteriv", _O(GetTexParameteriv) },
848af69d88dSmrg   { "glGetTexLevelParameterfv", _O(GetTexLevelParameterfv) },
849af69d88dSmrg   { "glGetTexLevelParameteriv", _O(GetTexLevelParameteriv) },
850af69d88dSmrg   { "glIsEnabled", _O(IsEnabled) },
851af69d88dSmrg   { "glIsList", _O(IsList) },
852af69d88dSmrg   { "glDepthRange", _O(DepthRange) },
853af69d88dSmrg   { "glFrustum", _O(Frustum) },
854af69d88dSmrg   { "glLoadIdentity", _O(LoadIdentity) },
855af69d88dSmrg   { "glLoadMatrixf", _O(LoadMatrixf) },
856af69d88dSmrg   { "glLoadMatrixd", _O(LoadMatrixd) },
857af69d88dSmrg   { "glMatrixMode", _O(MatrixMode) },
858af69d88dSmrg   { "glMultMatrixf", _O(MultMatrixf) },
859af69d88dSmrg   { "glMultMatrixd", _O(MultMatrixd) },
860af69d88dSmrg   { "glOrtho", _O(Ortho) },
861af69d88dSmrg   { "glPopMatrix", _O(PopMatrix) },
862af69d88dSmrg   { "glPushMatrix", _O(PushMatrix) },
863af69d88dSmrg   { "glRotated", _O(Rotated) },
864af69d88dSmrg   { "glRotatef", _O(Rotatef) },
865af69d88dSmrg   { "glScaled", _O(Scaled) },
866af69d88dSmrg   { "glScalef", _O(Scalef) },
867af69d88dSmrg   { "glTranslated", _O(Translated) },
868af69d88dSmrg   { "glTranslatef", _O(Translatef) },
869af69d88dSmrg   { "glViewport", _O(Viewport) },
870af69d88dSmrg   { "glArrayElement", _O(ArrayElement) },
871af69d88dSmrg   { "glBindTexture", _O(BindTexture) },
872af69d88dSmrg   { "glColorPointer", _O(ColorPointer) },
873af69d88dSmrg   { "glDisableClientState", _O(DisableClientState) },
874af69d88dSmrg   { "glDrawArrays", _O(DrawArrays) },
875af69d88dSmrg   { "glDrawElements", _O(DrawElements) },
876af69d88dSmrg   { "glEdgeFlagPointer", _O(EdgeFlagPointer) },
877af69d88dSmrg   { "glEnableClientState", _O(EnableClientState) },
878af69d88dSmrg   { "glIndexPointer", _O(IndexPointer) },
879af69d88dSmrg   { "glIndexub", _O(Indexub) },
880af69d88dSmrg   { "glIndexubv", _O(Indexubv) },
881af69d88dSmrg   { "glInterleavedArrays", _O(InterleavedArrays) },
882af69d88dSmrg   { "glNormalPointer", _O(NormalPointer) },
883af69d88dSmrg   { "glPolygonOffset", _O(PolygonOffset) },
884af69d88dSmrg   { "glTexCoordPointer", _O(TexCoordPointer) },
885af69d88dSmrg   { "glVertexPointer", _O(VertexPointer) },
886af69d88dSmrg   { "glAreTexturesResident", _O(AreTexturesResident) },
887af69d88dSmrg   { "glCopyTexImage1D", _O(CopyTexImage1D) },
888af69d88dSmrg   { "glCopyTexImage2D", _O(CopyTexImage2D) },
889af69d88dSmrg   { "glCopyTexSubImage1D", _O(CopyTexSubImage1D) },
890af69d88dSmrg   { "glCopyTexSubImage2D", _O(CopyTexSubImage2D) },
891af69d88dSmrg   { "glDeleteTextures", _O(DeleteTextures) },
892af69d88dSmrg   { "glGenTextures", _O(GenTextures) },
893af69d88dSmrg   { "glGetPointerv", _O(GetPointerv) },
894af69d88dSmrg   { "glIsTexture", _O(IsTexture) },
895af69d88dSmrg   { "glPrioritizeTextures", _O(PrioritizeTextures) },
896af69d88dSmrg   { "glTexSubImage1D", _O(TexSubImage1D) },
897af69d88dSmrg   { "glTexSubImage2D", _O(TexSubImage2D) },
898af69d88dSmrg   { "glPopClientAttrib", _O(PopClientAttrib) },
899af69d88dSmrg   { "glPushClientAttrib", _O(PushClientAttrib) },
900af69d88dSmrg   { "glBlendColor", _O(BlendColor) },
901af69d88dSmrg   { "glBlendEquation", _O(BlendEquation) },
902af69d88dSmrg   { "glDrawRangeElements", _O(DrawRangeElements) },
903af69d88dSmrg   { "glColorTable", _O(ColorTable) },
904af69d88dSmrg   { "glColorTableParameterfv", _O(ColorTableParameterfv) },
905af69d88dSmrg   { "glColorTableParameteriv", _O(ColorTableParameteriv) },
906af69d88dSmrg   { "glCopyColorTable", _O(CopyColorTable) },
907af69d88dSmrg   { "glGetColorTable", _O(GetColorTable) },
908af69d88dSmrg   { "glGetColorTableParameterfv", _O(GetColorTableParameterfv) },
909af69d88dSmrg   { "glGetColorTableParameteriv", _O(GetColorTableParameteriv) },
910af69d88dSmrg   { "glColorSubTable", _O(ColorSubTable) },
911af69d88dSmrg   { "glCopyColorSubTable", _O(CopyColorSubTable) },
912af69d88dSmrg   { "glConvolutionFilter1D", _O(ConvolutionFilter1D) },
913af69d88dSmrg   { "glConvolutionFilter2D", _O(ConvolutionFilter2D) },
914af69d88dSmrg   { "glConvolutionParameterf", _O(ConvolutionParameterf) },
915af69d88dSmrg   { "glConvolutionParameterfv", _O(ConvolutionParameterfv) },
916af69d88dSmrg   { "glConvolutionParameteri", _O(ConvolutionParameteri) },
917af69d88dSmrg   { "glConvolutionParameteriv", _O(ConvolutionParameteriv) },
918af69d88dSmrg   { "glCopyConvolutionFilter1D", _O(CopyConvolutionFilter1D) },
919af69d88dSmrg   { "glCopyConvolutionFilter2D", _O(CopyConvolutionFilter2D) },
920af69d88dSmrg   { "glGetConvolutionFilter", _O(GetConvolutionFilter) },
921af69d88dSmrg   { "glGetConvolutionParameterfv", _O(GetConvolutionParameterfv) },
922af69d88dSmrg   { "glGetConvolutionParameteriv", _O(GetConvolutionParameteriv) },
923af69d88dSmrg   { "glGetSeparableFilter", _O(GetSeparableFilter) },
924af69d88dSmrg   { "glSeparableFilter2D", _O(SeparableFilter2D) },
925af69d88dSmrg   { "glGetHistogram", _O(GetHistogram) },
926af69d88dSmrg   { "glGetHistogramParameterfv", _O(GetHistogramParameterfv) },
927af69d88dSmrg   { "glGetHistogramParameteriv", _O(GetHistogramParameteriv) },
928af69d88dSmrg   { "glGetMinmax", _O(GetMinmax) },
929af69d88dSmrg   { "glGetMinmaxParameterfv", _O(GetMinmaxParameterfv) },
930af69d88dSmrg   { "glGetMinmaxParameteriv", _O(GetMinmaxParameteriv) },
931af69d88dSmrg   { "glHistogram", _O(Histogram) },
932af69d88dSmrg   { "glMinmax", _O(Minmax) },
933af69d88dSmrg   { "glResetHistogram", _O(ResetHistogram) },
934af69d88dSmrg   { "glResetMinmax", _O(ResetMinmax) },
935af69d88dSmrg   { "glTexImage3D", _O(TexImage3D) },
936af69d88dSmrg   { "glTexSubImage3D", _O(TexSubImage3D) },
937af69d88dSmrg   { "glCopyTexSubImage3D", _O(CopyTexSubImage3D) },
938af69d88dSmrg   { "glActiveTexture", _O(ActiveTexture) },
939af69d88dSmrg   { "glClientActiveTexture", _O(ClientActiveTexture) },
940af69d88dSmrg   { "glMultiTexCoord1d", _O(MultiTexCoord1d) },
941af69d88dSmrg   { "glMultiTexCoord1dv", _O(MultiTexCoord1dv) },
942af69d88dSmrg   { "glMultiTexCoord1fARB", _O(MultiTexCoord1fARB) },
943af69d88dSmrg   { "glMultiTexCoord1fvARB", _O(MultiTexCoord1fvARB) },
944af69d88dSmrg   { "glMultiTexCoord1i", _O(MultiTexCoord1i) },
945af69d88dSmrg   { "glMultiTexCoord1iv", _O(MultiTexCoord1iv) },
946af69d88dSmrg   { "glMultiTexCoord1s", _O(MultiTexCoord1s) },
947af69d88dSmrg   { "glMultiTexCoord1sv", _O(MultiTexCoord1sv) },
948af69d88dSmrg   { "glMultiTexCoord2d", _O(MultiTexCoord2d) },
949af69d88dSmrg   { "glMultiTexCoord2dv", _O(MultiTexCoord2dv) },
950af69d88dSmrg   { "glMultiTexCoord2fARB", _O(MultiTexCoord2fARB) },
951af69d88dSmrg   { "glMultiTexCoord2fvARB", _O(MultiTexCoord2fvARB) },
952af69d88dSmrg   { "glMultiTexCoord2i", _O(MultiTexCoord2i) },
953af69d88dSmrg   { "glMultiTexCoord2iv", _O(MultiTexCoord2iv) },
954af69d88dSmrg   { "glMultiTexCoord2s", _O(MultiTexCoord2s) },
955af69d88dSmrg   { "glMultiTexCoord2sv", _O(MultiTexCoord2sv) },
956af69d88dSmrg   { "glMultiTexCoord3d", _O(MultiTexCoord3d) },
957af69d88dSmrg   { "glMultiTexCoord3dv", _O(MultiTexCoord3dv) },
958af69d88dSmrg   { "glMultiTexCoord3fARB", _O(MultiTexCoord3fARB) },
959af69d88dSmrg   { "glMultiTexCoord3fvARB", _O(MultiTexCoord3fvARB) },
960af69d88dSmrg   { "glMultiTexCoord3i", _O(MultiTexCoord3i) },
961af69d88dSmrg   { "glMultiTexCoord3iv", _O(MultiTexCoord3iv) },
962af69d88dSmrg   { "glMultiTexCoord3s", _O(MultiTexCoord3s) },
963af69d88dSmrg   { "glMultiTexCoord3sv", _O(MultiTexCoord3sv) },
964af69d88dSmrg   { "glMultiTexCoord4d", _O(MultiTexCoord4d) },
965af69d88dSmrg   { "glMultiTexCoord4dv", _O(MultiTexCoord4dv) },
966af69d88dSmrg   { "glMultiTexCoord4fARB", _O(MultiTexCoord4fARB) },
967af69d88dSmrg   { "glMultiTexCoord4fvARB", _O(MultiTexCoord4fvARB) },
968af69d88dSmrg   { "glMultiTexCoord4i", _O(MultiTexCoord4i) },
969af69d88dSmrg   { "glMultiTexCoord4iv", _O(MultiTexCoord4iv) },
970af69d88dSmrg   { "glMultiTexCoord4s", _O(MultiTexCoord4s) },
971af69d88dSmrg   { "glMultiTexCoord4sv", _O(MultiTexCoord4sv) },
972af69d88dSmrg   { "glAttachShader", _O(AttachShader) },
973af69d88dSmrg   { "glCreateProgram", _O(CreateProgram) },
974af69d88dSmrg   { "glCreateShader", _O(CreateShader) },
975af69d88dSmrg   { "glDeleteProgram", _O(DeleteProgram) },
976af69d88dSmrg   { "glDeleteShader", _O(DeleteShader) },
977af69d88dSmrg   { "glDetachShader", _O(DetachShader) },
978af69d88dSmrg   { "glGetAttachedShaders", _O(GetAttachedShaders) },
979af69d88dSmrg   { "glGetProgramInfoLog", _O(GetProgramInfoLog) },
980af69d88dSmrg   { "glGetProgramiv", _O(GetProgramiv) },
981af69d88dSmrg   { "glGetShaderInfoLog", _O(GetShaderInfoLog) },
982af69d88dSmrg   { "glGetShaderiv", _O(GetShaderiv) },
983af69d88dSmrg   { "glIsProgram", _O(IsProgram) },
984af69d88dSmrg   { "glIsShader", _O(IsShader) },
985af69d88dSmrg   { "glStencilFuncSeparate", _O(StencilFuncSeparate) },
986af69d88dSmrg   { "glStencilMaskSeparate", _O(StencilMaskSeparate) },
987af69d88dSmrg   { "glStencilOpSeparate", _O(StencilOpSeparate) },
988af69d88dSmrg   { "glUniformMatrix2x3fv", _O(UniformMatrix2x3fv) },
989af69d88dSmrg   { "glUniformMatrix2x4fv", _O(UniformMatrix2x4fv) },
990af69d88dSmrg   { "glUniformMatrix3x2fv", _O(UniformMatrix3x2fv) },
991af69d88dSmrg   { "glUniformMatrix3x4fv", _O(UniformMatrix3x4fv) },
992af69d88dSmrg   { "glUniformMatrix4x2fv", _O(UniformMatrix4x2fv) },
993af69d88dSmrg   { "glUniformMatrix4x3fv", _O(UniformMatrix4x3fv) },
994af69d88dSmrg   { "glClearBufferfi", _O(ClearBufferfi) },
995af69d88dSmrg   { "glClearBufferfv", _O(ClearBufferfv) },
996af69d88dSmrg   { "glClearBufferiv", _O(ClearBufferiv) },
997af69d88dSmrg   { "glClearBufferuiv", _O(ClearBufferuiv) },
998af69d88dSmrg   { "glGetStringi", _O(GetStringi) },
999af69d88dSmrg   { "glFramebufferTexture", _O(FramebufferTexture) },
1000af69d88dSmrg   { "glGetBufferParameteri64v", _O(GetBufferParameteri64v) },
1001af69d88dSmrg   { "glGetInteger64i_v", _O(GetInteger64i_v) },
1002af69d88dSmrg   { "glLoadTransposeMatrixd", _O(LoadTransposeMatrixd) },
1003af69d88dSmrg   { "glLoadTransposeMatrixf", _O(LoadTransposeMatrixf) },
1004af69d88dSmrg   { "glMultTransposeMatrixd", _O(MultTransposeMatrixd) },
1005af69d88dSmrg   { "glMultTransposeMatrixf", _O(MultTransposeMatrixf) },
1006af69d88dSmrg   { "glSampleCoverage", _O(SampleCoverage) },
1007af69d88dSmrg   { "glCompressedTexImage1D", _O(CompressedTexImage1D) },
1008af69d88dSmrg   { "glCompressedTexImage2D", _O(CompressedTexImage2D) },
1009af69d88dSmrg   { "glCompressedTexImage3D", _O(CompressedTexImage3D) },
1010af69d88dSmrg   { "glCompressedTexSubImage1D", _O(CompressedTexSubImage1D) },
1011af69d88dSmrg   { "glCompressedTexSubImage2D", _O(CompressedTexSubImage2D) },
1012af69d88dSmrg   { "glCompressedTexSubImage3D", _O(CompressedTexSubImage3D) },
1013af69d88dSmrg   { "glGetCompressedTexImage", _O(GetCompressedTexImage) },
1014af69d88dSmrg   { "glDisableVertexAttribArray", _O(DisableVertexAttribArray) },
1015af69d88dSmrg   { "glEnableVertexAttribArray", _O(EnableVertexAttribArray) },
1016af69d88dSmrg   { "glGetProgramEnvParameterdvARB", _O(GetProgramEnvParameterdvARB) },
1017af69d88dSmrg   { "glGetProgramEnvParameterfvARB", _O(GetProgramEnvParameterfvARB) },
1018af69d88dSmrg   { "glGetProgramLocalParameterdvARB", _O(GetProgramLocalParameterdvARB) },
1019af69d88dSmrg   { "glGetProgramLocalParameterfvARB", _O(GetProgramLocalParameterfvARB) },
1020af69d88dSmrg   { "glGetProgramStringARB", _O(GetProgramStringARB) },
1021af69d88dSmrg   { "glGetProgramivARB", _O(GetProgramivARB) },
1022af69d88dSmrg   { "glGetVertexAttribdv", _O(GetVertexAttribdv) },
1023af69d88dSmrg   { "glGetVertexAttribfv", _O(GetVertexAttribfv) },
1024af69d88dSmrg   { "glGetVertexAttribiv", _O(GetVertexAttribiv) },
1025af69d88dSmrg   { "glProgramEnvParameter4dARB", _O(ProgramEnvParameter4dARB) },
1026af69d88dSmrg   { "glProgramEnvParameter4dvARB", _O(ProgramEnvParameter4dvARB) },
1027af69d88dSmrg   { "glProgramEnvParameter4fARB", _O(ProgramEnvParameter4fARB) },
1028af69d88dSmrg   { "glProgramEnvParameter4fvARB", _O(ProgramEnvParameter4fvARB) },
1029af69d88dSmrg   { "glProgramLocalParameter4dARB", _O(ProgramLocalParameter4dARB) },
1030af69d88dSmrg   { "glProgramLocalParameter4dvARB", _O(ProgramLocalParameter4dvARB) },
1031af69d88dSmrg   { "glProgramLocalParameter4fARB", _O(ProgramLocalParameter4fARB) },
1032af69d88dSmrg   { "glProgramLocalParameter4fvARB", _O(ProgramLocalParameter4fvARB) },
1033af69d88dSmrg   { "glProgramStringARB", _O(ProgramStringARB) },
1034af69d88dSmrg   { "glVertexAttrib1d", _O(VertexAttrib1d) },
1035af69d88dSmrg   { "glVertexAttrib1dv", _O(VertexAttrib1dv) },
1036af69d88dSmrg   { "glVertexAttrib1fARB", _O(VertexAttrib1fARB) },
1037af69d88dSmrg   { "glVertexAttrib1fvARB", _O(VertexAttrib1fvARB) },
1038af69d88dSmrg   { "glVertexAttrib1s", _O(VertexAttrib1s) },
1039af69d88dSmrg   { "glVertexAttrib1sv", _O(VertexAttrib1sv) },
1040af69d88dSmrg   { "glVertexAttrib2d", _O(VertexAttrib2d) },
1041af69d88dSmrg   { "glVertexAttrib2dv", _O(VertexAttrib2dv) },
1042af69d88dSmrg   { "glVertexAttrib2fARB", _O(VertexAttrib2fARB) },
1043af69d88dSmrg   { "glVertexAttrib2fvARB", _O(VertexAttrib2fvARB) },
1044af69d88dSmrg   { "glVertexAttrib2s", _O(VertexAttrib2s) },
1045af69d88dSmrg   { "glVertexAttrib2sv", _O(VertexAttrib2sv) },
1046af69d88dSmrg   { "glVertexAttrib3d", _O(VertexAttrib3d) },
1047af69d88dSmrg   { "glVertexAttrib3dv", _O(VertexAttrib3dv) },
1048af69d88dSmrg   { "glVertexAttrib3fARB", _O(VertexAttrib3fARB) },
1049af69d88dSmrg   { "glVertexAttrib3fvARB", _O(VertexAttrib3fvARB) },
1050af69d88dSmrg   { "glVertexAttrib3s", _O(VertexAttrib3s) },
1051af69d88dSmrg   { "glVertexAttrib3sv", _O(VertexAttrib3sv) },
1052af69d88dSmrg   { "glVertexAttrib4Nbv", _O(VertexAttrib4Nbv) },
1053af69d88dSmrg   { "glVertexAttrib4Niv", _O(VertexAttrib4Niv) },
1054af69d88dSmrg   { "glVertexAttrib4Nsv", _O(VertexAttrib4Nsv) },
1055af69d88dSmrg   { "glVertexAttrib4Nub", _O(VertexAttrib4Nub) },
1056af69d88dSmrg   { "glVertexAttrib4Nubv", _O(VertexAttrib4Nubv) },
1057af69d88dSmrg   { "glVertexAttrib4Nuiv", _O(VertexAttrib4Nuiv) },
1058af69d88dSmrg   { "glVertexAttrib4Nusv", _O(VertexAttrib4Nusv) },
1059af69d88dSmrg   { "glVertexAttrib4bv", _O(VertexAttrib4bv) },
1060af69d88dSmrg   { "glVertexAttrib4d", _O(VertexAttrib4d) },
1061af69d88dSmrg   { "glVertexAttrib4dv", _O(VertexAttrib4dv) },
1062af69d88dSmrg   { "glVertexAttrib4fARB", _O(VertexAttrib4fARB) },
1063af69d88dSmrg   { "glVertexAttrib4fvARB", _O(VertexAttrib4fvARB) },
1064af69d88dSmrg   { "glVertexAttrib4iv", _O(VertexAttrib4iv) },
1065af69d88dSmrg   { "glVertexAttrib4s", _O(VertexAttrib4s) },
1066af69d88dSmrg   { "glVertexAttrib4sv", _O(VertexAttrib4sv) },
1067af69d88dSmrg   { "glVertexAttrib4ubv", _O(VertexAttrib4ubv) },
1068af69d88dSmrg   { "glVertexAttrib4uiv", _O(VertexAttrib4uiv) },
1069af69d88dSmrg   { "glVertexAttrib4usv", _O(VertexAttrib4usv) },
1070af69d88dSmrg   { "glVertexAttribPointer", _O(VertexAttribPointer) },
1071af69d88dSmrg   { "glBindBuffer", _O(BindBuffer) },
1072af69d88dSmrg   { "glBufferData", _O(BufferData) },
1073af69d88dSmrg   { "glBufferSubData", _O(BufferSubData) },
1074af69d88dSmrg   { "glDeleteBuffers", _O(DeleteBuffers) },
1075af69d88dSmrg   { "glGenBuffers", _O(GenBuffers) },
1076af69d88dSmrg   { "glGetBufferParameteriv", _O(GetBufferParameteriv) },
1077af69d88dSmrg   { "glGetBufferPointerv", _O(GetBufferPointerv) },
1078af69d88dSmrg   { "glGetBufferSubData", _O(GetBufferSubData) },
1079af69d88dSmrg   { "glIsBuffer", _O(IsBuffer) },
1080af69d88dSmrg   { "glMapBuffer", _O(MapBuffer) },
1081af69d88dSmrg   { "glUnmapBuffer", _O(UnmapBuffer) },
1082af69d88dSmrg   { "glBeginQuery", _O(BeginQuery) },
1083af69d88dSmrg   { "glDeleteQueries", _O(DeleteQueries) },
1084af69d88dSmrg   { "glEndQuery", _O(EndQuery) },
1085af69d88dSmrg   { "glGenQueries", _O(GenQueries) },
1086af69d88dSmrg   { "glGetQueryObjectiv", _O(GetQueryObjectiv) },
1087af69d88dSmrg   { "glGetQueryObjectuiv", _O(GetQueryObjectuiv) },
1088af69d88dSmrg   { "glGetQueryiv", _O(GetQueryiv) },
1089af69d88dSmrg   { "glIsQuery", _O(IsQuery) },
1090af69d88dSmrg   { "glAttachObjectARB", _O(AttachObjectARB) },
1091af69d88dSmrg   { "glCompileShader", _O(CompileShader) },
1092af69d88dSmrg   { "glCreateProgramObjectARB", _O(CreateProgramObjectARB) },
1093af69d88dSmrg   { "glCreateShaderObjectARB", _O(CreateShaderObjectARB) },
1094af69d88dSmrg   { "glDeleteObjectARB", _O(DeleteObjectARB) },
1095af69d88dSmrg   { "glDetachObjectARB", _O(DetachObjectARB) },
1096af69d88dSmrg   { "glGetActiveUniform", _O(GetActiveUniform) },
1097af69d88dSmrg   { "glGetAttachedObjectsARB", _O(GetAttachedObjectsARB) },
1098af69d88dSmrg   { "glGetHandleARB", _O(GetHandleARB) },
1099af69d88dSmrg   { "glGetInfoLogARB", _O(GetInfoLogARB) },
1100af69d88dSmrg   { "glGetObjectParameterfvARB", _O(GetObjectParameterfvARB) },
1101af69d88dSmrg   { "glGetObjectParameterivARB", _O(GetObjectParameterivARB) },
1102af69d88dSmrg   { "glGetShaderSource", _O(GetShaderSource) },
1103af69d88dSmrg   { "glGetUniformLocation", _O(GetUniformLocation) },
1104af69d88dSmrg   { "glGetUniformfv", _O(GetUniformfv) },
1105af69d88dSmrg   { "glGetUniformiv", _O(GetUniformiv) },
1106af69d88dSmrg   { "glLinkProgram", _O(LinkProgram) },
1107af69d88dSmrg   { "glShaderSource", _O(ShaderSource) },
1108af69d88dSmrg   { "glUniform1f", _O(Uniform1f) },
1109af69d88dSmrg   { "glUniform1fv", _O(Uniform1fv) },
1110af69d88dSmrg   { "glUniform1i", _O(Uniform1i) },
1111af69d88dSmrg   { "glUniform1iv", _O(Uniform1iv) },
1112af69d88dSmrg   { "glUniform2f", _O(Uniform2f) },
1113af69d88dSmrg   { "glUniform2fv", _O(Uniform2fv) },
1114af69d88dSmrg   { "glUniform2i", _O(Uniform2i) },
1115af69d88dSmrg   { "glUniform2iv", _O(Uniform2iv) },
1116af69d88dSmrg   { "glUniform3f", _O(Uniform3f) },
1117af69d88dSmrg   { "glUniform3fv", _O(Uniform3fv) },
1118af69d88dSmrg   { "glUniform3i", _O(Uniform3i) },
1119af69d88dSmrg   { "glUniform3iv", _O(Uniform3iv) },
1120af69d88dSmrg   { "glUniform4f", _O(Uniform4f) },
1121af69d88dSmrg   { "glUniform4fv", _O(Uniform4fv) },
1122af69d88dSmrg   { "glUniform4i", _O(Uniform4i) },
1123af69d88dSmrg   { "glUniform4iv", _O(Uniform4iv) },
1124af69d88dSmrg   { "glUniformMatrix2fv", _O(UniformMatrix2fv) },
1125af69d88dSmrg   { "glUniformMatrix3fv", _O(UniformMatrix3fv) },
1126af69d88dSmrg   { "glUniformMatrix4fv", _O(UniformMatrix4fv) },
1127af69d88dSmrg   { "glUseProgram", _O(UseProgram) },
1128af69d88dSmrg   { "glValidateProgram", _O(ValidateProgram) },
1129af69d88dSmrg   { "glBindAttribLocation", _O(BindAttribLocation) },
1130af69d88dSmrg   { "glGetActiveAttrib", _O(GetActiveAttrib) },
1131af69d88dSmrg   { "glGetAttribLocation", _O(GetAttribLocation) },
1132af69d88dSmrg   { "glDrawBuffers", _O(DrawBuffers) },
1133af69d88dSmrg   { "glClampColor", _O(ClampColor) },
1134af69d88dSmrg   { "glDrawArraysInstancedARB", _O(DrawArraysInstancedARB) },
1135af69d88dSmrg   { "glDrawElementsInstancedARB", _O(DrawElementsInstancedARB) },
1136af69d88dSmrg   { "glRenderbufferStorageMultisample", _O(RenderbufferStorageMultisample) },
1137af69d88dSmrg   { "glFramebufferTexture", _O(FramebufferTexture) },
1138af69d88dSmrg   { "glProgramParameteri", _O(ProgramParameteri) },
1139af69d88dSmrg   { "glVertexAttribDivisor", _O(VertexAttribDivisor) },
1140af69d88dSmrg   { "glFlushMappedBufferRange", _O(FlushMappedBufferRange) },
1141af69d88dSmrg   { "glMapBufferRange", _O(MapBufferRange) },
1142af69d88dSmrg   { "glTexBuffer", _O(TexBuffer) },
1143af69d88dSmrg   { "glBindVertexArray", _O(BindVertexArray) },
1144af69d88dSmrg   { "glGenVertexArrays", _O(GenVertexArrays) },
1145af69d88dSmrg   { "glCopyBufferSubData", _O(CopyBufferSubData) },
1146af69d88dSmrg   { "glClientWaitSync", _O(ClientWaitSync) },
1147af69d88dSmrg   { "glDeleteSync", _O(DeleteSync) },
1148af69d88dSmrg   { "glFenceSync", _O(FenceSync) },
1149af69d88dSmrg   { "glGetInteger64v", _O(GetInteger64v) },
1150af69d88dSmrg   { "glGetSynciv", _O(GetSynciv) },
1151af69d88dSmrg   { "glIsSync", _O(IsSync) },
1152af69d88dSmrg   { "glWaitSync", _O(WaitSync) },
1153af69d88dSmrg   { "glDrawElementsBaseVertex", _O(DrawElementsBaseVertex) },
1154af69d88dSmrg   { "glDrawElementsInstancedBaseVertex", _O(DrawElementsInstancedBaseVertex) },
1155af69d88dSmrg   { "glDrawRangeElementsBaseVertex", _O(DrawRangeElementsBaseVertex) },
1156af69d88dSmrg   { "glMultiDrawElementsBaseVertex", _O(MultiDrawElementsBaseVertex) },
1157af69d88dSmrg   { "glBlendEquationSeparateiARB", _O(BlendEquationSeparateiARB) },
1158af69d88dSmrg   { "glBlendEquationiARB", _O(BlendEquationiARB) },
1159af69d88dSmrg   { "glBlendFuncSeparateiARB", _O(BlendFuncSeparateiARB) },
1160af69d88dSmrg   { "glBlendFunciARB", _O(BlendFunciARB) },
1161af69d88dSmrg   { "glBindFragDataLocationIndexed", _O(BindFragDataLocationIndexed) },
1162af69d88dSmrg   { "glGetFragDataIndex", _O(GetFragDataIndex) },
1163af69d88dSmrg   { "glBindSampler", _O(BindSampler) },
1164af69d88dSmrg   { "glDeleteSamplers", _O(DeleteSamplers) },
1165af69d88dSmrg   { "glGenSamplers", _O(GenSamplers) },
1166af69d88dSmrg   { "glGetSamplerParameterIiv", _O(GetSamplerParameterIiv) },
1167af69d88dSmrg   { "glGetSamplerParameterIuiv", _O(GetSamplerParameterIuiv) },
1168af69d88dSmrg   { "glGetSamplerParameterfv", _O(GetSamplerParameterfv) },
1169af69d88dSmrg   { "glGetSamplerParameteriv", _O(GetSamplerParameteriv) },
1170af69d88dSmrg   { "glIsSampler", _O(IsSampler) },
1171af69d88dSmrg   { "glSamplerParameterIiv", _O(SamplerParameterIiv) },
1172af69d88dSmrg   { "glSamplerParameterIuiv", _O(SamplerParameterIuiv) },
1173af69d88dSmrg   { "glSamplerParameterf", _O(SamplerParameterf) },
1174af69d88dSmrg   { "glSamplerParameterfv", _O(SamplerParameterfv) },
1175af69d88dSmrg   { "glSamplerParameteri", _O(SamplerParameteri) },
1176af69d88dSmrg   { "glSamplerParameteriv", _O(SamplerParameteriv) },
1177af69d88dSmrg   { "glColorP3ui", _O(ColorP3ui) },
1178af69d88dSmrg   { "glColorP3uiv", _O(ColorP3uiv) },
1179af69d88dSmrg   { "glColorP4ui", _O(ColorP4ui) },
1180af69d88dSmrg   { "glColorP4uiv", _O(ColorP4uiv) },
1181af69d88dSmrg   { "glMultiTexCoordP1ui", _O(MultiTexCoordP1ui) },
1182af69d88dSmrg   { "glMultiTexCoordP1uiv", _O(MultiTexCoordP1uiv) },
1183af69d88dSmrg   { "glMultiTexCoordP2ui", _O(MultiTexCoordP2ui) },
1184af69d88dSmrg   { "glMultiTexCoordP2uiv", _O(MultiTexCoordP2uiv) },
1185af69d88dSmrg   { "glMultiTexCoordP3ui", _O(MultiTexCoordP3ui) },
1186af69d88dSmrg   { "glMultiTexCoordP3uiv", _O(MultiTexCoordP3uiv) },
1187af69d88dSmrg   { "glMultiTexCoordP4ui", _O(MultiTexCoordP4ui) },
1188af69d88dSmrg   { "glMultiTexCoordP4uiv", _O(MultiTexCoordP4uiv) },
1189af69d88dSmrg   { "glNormalP3ui", _O(NormalP3ui) },
1190af69d88dSmrg   { "glNormalP3uiv", _O(NormalP3uiv) },
1191af69d88dSmrg   { "glSecondaryColorP3ui", _O(SecondaryColorP3ui) },
1192af69d88dSmrg   { "glSecondaryColorP3uiv", _O(SecondaryColorP3uiv) },
1193af69d88dSmrg   { "glTexCoordP1ui", _O(TexCoordP1ui) },
1194af69d88dSmrg   { "glTexCoordP1uiv", _O(TexCoordP1uiv) },
1195af69d88dSmrg   { "glTexCoordP2ui", _O(TexCoordP2ui) },
1196af69d88dSmrg   { "glTexCoordP2uiv", _O(TexCoordP2uiv) },
1197af69d88dSmrg   { "glTexCoordP3ui", _O(TexCoordP3ui) },
1198af69d88dSmrg   { "glTexCoordP3uiv", _O(TexCoordP3uiv) },
1199af69d88dSmrg   { "glTexCoordP4ui", _O(TexCoordP4ui) },
1200af69d88dSmrg   { "glTexCoordP4uiv", _O(TexCoordP4uiv) },
1201af69d88dSmrg   { "glVertexAttribP1ui", _O(VertexAttribP1ui) },
1202af69d88dSmrg   { "glVertexAttribP1uiv", _O(VertexAttribP1uiv) },
1203af69d88dSmrg   { "glVertexAttribP2ui", _O(VertexAttribP2ui) },
1204af69d88dSmrg   { "glVertexAttribP2uiv", _O(VertexAttribP2uiv) },
1205af69d88dSmrg   { "glVertexAttribP3ui", _O(VertexAttribP3ui) },
1206af69d88dSmrg   { "glVertexAttribP3uiv", _O(VertexAttribP3uiv) },
1207af69d88dSmrg   { "glVertexAttribP4ui", _O(VertexAttribP4ui) },
1208af69d88dSmrg   { "glVertexAttribP4uiv", _O(VertexAttribP4uiv) },
1209af69d88dSmrg   { "glVertexP2ui", _O(VertexP2ui) },
1210af69d88dSmrg   { "glVertexP2uiv", _O(VertexP2uiv) },
1211af69d88dSmrg   { "glVertexP3ui", _O(VertexP3ui) },
1212af69d88dSmrg   { "glVertexP3uiv", _O(VertexP3uiv) },
1213af69d88dSmrg   { "glVertexP4ui", _O(VertexP4ui) },
1214af69d88dSmrg   { "glVertexP4uiv", _O(VertexP4uiv) },
1215af69d88dSmrg   { "glBindTransformFeedback", _O(BindTransformFeedback) },
1216af69d88dSmrg   { "glDeleteTransformFeedbacks", _O(DeleteTransformFeedbacks) },
1217af69d88dSmrg   { "glDrawTransformFeedback", _O(DrawTransformFeedback) },
1218af69d88dSmrg   { "glGenTransformFeedbacks", _O(GenTransformFeedbacks) },
1219af69d88dSmrg   { "glIsTransformFeedback", _O(IsTransformFeedback) },
1220af69d88dSmrg   { "glPauseTransformFeedback", _O(PauseTransformFeedback) },
1221af69d88dSmrg   { "glResumeTransformFeedback", _O(ResumeTransformFeedback) },
1222af69d88dSmrg   { "glClearDepthf", _O(ClearDepthf) },
1223af69d88dSmrg   { "glDepthRangef", _O(DepthRangef) },
1224af69d88dSmrg   { "glGetShaderPrecisionFormat", _O(GetShaderPrecisionFormat) },
1225af69d88dSmrg   { "glReleaseShaderCompiler", _O(ReleaseShaderCompiler) },
1226af69d88dSmrg   { "glShaderBinary", _O(ShaderBinary) },
1227af69d88dSmrg   { "glDebugMessageCallback", _O(DebugMessageCallback) },
1228af69d88dSmrg   { "glDebugMessageControl", _O(DebugMessageControl) },
1229af69d88dSmrg   { "glDebugMessageInsert", _O(DebugMessageInsert) },
1230af69d88dSmrg   { "glGetDebugMessageLog", _O(GetDebugMessageLog) },
123101e04c3fSmrg   { "glPushDebugGroup", _O(PushDebugGroup) },
123201e04c3fSmrg   { "glPopDebugGroup", _O(PopDebugGroup) },
123301e04c3fSmrg   { "glGetObjectLabel", _O(GetObjectLabel) },
123401e04c3fSmrg   { "glGetObjectPtrLabel", _O(GetObjectPtrLabel) },
123501e04c3fSmrg   { "glObjectLabel", _O(ObjectLabel) },
123601e04c3fSmrg   { "glObjectPtrLabel", _O(ObjectPtrLabel) },
1237af69d88dSmrg   { "glGetGraphicsResetStatusARB", _O(GetGraphicsResetStatusARB) },
1238af69d88dSmrg   { "glGetnColorTableARB", _O(GetnColorTableARB) },
1239af69d88dSmrg   { "glGetnCompressedTexImageARB", _O(GetnCompressedTexImageARB) },
1240af69d88dSmrg   { "glGetnConvolutionFilterARB", _O(GetnConvolutionFilterARB) },
1241af69d88dSmrg   { "glGetnHistogramARB", _O(GetnHistogramARB) },
1242af69d88dSmrg   { "glGetnMapdvARB", _O(GetnMapdvARB) },
1243af69d88dSmrg   { "glGetnMapfvARB", _O(GetnMapfvARB) },
1244af69d88dSmrg   { "glGetnMapivARB", _O(GetnMapivARB) },
1245af69d88dSmrg   { "glGetnMinmaxARB", _O(GetnMinmaxARB) },
1246af69d88dSmrg   { "glGetnPixelMapfvARB", _O(GetnPixelMapfvARB) },
1247af69d88dSmrg   { "glGetnPixelMapuivARB", _O(GetnPixelMapuivARB) },
1248af69d88dSmrg   { "glGetnPixelMapusvARB", _O(GetnPixelMapusvARB) },
1249af69d88dSmrg   { "glGetnPolygonStippleARB", _O(GetnPolygonStippleARB) },
1250af69d88dSmrg   { "glGetnSeparableFilterARB", _O(GetnSeparableFilterARB) },
1251af69d88dSmrg   { "glGetnTexImageARB", _O(GetnTexImageARB) },
1252af69d88dSmrg   { "glGetnUniformdvARB", _O(GetnUniformdvARB) },
1253af69d88dSmrg   { "glGetnUniformfvARB", _O(GetnUniformfvARB) },
1254af69d88dSmrg   { "glGetnUniformivARB", _O(GetnUniformivARB) },
1255af69d88dSmrg   { "glGetnUniformuivARB", _O(GetnUniformuivARB) },
1256af69d88dSmrg   { "glReadnPixelsARB", _O(ReadnPixelsARB) },
1257af69d88dSmrg   { "glTexStorage1D", _O(TexStorage1D) },
1258af69d88dSmrg   { "glTexStorage2D", _O(TexStorage2D) },
1259af69d88dSmrg   { "glTexStorage3D", _O(TexStorage3D) },
1260af69d88dSmrg   { "glTextureStorage1DEXT", _O(TextureStorage1DEXT) },
1261af69d88dSmrg   { "glTextureStorage2DEXT", _O(TextureStorage2DEXT) },
1262af69d88dSmrg   { "glTextureStorage3DEXT", _O(TextureStorage3DEXT) },
1263af69d88dSmrg   { "glSampleMaskSGIS", _O(SampleMaskSGIS) },
1264af69d88dSmrg   { "glSamplePatternSGIS", _O(SamplePatternSGIS) },
1265af69d88dSmrg   { "glColorPointerEXT", _O(ColorPointerEXT) },
1266af69d88dSmrg   { "glEdgeFlagPointerEXT", _O(EdgeFlagPointerEXT) },
1267af69d88dSmrg   { "glIndexPointerEXT", _O(IndexPointerEXT) },
1268af69d88dSmrg   { "glNormalPointerEXT", _O(NormalPointerEXT) },
1269af69d88dSmrg   { "glTexCoordPointerEXT", _O(TexCoordPointerEXT) },
1270af69d88dSmrg   { "glVertexPointerEXT", _O(VertexPointerEXT) },
1271af69d88dSmrg   { "glPointParameterf", _O(PointParameterf) },
1272af69d88dSmrg   { "glPointParameterfv", _O(PointParameterfv) },
1273af69d88dSmrg   { "glLockArraysEXT", _O(LockArraysEXT) },
1274af69d88dSmrg   { "glUnlockArraysEXT", _O(UnlockArraysEXT) },
1275af69d88dSmrg   { "glSecondaryColor3b", _O(SecondaryColor3b) },
1276af69d88dSmrg   { "glSecondaryColor3bv", _O(SecondaryColor3bv) },
1277af69d88dSmrg   { "glSecondaryColor3d", _O(SecondaryColor3d) },
1278af69d88dSmrg   { "glSecondaryColor3dv", _O(SecondaryColor3dv) },
1279af69d88dSmrg   { "glSecondaryColor3fEXT", _O(SecondaryColor3fEXT) },
1280af69d88dSmrg   { "glSecondaryColor3fvEXT", _O(SecondaryColor3fvEXT) },
1281af69d88dSmrg   { "glSecondaryColor3i", _O(SecondaryColor3i) },
1282af69d88dSmrg   { "glSecondaryColor3iv", _O(SecondaryColor3iv) },
1283af69d88dSmrg   { "glSecondaryColor3s", _O(SecondaryColor3s) },
1284af69d88dSmrg   { "glSecondaryColor3sv", _O(SecondaryColor3sv) },
1285af69d88dSmrg   { "glSecondaryColor3ub", _O(SecondaryColor3ub) },
1286af69d88dSmrg   { "glSecondaryColor3ubv", _O(SecondaryColor3ubv) },
1287af69d88dSmrg   { "glSecondaryColor3ui", _O(SecondaryColor3ui) },
1288af69d88dSmrg   { "glSecondaryColor3uiv", _O(SecondaryColor3uiv) },
1289af69d88dSmrg   { "glSecondaryColor3us", _O(SecondaryColor3us) },
1290af69d88dSmrg   { "glSecondaryColor3usv", _O(SecondaryColor3usv) },
1291af69d88dSmrg   { "glSecondaryColorPointer", _O(SecondaryColorPointer) },
1292af69d88dSmrg   { "glMultiDrawArrays", _O(MultiDrawArrays) },
1293af69d88dSmrg   { "glMultiDrawElementsEXT", _O(MultiDrawElementsEXT) },
1294af69d88dSmrg   { "glFogCoordPointer", _O(FogCoordPointer) },
1295af69d88dSmrg   { "glFogCoordd", _O(FogCoordd) },
1296af69d88dSmrg   { "glFogCoorddv", _O(FogCoorddv) },
1297af69d88dSmrg   { "glFogCoordfEXT", _O(FogCoordfEXT) },
1298af69d88dSmrg   { "glFogCoordfvEXT", _O(FogCoordfvEXT) },
1299af69d88dSmrg   { "glBlendFuncSeparate", _O(BlendFuncSeparate) },
1300af69d88dSmrg   { "glResizeBuffersMESA", _O(ResizeBuffersMESA) },
1301af69d88dSmrg   { "glWindowPos2d", _O(WindowPos2d) },
1302af69d88dSmrg   { "glWindowPos2dv", _O(WindowPos2dv) },
1303af69d88dSmrg   { "glWindowPos2f", _O(WindowPos2f) },
1304af69d88dSmrg   { "glWindowPos2fv", _O(WindowPos2fv) },
1305af69d88dSmrg   { "glWindowPos2i", _O(WindowPos2i) },
1306af69d88dSmrg   { "glWindowPos2iv", _O(WindowPos2iv) },
1307af69d88dSmrg   { "glWindowPos2s", _O(WindowPos2s) },
1308af69d88dSmrg   { "glWindowPos2sv", _O(WindowPos2sv) },
1309af69d88dSmrg   { "glWindowPos3d", _O(WindowPos3d) },
1310af69d88dSmrg   { "glWindowPos3dv", _O(WindowPos3dv) },
1311af69d88dSmrg   { "glWindowPos3f", _O(WindowPos3f) },
1312af69d88dSmrg   { "glWindowPos3fv", _O(WindowPos3fv) },
1313af69d88dSmrg   { "glWindowPos3i", _O(WindowPos3i) },
1314af69d88dSmrg   { "glWindowPos3iv", _O(WindowPos3iv) },
1315af69d88dSmrg   { "glWindowPos3s", _O(WindowPos3s) },
1316af69d88dSmrg   { "glWindowPos3sv", _O(WindowPos3sv) },
1317af69d88dSmrg   { "glWindowPos4dMESA", _O(WindowPos4dMESA) },
1318af69d88dSmrg   { "glWindowPos4dvMESA", _O(WindowPos4dvMESA) },
1319af69d88dSmrg   { "glWindowPos4fMESA", _O(WindowPos4fMESA) },
1320af69d88dSmrg   { "glWindowPos4fvMESA", _O(WindowPos4fvMESA) },
1321af69d88dSmrg   { "glWindowPos4iMESA", _O(WindowPos4iMESA) },
1322af69d88dSmrg   { "glWindowPos4ivMESA", _O(WindowPos4ivMESA) },
1323af69d88dSmrg   { "glWindowPos4sMESA", _O(WindowPos4sMESA) },
1324af69d88dSmrg   { "glWindowPos4svMESA", _O(WindowPos4svMESA) },
1325af69d88dSmrg   { "glMultiModeDrawArraysIBM", _O(MultiModeDrawArraysIBM) },
1326af69d88dSmrg   { "glMultiModeDrawElementsIBM", _O(MultiModeDrawElementsIBM) },
1327af69d88dSmrg   { "glAreProgramsResidentNV", _O(AreProgramsResidentNV) },
1328af69d88dSmrg   { "glBindProgramARB", _O(BindProgramARB) },
1329af69d88dSmrg   { "glDeleteProgramsARB", _O(DeleteProgramsARB) },
1330af69d88dSmrg   { "glExecuteProgramNV", _O(ExecuteProgramNV) },
1331af69d88dSmrg   { "glGenProgramsARB", _O(GenProgramsARB) },
1332af69d88dSmrg   { "glGetProgramParameterdvNV", _O(GetProgramParameterdvNV) },
1333af69d88dSmrg   { "glGetProgramParameterfvNV", _O(GetProgramParameterfvNV) },
1334af69d88dSmrg   { "glGetProgramStringNV", _O(GetProgramStringNV) },
1335af69d88dSmrg   { "glGetProgramivNV", _O(GetProgramivNV) },
1336af69d88dSmrg   { "glGetTrackMatrixivNV", _O(GetTrackMatrixivNV) },
1337af69d88dSmrg   { "glGetVertexAttribPointerv", _O(GetVertexAttribPointerv) },
1338af69d88dSmrg   { "glGetVertexAttribdvNV", _O(GetVertexAttribdvNV) },
1339af69d88dSmrg   { "glGetVertexAttribfvNV", _O(GetVertexAttribfvNV) },
1340af69d88dSmrg   { "glGetVertexAttribivNV", _O(GetVertexAttribivNV) },
1341af69d88dSmrg   { "glIsProgram", _O(IsProgram) },
1342af69d88dSmrg   { "glLoadProgramNV", _O(LoadProgramNV) },
1343af69d88dSmrg   { "glProgramParameters4dvNV", _O(ProgramParameters4dvNV) },
1344af69d88dSmrg   { "glProgramParameters4fvNV", _O(ProgramParameters4fvNV) },
1345af69d88dSmrg   { "glRequestResidentProgramsNV", _O(RequestResidentProgramsNV) },
1346af69d88dSmrg   { "glTrackMatrixNV", _O(TrackMatrixNV) },
1347af69d88dSmrg   { "glVertexAttrib1dNV", _O(VertexAttrib1dNV) },
1348af69d88dSmrg   { "glVertexAttrib1dvNV", _O(VertexAttrib1dvNV) },
1349af69d88dSmrg   { "glVertexAttrib1fNV", _O(VertexAttrib1fNV) },
1350af69d88dSmrg   { "glVertexAttrib1fvNV", _O(VertexAttrib1fvNV) },
1351af69d88dSmrg   { "glVertexAttrib1sNV", _O(VertexAttrib1sNV) },
1352af69d88dSmrg   { "glVertexAttrib1svNV", _O(VertexAttrib1svNV) },
1353af69d88dSmrg   { "glVertexAttrib2dNV", _O(VertexAttrib2dNV) },
1354af69d88dSmrg   { "glVertexAttrib2dvNV", _O(VertexAttrib2dvNV) },
1355af69d88dSmrg   { "glVertexAttrib2fNV", _O(VertexAttrib2fNV) },
1356af69d88dSmrg   { "glVertexAttrib2fvNV", _O(VertexAttrib2fvNV) },
1357af69d88dSmrg   { "glVertexAttrib2sNV", _O(VertexAttrib2sNV) },
1358af69d88dSmrg   { "glVertexAttrib2svNV", _O(VertexAttrib2svNV) },
1359af69d88dSmrg   { "glVertexAttrib3dNV", _O(VertexAttrib3dNV) },
1360af69d88dSmrg   { "glVertexAttrib3dvNV", _O(VertexAttrib3dvNV) },
1361af69d88dSmrg   { "glVertexAttrib3fNV", _O(VertexAttrib3fNV) },
1362af69d88dSmrg   { "glVertexAttrib3fvNV", _O(VertexAttrib3fvNV) },
1363af69d88dSmrg   { "glVertexAttrib3sNV", _O(VertexAttrib3sNV) },
1364af69d88dSmrg   { "glVertexAttrib3svNV", _O(VertexAttrib3svNV) },
1365af69d88dSmrg   { "glVertexAttrib4dNV", _O(VertexAttrib4dNV) },
1366af69d88dSmrg   { "glVertexAttrib4dvNV", _O(VertexAttrib4dvNV) },
1367af69d88dSmrg   { "glVertexAttrib4fNV", _O(VertexAttrib4fNV) },
1368af69d88dSmrg   { "glVertexAttrib4fvNV", _O(VertexAttrib4fvNV) },
1369af69d88dSmrg   { "glVertexAttrib4sNV", _O(VertexAttrib4sNV) },
1370af69d88dSmrg   { "glVertexAttrib4svNV", _O(VertexAttrib4svNV) },
1371af69d88dSmrg   { "glVertexAttrib4ubNV", _O(VertexAttrib4ubNV) },
1372af69d88dSmrg   { "glVertexAttrib4ubvNV", _O(VertexAttrib4ubvNV) },
1373af69d88dSmrg   { "glVertexAttribPointerNV", _O(VertexAttribPointerNV) },
1374af69d88dSmrg   { "glVertexAttribs1dvNV", _O(VertexAttribs1dvNV) },
1375af69d88dSmrg   { "glVertexAttribs1fvNV", _O(VertexAttribs1fvNV) },
1376af69d88dSmrg   { "glVertexAttribs1svNV", _O(VertexAttribs1svNV) },
1377af69d88dSmrg   { "glVertexAttribs2dvNV", _O(VertexAttribs2dvNV) },
1378af69d88dSmrg   { "glVertexAttribs2fvNV", _O(VertexAttribs2fvNV) },
1379af69d88dSmrg   { "glVertexAttribs2svNV", _O(VertexAttribs2svNV) },
1380af69d88dSmrg   { "glVertexAttribs3dvNV", _O(VertexAttribs3dvNV) },
1381af69d88dSmrg   { "glVertexAttribs3fvNV", _O(VertexAttribs3fvNV) },
1382af69d88dSmrg   { "glVertexAttribs3svNV", _O(VertexAttribs3svNV) },
1383af69d88dSmrg   { "glVertexAttribs4dvNV", _O(VertexAttribs4dvNV) },
1384af69d88dSmrg   { "glVertexAttribs4fvNV", _O(VertexAttribs4fvNV) },
1385af69d88dSmrg   { "glVertexAttribs4svNV", _O(VertexAttribs4svNV) },
1386af69d88dSmrg   { "glVertexAttribs4ubvNV", _O(VertexAttribs4ubvNV) },
1387af69d88dSmrg   { "glAlphaFragmentOp1ATI", _O(AlphaFragmentOp1ATI) },
1388af69d88dSmrg   { "glAlphaFragmentOp2ATI", _O(AlphaFragmentOp2ATI) },
1389af69d88dSmrg   { "glAlphaFragmentOp3ATI", _O(AlphaFragmentOp3ATI) },
1390af69d88dSmrg   { "glBeginFragmentShaderATI", _O(BeginFragmentShaderATI) },
1391af69d88dSmrg   { "glBindFragmentShaderATI", _O(BindFragmentShaderATI) },
1392af69d88dSmrg   { "glColorFragmentOp1ATI", _O(ColorFragmentOp1ATI) },
1393af69d88dSmrg   { "glColorFragmentOp2ATI", _O(ColorFragmentOp2ATI) },
1394af69d88dSmrg   { "glColorFragmentOp3ATI", _O(ColorFragmentOp3ATI) },
1395af69d88dSmrg   { "glDeleteFragmentShaderATI", _O(DeleteFragmentShaderATI) },
1396af69d88dSmrg   { "glEndFragmentShaderATI", _O(EndFragmentShaderATI) },
1397af69d88dSmrg   { "glGenFragmentShadersATI", _O(GenFragmentShadersATI) },
1398af69d88dSmrg   { "glPassTexCoordATI", _O(PassTexCoordATI) },
1399af69d88dSmrg   { "glSampleMapATI", _O(SampleMapATI) },
1400af69d88dSmrg   { "glSetFragmentShaderConstantATI", _O(SetFragmentShaderConstantATI) },
1401af69d88dSmrg   { "glPointParameteri", _O(PointParameteri) },
1402af69d88dSmrg   { "glPointParameteriv", _O(PointParameteriv) },
1403af69d88dSmrg   { "glActiveStencilFaceEXT", _O(ActiveStencilFaceEXT) },
1404af69d88dSmrg   { "glDeleteVertexArrays", _O(DeleteVertexArrays) },
1405af69d88dSmrg   { "glIsVertexArray", _O(IsVertexArray) },
1406af69d88dSmrg   { "glGetProgramNamedParameterdvNV", _O(GetProgramNamedParameterdvNV) },
1407af69d88dSmrg   { "glGetProgramNamedParameterfvNV", _O(GetProgramNamedParameterfvNV) },
1408af69d88dSmrg   { "glProgramNamedParameter4dNV", _O(ProgramNamedParameter4dNV) },
1409af69d88dSmrg   { "glProgramNamedParameter4dvNV", _O(ProgramNamedParameter4dvNV) },
1410af69d88dSmrg   { "glProgramNamedParameter4fNV", _O(ProgramNamedParameter4fNV) },
1411af69d88dSmrg   { "glProgramNamedParameter4fvNV", _O(ProgramNamedParameter4fvNV) },
1412af69d88dSmrg   { "glPrimitiveRestartIndex", _O(PrimitiveRestartIndex) },
1413af69d88dSmrg   { "glPrimitiveRestartNV", _O(PrimitiveRestartNV) },
1414af69d88dSmrg   { "glDepthBoundsEXT", _O(DepthBoundsEXT) },
1415af69d88dSmrg   { "glBlendEquationSeparate", _O(BlendEquationSeparate) },
1416af69d88dSmrg   { "glBindFramebuffer", _O(BindFramebuffer) },
1417af69d88dSmrg   { "glBindRenderbuffer", _O(BindRenderbuffer) },
1418af69d88dSmrg   { "glCheckFramebufferStatus", _O(CheckFramebufferStatus) },
1419af69d88dSmrg   { "glDeleteFramebuffers", _O(DeleteFramebuffers) },
1420af69d88dSmrg   { "glDeleteRenderbuffers", _O(DeleteRenderbuffers) },
1421af69d88dSmrg   { "glFramebufferRenderbuffer", _O(FramebufferRenderbuffer) },
1422af69d88dSmrg   { "glFramebufferTexture1D", _O(FramebufferTexture1D) },
1423af69d88dSmrg   { "glFramebufferTexture2D", _O(FramebufferTexture2D) },
1424af69d88dSmrg   { "glFramebufferTexture3D", _O(FramebufferTexture3D) },
1425af69d88dSmrg   { "glGenFramebuffers", _O(GenFramebuffers) },
1426af69d88dSmrg   { "glGenRenderbuffers", _O(GenRenderbuffers) },
1427af69d88dSmrg   { "glGenerateMipmap", _O(GenerateMipmap) },
1428af69d88dSmrg   { "glGetFramebufferAttachmentParameteriv", _O(GetFramebufferAttachmentParameteriv) },
1429af69d88dSmrg   { "glGetRenderbufferParameteriv", _O(GetRenderbufferParameteriv) },
1430af69d88dSmrg   { "glIsFramebuffer", _O(IsFramebuffer) },
1431af69d88dSmrg   { "glIsRenderbuffer", _O(IsRenderbuffer) },
1432af69d88dSmrg   { "glRenderbufferStorage", _O(RenderbufferStorage) },
1433af69d88dSmrg   { "glBlitFramebuffer", _O(BlitFramebuffer) },
1434af69d88dSmrg   { "glBufferParameteriAPPLE", _O(BufferParameteriAPPLE) },
1435af69d88dSmrg   { "glFlushMappedBufferRangeAPPLE", _O(FlushMappedBufferRangeAPPLE) },
1436af69d88dSmrg   { "glBindFragDataLocation", _O(BindFragDataLocation) },
1437af69d88dSmrg   { "glGetFragDataLocation", _O(GetFragDataLocation) },
1438af69d88dSmrg   { "glGetUniformuiv", _O(GetUniformuiv) },
1439af69d88dSmrg   { "glGetVertexAttribIiv", _O(GetVertexAttribIiv) },
1440af69d88dSmrg   { "glGetVertexAttribIuiv", _O(GetVertexAttribIuiv) },
1441af69d88dSmrg   { "glUniform1ui", _O(Uniform1ui) },
1442af69d88dSmrg   { "glUniform1uiv", _O(Uniform1uiv) },
1443af69d88dSmrg   { "glUniform2ui", _O(Uniform2ui) },
1444af69d88dSmrg   { "glUniform2uiv", _O(Uniform2uiv) },
1445af69d88dSmrg   { "glUniform3ui", _O(Uniform3ui) },
1446af69d88dSmrg   { "glUniform3uiv", _O(Uniform3uiv) },
1447af69d88dSmrg   { "glUniform4ui", _O(Uniform4ui) },
1448af69d88dSmrg   { "glUniform4uiv", _O(Uniform4uiv) },
1449af69d88dSmrg   { "glVertexAttribI1iEXT", _O(VertexAttribI1iEXT) },
1450af69d88dSmrg   { "glVertexAttribI1iv", _O(VertexAttribI1iv) },
1451af69d88dSmrg   { "glVertexAttribI1uiEXT", _O(VertexAttribI1uiEXT) },
1452af69d88dSmrg   { "glVertexAttribI1uiv", _O(VertexAttribI1uiv) },
1453af69d88dSmrg   { "glVertexAttribI2iEXT", _O(VertexAttribI2iEXT) },
1454af69d88dSmrg   { "glVertexAttribI2ivEXT", _O(VertexAttribI2ivEXT) },
1455af69d88dSmrg   { "glVertexAttribI2uiEXT", _O(VertexAttribI2uiEXT) },
1456af69d88dSmrg   { "glVertexAttribI2uivEXT", _O(VertexAttribI2uivEXT) },
1457af69d88dSmrg   { "glVertexAttribI3iEXT", _O(VertexAttribI3iEXT) },
1458af69d88dSmrg   { "glVertexAttribI3ivEXT", _O(VertexAttribI3ivEXT) },
1459af69d88dSmrg   { "glVertexAttribI3uiEXT", _O(VertexAttribI3uiEXT) },
1460af69d88dSmrg   { "glVertexAttribI3uivEXT", _O(VertexAttribI3uivEXT) },
1461af69d88dSmrg   { "glVertexAttribI4bv", _O(VertexAttribI4bv) },
1462af69d88dSmrg   { "glVertexAttribI4iEXT", _O(VertexAttribI4iEXT) },
1463af69d88dSmrg   { "glVertexAttribI4ivEXT", _O(VertexAttribI4ivEXT) },
1464af69d88dSmrg   { "glVertexAttribI4sv", _O(VertexAttribI4sv) },
1465af69d88dSmrg   { "glVertexAttribI4ubv", _O(VertexAttribI4ubv) },
1466af69d88dSmrg   { "glVertexAttribI4uiEXT", _O(VertexAttribI4uiEXT) },
1467af69d88dSmrg   { "glVertexAttribI4uivEXT", _O(VertexAttribI4uivEXT) },
1468af69d88dSmrg   { "glVertexAttribI4usv", _O(VertexAttribI4usv) },
1469af69d88dSmrg   { "glVertexAttribIPointer", _O(VertexAttribIPointer) },
1470af69d88dSmrg   { "glFramebufferTextureLayer", _O(FramebufferTextureLayer) },
1471af69d88dSmrg   { "glColorMaski", _O(ColorMaski) },
1472af69d88dSmrg   { "glDisablei", _O(Disablei) },
1473af69d88dSmrg   { "glEnablei", _O(Enablei) },
1474af69d88dSmrg   { "glGetBooleani_v", _O(GetBooleani_v) },
1475af69d88dSmrg   { "glGetIntegeri_v", _O(GetIntegeri_v) },
1476af69d88dSmrg   { "glIsEnabledi", _O(IsEnabledi) },
1477af69d88dSmrg   { "glClearColorIiEXT", _O(ClearColorIiEXT) },
1478af69d88dSmrg   { "glClearColorIuiEXT", _O(ClearColorIuiEXT) },
1479af69d88dSmrg   { "glGetTexParameterIiv", _O(GetTexParameterIiv) },
1480af69d88dSmrg   { "glGetTexParameterIuiv", _O(GetTexParameterIuiv) },
1481af69d88dSmrg   { "glTexParameterIiv", _O(TexParameterIiv) },
1482af69d88dSmrg   { "glTexParameterIuiv", _O(TexParameterIuiv) },
1483af69d88dSmrg   { "glBeginConditionalRender", _O(BeginConditionalRender) },
1484af69d88dSmrg   { "glEndConditionalRender", _O(EndConditionalRender) },
1485af69d88dSmrg   { "glBeginTransformFeedback", _O(BeginTransformFeedback) },
1486af69d88dSmrg   { "glBindBufferBase", _O(BindBufferBase) },
1487af69d88dSmrg   { "glBindBufferOffsetEXT", _O(BindBufferOffsetEXT) },
1488af69d88dSmrg   { "glBindBufferRange", _O(BindBufferRange) },
1489af69d88dSmrg   { "glEndTransformFeedback", _O(EndTransformFeedback) },
1490af69d88dSmrg   { "glGetTransformFeedbackVarying", _O(GetTransformFeedbackVarying) },
1491af69d88dSmrg   { "glTransformFeedbackVaryings", _O(TransformFeedbackVaryings) },
1492af69d88dSmrg   { "glProvokingVertex", _O(ProvokingVertex) },
1493af69d88dSmrg   { "glGetObjectParameterivAPPLE", _O(GetObjectParameterivAPPLE) },
1494af69d88dSmrg   { "glObjectPurgeableAPPLE", _O(ObjectPurgeableAPPLE) },
1495af69d88dSmrg   { "glObjectUnpurgeableAPPLE", _O(ObjectUnpurgeableAPPLE) },
1496af69d88dSmrg   { "glActiveProgramEXT", _O(ActiveProgramEXT) },
1497af69d88dSmrg   { "glCreateShaderProgramEXT", _O(CreateShaderProgramEXT) },
1498af69d88dSmrg   { "glUseShaderProgramEXT", _O(UseShaderProgramEXT) },
1499af69d88dSmrg   { "glTextureBarrierNV", _O(TextureBarrierNV) },
1500af69d88dSmrg   { "glStencilFuncSeparateATI", _O(StencilFuncSeparateATI) },
1501af69d88dSmrg   { "glProgramEnvParameters4fvEXT", _O(ProgramEnvParameters4fvEXT) },
1502af69d88dSmrg   { "glProgramLocalParameters4fvEXT", _O(ProgramLocalParameters4fvEXT) },
1503af69d88dSmrg   { "glGetQueryObjecti64v", _O(GetQueryObjecti64v) },
1504af69d88dSmrg   { "glGetQueryObjectui64v", _O(GetQueryObjectui64v) },
1505af69d88dSmrg   { "glEGLImageTargetRenderbufferStorageOES", _O(EGLImageTargetRenderbufferStorageOES) },
1506af69d88dSmrg   { "glEGLImageTargetTexture2DOES", _O(EGLImageTargetTexture2DOES) },
1507af69d88dSmrg   { NULL, 0 }
1508af69d88dSmrg};
1509af69d88dSmrg
1510af69d88dSmrg#ifdef GLX_INDIRECT_RENDERING
1511af69d88dSmrgextern "C" {
1512af69d88dSmrgGLAPI GLboolean GLAPIENTRY
1513af69d88dSmrgglAreTexturesResidentEXT(GLsizei n, const GLuint *textures,
1514af69d88dSmrg			 GLboolean *residences)
1515af69d88dSmrg{
1516af69d88dSmrg   (void) n;
1517af69d88dSmrg   (void) textures;
1518af69d88dSmrg   (void) residences;
1519af69d88dSmrg   return GL_FALSE;
1520af69d88dSmrg}
1521af69d88dSmrg
1522af69d88dSmrgGLAPI void GLAPIENTRY
1523af69d88dSmrgglDeleteTexturesEXT(GLsizei n, const GLuint *textures)
1524af69d88dSmrg{
1525af69d88dSmrg   (void) n;
1526af69d88dSmrg   (void) textures;
1527af69d88dSmrg}
1528af69d88dSmrg
1529af69d88dSmrgGLAPI void GLAPIENTRY
1530af69d88dSmrgglGenTexturesEXT(GLsizei n, GLuint *textures)
1531af69d88dSmrg{
1532af69d88dSmrg   (void) n;
1533af69d88dSmrg   (void) textures;
1534af69d88dSmrg}
1535af69d88dSmrg
1536af69d88dSmrgGLAPI GLboolean GLAPIENTRY
1537af69d88dSmrgglIsTextureEXT(GLuint texture)
1538af69d88dSmrg{
1539af69d88dSmrg   (void) texture;
1540af69d88dSmrg   return GL_FALSE;
1541af69d88dSmrg}
1542af69d88dSmrg
1543af69d88dSmrgGLAPI void GLAPIENTRY
1544af69d88dSmrgglGetColorTableEXT(GLenum target, GLenum format, GLenum type, GLvoid *table)
1545af69d88dSmrg{
1546af69d88dSmrg   (void) target;
1547af69d88dSmrg   (void) format;
1548af69d88dSmrg   (void) type;
1549af69d88dSmrg   (void) table;
1550af69d88dSmrg}
1551af69d88dSmrg
1552af69d88dSmrgGLAPI void GLAPIENTRY
1553af69d88dSmrgglGetColorTableParameterfvEXT(GLenum target, GLenum pname, GLfloat *params)
1554af69d88dSmrg{
1555af69d88dSmrg   (void) target;
1556af69d88dSmrg   (void) pname;
1557af69d88dSmrg   (void) params;
1558af69d88dSmrg}
1559af69d88dSmrg
1560af69d88dSmrgGLAPI void GLAPIENTRY
1561af69d88dSmrgglGetColorTableParameterivEXT(GLenum target, GLenum pname, GLint *params)
1562af69d88dSmrg{
1563af69d88dSmrg   (void) target;
1564af69d88dSmrg   (void) pname;
1565af69d88dSmrg   (void) params;
1566af69d88dSmrg}
1567af69d88dSmrg
1568af69d88dSmrgvoid GLAPIENTRY
1569af69d88dSmrggl_dispatch_stub_356(GLenum target, GLenum format, GLenum type, GLvoid * image)
1570af69d88dSmrg{
1571af69d88dSmrg   (void) target;
1572af69d88dSmrg   (void) format;
1573af69d88dSmrg   (void) type;
1574af69d88dSmrg   (void) image;
1575af69d88dSmrg}
1576af69d88dSmrg
1577af69d88dSmrgvoid GLAPIENTRY
1578af69d88dSmrggl_dispatch_stub_357(GLenum target, GLenum pname, GLfloat * params)
1579af69d88dSmrg{
1580af69d88dSmrg   (void) target;
1581af69d88dSmrg   (void) pname;
1582af69d88dSmrg   (void) params;
1583af69d88dSmrg}
1584af69d88dSmrg
1585af69d88dSmrgvoid GLAPIENTRY
1586af69d88dSmrggl_dispatch_stub_358(GLenum target, GLenum pname, GLint * params)
1587af69d88dSmrg{
1588af69d88dSmrg   (void) target;
1589af69d88dSmrg   (void) pname;
1590af69d88dSmrg   (void) params;
1591af69d88dSmrg}
1592af69d88dSmrg
1593af69d88dSmrgvoid GLAPIENTRY
1594af69d88dSmrggl_dispatch_stub_359(GLenum target, GLenum format, GLenum type, GLvoid * row, GLvoid * column, GLvoid * span)
1595af69d88dSmrg{
1596af69d88dSmrg   (void) target;
1597af69d88dSmrg   (void) format;
1598af69d88dSmrg   (void) type;
1599af69d88dSmrg   (void) row;
1600af69d88dSmrg   (void) column;
1601af69d88dSmrg   (void) span;
1602af69d88dSmrg}
1603af69d88dSmrg
1604af69d88dSmrgvoid GLAPIENTRY
1605af69d88dSmrggl_dispatch_stub_361(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values)
1606af69d88dSmrg{
1607af69d88dSmrg   (void) target;
1608af69d88dSmrg   (void) reset;
1609af69d88dSmrg   (void) format;
1610af69d88dSmrg   (void) type;
1611af69d88dSmrg   (void) values;
1612af69d88dSmrg}
1613af69d88dSmrg
1614af69d88dSmrgvoid GLAPIENTRY
1615af69d88dSmrggl_dispatch_stub_362(GLenum target, GLenum pname, GLfloat * params)
1616af69d88dSmrg{
1617af69d88dSmrg   (void) target;
1618af69d88dSmrg   (void) pname;
1619af69d88dSmrg   (void) params;
1620af69d88dSmrg}
1621af69d88dSmrg
1622af69d88dSmrgvoid GLAPIENTRY
1623af69d88dSmrggl_dispatch_stub_363(GLenum target, GLenum pname, GLint * params)
1624af69d88dSmrg{
1625af69d88dSmrg   (void) target;
1626af69d88dSmrg   (void) pname;
1627af69d88dSmrg   (void) params;
1628af69d88dSmrg}
1629af69d88dSmrg
1630af69d88dSmrgvoid GLAPIENTRY
1631af69d88dSmrggl_dispatch_stub_364(GLenum target, GLboolean reset, GLenum format, GLenum type, GLvoid * values)
1632af69d88dSmrg{
1633af69d88dSmrg   (void) target;
1634af69d88dSmrg   (void) reset;
1635af69d88dSmrg   (void) format;
1636af69d88dSmrg   (void) type;
1637af69d88dSmrg   (void) values;
1638af69d88dSmrg}
1639af69d88dSmrg
1640af69d88dSmrgvoid GLAPIENTRY
1641af69d88dSmrggl_dispatch_stub_365(GLenum target, GLenum pname, GLfloat * params)
1642af69d88dSmrg{
1643af69d88dSmrg   (void) target;
1644af69d88dSmrg   (void) pname;
1645af69d88dSmrg   (void) params;
1646af69d88dSmrg}
1647af69d88dSmrg
1648af69d88dSmrgvoid GLAPIENTRY
1649af69d88dSmrggl_dispatch_stub_366(GLenum target, GLenum pname, GLint * params)
1650af69d88dSmrg{
1651af69d88dSmrg   (void) target;
1652af69d88dSmrg   (void) pname;
1653af69d88dSmrg   (void) params;
1654af69d88dSmrg}
1655af69d88dSmrg
1656af69d88dSmrg}
1657af69d88dSmrg#endif
1658